Skip to content

Latest commit

 

History

History
77 lines (57 loc) · 2.37 KB

README.md

File metadata and controls

77 lines (57 loc) · 2.37 KB

🔐 Deno Crypto

A collection of useful cryptographic algorithms written in Typescript.


🧪 This project is still in an early stage of development. Expect breaking changes.


✔ Supported algorithms

Message Authentication Code algorithms (MACs)

📝 Examples

AES-128-CBC

import { Aes } from "https://deno.land/x/crypto/aes.ts";
import { Cbc, Padding } from "https://deno.land/x/crypto/block-modes.ts";

const te = new TextEncoder();

const key = te.encode("SuperDuperSecret");
const data = te.encode("DataToBeEncrypted");
const iv = new Uint8Array(16);

// Ciphers have an internal state, you should therefore create
// separate ciphers for encryption and decryption
const cipher = new Cbc(Aes, key, iv, Padding.PKCS7);
const decipher = new Cbc(Aes, key, iv, Padding.PKCS7);

const encrypted = cipher.encrypt(data);
const decrypted = decipher.decrypt(encrypted);

🔔 Disclaimer

This repository has not yet received any formal cryptographic and security reviews. USE AT YOUR OWN RISK