mima-kit
Version:
mima-kit is a cryptographic suite implemented in TypeScript. The goal is to provide an easy-to-use cryptographic library. mima-kit 是一个使用 TypeScript 实现的密码学套件。目标是提供一个简单易用的密码学库。
83 lines (82 loc) • 3.87 kB
JavaScript
// * Utils
export { U8, joinBuffer } from './core/utils';
export { genPrime, isProbablePrime } from './core/prime';
export { UTF8, HEX, B64, B64URL, CSV } from './core/codec';
export { createHash, createTupleHash } from './core/hash';
// * MD5
export { md5 } from './hash/md5';
// * SHA-1
export { sha1 } from './hash/sha1';
// * SHA-2
export { sha224, sha256 } from './hash/sha256';
export { sha384, sha512, sha512t } from './hash/sha512';
// * SHA-3
// export { Keccak_p_200, Sponge_200 } from './hash/keccak200'
// export { Keccak_p_400, Sponge_400 } from './hash/keccak400'
// export { Keccak_p_800, Sponge_800 } from './hash/keccak800'
export { keccak_p_1600, sponge_1600 } from './hash/keccak1600';
export { sha3_224, sha3_256 } from './hash/sha3';
export { sha3_384, sha3_512 } from './hash/sha3';
// * SHAKE
export { shake128, shake256 } from './hash/sha3';
// * cSHAKE
export { cshake128, cshake256 } from './hash/sha3Derived';
// * KMAC
export { kmac128, kmac128XOF } from './hash/sha3Derived';
export { kmac256, kmac256XOF } from './hash/sha3Derived';
// * TupleHash
export { tuplehash128, tuplehash128XOF } from './hash/sha3Derived';
export { tuplehash256, tuplehash256XOF } from './hash/sha3Derived';
// * ParallelHash
export { parallelhash128, parallelhash128XOF } from './hash/sha3Derived';
export { parallelhash256, parallelhash256XOF } from './hash/sha3Derived';
// * TurboSHAKE
export { turboshake128, turboshake256 } from './hash/turboSHAKE';
// * KangarooTwelve
export { kt128, kt256 } from './hash/kangaroo12';
// * SM3
export { sm3 } from './hash/sm3';
// * HMAC
export { hmac } from './hash/hmac';
export { createCipher } from './core/cipher';
// * Block Cipher
export { sm4 } from './cipher/blockCipher/sm4';
export { aes } from './cipher/blockCipher/aes';
export { aria } from './cipher/blockCipher/aria';
export { camellia } from './cipher/blockCipher/camellia';
export { des, t_des } from './cipher/blockCipher/des';
export { arc5 } from './cipher/blockCipher/arc5';
export { blowfish } from './cipher/blockCipher/blowfish';
export { twofish } from './cipher/blockCipher/twofish';
export { tea, xtea, xxtea } from './cipher/blockCipher/tea';
// * Block Cipher Modes
export { ecb, cbc, pcbc, cfb, ofb, ctr, gcm } from './core/cipher';
// * Block Cipher Padding
export { PKCS7_PAD, ZERO_PAD, X923_PAD, ISO7816_PAD, NO_PAD } from './core/cipher';
export { eea3, eia3, zuc } from './cipher/streamCipher/zuc';
export { arc4 } from './cipher/streamCipher/arc4';
export { salsa20 } from './cipher/streamCipher/salsa20';
export { rabbit } from './cipher/streamCipher/rabbit';
export { rsa } from './cipher/pkcs/rsa';
export { pkcs1_es_1_5, pkcs1_es_oaep } from './cipher/pkcs/pkcs1';
export { pkcs1_ssa_1_5, pkcs1_ssa_pss } from './cipher/pkcs/pkcs1';
export { mgf1 } from './cipher/pkcs/pkcs1';
export { x963kdf, hkdf, pbkdf2 } from './core/kdf';
export { FpECC } from './cipher/pkcs/ecc';
export { sm2p256v1 } from './core/ecParams';
// export { secp112r1, secp112r2 } from './core/ecParams'
// export { secp128r1, secp128r2 } from './core/ecParams'
// export { secp160k1, secp160r1, secp160r2 } from './core/ecParams'
export { secp192k1, secp192r1 } from './core/ecParams';
export { secp224k1, secp224r1 } from './core/ecParams';
export { secp256k1, secp256r1 } from './core/ecParams';
export { secp384r1, secp521r1 } from './core/ecParams';
export { prime192v1, prime256v1 } from './core/ecParams';
export { p192, p224, p256, p384, p521 } from './core/ecParams';
export { w25519, w448 } from './core/ecParams';
// TODO 实现 爱德华曲线 后再开放
// export { ed25519, ed448 } from './core/ecParams'
export { curve25519, curve448 } from './core/ecParams';
export { bp192r1, bp224r1, bp256r1, bp320r1, bp384r1, bp512r1 } from './core/ecParams';
export { sm2 } from './cipher/pkcs/sm2';
export { x25519, x448 } from './cipher/pkcs/x25519_448';