@omnituum/pqc-shared 0.4.0 → 0.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/crypto/index.cjs +10 -0
- package/dist/crypto/index.d.cts +11 -1
- package/dist/crypto/index.d.ts +11 -1
- package/dist/crypto/index.js +6 -1
- package/dist/index.cjs +10 -0
- package/dist/index.d.cts +3 -3
- package/dist/index.d.ts +3 -3
- package/dist/index.js +6 -1
- package/dist/{integrity-ByMp24VA.d.cts → integrity-BenoFsmP.d.cts} +1 -1
- package/dist/{integrity-BPvNsC50.d.ts → integrity-D9J98Bty.d.ts} +1 -1
- package/dist/{types-Dx_AFqow.d.cts → types-CRka8PC7.d.cts} +1 -1
- package/dist/{types-Dx_AFqow.d.ts → types-CRka8PC7.d.ts} +1 -1
- package/dist/utils/index.d.cts +2 -2
- package/dist/utils/index.d.ts +2 -2
- package/dist/vault/index.d.cts +2 -2
- package/dist/vault/index.d.ts +2 -2
- package/package.json +13 -19
- package/src/crypto/index.ts +6 -1
- package/src/crypto/kyber.ts +20 -0
- package/src/index.ts +5 -0
package/dist/crypto/index.cjs
CHANGED
|
@@ -201,6 +201,11 @@ function deriveKeyFromShared(shared, salt, info) {
|
|
|
201
201
|
return hkdfSha256(shared, { salt: u8(salt), info: u8(info), length: 32 });
|
|
202
202
|
}
|
|
203
203
|
var KYBER_SUITE = "ML-KEM-1024-FIPS203";
|
|
204
|
+
var KYBER_PUBLIC_KEY_SIZE = 1568;
|
|
205
|
+
var KYBER_SECRET_KEY_SIZE = 3168;
|
|
206
|
+
var KYBER_CIPHERTEXT_SIZE = 1568;
|
|
207
|
+
var KYBER_SHARED_SECRET_SIZE = 32;
|
|
208
|
+
var KYBER_SEED_SIZE = 64;
|
|
204
209
|
async function isKyberAvailable() {
|
|
205
210
|
return true;
|
|
206
211
|
}
|
|
@@ -689,6 +694,11 @@ exports.HKDF_SHA256_MAX_OUTPUT = HKDF_SHA256_MAX_OUTPUT;
|
|
|
689
694
|
exports.HKDF_SHA256_OUTPUT_SIZE = HKDF_SHA256_OUTPUT_SIZE;
|
|
690
695
|
exports.HKDF_SHA512_MAX_OUTPUT = HKDF_SHA512_MAX_OUTPUT;
|
|
691
696
|
exports.HKDF_SHA512_OUTPUT_SIZE = HKDF_SHA512_OUTPUT_SIZE;
|
|
697
|
+
exports.KYBER_CIPHERTEXT_SIZE = KYBER_CIPHERTEXT_SIZE;
|
|
698
|
+
exports.KYBER_PUBLIC_KEY_SIZE = KYBER_PUBLIC_KEY_SIZE;
|
|
699
|
+
exports.KYBER_SECRET_KEY_SIZE = KYBER_SECRET_KEY_SIZE;
|
|
700
|
+
exports.KYBER_SEED_SIZE = KYBER_SEED_SIZE;
|
|
701
|
+
exports.KYBER_SHARED_SECRET_SIZE = KYBER_SHARED_SECRET_SIZE;
|
|
692
702
|
exports.KYBER_SUITE = KYBER_SUITE;
|
|
693
703
|
exports.POLY1305_TAG_SIZE = POLY1305_TAG_SIZE;
|
|
694
704
|
exports.SECRETBOX_KEY_SIZE = SECRETBOX_KEY_SIZE;
|
package/dist/crypto/index.d.cts
CHANGED
|
@@ -35,6 +35,16 @@ interface KyberEncapsulation {
|
|
|
35
35
|
/** Canonical suite identifier for new material produced by this package. */
|
|
36
36
|
declare const KYBER_SUITE: "ML-KEM-1024-FIPS203";
|
|
37
37
|
type KyberSuite = typeof KYBER_SUITE;
|
|
38
|
+
/** ML-KEM-1024 public key size (bytes). */
|
|
39
|
+
declare const KYBER_PUBLIC_KEY_SIZE = 1568;
|
|
40
|
+
/** ML-KEM-1024 secret key size (bytes). */
|
|
41
|
+
declare const KYBER_SECRET_KEY_SIZE = 3168;
|
|
42
|
+
/** ML-KEM-1024 ciphertext size (bytes). */
|
|
43
|
+
declare const KYBER_CIPHERTEXT_SIZE = 1568;
|
|
44
|
+
/** ML-KEM-1024 shared-secret size (bytes). */
|
|
45
|
+
declare const KYBER_SHARED_SECRET_SIZE = 32;
|
|
46
|
+
/** Seed size accepted by `generateKyberKeypairFromSeed` (bytes). */
|
|
47
|
+
declare const KYBER_SEED_SIZE = 64;
|
|
38
48
|
/**
|
|
39
49
|
* @deprecated Always returns true. Retained for API stability across the
|
|
40
50
|
* 0.3.x → 0.4.x cut. The noble backend is statically imported and always
|
|
@@ -631,4 +641,4 @@ declare const BOX_KEY_SIZE: number;
|
|
|
631
641
|
/** NaCl box nonce size (24 bytes) */
|
|
632
642
|
declare const BOX_NONCE_SIZE: number;
|
|
633
643
|
|
|
634
|
-
export { BLAKE3_BLOCK_SIZE, BLAKE3_KEY_LENGTH, BLAKE3_OUTPUT_LENGTH, BOX_KEY_SIZE, BOX_NONCE_SIZE, type Blake3Options, type BoxPayload, CHACHA20_KEY_SIZE, CHACHA20_NONCE_SIZE, type ChaChaPayload, type ClassicalWrap, DILITHIUM_ALGORITHM, DILITHIUM_PUBLIC_KEY_SIZE, DILITHIUM_SECRET_KEY_SIZE, DILITHIUM_SIGNATURE_SIZE, type DilithiumKeypair, type DilithiumKeypairB64, type DilithiumSignature, HKDF_SHA256_MAX_OUTPUT, HKDF_SHA256_OUTPUT_SIZE, HKDF_SHA512_MAX_OUTPUT, HKDF_SHA512_OUTPUT_SIZE, type HkdfHash, type HkdfOptions, type HybridEnvelope, type HybridIdentity, type HybridPublicKeys, type HybridSecretKeys, KYBER_SUITE, type KyberEncapsulation, type KyberKeypair, type KyberKeypairB64, type KyberSuite, POLY1305_TAG_SIZE, SECRETBOX_KEY_SIZE, SECRETBOX_NONCE_SIZE, SECRETBOX_OVERHEAD, type SecretboxPayload, type X25519Keypair, type X25519KeypairHex, XCHACHA20_NONCE_SIZE, assertLen, b64, blake3, blake3DeriveKey, blake3Hex, blake3Mac, boxDecrypt, boxEncrypt, boxUnwrapWithX25519, boxWrapWithX25519, chaCha20Poly1305Decrypt, chaCha20Poly1305Encrypt, createChaCha20Poly1305, createXChaCha20Poly1305, deriveKeyFromShared, dilithiumSign, dilithiumSignRaw, dilithiumVerify, dilithiumVerifyRaw, fromB64, fromHex, generateDilithiumKeypair, generateDilithiumKeypairFromSeed, generateHybridIdentity, generateKyberKeypair, generateKyberKeypairFromSeed, generateX25519Keypair, generateX25519KeypairFromSeed, getPublicKeys, getSecretKeys, hkdfDerive, hkdfExpand, hkdfExtract, hkdfSha256, hkdfSplitForNoise, hkdfTripleSplitForNoise, hybridDecrypt, hybridDecryptToString, hybridEncrypt, isDilithiumAvailable, isKyberAvailable, kyberDecapsulate, kyberEncapsulate, kyberUnwrapKey, kyberWrapKey, rand12, rand24, rand32, randN, rotateHybridIdentity, secretboxDecrypt, secretboxDecryptString, secretboxEncrypt, secretboxEncryptString, secretboxOpenRaw, secretboxRaw, sha256, sha256String, textDecoder, textEncoder, toB64, toHex, u8, ub64, x25519SharedSecret, xChaCha20Poly1305Decrypt, xChaCha20Poly1305Encrypt };
|
|
644
|
+
export { BLAKE3_BLOCK_SIZE, BLAKE3_KEY_LENGTH, BLAKE3_OUTPUT_LENGTH, BOX_KEY_SIZE, BOX_NONCE_SIZE, type Blake3Options, type BoxPayload, CHACHA20_KEY_SIZE, CHACHA20_NONCE_SIZE, type ChaChaPayload, type ClassicalWrap, DILITHIUM_ALGORITHM, DILITHIUM_PUBLIC_KEY_SIZE, DILITHIUM_SECRET_KEY_SIZE, DILITHIUM_SIGNATURE_SIZE, type DilithiumKeypair, type DilithiumKeypairB64, type DilithiumSignature, HKDF_SHA256_MAX_OUTPUT, HKDF_SHA256_OUTPUT_SIZE, HKDF_SHA512_MAX_OUTPUT, HKDF_SHA512_OUTPUT_SIZE, type HkdfHash, type HkdfOptions, type HybridEnvelope, type HybridIdentity, type HybridPublicKeys, type HybridSecretKeys, KYBER_CIPHERTEXT_SIZE, KYBER_PUBLIC_KEY_SIZE, KYBER_SECRET_KEY_SIZE, KYBER_SEED_SIZE, KYBER_SHARED_SECRET_SIZE, KYBER_SUITE, type KyberEncapsulation, type KyberKeypair, type KyberKeypairB64, type KyberSuite, POLY1305_TAG_SIZE, SECRETBOX_KEY_SIZE, SECRETBOX_NONCE_SIZE, SECRETBOX_OVERHEAD, type SecretboxPayload, type X25519Keypair, type X25519KeypairHex, XCHACHA20_NONCE_SIZE, assertLen, b64, blake3, blake3DeriveKey, blake3Hex, blake3Mac, boxDecrypt, boxEncrypt, boxUnwrapWithX25519, boxWrapWithX25519, chaCha20Poly1305Decrypt, chaCha20Poly1305Encrypt, createChaCha20Poly1305, createXChaCha20Poly1305, deriveKeyFromShared, dilithiumSign, dilithiumSignRaw, dilithiumVerify, dilithiumVerifyRaw, fromB64, fromHex, generateDilithiumKeypair, generateDilithiumKeypairFromSeed, generateHybridIdentity, generateKyberKeypair, generateKyberKeypairFromSeed, generateX25519Keypair, generateX25519KeypairFromSeed, getPublicKeys, getSecretKeys, hkdfDerive, hkdfExpand, hkdfExtract, hkdfSha256, hkdfSplitForNoise, hkdfTripleSplitForNoise, hybridDecrypt, hybridDecryptToString, hybridEncrypt, isDilithiumAvailable, isKyberAvailable, kyberDecapsulate, kyberEncapsulate, kyberUnwrapKey, kyberWrapKey, rand12, rand24, rand32, randN, rotateHybridIdentity, secretboxDecrypt, secretboxDecryptString, secretboxEncrypt, secretboxEncryptString, secretboxOpenRaw, secretboxRaw, sha256, sha256String, textDecoder, textEncoder, toB64, toHex, u8, ub64, x25519SharedSecret, xChaCha20Poly1305Decrypt, xChaCha20Poly1305Encrypt };
|
package/dist/crypto/index.d.ts
CHANGED
|
@@ -35,6 +35,16 @@ interface KyberEncapsulation {
|
|
|
35
35
|
/** Canonical suite identifier for new material produced by this package. */
|
|
36
36
|
declare const KYBER_SUITE: "ML-KEM-1024-FIPS203";
|
|
37
37
|
type KyberSuite = typeof KYBER_SUITE;
|
|
38
|
+
/** ML-KEM-1024 public key size (bytes). */
|
|
39
|
+
declare const KYBER_PUBLIC_KEY_SIZE = 1568;
|
|
40
|
+
/** ML-KEM-1024 secret key size (bytes). */
|
|
41
|
+
declare const KYBER_SECRET_KEY_SIZE = 3168;
|
|
42
|
+
/** ML-KEM-1024 ciphertext size (bytes). */
|
|
43
|
+
declare const KYBER_CIPHERTEXT_SIZE = 1568;
|
|
44
|
+
/** ML-KEM-1024 shared-secret size (bytes). */
|
|
45
|
+
declare const KYBER_SHARED_SECRET_SIZE = 32;
|
|
46
|
+
/** Seed size accepted by `generateKyberKeypairFromSeed` (bytes). */
|
|
47
|
+
declare const KYBER_SEED_SIZE = 64;
|
|
38
48
|
/**
|
|
39
49
|
* @deprecated Always returns true. Retained for API stability across the
|
|
40
50
|
* 0.3.x → 0.4.x cut. The noble backend is statically imported and always
|
|
@@ -631,4 +641,4 @@ declare const BOX_KEY_SIZE: number;
|
|
|
631
641
|
/** NaCl box nonce size (24 bytes) */
|
|
632
642
|
declare const BOX_NONCE_SIZE: number;
|
|
633
643
|
|
|
634
|
-
export { BLAKE3_BLOCK_SIZE, BLAKE3_KEY_LENGTH, BLAKE3_OUTPUT_LENGTH, BOX_KEY_SIZE, BOX_NONCE_SIZE, type Blake3Options, type BoxPayload, CHACHA20_KEY_SIZE, CHACHA20_NONCE_SIZE, type ChaChaPayload, type ClassicalWrap, DILITHIUM_ALGORITHM, DILITHIUM_PUBLIC_KEY_SIZE, DILITHIUM_SECRET_KEY_SIZE, DILITHIUM_SIGNATURE_SIZE, type DilithiumKeypair, type DilithiumKeypairB64, type DilithiumSignature, HKDF_SHA256_MAX_OUTPUT, HKDF_SHA256_OUTPUT_SIZE, HKDF_SHA512_MAX_OUTPUT, HKDF_SHA512_OUTPUT_SIZE, type HkdfHash, type HkdfOptions, type HybridEnvelope, type HybridIdentity, type HybridPublicKeys, type HybridSecretKeys, KYBER_SUITE, type KyberEncapsulation, type KyberKeypair, type KyberKeypairB64, type KyberSuite, POLY1305_TAG_SIZE, SECRETBOX_KEY_SIZE, SECRETBOX_NONCE_SIZE, SECRETBOX_OVERHEAD, type SecretboxPayload, type X25519Keypair, type X25519KeypairHex, XCHACHA20_NONCE_SIZE, assertLen, b64, blake3, blake3DeriveKey, blake3Hex, blake3Mac, boxDecrypt, boxEncrypt, boxUnwrapWithX25519, boxWrapWithX25519, chaCha20Poly1305Decrypt, chaCha20Poly1305Encrypt, createChaCha20Poly1305, createXChaCha20Poly1305, deriveKeyFromShared, dilithiumSign, dilithiumSignRaw, dilithiumVerify, dilithiumVerifyRaw, fromB64, fromHex, generateDilithiumKeypair, generateDilithiumKeypairFromSeed, generateHybridIdentity, generateKyberKeypair, generateKyberKeypairFromSeed, generateX25519Keypair, generateX25519KeypairFromSeed, getPublicKeys, getSecretKeys, hkdfDerive, hkdfExpand, hkdfExtract, hkdfSha256, hkdfSplitForNoise, hkdfTripleSplitForNoise, hybridDecrypt, hybridDecryptToString, hybridEncrypt, isDilithiumAvailable, isKyberAvailable, kyberDecapsulate, kyberEncapsulate, kyberUnwrapKey, kyberWrapKey, rand12, rand24, rand32, randN, rotateHybridIdentity, secretboxDecrypt, secretboxDecryptString, secretboxEncrypt, secretboxEncryptString, secretboxOpenRaw, secretboxRaw, sha256, sha256String, textDecoder, textEncoder, toB64, toHex, u8, ub64, x25519SharedSecret, xChaCha20Poly1305Decrypt, xChaCha20Poly1305Encrypt };
|
|
644
|
+
export { BLAKE3_BLOCK_SIZE, BLAKE3_KEY_LENGTH, BLAKE3_OUTPUT_LENGTH, BOX_KEY_SIZE, BOX_NONCE_SIZE, type Blake3Options, type BoxPayload, CHACHA20_KEY_SIZE, CHACHA20_NONCE_SIZE, type ChaChaPayload, type ClassicalWrap, DILITHIUM_ALGORITHM, DILITHIUM_PUBLIC_KEY_SIZE, DILITHIUM_SECRET_KEY_SIZE, DILITHIUM_SIGNATURE_SIZE, type DilithiumKeypair, type DilithiumKeypairB64, type DilithiumSignature, HKDF_SHA256_MAX_OUTPUT, HKDF_SHA256_OUTPUT_SIZE, HKDF_SHA512_MAX_OUTPUT, HKDF_SHA512_OUTPUT_SIZE, type HkdfHash, type HkdfOptions, type HybridEnvelope, type HybridIdentity, type HybridPublicKeys, type HybridSecretKeys, KYBER_CIPHERTEXT_SIZE, KYBER_PUBLIC_KEY_SIZE, KYBER_SECRET_KEY_SIZE, KYBER_SEED_SIZE, KYBER_SHARED_SECRET_SIZE, KYBER_SUITE, type KyberEncapsulation, type KyberKeypair, type KyberKeypairB64, type KyberSuite, POLY1305_TAG_SIZE, SECRETBOX_KEY_SIZE, SECRETBOX_NONCE_SIZE, SECRETBOX_OVERHEAD, type SecretboxPayload, type X25519Keypair, type X25519KeypairHex, XCHACHA20_NONCE_SIZE, assertLen, b64, blake3, blake3DeriveKey, blake3Hex, blake3Mac, boxDecrypt, boxEncrypt, boxUnwrapWithX25519, boxWrapWithX25519, chaCha20Poly1305Decrypt, chaCha20Poly1305Encrypt, createChaCha20Poly1305, createXChaCha20Poly1305, deriveKeyFromShared, dilithiumSign, dilithiumSignRaw, dilithiumVerify, dilithiumVerifyRaw, fromB64, fromHex, generateDilithiumKeypair, generateDilithiumKeypairFromSeed, generateHybridIdentity, generateKyberKeypair, generateKyberKeypairFromSeed, generateX25519Keypair, generateX25519KeypairFromSeed, getPublicKeys, getSecretKeys, hkdfDerive, hkdfExpand, hkdfExtract, hkdfSha256, hkdfSplitForNoise, hkdfTripleSplitForNoise, hybridDecrypt, hybridDecryptToString, hybridEncrypt, isDilithiumAvailable, isKyberAvailable, kyberDecapsulate, kyberEncapsulate, kyberUnwrapKey, kyberWrapKey, rand12, rand24, rand32, randN, rotateHybridIdentity, secretboxDecrypt, secretboxDecryptString, secretboxEncrypt, secretboxEncryptString, secretboxOpenRaw, secretboxRaw, sha256, sha256String, textDecoder, textEncoder, toB64, toHex, u8, ub64, x25519SharedSecret, xChaCha20Poly1305Decrypt, xChaCha20Poly1305Encrypt };
|
package/dist/crypto/index.js
CHANGED
|
@@ -195,6 +195,11 @@ function deriveKeyFromShared(shared, salt, info) {
|
|
|
195
195
|
return hkdfSha256(shared, { salt: u8(salt), info: u8(info), length: 32 });
|
|
196
196
|
}
|
|
197
197
|
var KYBER_SUITE = "ML-KEM-1024-FIPS203";
|
|
198
|
+
var KYBER_PUBLIC_KEY_SIZE = 1568;
|
|
199
|
+
var KYBER_SECRET_KEY_SIZE = 3168;
|
|
200
|
+
var KYBER_CIPHERTEXT_SIZE = 1568;
|
|
201
|
+
var KYBER_SHARED_SECRET_SIZE = 32;
|
|
202
|
+
var KYBER_SEED_SIZE = 64;
|
|
198
203
|
async function isKyberAvailable() {
|
|
199
204
|
return true;
|
|
200
205
|
}
|
|
@@ -668,4 +673,4 @@ var HKDF_SHA512_OUTPUT_SIZE = 64;
|
|
|
668
673
|
var HKDF_SHA256_MAX_OUTPUT = 255 * 32;
|
|
669
674
|
var HKDF_SHA512_MAX_OUTPUT = 255 * 64;
|
|
670
675
|
|
|
671
|
-
export { BLAKE3_BLOCK_SIZE, BLAKE3_KEY_LENGTH, BLAKE3_OUTPUT_LENGTH, BOX_KEY_SIZE, BOX_NONCE_SIZE, CHACHA20_KEY_SIZE, CHACHA20_NONCE_SIZE, DILITHIUM_ALGORITHM, DILITHIUM_PUBLIC_KEY_SIZE, DILITHIUM_SECRET_KEY_SIZE, DILITHIUM_SIGNATURE_SIZE, HKDF_SHA256_MAX_OUTPUT, HKDF_SHA256_OUTPUT_SIZE, HKDF_SHA512_MAX_OUTPUT, HKDF_SHA512_OUTPUT_SIZE, KYBER_SUITE, POLY1305_TAG_SIZE, SECRETBOX_KEY_SIZE, SECRETBOX_NONCE_SIZE, SECRETBOX_OVERHEAD, XCHACHA20_NONCE_SIZE, assertLen, b64, blake3, blake3DeriveKey, blake3Hex, blake3Mac, boxDecrypt, boxEncrypt, boxUnwrapWithX25519, boxWrapWithX25519, chaCha20Poly1305Decrypt, chaCha20Poly1305Encrypt, createChaCha20Poly1305, createXChaCha20Poly1305, deriveKeyFromShared, dilithiumSign, dilithiumSignRaw, dilithiumVerify, dilithiumVerifyRaw, fromB64, fromHex, generateDilithiumKeypair, generateDilithiumKeypairFromSeed, generateHybridIdentity, generateKyberKeypair, generateKyberKeypairFromSeed, generateX25519Keypair, generateX25519KeypairFromSeed, getPublicKeys, getSecretKeys, hkdfDerive, hkdfExpand, hkdfExtract, hkdfSha256, hkdfSplitForNoise, hkdfTripleSplitForNoise, hybridDecrypt, hybridDecryptToString, hybridEncrypt, isDilithiumAvailable, isKyberAvailable, kyberDecapsulate, kyberEncapsulate, kyberUnwrapKey, kyberWrapKey, rand12, rand24, rand32, randN, rotateHybridIdentity, secretboxDecrypt, secretboxDecryptString, secretboxEncrypt, secretboxEncryptString, secretboxOpenRaw, secretboxRaw, sha256, sha256String, textDecoder, textEncoder, toB64, toHex, u8, ub64, x25519SharedSecret, xChaCha20Poly1305Decrypt, xChaCha20Poly1305Encrypt };
|
|
676
|
+
export { BLAKE3_BLOCK_SIZE, BLAKE3_KEY_LENGTH, BLAKE3_OUTPUT_LENGTH, BOX_KEY_SIZE, BOX_NONCE_SIZE, CHACHA20_KEY_SIZE, CHACHA20_NONCE_SIZE, DILITHIUM_ALGORITHM, DILITHIUM_PUBLIC_KEY_SIZE, DILITHIUM_SECRET_KEY_SIZE, DILITHIUM_SIGNATURE_SIZE, HKDF_SHA256_MAX_OUTPUT, HKDF_SHA256_OUTPUT_SIZE, HKDF_SHA512_MAX_OUTPUT, HKDF_SHA512_OUTPUT_SIZE, KYBER_CIPHERTEXT_SIZE, KYBER_PUBLIC_KEY_SIZE, KYBER_SECRET_KEY_SIZE, KYBER_SEED_SIZE, KYBER_SHARED_SECRET_SIZE, KYBER_SUITE, POLY1305_TAG_SIZE, SECRETBOX_KEY_SIZE, SECRETBOX_NONCE_SIZE, SECRETBOX_OVERHEAD, XCHACHA20_NONCE_SIZE, assertLen, b64, blake3, blake3DeriveKey, blake3Hex, blake3Mac, boxDecrypt, boxEncrypt, boxUnwrapWithX25519, boxWrapWithX25519, chaCha20Poly1305Decrypt, chaCha20Poly1305Encrypt, createChaCha20Poly1305, createXChaCha20Poly1305, deriveKeyFromShared, dilithiumSign, dilithiumSignRaw, dilithiumVerify, dilithiumVerifyRaw, fromB64, fromHex, generateDilithiumKeypair, generateDilithiumKeypairFromSeed, generateHybridIdentity, generateKyberKeypair, generateKyberKeypairFromSeed, generateX25519Keypair, generateX25519KeypairFromSeed, getPublicKeys, getSecretKeys, hkdfDerive, hkdfExpand, hkdfExtract, hkdfSha256, hkdfSplitForNoise, hkdfTripleSplitForNoise, hybridDecrypt, hybridDecryptToString, hybridEncrypt, isDilithiumAvailable, isKyberAvailable, kyberDecapsulate, kyberEncapsulate, kyberUnwrapKey, kyberWrapKey, rand12, rand24, rand32, randN, rotateHybridIdentity, secretboxDecrypt, secretboxDecryptString, secretboxEncrypt, secretboxEncryptString, secretboxOpenRaw, secretboxRaw, sha256, sha256String, textDecoder, textEncoder, toB64, toHex, u8, ub64, x25519SharedSecret, xChaCha20Poly1305Decrypt, xChaCha20Poly1305Encrypt };
|
package/dist/index.cjs
CHANGED
|
@@ -155,6 +155,11 @@ function deriveKeyFromShared(shared, salt, info) {
|
|
|
155
155
|
return hkdfSha256(shared, { salt: u8(salt), info: u8(info), length: 32 });
|
|
156
156
|
}
|
|
157
157
|
var KYBER_SUITE = "ML-KEM-1024-FIPS203";
|
|
158
|
+
var KYBER_PUBLIC_KEY_SIZE = 1568;
|
|
159
|
+
var KYBER_SECRET_KEY_SIZE = 3168;
|
|
160
|
+
var KYBER_CIPHERTEXT_SIZE = 1568;
|
|
161
|
+
var KYBER_SHARED_SECRET_SIZE = 32;
|
|
162
|
+
var KYBER_SEED_SIZE = 64;
|
|
158
163
|
async function isKyberAvailable() {
|
|
159
164
|
return true;
|
|
160
165
|
}
|
|
@@ -2002,6 +2007,11 @@ exports.ENVELOPE_SUITE = ENVELOPE_SUITE;
|
|
|
2002
2007
|
exports.ENVELOPE_VERSION = ENVELOPE_VERSION;
|
|
2003
2008
|
exports.KDF_CONFIG_ARGON2ID = KDF_CONFIG_ARGON2ID;
|
|
2004
2009
|
exports.KDF_CONFIG_PBKDF2 = KDF_CONFIG_PBKDF2;
|
|
2010
|
+
exports.KYBER_CIPHERTEXT_SIZE = KYBER_CIPHERTEXT_SIZE;
|
|
2011
|
+
exports.KYBER_PUBLIC_KEY_SIZE = KYBER_PUBLIC_KEY_SIZE;
|
|
2012
|
+
exports.KYBER_SECRET_KEY_SIZE = KYBER_SECRET_KEY_SIZE;
|
|
2013
|
+
exports.KYBER_SEED_SIZE = KYBER_SEED_SIZE;
|
|
2014
|
+
exports.KYBER_SHARED_SECRET_SIZE = KYBER_SHARED_SECRET_SIZE;
|
|
2005
2015
|
exports.KYBER_SUITE = KYBER_SUITE;
|
|
2006
2016
|
exports.POLY1305_TAG_SIZE = POLY1305_TAG_SIZE;
|
|
2007
2017
|
exports.SECRETBOX_KEY_SIZE = SECRETBOX_KEY_SIZE;
|
package/dist/index.d.cts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export { BLAKE3_OUTPUT_LENGTH, BOX_KEY_SIZE, BOX_NONCE_SIZE, BoxPayload, CHACHA20_KEY_SIZE, ClassicalWrap, DILITHIUM_ALGORITHM, DILITHIUM_PUBLIC_KEY_SIZE, DILITHIUM_SECRET_KEY_SIZE, DILITHIUM_SIGNATURE_SIZE, DilithiumKeypair, DilithiumKeypairB64, DilithiumSignature, HybridEnvelope, HybridIdentity, HybridPublicKeys, HybridSecretKeys, KYBER_SUITE, KyberEncapsulation, KyberKeypair, KyberKeypairB64, KyberSuite, POLY1305_TAG_SIZE, SECRETBOX_KEY_SIZE, SECRETBOX_NONCE_SIZE, SECRETBOX_OVERHEAD, SecretboxPayload, X25519Keypair, X25519KeypairHex, XCHACHA20_NONCE_SIZE, assertLen, b64, blake3, blake3DeriveKey, blake3Hex, blake3Mac, boxDecrypt, boxEncrypt, boxUnwrapWithX25519, boxWrapWithX25519, chaCha20Poly1305Decrypt, chaCha20Poly1305Encrypt, createChaCha20Poly1305, createXChaCha20Poly1305, deriveKeyFromShared, dilithiumSign, dilithiumSignRaw, dilithiumVerify, dilithiumVerifyRaw, fromB64, fromHex, generateDilithiumKeypair, generateDilithiumKeypairFromSeed, generateHybridIdentity, generateKyberKeypair, generateKyberKeypairFromSeed, generateX25519Keypair, generateX25519KeypairFromSeed, getPublicKeys, getSecretKeys, hkdfDerive, hkdfExpand, hkdfExtract, hkdfSha256, hkdfSplitForNoise, hkdfTripleSplitForNoise, hybridDecrypt, hybridDecryptToString, hybridEncrypt, isDilithiumAvailable, isKyberAvailable, kyberDecapsulate, kyberEncapsulate, kyberUnwrapKey, kyberWrapKey, rand12, rand24, rand32, randN, secretboxDecrypt, secretboxDecryptString, secretboxEncrypt, secretboxEncryptString, secretboxOpenRaw, secretboxRaw, sha256, sha256String, textDecoder, textEncoder, toB64, toHex, u8, ub64, x25519SharedSecret, xChaCha20Poly1305Decrypt, xChaCha20Poly1305Encrypt } from './crypto/index.cjs';
|
|
2
|
-
export { e as ENVELOPE_AEAD, d as ENVELOPE_SUITE, c as ENVELOPE_VERSION, E as EncryptedVaultFile, H as HybridIdentityRecord, O as OmnituumVault, h as VAULT_ALGORITHM, a as VAULT_ENCRYPTED_VERSION, b as VAULT_ENCRYPTED_VERSION_V2, f as VAULT_KDF, g as VAULT_KDF_V2, V as VAULT_VERSION, j as validateEncryptedVault, i as validateEnvelope, v as validateVault } from './types-
|
|
1
|
+
export { BLAKE3_OUTPUT_LENGTH, BOX_KEY_SIZE, BOX_NONCE_SIZE, BoxPayload, CHACHA20_KEY_SIZE, ClassicalWrap, DILITHIUM_ALGORITHM, DILITHIUM_PUBLIC_KEY_SIZE, DILITHIUM_SECRET_KEY_SIZE, DILITHIUM_SIGNATURE_SIZE, DilithiumKeypair, DilithiumKeypairB64, DilithiumSignature, HybridEnvelope, HybridIdentity, HybridPublicKeys, HybridSecretKeys, KYBER_CIPHERTEXT_SIZE, KYBER_PUBLIC_KEY_SIZE, KYBER_SECRET_KEY_SIZE, KYBER_SEED_SIZE, KYBER_SHARED_SECRET_SIZE, KYBER_SUITE, KyberEncapsulation, KyberKeypair, KyberKeypairB64, KyberSuite, POLY1305_TAG_SIZE, SECRETBOX_KEY_SIZE, SECRETBOX_NONCE_SIZE, SECRETBOX_OVERHEAD, SecretboxPayload, X25519Keypair, X25519KeypairHex, XCHACHA20_NONCE_SIZE, assertLen, b64, blake3, blake3DeriveKey, blake3Hex, blake3Mac, boxDecrypt, boxEncrypt, boxUnwrapWithX25519, boxWrapWithX25519, chaCha20Poly1305Decrypt, chaCha20Poly1305Encrypt, createChaCha20Poly1305, createXChaCha20Poly1305, deriveKeyFromShared, dilithiumSign, dilithiumSignRaw, dilithiumVerify, dilithiumVerifyRaw, fromB64, fromHex, generateDilithiumKeypair, generateDilithiumKeypairFromSeed, generateHybridIdentity, generateKyberKeypair, generateKyberKeypairFromSeed, generateX25519Keypair, generateX25519KeypairFromSeed, getPublicKeys, getSecretKeys, hkdfDerive, hkdfExpand, hkdfExtract, hkdfSha256, hkdfSplitForNoise, hkdfTripleSplitForNoise, hybridDecrypt, hybridDecryptToString, hybridEncrypt, isDilithiumAvailable, isKyberAvailable, kyberDecapsulate, kyberEncapsulate, kyberUnwrapKey, kyberWrapKey, rand12, rand24, rand32, randN, secretboxDecrypt, secretboxDecryptString, secretboxEncrypt, secretboxEncryptString, secretboxOpenRaw, secretboxRaw, sha256, sha256String, textDecoder, textEncoder, toB64, toHex, u8, ub64, x25519SharedSecret, xChaCha20Poly1305Decrypt, xChaCha20Poly1305Encrypt } from './crypto/index.cjs';
|
|
2
|
+
export { e as ENVELOPE_AEAD, d as ENVELOPE_SUITE, c as ENVELOPE_VERSION, E as EncryptedVaultFile, H as HybridIdentityRecord, O as OmnituumVault, h as VAULT_ALGORITHM, a as VAULT_ENCRYPTED_VERSION, b as VAULT_ENCRYPTED_VERSION_V2, f as VAULT_KDF, g as VAULT_KDF_V2, V as VAULT_VERSION, j as validateEncryptedVault, i as validateEnvelope, v as validateVault } from './types-CRka8PC7.cjs';
|
|
3
3
|
export { MigrationOptions, MigrationResult, addIdentity, createEmptyVault, createIdentity, decryptVault, encryptVault, getVaultKdfInfo, isV2Vault, migrateEncryptedVault, needsMigration } from './vault/index.cjs';
|
|
4
|
-
export { c as computeIntegrityHash, b as computeKeyFingerprint } from './integrity-
|
|
4
|
+
export { c as computeIntegrityHash, b as computeKeyFingerprint } from './integrity-BenoFsmP.cjs';
|
|
5
5
|
export { D as DecryptOptions, E as EncryptOptions, c as OQEDecryptResult, O as OQEEncryptResult, d as decryptFile, b as decryptFileWithPassword, e as encryptFile, a as encryptFileWithPassword } from './decrypt-eSHlbh1j.cjs';
|
|
6
6
|
import '@omnituum/envelope-registry';
|
|
7
7
|
import '@noble/ciphers/utils.js';
|
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export { BLAKE3_OUTPUT_LENGTH, BOX_KEY_SIZE, BOX_NONCE_SIZE, BoxPayload, CHACHA20_KEY_SIZE, ClassicalWrap, DILITHIUM_ALGORITHM, DILITHIUM_PUBLIC_KEY_SIZE, DILITHIUM_SECRET_KEY_SIZE, DILITHIUM_SIGNATURE_SIZE, DilithiumKeypair, DilithiumKeypairB64, DilithiumSignature, HybridEnvelope, HybridIdentity, HybridPublicKeys, HybridSecretKeys, KYBER_SUITE, KyberEncapsulation, KyberKeypair, KyberKeypairB64, KyberSuite, POLY1305_TAG_SIZE, SECRETBOX_KEY_SIZE, SECRETBOX_NONCE_SIZE, SECRETBOX_OVERHEAD, SecretboxPayload, X25519Keypair, X25519KeypairHex, XCHACHA20_NONCE_SIZE, assertLen, b64, blake3, blake3DeriveKey, blake3Hex, blake3Mac, boxDecrypt, boxEncrypt, boxUnwrapWithX25519, boxWrapWithX25519, chaCha20Poly1305Decrypt, chaCha20Poly1305Encrypt, createChaCha20Poly1305, createXChaCha20Poly1305, deriveKeyFromShared, dilithiumSign, dilithiumSignRaw, dilithiumVerify, dilithiumVerifyRaw, fromB64, fromHex, generateDilithiumKeypair, generateDilithiumKeypairFromSeed, generateHybridIdentity, generateKyberKeypair, generateKyberKeypairFromSeed, generateX25519Keypair, generateX25519KeypairFromSeed, getPublicKeys, getSecretKeys, hkdfDerive, hkdfExpand, hkdfExtract, hkdfSha256, hkdfSplitForNoise, hkdfTripleSplitForNoise, hybridDecrypt, hybridDecryptToString, hybridEncrypt, isDilithiumAvailable, isKyberAvailable, kyberDecapsulate, kyberEncapsulate, kyberUnwrapKey, kyberWrapKey, rand12, rand24, rand32, randN, secretboxDecrypt, secretboxDecryptString, secretboxEncrypt, secretboxEncryptString, secretboxOpenRaw, secretboxRaw, sha256, sha256String, textDecoder, textEncoder, toB64, toHex, u8, ub64, x25519SharedSecret, xChaCha20Poly1305Decrypt, xChaCha20Poly1305Encrypt } from './crypto/index.js';
|
|
2
|
-
export { e as ENVELOPE_AEAD, d as ENVELOPE_SUITE, c as ENVELOPE_VERSION, E as EncryptedVaultFile, H as HybridIdentityRecord, O as OmnituumVault, h as VAULT_ALGORITHM, a as VAULT_ENCRYPTED_VERSION, b as VAULT_ENCRYPTED_VERSION_V2, f as VAULT_KDF, g as VAULT_KDF_V2, V as VAULT_VERSION, j as validateEncryptedVault, i as validateEnvelope, v as validateVault } from './types-
|
|
1
|
+
export { BLAKE3_OUTPUT_LENGTH, BOX_KEY_SIZE, BOX_NONCE_SIZE, BoxPayload, CHACHA20_KEY_SIZE, ClassicalWrap, DILITHIUM_ALGORITHM, DILITHIUM_PUBLIC_KEY_SIZE, DILITHIUM_SECRET_KEY_SIZE, DILITHIUM_SIGNATURE_SIZE, DilithiumKeypair, DilithiumKeypairB64, DilithiumSignature, HybridEnvelope, HybridIdentity, HybridPublicKeys, HybridSecretKeys, KYBER_CIPHERTEXT_SIZE, KYBER_PUBLIC_KEY_SIZE, KYBER_SECRET_KEY_SIZE, KYBER_SEED_SIZE, KYBER_SHARED_SECRET_SIZE, KYBER_SUITE, KyberEncapsulation, KyberKeypair, KyberKeypairB64, KyberSuite, POLY1305_TAG_SIZE, SECRETBOX_KEY_SIZE, SECRETBOX_NONCE_SIZE, SECRETBOX_OVERHEAD, SecretboxPayload, X25519Keypair, X25519KeypairHex, XCHACHA20_NONCE_SIZE, assertLen, b64, blake3, blake3DeriveKey, blake3Hex, blake3Mac, boxDecrypt, boxEncrypt, boxUnwrapWithX25519, boxWrapWithX25519, chaCha20Poly1305Decrypt, chaCha20Poly1305Encrypt, createChaCha20Poly1305, createXChaCha20Poly1305, deriveKeyFromShared, dilithiumSign, dilithiumSignRaw, dilithiumVerify, dilithiumVerifyRaw, fromB64, fromHex, generateDilithiumKeypair, generateDilithiumKeypairFromSeed, generateHybridIdentity, generateKyberKeypair, generateKyberKeypairFromSeed, generateX25519Keypair, generateX25519KeypairFromSeed, getPublicKeys, getSecretKeys, hkdfDerive, hkdfExpand, hkdfExtract, hkdfSha256, hkdfSplitForNoise, hkdfTripleSplitForNoise, hybridDecrypt, hybridDecryptToString, hybridEncrypt, isDilithiumAvailable, isKyberAvailable, kyberDecapsulate, kyberEncapsulate, kyberUnwrapKey, kyberWrapKey, rand12, rand24, rand32, randN, secretboxDecrypt, secretboxDecryptString, secretboxEncrypt, secretboxEncryptString, secretboxOpenRaw, secretboxRaw, sha256, sha256String, textDecoder, textEncoder, toB64, toHex, u8, ub64, x25519SharedSecret, xChaCha20Poly1305Decrypt, xChaCha20Poly1305Encrypt } from './crypto/index.js';
|
|
2
|
+
export { e as ENVELOPE_AEAD, d as ENVELOPE_SUITE, c as ENVELOPE_VERSION, E as EncryptedVaultFile, H as HybridIdentityRecord, O as OmnituumVault, h as VAULT_ALGORITHM, a as VAULT_ENCRYPTED_VERSION, b as VAULT_ENCRYPTED_VERSION_V2, f as VAULT_KDF, g as VAULT_KDF_V2, V as VAULT_VERSION, j as validateEncryptedVault, i as validateEnvelope, v as validateVault } from './types-CRka8PC7.js';
|
|
3
3
|
export { MigrationOptions, MigrationResult, addIdentity, createEmptyVault, createIdentity, decryptVault, encryptVault, getVaultKdfInfo, isV2Vault, migrateEncryptedVault, needsMigration } from './vault/index.js';
|
|
4
|
-
export { c as computeIntegrityHash, b as computeKeyFingerprint } from './integrity-
|
|
4
|
+
export { c as computeIntegrityHash, b as computeKeyFingerprint } from './integrity-D9J98Bty.js';
|
|
5
5
|
export { D as DecryptOptions, E as EncryptOptions, c as OQEDecryptResult, O as OQEEncryptResult, d as decryptFile, b as decryptFileWithPassword, e as encryptFile, a as encryptFileWithPassword } from './decrypt-eSHlbh1j.js';
|
|
6
6
|
import '@omnituum/envelope-registry';
|
|
7
7
|
import '@noble/ciphers/utils.js';
|
package/dist/index.js
CHANGED
|
@@ -149,6 +149,11 @@ function deriveKeyFromShared(shared, salt, info) {
|
|
|
149
149
|
return hkdfSha256(shared, { salt: u8(salt), info: u8(info), length: 32 });
|
|
150
150
|
}
|
|
151
151
|
var KYBER_SUITE = "ML-KEM-1024-FIPS203";
|
|
152
|
+
var KYBER_PUBLIC_KEY_SIZE = 1568;
|
|
153
|
+
var KYBER_SECRET_KEY_SIZE = 3168;
|
|
154
|
+
var KYBER_CIPHERTEXT_SIZE = 1568;
|
|
155
|
+
var KYBER_SHARED_SECRET_SIZE = 32;
|
|
156
|
+
var KYBER_SEED_SIZE = 64;
|
|
152
157
|
async function isKyberAvailable() {
|
|
153
158
|
return true;
|
|
154
159
|
}
|
|
@@ -1983,4 +1988,4 @@ function createTunnelSession(keys) {
|
|
|
1983
1988
|
};
|
|
1984
1989
|
}
|
|
1985
1990
|
|
|
1986
|
-
export { BLAKE3_OUTPUT_LENGTH, BOX_KEY_SIZE, BOX_NONCE_SIZE, CHACHA20_KEY_SIZE, DILITHIUM_ALGORITHM, DILITHIUM_PUBLIC_KEY_SIZE, DILITHIUM_SECRET_KEY_SIZE, DILITHIUM_SIGNATURE_SIZE, ENVELOPE_AEAD, ENVELOPE_SUITE, ENVELOPE_VERSION, KDF_CONFIG_ARGON2ID, KDF_CONFIG_PBKDF2, KYBER_SUITE, POLY1305_TAG_SIZE, SECRETBOX_KEY_SIZE, SECRETBOX_NONCE_SIZE, SECRETBOX_OVERHEAD, SecureBuffer, TUNNEL_KEY_SIZE, TUNNEL_NONCE_SIZE, TUNNEL_VERSION, VAULT_ALGORITHM, VAULT_ENCRYPTED_VERSION, VAULT_ENCRYPTED_VERSION_V2, VAULT_KDF, VAULT_KDF_V2, VAULT_VERSION, XCHACHA20_NONCE_SIZE, addIdentity, assertLen, b64, benchmarkKDF, blake3, blake3DeriveKey, blake3Hex, blake3Mac, boxDecrypt, boxEncrypt, boxUnwrapWithX25519, boxWrapWithX25519, chaCha20Poly1305Decrypt, chaCha20Poly1305Encrypt, computeIntegrityHash, computeKeyFingerprint, constantTimeEqual, createChaCha20Poly1305, createEmptyVault, createIdentity, createSession, createTunnelSession, createXChaCha20Poly1305, decryptFile, decryptFileWithPassword, decryptVault, deriveKeyFromShared, dilithiumSign, dilithiumSignRaw, dilithiumVerify, dilithiumVerifyRaw, encryptFile, encryptFileWithPassword, encryptVault, fromB64, fromHex, generateDilithiumKeypair, generateDilithiumKeypairFromSeed, generateHybridIdentity, generateKyberKeypair, generateKyberKeypairFromSeed, generateSalt, generateX25519Keypair, generateX25519KeypairFromSeed, getPublicKeys, getRecommendedConfig, getSecretKeys, getVaultKdfInfo, hkdfDerive, hkdfExpand, hkdfExtract, hkdfSha256, hkdfSplitForNoise, hkdfTripleSplitForNoise, hybridDecrypt, hybridDecryptToString, hybridEncrypt, isDilithiumAvailable, isKyberAvailable, isSessionTimedOut, isV2Vault, kdfDeriveKey, kyberDecapsulate, kyberEncapsulate, kyberUnwrapKey, kyberWrapKey, lockSecureSession, migrateEncryptedVault, needsMigration, rand12, rand24, rand32, randN, secretboxDecrypt, secretboxDecryptString, secretboxEncrypt, secretboxEncryptString, secretboxOpenRaw, secretboxRaw, sha256, sha256String, textDecoder, textEncoder, toB64, toHex, u8, ub64, unlockSecureSession, validateEncryptedVault, validateEnvelope, validateVault, withSecureData, x25519SharedSecret, xChaCha20Poly1305Decrypt, xChaCha20Poly1305Encrypt, zeroAll, zeroMemory };
|
|
1991
|
+
export { BLAKE3_OUTPUT_LENGTH, BOX_KEY_SIZE, BOX_NONCE_SIZE, CHACHA20_KEY_SIZE, DILITHIUM_ALGORITHM, DILITHIUM_PUBLIC_KEY_SIZE, DILITHIUM_SECRET_KEY_SIZE, DILITHIUM_SIGNATURE_SIZE, ENVELOPE_AEAD, ENVELOPE_SUITE, ENVELOPE_VERSION, KDF_CONFIG_ARGON2ID, KDF_CONFIG_PBKDF2, KYBER_CIPHERTEXT_SIZE, KYBER_PUBLIC_KEY_SIZE, KYBER_SECRET_KEY_SIZE, KYBER_SEED_SIZE, KYBER_SHARED_SECRET_SIZE, KYBER_SUITE, POLY1305_TAG_SIZE, SECRETBOX_KEY_SIZE, SECRETBOX_NONCE_SIZE, SECRETBOX_OVERHEAD, SecureBuffer, TUNNEL_KEY_SIZE, TUNNEL_NONCE_SIZE, TUNNEL_VERSION, VAULT_ALGORITHM, VAULT_ENCRYPTED_VERSION, VAULT_ENCRYPTED_VERSION_V2, VAULT_KDF, VAULT_KDF_V2, VAULT_VERSION, XCHACHA20_NONCE_SIZE, addIdentity, assertLen, b64, benchmarkKDF, blake3, blake3DeriveKey, blake3Hex, blake3Mac, boxDecrypt, boxEncrypt, boxUnwrapWithX25519, boxWrapWithX25519, chaCha20Poly1305Decrypt, chaCha20Poly1305Encrypt, computeIntegrityHash, computeKeyFingerprint, constantTimeEqual, createChaCha20Poly1305, createEmptyVault, createIdentity, createSession, createTunnelSession, createXChaCha20Poly1305, decryptFile, decryptFileWithPassword, decryptVault, deriveKeyFromShared, dilithiumSign, dilithiumSignRaw, dilithiumVerify, dilithiumVerifyRaw, encryptFile, encryptFileWithPassword, encryptVault, fromB64, fromHex, generateDilithiumKeypair, generateDilithiumKeypairFromSeed, generateHybridIdentity, generateKyberKeypair, generateKyberKeypairFromSeed, generateSalt, generateX25519Keypair, generateX25519KeypairFromSeed, getPublicKeys, getRecommendedConfig, getSecretKeys, getVaultKdfInfo, hkdfDerive, hkdfExpand, hkdfExtract, hkdfSha256, hkdfSplitForNoise, hkdfTripleSplitForNoise, hybridDecrypt, hybridDecryptToString, hybridEncrypt, isDilithiumAvailable, isKyberAvailable, isSessionTimedOut, isV2Vault, kdfDeriveKey, kyberDecapsulate, kyberEncapsulate, kyberUnwrapKey, kyberWrapKey, lockSecureSession, migrateEncryptedVault, needsMigration, rand12, rand24, rand32, randN, secretboxDecrypt, secretboxDecryptString, secretboxEncrypt, secretboxEncryptString, secretboxOpenRaw, secretboxRaw, sha256, sha256String, textDecoder, textEncoder, toB64, toHex, u8, ub64, unlockSecureSession, validateEncryptedVault, validateEnvelope, validateVault, withSecureData, x25519SharedSecret, xChaCha20Poly1305Decrypt, xChaCha20Poly1305Encrypt, zeroAll, zeroMemory };
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
* @see pqc-docs/specs/identity.v1.md
|
|
10
10
|
*/
|
|
11
11
|
/** HybridEnvelope version - hybrid encryption format (from registry) */
|
|
12
|
-
declare const ENVELOPE_VERSION:
|
|
12
|
+
declare const ENVELOPE_VERSION: any;
|
|
13
13
|
/** OmnituumVault version - decrypted vault format */
|
|
14
14
|
declare const VAULT_VERSION: "omnituum.vault.v1";
|
|
15
15
|
/** EncryptedVaultFile version - encrypted vault format (PBKDF2) */
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
* @see pqc-docs/specs/identity.v1.md
|
|
10
10
|
*/
|
|
11
11
|
/** HybridEnvelope version - hybrid encryption format (from registry) */
|
|
12
|
-
declare const ENVELOPE_VERSION:
|
|
12
|
+
declare const ENVELOPE_VERSION: any;
|
|
13
13
|
/** OmnituumVault version - decrypted vault format */
|
|
14
14
|
declare const VAULT_VERSION: "omnituum.vault.v1";
|
|
15
15
|
/** EncryptedVaultFile version - encrypted vault format (PBKDF2) */
|
package/dist/utils/index.d.cts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { a as computeHashAsync, c as computeIntegrityHash, b as computeKeyFingerprint, f as formatFingerprint, v as verifyIntegrity } from '../integrity-
|
|
2
|
-
import '../types-
|
|
1
|
+
export { a as computeHashAsync, c as computeIntegrityHash, b as computeKeyFingerprint, f as formatFingerprint, v as verifyIntegrity } from '../integrity-BenoFsmP.cjs';
|
|
2
|
+
import '../types-CRka8PC7.cjs';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* Omnituum PQC Shared - Entropy & Randomness Utilities
|
package/dist/utils/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { a as computeHashAsync, c as computeIntegrityHash, b as computeKeyFingerprint, f as formatFingerprint, v as verifyIntegrity } from '../integrity-
|
|
2
|
-
import '../types-
|
|
1
|
+
export { a as computeHashAsync, c as computeIntegrityHash, b as computeKeyFingerprint, f as formatFingerprint, v as verifyIntegrity } from '../integrity-D9J98Bty.js';
|
|
2
|
+
import '../types-CRka8PC7.js';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* Omnituum PQC Shared - Entropy & Randomness Utilities
|
package/dist/vault/index.d.cts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { O as OmnituumVault, E as EncryptedVaultFile, k as EncryptedVaultFileV2, H as HybridIdentityRecord, l as VaultSettings, m as VaultSession } from '../types-
|
|
2
|
-
export { D as DEFAULT_VAULT_SETTINGS, n as EncryptedVaultFileV1, o as HealthStatus, I as IdentityHealth, P as PBKDF2_ITERATIONS } from '../types-
|
|
1
|
+
import { O as OmnituumVault, E as EncryptedVaultFile, k as EncryptedVaultFileV2, H as HybridIdentityRecord, l as VaultSettings, m as VaultSession } from '../types-CRka8PC7.cjs';
|
|
2
|
+
export { D as DEFAULT_VAULT_SETTINGS, n as EncryptedVaultFileV1, o as HealthStatus, I as IdentityHealth, P as PBKDF2_ITERATIONS } from '../types-CRka8PC7.cjs';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* Omnituum PQC Shared - Vault Encryption
|
package/dist/vault/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { O as OmnituumVault, E as EncryptedVaultFile, k as EncryptedVaultFileV2, H as HybridIdentityRecord, l as VaultSettings, m as VaultSession } from '../types-
|
|
2
|
-
export { D as DEFAULT_VAULT_SETTINGS, n as EncryptedVaultFileV1, o as HealthStatus, I as IdentityHealth, P as PBKDF2_ITERATIONS } from '../types-
|
|
1
|
+
import { O as OmnituumVault, E as EncryptedVaultFile, k as EncryptedVaultFileV2, H as HybridIdentityRecord, l as VaultSettings, m as VaultSession } from '../types-CRka8PC7.js';
|
|
2
|
+
export { D as DEFAULT_VAULT_SETTINGS, n as EncryptedVaultFileV1, o as HealthStatus, I as IdentityHealth, P as PBKDF2_ITERATIONS } from '../types-CRka8PC7.js';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* Omnituum PQC Shared - Vault Encryption
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@omnituum/pqc-shared",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.1",
|
|
4
4
|
"description": "Omnituum PQC Shared Library - Crypto, Vault, File Encryption, and Utilities",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.cjs",
|
|
@@ -42,18 +42,6 @@
|
|
|
42
42
|
"dist",
|
|
43
43
|
"src"
|
|
44
44
|
],
|
|
45
|
-
"scripts": {
|
|
46
|
-
"build": "tsup",
|
|
47
|
-
"dev": "tsup --watch",
|
|
48
|
-
"clean": "rm -rf dist",
|
|
49
|
-
"typecheck": "tsc --noEmit",
|
|
50
|
-
"test:golden:generate": "pnpm -s build && tsx tests/golden/generate-vectors.ts",
|
|
51
|
-
"test:golden:verify": "pnpm -s build && tsx tests/golden/verify-vectors.ts",
|
|
52
|
-
"test:golden": "pnpm test:golden:verify",
|
|
53
|
-
"test": "vitest run tests/",
|
|
54
|
-
"test:watch": "vitest tests/",
|
|
55
|
-
"pretest": "pnpm build"
|
|
56
|
-
},
|
|
57
45
|
"dependencies": {
|
|
58
46
|
"@noble/ciphers": "~2.0.0",
|
|
59
47
|
"@noble/hashes": "~2.0.0",
|
|
@@ -91,10 +79,16 @@
|
|
|
91
79
|
"url": "https://github.com/Omnituum/pqc-shared/issues"
|
|
92
80
|
},
|
|
93
81
|
"homepage": "https://github.com/Omnituum/pqc-shared#readme",
|
|
94
|
-
"
|
|
95
|
-
|
|
96
|
-
"
|
|
97
|
-
|
|
98
|
-
|
|
82
|
+
"scripts": {
|
|
83
|
+
"build": "tsup",
|
|
84
|
+
"dev": "tsup --watch",
|
|
85
|
+
"clean": "rm -rf dist",
|
|
86
|
+
"typecheck": "tsc --noEmit",
|
|
87
|
+
"test:golden:generate": "pnpm -s build && tsx tests/golden/generate-vectors.ts",
|
|
88
|
+
"test:golden:verify": "pnpm -s build && tsx tests/golden/verify-vectors.ts",
|
|
89
|
+
"test:golden": "pnpm test:golden:verify",
|
|
90
|
+
"test": "vitest run tests/",
|
|
91
|
+
"test:watch": "vitest tests/",
|
|
92
|
+
"pretest": "pnpm build"
|
|
99
93
|
}
|
|
100
|
-
}
|
|
94
|
+
}
|
package/src/crypto/index.ts
CHANGED
|
@@ -71,7 +71,7 @@ export {
|
|
|
71
71
|
} from './x25519';
|
|
72
72
|
|
|
73
73
|
// ═══════════════════════════════════════════════════════════════════════════
|
|
74
|
-
// KYBER ML-KEM-
|
|
74
|
+
// KYBER ML-KEM-1024 (FIPS 203 — Post-Quantum KEM)
|
|
75
75
|
// ═══════════════════════════════════════════════════════════════════════════
|
|
76
76
|
|
|
77
77
|
export type {
|
|
@@ -89,6 +89,11 @@ export {
|
|
|
89
89
|
kyberWrapKey,
|
|
90
90
|
kyberUnwrapKey,
|
|
91
91
|
KYBER_SUITE,
|
|
92
|
+
KYBER_PUBLIC_KEY_SIZE,
|
|
93
|
+
KYBER_SECRET_KEY_SIZE,
|
|
94
|
+
KYBER_CIPHERTEXT_SIZE,
|
|
95
|
+
KYBER_SHARED_SECRET_SIZE,
|
|
96
|
+
KYBER_SEED_SIZE,
|
|
92
97
|
} from './kyber';
|
|
93
98
|
export type { KyberSuite } from './kyber';
|
|
94
99
|
|
package/src/crypto/kyber.ts
CHANGED
|
@@ -45,6 +45,26 @@ export interface KyberEncapsulation {
|
|
|
45
45
|
export const KYBER_SUITE = 'ML-KEM-1024-FIPS203' as const;
|
|
46
46
|
export type KyberSuite = typeof KYBER_SUITE;
|
|
47
47
|
|
|
48
|
+
// ─── Wire-format size constants (ML-KEM-1024, FIPS 203) ──────────────────────
|
|
49
|
+
// Exported so consumers can validate inputs and allocate buffers without
|
|
50
|
+
// restating magic literals. Tracked under PQC-08; mirrors the precedent
|
|
51
|
+
// established by DILITHIUM_PUBLIC_KEY_SIZE et al. in `./dilithium`.
|
|
52
|
+
|
|
53
|
+
/** ML-KEM-1024 public key size (bytes). */
|
|
54
|
+
export const KYBER_PUBLIC_KEY_SIZE = 1568;
|
|
55
|
+
|
|
56
|
+
/** ML-KEM-1024 secret key size (bytes). */
|
|
57
|
+
export const KYBER_SECRET_KEY_SIZE = 3168;
|
|
58
|
+
|
|
59
|
+
/** ML-KEM-1024 ciphertext size (bytes). */
|
|
60
|
+
export const KYBER_CIPHERTEXT_SIZE = 1568;
|
|
61
|
+
|
|
62
|
+
/** ML-KEM-1024 shared-secret size (bytes). */
|
|
63
|
+
export const KYBER_SHARED_SECRET_SIZE = 32;
|
|
64
|
+
|
|
65
|
+
/** Seed size accepted by `generateKyberKeypairFromSeed` (bytes). */
|
|
66
|
+
export const KYBER_SEED_SIZE = 64;
|
|
67
|
+
|
|
48
68
|
// ═══════════════════════════════════════════════════════════════════════════
|
|
49
69
|
// AVAILABILITY
|
|
50
70
|
// ═══════════════════════════════════════════════════════════════════════════
|
package/src/index.ts
CHANGED