UNPKG

@iota-big3/sdk-quantum

Version:

Quantum-ready architecture with post-quantum cryptography

38 lines 1.65 kB
export declare class QuantumCrypto { private config; private kemAlgorithm; private signatureAlgorithm; private keyCache; private isEnabled; constructor(config: QuantumConfig); private initializeAlgorithms; generateKeyPair(algorithm: QuantumAlgorithm, usage: KeyUsage[]): Promise<QuantumKeyPair>; encapsulate(publicKey: Uint8Array): Promise<EncapsulatedSecret>; decapsulate(ciphertext: Uint8Array, privateKey: Uint8Array): Promise<Uint8Array>; sign(data: Uint8Array, privateKey: Uint8Array): Promise<QuantumSignature>; verify(data: Uint8Array, signature: QuantumSignature, publicKey: Uint8Array): Promise<boolean>; hybridEncrypt(data: Uint8Array, quantumPublicKey: Uint8Array, classicalPublicKey?: Uint8Array): Promise<{ quantumCiphertext: Uint8Array; classicalCiphertext?: Uint8Array; encapsulatedKey: Uint8Array; }>; hybridDecrypt(quantumCiphertext: Uint8Array, encapsulatedKey: Uint8Array, quantumPrivateKey: Uint8Array, classicalCiphertext?: Uint8Array, classicalPrivateKey?: Uint8Array): Promise<Uint8Array>; getSecurityLevel(algorithm: QuantumAlgorithm): SecurityLevel; estimateQuantumResistance(): { years: number; confidence: number; assumptions: string[]; }; private isKEMAlgorithm; private isSignatureAlgorithm; private generateKeyId; private calculateExpiration; private getSecurityBits; private deriveKey; private symmetricEncrypt; private symmetricDecrypt; private classicalEncrypt; private classicalDecrypt; private compareArrays; } //# sourceMappingURL=quantum-crypto.d.ts.map