@tiny-utils/crypto
Version:
Tiny utils for crypto: asymmetric/symmetric encryption, ed25519, sha256, etc.
29 lines (28 loc) • 1.11 kB
TypeScript
/**
* @category Crypto
* @description Method to get public key from private key using *x25519* algorithm.
*
* @param privateKey Private key
* @returns Public key
*/
export declare const publicKeyFromPrivateKey: (privateKey: Uint8Array) => Uint8Array<ArrayBufferLike>;
/**
* @category Crypto
* @description Method to asymmetrically encrypt the data using *x25519-xsalsa20-poly1305* algorithm.
*
* @param data Data to encrypt
* @param mySecretKey My private key
* @param theirPublicKey Recipient's public key
* @returns Encrypted data
*/
export declare const asymmetricEncrypt: (data: Uint8Array, mySecretKey: Uint8Array, theirPublicKey: Uint8Array) => Uint8Array<ArrayBufferLike>;
/**
* @category Crypto
* @description Method to asymmetrically decrypt the data using *x25519-xsalsa20-poly1305* algorithm.
*
* @param data Data to decrypt
* @param mySecretKey My private key
* @param theirPublicKey Sender's public key
* @returns Decrypted data
*/
export declare const asymmetricDecrypt: (data: Uint8Array, mySecretKey: Uint8Array, theirPublicKey: Uint8Array) => Uint8Array<ArrayBufferLike>;