edhoc
Version:
A Node.js implementation of EDHOC (Ephemeral Diffie-Hellman Over COSE) protocol for lightweight authenticated key exchange in IoT and other constrained environments.
29 lines • 1.55 kB
TypeScript
import { EDHOC, EdhocCryptoManager, EdhocKeyType } from './edhoc';
export declare class DefaultEdhocCryptoManager implements EdhocCryptoManager {
private keys;
private keyIdentifier;
constructor();
addKey(keyID: Buffer, key: Buffer): void;
importKey(edhoc: EDHOC, keyType: EdhocKeyType, key: Buffer): Promise<Buffer>;
destroyKey(edhoc: EDHOC, keyID: Buffer): boolean;
makeKeyPair(edhoc: EDHOC, keyID: Buffer, _privateKeySize: number, _publicKeySize: number): {
privateKey: Buffer;
publicKey: Buffer;
};
keyAgreement(edhoc: EDHOC, keyID: Buffer, publicKey: Buffer, _privateKeySize: number): Buffer;
sign(edhoc: EDHOC, keyID: Buffer, input: Buffer, _signatureSize: number): Buffer;
verify(edhoc: EDHOC, keyID: Buffer, input: Buffer, signature: Buffer): Promise<boolean>;
extract(edhoc: EDHOC, keyID: Buffer, salt: Buffer, _keySize: number): Buffer;
expand(edhoc: EDHOC, keyID: Buffer, info: Buffer, keySize: number): Buffer;
encrypt(edhoc: EDHOC, keyID: Buffer, nonce: Buffer, aad: Buffer, plaintext: Buffer, _size: number): Buffer;
decrypt(edhoc: EDHOC, keyID: Buffer, nonce: Buffer, aad: Buffer, ciphertext: Buffer, _size: number): Buffer;
hash(_edhoc: EDHOC, data: Buffer, _hashSize: number): Promise<Buffer>;
getKey(keyID: Buffer): Buffer;
private formatToBeSigned;
private formatPublicKey;
private getCurveForSignature;
private getCurveForKeyAgreement;
private getTagLength;
private getAlgorithm;
}
//# sourceMappingURL=crypto.d.ts.map