...
Keywords: Hash HMAC AES XTEA RSA KeyDerivation ECC BIP39 SRP Random ...
This software is licensed under the MIT License.
Projects which use the library: PrivMX WebMail, ...
...
...
Name | Description | Params | Result |
---|---|---|---|
sha1 | SHA-1 (20 bytes long) | Buffer data | Promise<Buffer> |
sha256 | SHA-256 (32 bytes long) | Buffer data | Promise<Buffer> |
sha512 | SHA-512 (64 bytes long) | Buffer data | Promise<Buffer> |
Name | Description | Params | Result |
---|---|---|---|
hmacSha1 | HMAC-SHA-1 | Buffer key Buffer data |
Promise<Buffer> |
hmacSha256 | HMAC-SHA-256 | Buffer key Buffer data |
Promise<Buffer> |
hmacSha512 | HMAC-SHA-512 | Buffer key Buffer data |
Promise<Buffer> |
Name | Description | Params | Result |
---|---|---|---|
aes256Ecb | AES-256-ECB | Buffer data Buffer key |
Promise<Buffer> |
aes256EcbDecrypt | AES-256-ECB | Buffer data Buffer key |
Promise<Buffer> |
aes256CbcPcks7Encrypt | AES-256-CBC with PKCS7 padding encryption | Buffer data Buffer key Buffer iv |
Promise<Buffer> |
aes256CbcPcks7Decrypt | AES-256-CBC with PKCS7 padding decryption | Buffer data Buffer key Buffer iv |
Promise<Buffer> |
aes256CbcHmac256Encrypt | AES-256-CBC with PKCS7 padding and SHA-256 HMAC with NIST compatible KDF | Buffer data Buffer key bool deterministic, default: false number taglen, default: 16 |
Promise<Buffer> |
aes256CbcHmac256Decrypt | AES-256-CBC with PKCS7 padding and SHA-256 HMAC with NIST compatible KDF | Buffer data Buffer key number taglen, default: 16 |
Promise<Buffer> |
Name | Description | Params | Result |
---|---|---|---|
xteaEcbPkcs7Encrypt | XTEA-ECB with PKCS7 padding encryption | Buffer data Buffer key |
Promise<Buffer> |
xteaEcbPkcs7Decrypt | XTEA-ECB with PKCS7 padding decryption | Buffer data Buffer key |
Promise<Buffer> |
Name | Description | Params | Result |
---|---|---|---|
rsaGenerateKey | number bits | Promise<string> | |
rsaOaepEncrypt | string key Buffer data |
Promise<Buffer> | |
rsaOaepDecrypt | string key Buffer data |
Promise<Buffer> | |
rsaSign | string key Buffer data |
Promise<Buffer> | |
rsaVerify | string key Buffer signature Buffer data |
Promise<boolean> | |
encryptPrivateKey | string key string passphrase |
Promise<string> | |
decryptPrivateKey | string enckey string passphrase |
Promise<string> |
Name | Description | Params | Result |
---|---|---|---|
pbkdf2 | string password Buffer salt number rounds number length string algorithm |
Promise<Buffer> | |
prf_tls12 | Buffer key Buffer seed number length |
Promise<Buffer> |
Name | Description | Params | Result |
---|---|---|---|
signToCompactSignature | Ecc.PrivateKey key Buffer message |
Promise<Buffer> | |
verifyCompactSignature | Ecc.PublicKey key Buffer data Buffer signature |
Promise<bool> | |
signToCompactSignatureWithHash | Ecc.PrivateKey key Buffer message |
Promise<Buffer> | |
verifyCompactSignatureWithHash | Ecc.PublicKey key Buffer data Buffer signature |
Promise<bool> | |
getSharedKey | Ecc.PrivateKey private Ecc.PublicKey public |
Promise<Buffer> | |
deriveHardened | Ecc.ExtKey key number index |
Promise<Ecc.ExtKey> | |
eciesEncrypt | Ecc.PrivateKey private Ecc.PublicKey public Buffer data |
Promise<Buffer> | |
eciesDecrypt | Ecc.PrivateKey private Ecc.PublicKey public Buffer data |
Promise<Buffer> |
interface Bip39Result {
entropy: Buffer;
mnemonic: Buffer;
extKey: Ecc.ExtKey;
};
Name | Description | Params | Result |
---|---|---|---|
bip39Generate | number strength string password |
Promise<Bip39Result> | |
bip39FromEntropy | Buffer entropy string password |
Promise<Bip39Result> | |
bip39FromMnemonic | Buffer entropy string password |
Promise<Bip39Result> | |
bip39GetExtKey | Buffer entropy string password |
Promise<Ecc.ExtKey> |
interface RegisterResult {
s: Buffer;
v: Buffer;
};
interface LoginStep1Result {
A: Buffer;
K: Buffer;
M1: Buffer;
M2: Buffer;
};
Name | Description | Params | Result |
---|---|---|---|
srpRegister | Buffer N Buffer g string I string P |
Promise<RegisterResult> | |
srpLoginStep1 | Buffer N Buffer g Buffer s Buffer B Buffer k string I string P |
Promise<LoginStep1Result> | |
srpLoginStep2 | Buffer clientM2 Buffer serverM2 |
Promise<void> |
Name | Description | Params | Result |
---|---|---|---|
randomFeed | Buffer feed | void | |
randomInt32 | void | number | |
randomDouble | void | number | |
randomBytes | number count | Buffer | |
randomBits | number count | Buffer | |
randomBN | BN max | BN |
Name | Description | Params | Result |
---|---|---|---|
reductKey | Reducts 32-bytes long key to 16-bytes long by SHA-256 and takes first 16 bytes | Buffer key | Promise<Buffer> |
generateIv | Generates IV from index for AES (16 bytes long) | Buffer key number index |
Promise<Buffer> |
gulp
npm start
and browse http://localhost:8123/
npm test