/** * kMOSAIC (Multi-Oracle Structured Algebraic Intractability Composition) * * A novel post-quantum cryptographic library combining three heterogeneous * computational hard problems with cryptographic entanglement for defense-in-depth. * * Core Design Principles: * 1. Heterogeneity: Combines Lattice (SLSS), Tensor (TDD), and Graph (EGRW) problems. * 2. Entanglement: Components are cryptographically bound; breaking one is insufficient. * 3. Defense-in-Depth: Security holds if at least one underlying problem remains hard. * 4. Constant-Time: Implementation resists timing and cache side-channel attacks. * * Modules: * - KEM: Key Encapsulation Mechanism (IND-CCA2 secure) * - Sign: Digital Signature Scheme (EUF-CMA secure) * - Core: Parameter management and type definitions * - Utils: Secure randomness, hashing, and constant-time primitives * * @author k-mosaic * @license MIT * @version 0.1.0 */ import { SecurityLevel } from './types.js'; export { SecurityLevel } from './types.js'; export type { MOSAICParams, SLSSParams, TDDParams, EGRWParams, MOSAICPublicKey, MOSAICSecretKey, MOSAICKeyPair, MOSAICCiphertext, MOSAICSignature, EncapsulationResult, SLSSPublicKey, SLSSSecretKey, TDDPublicKey, TDDSecretKey, EGRWPublicKey, EGRWSecretKey, SL2Element, } from './types.js'; export { getParams, validateParams, MOS_128, MOS_256 } from './core/params.js'; export { generateKeyPair as kemGenerateKeyPair, generateKeyPairFromSeed as kemGenerateKeyPairFromSeed, encapsulate, encapsulateDeterministic, decapsulate, encrypt, decrypt, serializePublicKey, serializeCiphertext, deserializeCiphertext, analyzePublicKey, } from './kem/index.js'; export { generateKeyPair as signGenerateKeyPair, generateKeyPairFromSeed as signGenerateKeyPairFromSeed, sign, verify, serializeSignature, deserializeSignature, } from './sign/index.js'; export { secureRandomBytes, sampleGaussianVector, randomSparseVector, randomVectorZq, } from './utils/random.js'; export { shake256, sha3_256, hashConcat, hashWithDomain, } from './utils/shake.js'; export { constantTimeEqual, constantTimeSelect, zeroize, SecureBuffer, } from './utils/constant-time.js'; export { secretShare, secretReconstruct, computeBinding, createCommitment, verifyCommitment, generateNIZKProof, verifyNIZKProof, } from './entanglement/index.js'; export { slssKeyGen, slssEncrypt, slssDecrypt, slssSerializePublicKey, slssDeserializePublicKey, } from './problems/slss/index.js'; export { tddKeyGen, tddEncrypt, tddDecrypt, tddSerializePublicKey, tddDeserializePublicKey, } from './problems/tdd/index.js'; export { egrwKeyGen, egrwEncrypt, egrwDecrypt, egrwSerializePublicKey, egrwDeserializePublicKey, bytesToSl2, sl2ToBytes, } from './problems/egrw/index.js'; /** * kMOSAIC cryptographic library * * A novel post-quantum scheme combining: * - SLSS: Sparse Lattice Subset Sum (combines subset sum with lattice hardness) * - TDD: Tensor Decomposition Distinguishing (multilinear algebra hard problem) * - EGRW: Expander Graph Random Walk (number-theoretic path problem) * * These problems are entangled cryptographically, requiring an attacker to * break ALL THREE simultaneously to compromise the system. */ declare const crypto: { kem: { generateKeyPair: () => Promise; encapsulate: (pk: import("./types.js").MOSAICPublicKey) => Promise; decapsulate: (ct: import("./types.js").MOSAICCiphertext, sk: import("./types.js").MOSAICSecretKey, pk: import("./types.js").MOSAICPublicKey) => Promise>; encrypt: (message: Uint8Array, pk: import("./types.js").MOSAICPublicKey) => Promise>; decrypt: (ciphertext: Uint8Array, sk: import("./types.js").MOSAICSecretKey, pk: import("./types.js").MOSAICPublicKey) => Promise>; }; sign: { generateKeyPair: () => Promise; sign: (message: Uint8Array, sk: import("./types.js").MOSAICSecretKey, pk: import("./types.js").MOSAICPublicKey) => Promise; verify: (message: Uint8Array, sig: import("./types.js").MOSAICSignature, pk: import("./types.js").MOSAICPublicKey) => Promise; }; params: { "MOS-128": () => Promise; "MOS-256": () => Promise; }; }; export default crypto; export declare const CLI_VERSION = "1.0.0"; export declare const ALGORITHM_NAME = "kMOSAIC"; export declare const ALGORITHM_VERSION = "1.0"; /** * Algorithm description for documentation purposes */ export declare const ALGORITHM_INFO: { name: string; fullName: string; version: string; securityLevels: SecurityLevel[]; hardProblems: { name: string; fullName: string; description: string; complexity: string; }[]; entanglement: { description: string; benefit: string; }; features: { kem: string; signatures: string; hybridReady: string; }; }; //# sourceMappingURL=index.d.ts.map