๐ 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
Block ciphers
Message Authentication Code algorithms (MACs)
Key Derivation Functions (KDFs)
๐ 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