aegis-aead 0.2.2 → 0.2.3
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/README.md +25 -20
- package/dist/aegis128l.d.ts +33 -33
- package/dist/aegis128l.js +225 -235
- package/dist/aegis128x.d.ts +35 -35
- package/dist/aegis128x.js +348 -282
- package/dist/aegis256.d.ts +34 -51
- package/dist/aegis256.js +215 -206
- package/dist/aegis256x.d.ts +32 -33
- package/dist/aegis256x.js +333 -265
- package/dist/aes-bs.d.ts +42 -35
- package/dist/aes-bs.js +2269 -401
- package/dist/index.d.ts +4 -7
- package/dist/index.js +4 -7
- package/dist/random.d.ts +0 -1
- package/dist/random.js +0 -1
- package/dist/utils.d.ts +14 -0
- package/dist/utils.js +31 -0
- package/package.json +5 -6
- package/dist/aegis128l-bs.d.ts +0 -137
- package/dist/aegis128l-bs.d.ts.map +0 -1
- package/dist/aegis128l-bs.js +0 -442
- package/dist/aegis128l-bs.js.map +0 -1
- package/dist/aegis128l.d.ts.map +0 -1
- package/dist/aegis128l.js.map +0 -1
- package/dist/aegis128x.d.ts.map +0 -1
- package/dist/aegis128x.js.map +0 -1
- package/dist/aegis256-bs.d.ts +0 -79
- package/dist/aegis256-bs.d.ts.map +0 -1
- package/dist/aegis256-bs.js +0 -366
- package/dist/aegis256-bs.js.map +0 -1
- package/dist/aegis256.d.ts.map +0 -1
- package/dist/aegis256.js.map +0 -1
- package/dist/aegis256x.d.ts.map +0 -1
- package/dist/aegis256x.js.map +0 -1
- package/dist/aes-bs.d.ts.map +0 -1
- package/dist/aes-bs.js.map +0 -1
- package/dist/aes.d.ts +0 -81
- package/dist/aes.d.ts.map +0 -1
- package/dist/aes.js +0 -232
- package/dist/aes.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/random.d.ts.map +0 -1
- package/dist/random.js.map +0 -1
- package/src/aegis128l-bs.ts +0 -600
- package/src/aegis128l.ts +0 -653
- package/src/aegis128x.ts +0 -932
- package/src/aegis256-bs.ts +0 -519
- package/src/aegis256.ts +0 -597
- package/src/aegis256x.ts +0 -893
- package/src/aes-bs.ts +0 -540
- package/src/aes.ts +0 -271
- package/src/index.ts +0 -126
- package/src/random.ts +0 -41
- package/src/typed-array.d.ts +0 -18
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,4 @@
|
|
|
1
|
-
export { AEGIS_128L_KEY_SIZE, AEGIS_128L_NONCE_SIZE, aegis128LCreateKey, aegis128LCreateNonce, aegis128LDecrypt, aegis128LDecryptDetached, aegis128LDecryptDetachedInPlace, aegis128LEncrypt, aegis128LEncryptDetached, aegis128LEncryptDetachedInPlace, aegis128LMac, aegis128LMacVerify, } from "./aegis128l.js";
|
|
2
|
-
export {
|
|
3
|
-
export {
|
|
4
|
-
export {
|
|
5
|
-
export { AEGIS_256_BS_KEY_SIZE, AEGIS_256_BS_NONCE_SIZE, Aegis256BsState, aegis256BsCreateKey, aegis256BsCreateNonce, aegis256BsDecrypt, aegis256BsDecryptDetached, aegis256BsDecryptDetachedInPlace, aegis256BsEncrypt, aegis256BsEncryptDetached, aegis256BsEncryptDetachedInPlace, aegis256BsMac, aegis256BsMacVerify, } from "./aegis256-bs.js";
|
|
6
|
-
export { AEGIS_256X_KEY_SIZE, AEGIS_256X_NONCE_SIZE, aegis256X2CreateKey, aegis256X2CreateNonce, aegis256X2Decrypt, aegis256X2DecryptDetached, aegis256X2DecryptDetachedInPlace, aegis256X2Encrypt, aegis256X2EncryptDetached, aegis256X2EncryptDetachedInPlace, aegis256X2Mac, aegis256X2MacVerify, aegis256X4CreateKey, aegis256X4CreateNonce, aegis256X4Decrypt, aegis256X4DecryptDetached, aegis256X4DecryptDetachedInPlace, aegis256X4Encrypt, aegis256X4EncryptDetached, aegis256X4EncryptDetachedInPlace, aegis256X4Mac, aegis256X4MacVerify, aegis256XCreateKey, aegis256XCreateNonce, aegis256XDecrypt, aegis256XDecryptDetached, aegis256XDecryptDetachedInPlace, aegis256XEncrypt, aegis256XEncryptDetached, aegis256XEncryptDetachedInPlace, aegis256XMac, aegis256XMacVerify, } from "./aegis256x.js";
|
|
7
|
-
//# sourceMappingURL=index.d.ts.map
|
|
1
|
+
export { AEGIS_128L_KEY_SIZE, AEGIS_128L_NONCE_SIZE, Aegis128LState, aegis128LCreateKey, aegis128LCreateNonce, aegis128LDecrypt, aegis128LDecryptDetached, aegis128LDecryptDetachedInPlace, aegis128LEncrypt, aegis128LEncryptDetached, aegis128LEncryptDetachedInPlace, aegis128LMac, aegis128LMacVerify, } from "./aegis128l.js";
|
|
2
|
+
export { AEGIS_128X_KEY_SIZE, AEGIS_128X_NONCE_SIZE, Aegis128XState, aegis128X2CreateKey, aegis128X2CreateNonce, aegis128X2Decrypt, aegis128X2DecryptDetached, aegis128X2DecryptDetachedInPlace, aegis128X2Encrypt, aegis128X2EncryptDetached, aegis128X2EncryptDetachedInPlace, aegis128X2Mac, aegis128X2MacVerify, aegis128X4CreateKey, aegis128X4CreateNonce, aegis128X4Decrypt, aegis128X4DecryptDetached, aegis128X4DecryptDetachedInPlace, aegis128X4Encrypt, aegis128X4EncryptDetached, aegis128X4EncryptDetachedInPlace, aegis128X4Mac, aegis128X4MacVerify, aegis128XCreateKey, aegis128XCreateNonce, aegis128XDecrypt, aegis128XDecryptDetached, aegis128XDecryptDetachedInPlace, aegis128XEncrypt, aegis128XEncryptDetached, aegis128XEncryptDetachedInPlace, aegis128XMac, aegis128XMacVerify, } from "./aegis128x.js";
|
|
3
|
+
export { AEGIS_256_KEY_SIZE, AEGIS_256_NONCE_SIZE, Aegis256State, aegis256CreateKey, aegis256CreateNonce, aegis256Decrypt, aegis256DecryptDetached, aegis256DecryptDetachedInPlace, aegis256Encrypt, aegis256EncryptDetached, aegis256EncryptDetachedInPlace, aegis256Mac, aegis256MacVerify, } from "./aegis256.js";
|
|
4
|
+
export { AEGIS_256X_KEY_SIZE, AEGIS_256X_NONCE_SIZE, Aegis256XState, aegis256X2CreateKey, aegis256X2CreateNonce, aegis256X2Decrypt, aegis256X2DecryptDetached, aegis256X2DecryptDetachedInPlace, aegis256X2Encrypt, aegis256X2EncryptDetached, aegis256X2EncryptDetachedInPlace, aegis256X2Mac, aegis256X2MacVerify, aegis256X4CreateKey, aegis256X4CreateNonce, aegis256X4Decrypt, aegis256X4DecryptDetached, aegis256X4DecryptDetachedInPlace, aegis256X4Encrypt, aegis256X4EncryptDetached, aegis256X4EncryptDetachedInPlace, aegis256X4Mac, aegis256X4MacVerify, aegis256XCreateKey, aegis256XCreateNonce, aegis256XDecrypt, aegis256XDecryptDetached, aegis256XDecryptDetachedInPlace, aegis256XEncrypt, aegis256XEncryptDetached, aegis256XEncryptDetachedInPlace, aegis256XMac, aegis256XMacVerify, } from "./aegis256x.js";
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,4 @@
|
|
|
1
|
-
export { AEGIS_128L_KEY_SIZE, AEGIS_128L_NONCE_SIZE, aegis128LCreateKey, aegis128LCreateNonce, aegis128LDecrypt, aegis128LDecryptDetached, aegis128LDecryptDetachedInPlace, aegis128LEncrypt, aegis128LEncryptDetached, aegis128LEncryptDetachedInPlace, aegis128LMac, aegis128LMacVerify, } from "./aegis128l.js";
|
|
2
|
-
export {
|
|
3
|
-
export {
|
|
4
|
-
export {
|
|
5
|
-
export { AEGIS_256_BS_KEY_SIZE, AEGIS_256_BS_NONCE_SIZE, Aegis256BsState, aegis256BsCreateKey, aegis256BsCreateNonce, aegis256BsDecrypt, aegis256BsDecryptDetached, aegis256BsDecryptDetachedInPlace, aegis256BsEncrypt, aegis256BsEncryptDetached, aegis256BsEncryptDetachedInPlace, aegis256BsMac, aegis256BsMacVerify, } from "./aegis256-bs.js";
|
|
6
|
-
export { AEGIS_256X_KEY_SIZE, AEGIS_256X_NONCE_SIZE, aegis256X2CreateKey, aegis256X2CreateNonce, aegis256X2Decrypt, aegis256X2DecryptDetached, aegis256X2DecryptDetachedInPlace, aegis256X2Encrypt, aegis256X2EncryptDetached, aegis256X2EncryptDetachedInPlace, aegis256X2Mac, aegis256X2MacVerify, aegis256X4CreateKey, aegis256X4CreateNonce, aegis256X4Decrypt, aegis256X4DecryptDetached, aegis256X4DecryptDetachedInPlace, aegis256X4Encrypt, aegis256X4EncryptDetached, aegis256X4EncryptDetachedInPlace, aegis256X4Mac, aegis256X4MacVerify, aegis256XCreateKey, aegis256XCreateNonce, aegis256XDecrypt, aegis256XDecryptDetached, aegis256XDecryptDetachedInPlace, aegis256XEncrypt, aegis256XEncryptDetached, aegis256XEncryptDetachedInPlace, aegis256XMac, aegis256XMacVerify, } from "./aegis256x.js";
|
|
7
|
-
//# sourceMappingURL=index.js.map
|
|
1
|
+
export { AEGIS_128L_KEY_SIZE, AEGIS_128L_NONCE_SIZE, Aegis128LState, aegis128LCreateKey, aegis128LCreateNonce, aegis128LDecrypt, aegis128LDecryptDetached, aegis128LDecryptDetachedInPlace, aegis128LEncrypt, aegis128LEncryptDetached, aegis128LEncryptDetachedInPlace, aegis128LMac, aegis128LMacVerify, } from "./aegis128l.js";
|
|
2
|
+
export { AEGIS_128X_KEY_SIZE, AEGIS_128X_NONCE_SIZE, Aegis128XState, aegis128X2CreateKey, aegis128X2CreateNonce, aegis128X2Decrypt, aegis128X2DecryptDetached, aegis128X2DecryptDetachedInPlace, aegis128X2Encrypt, aegis128X2EncryptDetached, aegis128X2EncryptDetachedInPlace, aegis128X2Mac, aegis128X2MacVerify, aegis128X4CreateKey, aegis128X4CreateNonce, aegis128X4Decrypt, aegis128X4DecryptDetached, aegis128X4DecryptDetachedInPlace, aegis128X4Encrypt, aegis128X4EncryptDetached, aegis128X4EncryptDetachedInPlace, aegis128X4Mac, aegis128X4MacVerify, aegis128XCreateKey, aegis128XCreateNonce, aegis128XDecrypt, aegis128XDecryptDetached, aegis128XDecryptDetachedInPlace, aegis128XEncrypt, aegis128XEncryptDetached, aegis128XEncryptDetachedInPlace, aegis128XMac, aegis128XMacVerify, } from "./aegis128x.js";
|
|
3
|
+
export { AEGIS_256_KEY_SIZE, AEGIS_256_NONCE_SIZE, Aegis256State, aegis256CreateKey, aegis256CreateNonce, aegis256Decrypt, aegis256DecryptDetached, aegis256DecryptDetachedInPlace, aegis256Encrypt, aegis256EncryptDetached, aegis256EncryptDetachedInPlace, aegis256Mac, aegis256MacVerify, } from "./aegis256.js";
|
|
4
|
+
export { AEGIS_256X_KEY_SIZE, AEGIS_256X_NONCE_SIZE, Aegis256XState, aegis256X2CreateKey, aegis256X2CreateNonce, aegis256X2Decrypt, aegis256X2DecryptDetached, aegis256X2DecryptDetachedInPlace, aegis256X2Encrypt, aegis256X2EncryptDetached, aegis256X2EncryptDetachedInPlace, aegis256X2Mac, aegis256X2MacVerify, aegis256X4CreateKey, aegis256X4CreateNonce, aegis256X4Decrypt, aegis256X4DecryptDetached, aegis256X4DecryptDetachedInPlace, aegis256X4Encrypt, aegis256X4EncryptDetached, aegis256X4EncryptDetachedInPlace, aegis256X4Mac, aegis256X4MacVerify, aegis256XCreateKey, aegis256XCreateNonce, aegis256XDecrypt, aegis256XDecryptDetached, aegis256XDecryptDetachedInPlace, aegis256XEncrypt, aegis256XEncryptDetached, aegis256XEncryptDetachedInPlace, aegis256XMac, aegis256XMacVerify, } from "./aegis256x.js";
|
package/dist/random.d.ts
CHANGED
package/dist/random.js
CHANGED
package/dist/utils.d.ts
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pads data with zeros to a multiple of the block size.
|
|
3
|
+
* @param data - Input data
|
|
4
|
+
* @param blockSizeBytes - Block size in bytes
|
|
5
|
+
* @returns Padded data (or empty array if data is empty)
|
|
6
|
+
*/
|
|
7
|
+
export declare function zeroPad(data: ArrayLike<number>, blockSizeBytes: number): Uint8Array;
|
|
8
|
+
/**
|
|
9
|
+
* Compares two byte arrays in constant time to prevent timing attacks.
|
|
10
|
+
* @param a - First byte array
|
|
11
|
+
* @param b - Second byte array
|
|
12
|
+
* @returns True if arrays are equal, false otherwise
|
|
13
|
+
*/
|
|
14
|
+
export declare function constantTimeEqual(a: ArrayLike<number>, b: ArrayLike<number>): boolean;
|
package/dist/utils.js
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pads data with zeros to a multiple of the block size.
|
|
3
|
+
* @param data - Input data
|
|
4
|
+
* @param blockSizeBytes - Block size in bytes
|
|
5
|
+
* @returns Padded data (or empty array if data is empty)
|
|
6
|
+
*/
|
|
7
|
+
export function zeroPad(data, blockSizeBytes) {
|
|
8
|
+
if (data.length === 0)
|
|
9
|
+
return new Uint8Array(0);
|
|
10
|
+
const paddedLen = Math.ceil(data.length / blockSizeBytes) * blockSizeBytes;
|
|
11
|
+
if (paddedLen === data.length)
|
|
12
|
+
return new Uint8Array(data);
|
|
13
|
+
const padded = new Uint8Array(paddedLen);
|
|
14
|
+
padded.set(data);
|
|
15
|
+
return padded;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Compares two byte arrays in constant time to prevent timing attacks.
|
|
19
|
+
* @param a - First byte array
|
|
20
|
+
* @param b - Second byte array
|
|
21
|
+
* @returns True if arrays are equal, false otherwise
|
|
22
|
+
*/
|
|
23
|
+
export function constantTimeEqual(a, b) {
|
|
24
|
+
if (a.length !== b.length)
|
|
25
|
+
return false;
|
|
26
|
+
let diff = 0;
|
|
27
|
+
for (let i = 0; i < a.length; i++) {
|
|
28
|
+
diff |= a[i] ^ b[i];
|
|
29
|
+
}
|
|
30
|
+
return diff === 0;
|
|
31
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "aegis-aead",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.3",
|
|
4
4
|
"description": "AEGIS authenticated encryption algorithms",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -15,7 +15,6 @@
|
|
|
15
15
|
},
|
|
16
16
|
"files": [
|
|
17
17
|
"dist",
|
|
18
|
-
"src",
|
|
19
18
|
"LICENSE",
|
|
20
19
|
"README.md"
|
|
21
20
|
],
|
|
@@ -31,10 +30,10 @@
|
|
|
31
30
|
"bench": "bun run bench/benchmark.ts"
|
|
32
31
|
},
|
|
33
32
|
"devDependencies": {
|
|
34
|
-
"@biomejs/biome": "^2.
|
|
35
|
-
"@noble/ciphers": "^2.
|
|
36
|
-
"@types/bun": "^1.3.
|
|
37
|
-
"typescript": "^
|
|
33
|
+
"@biomejs/biome": "^2.4.16",
|
|
34
|
+
"@noble/ciphers": "^2.2.0",
|
|
35
|
+
"@types/bun": "^1.3.14",
|
|
36
|
+
"typescript": "^6.0.3"
|
|
38
37
|
},
|
|
39
38
|
"keywords": [
|
|
40
39
|
"aegis",
|
package/dist/aegis128l-bs.d.ts
DELETED
|
@@ -1,137 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Bitsliced AEGIS-128L implementation.
|
|
3
|
-
* Provides constant-time operation by processing all 8 state blocks simultaneously.
|
|
4
|
-
*/
|
|
5
|
-
/**
|
|
6
|
-
* Bitsliced AEGIS-128L cipher state.
|
|
7
|
-
* The state is kept in packed bitsliced form between operations so that
|
|
8
|
-
* pack/unpack does not need to be applied at every round.
|
|
9
|
-
*/
|
|
10
|
-
export declare class Aegis128LBsState {
|
|
11
|
-
private st;
|
|
12
|
-
private st1;
|
|
13
|
-
private constantInput;
|
|
14
|
-
private tmp0;
|
|
15
|
-
private tmp1;
|
|
16
|
-
private z0;
|
|
17
|
-
private z1;
|
|
18
|
-
constructor();
|
|
19
|
-
private aegisRoundPacked;
|
|
20
|
-
private packConstantInput;
|
|
21
|
-
/**
|
|
22
|
-
* Extract the keystream blocks z0 and z1 directly from the packed state.
|
|
23
|
-
*
|
|
24
|
-
* z0 = S6 ^ S1 ^ (S2 & S3)
|
|
25
|
-
* z1 = S2 ^ S5 ^ (S6 & S7)
|
|
26
|
-
*
|
|
27
|
-
* The formula is evaluated lane-wise on the packed state, the result is
|
|
28
|
-
* placed in positions 0 (z0) and 4 (z1), then unpack04 extracts the two
|
|
29
|
-
* AES blocks.
|
|
30
|
-
*/
|
|
31
|
-
private keystreamPacked;
|
|
32
|
-
/**
|
|
33
|
-
* Initializes the state with a key and nonce.
|
|
34
|
-
* @param key - 16-byte encryption key
|
|
35
|
-
* @param nonce - 16-byte nonce (must be unique per message)
|
|
36
|
-
*/
|
|
37
|
-
init(key: Uint8Array, nonce: Uint8Array): void;
|
|
38
|
-
/**
|
|
39
|
-
* Absorbs a 32-byte associated data block into the state.
|
|
40
|
-
* @param ai - 32-byte associated data block
|
|
41
|
-
*/
|
|
42
|
-
absorb(ai: Uint8Array): void;
|
|
43
|
-
/**
|
|
44
|
-
* Encrypts a 32-byte plaintext block and writes to output buffer.
|
|
45
|
-
* @param xi - 32-byte plaintext block
|
|
46
|
-
* @param out - 32-byte output buffer
|
|
47
|
-
*/
|
|
48
|
-
encTo(xi: Uint8Array, out: Uint8Array): void;
|
|
49
|
-
/**
|
|
50
|
-
* Encrypts a 32-byte plaintext block.
|
|
51
|
-
* @param xi - 32-byte plaintext block
|
|
52
|
-
* @returns 32-byte ciphertext block
|
|
53
|
-
*/
|
|
54
|
-
enc(xi: Uint8Array): Uint8Array;
|
|
55
|
-
/**
|
|
56
|
-
* Decrypts a 32-byte ciphertext block and writes to output buffer.
|
|
57
|
-
* @param ci - 32-byte ciphertext block
|
|
58
|
-
* @param out - 32-byte output buffer
|
|
59
|
-
*/
|
|
60
|
-
decTo(ci: Uint8Array, out: Uint8Array): void;
|
|
61
|
-
/**
|
|
62
|
-
* Decrypts a 32-byte ciphertext block.
|
|
63
|
-
* @param ci - 32-byte ciphertext block
|
|
64
|
-
* @returns 32-byte plaintext block
|
|
65
|
-
*/
|
|
66
|
-
dec(ci: Uint8Array): Uint8Array;
|
|
67
|
-
encInPlace(block: Uint8Array): void;
|
|
68
|
-
decInPlace(block: Uint8Array): void;
|
|
69
|
-
/**
|
|
70
|
-
* Decrypts a partial (final) ciphertext block smaller than 32 bytes.
|
|
71
|
-
* @param cn - Partial ciphertext block (1-31 bytes)
|
|
72
|
-
* @returns Decrypted plaintext of the same length
|
|
73
|
-
*/
|
|
74
|
-
decPartial(cn: Uint8Array): Uint8Array;
|
|
75
|
-
/**
|
|
76
|
-
* Finalizes encryption/decryption and produces an authentication tag.
|
|
77
|
-
* @param adLen - Associated data length in bytes
|
|
78
|
-
* @param msgLen - Message length in bytes
|
|
79
|
-
* @param tagLen - Tag length (16 or 32 bytes)
|
|
80
|
-
* @returns Authentication tag
|
|
81
|
-
*/
|
|
82
|
-
finalize(adLen: number, msgLen: number, tagLen?: 16 | 32): Uint8Array;
|
|
83
|
-
}
|
|
84
|
-
/**
|
|
85
|
-
* Encrypts a message using bitsliced AEGIS-128L (detached mode).
|
|
86
|
-
* @param msg - Plaintext message
|
|
87
|
-
* @param ad - Associated data (authenticated but not encrypted)
|
|
88
|
-
* @param key - 16-byte encryption key
|
|
89
|
-
* @param nonce - 16-byte nonce (must be unique per message with the same key)
|
|
90
|
-
* @param tagLen - Authentication tag length: 16 or 32 bytes (default: 16)
|
|
91
|
-
* @returns Object containing ciphertext and authentication tag separately
|
|
92
|
-
*/
|
|
93
|
-
export declare function aegis128LBsEncryptDetached(msg: Uint8Array, ad: Uint8Array, key: Uint8Array, nonce: Uint8Array, tagLen?: 16 | 32): {
|
|
94
|
-
ciphertext: Uint8Array;
|
|
95
|
-
tag: Uint8Array;
|
|
96
|
-
};
|
|
97
|
-
/**
|
|
98
|
-
* Decrypts a message using bitsliced AEGIS-128L (detached mode).
|
|
99
|
-
* @param ct - Ciphertext
|
|
100
|
-
* @param tag - Authentication tag (16 or 32 bytes)
|
|
101
|
-
* @param ad - Associated data (must match what was used during encryption)
|
|
102
|
-
* @param key - 16-byte encryption key
|
|
103
|
-
* @param nonce - 16-byte nonce (must match what was used during encryption)
|
|
104
|
-
* @returns Decrypted plaintext, or null if authentication fails
|
|
105
|
-
*/
|
|
106
|
-
export declare function aegis128LBsDecryptDetached(ct: Uint8Array, tag: Uint8Array, ad: Uint8Array, key: Uint8Array, nonce: Uint8Array): Uint8Array | null;
|
|
107
|
-
/**
|
|
108
|
-
* Encrypts a message in-place using bitsliced AEGIS-128L (detached mode).
|
|
109
|
-
*/
|
|
110
|
-
export declare function aegis128LBsEncryptDetachedInPlace(data: Uint8Array, ad: Uint8Array, key: Uint8Array, nonce: Uint8Array, tagLen?: 16 | 32): Uint8Array;
|
|
111
|
-
/**
|
|
112
|
-
* Decrypts a message in-place using bitsliced AEGIS-128L (detached mode).
|
|
113
|
-
*/
|
|
114
|
-
export declare function aegis128LBsDecryptDetachedInPlace(data: Uint8Array, tag: Uint8Array, ad: Uint8Array, key: Uint8Array, nonce: Uint8Array): boolean;
|
|
115
|
-
export declare const AEGIS_128L_BS_NONCE_SIZE = 16;
|
|
116
|
-
export declare const AEGIS_128L_BS_KEY_SIZE = 16;
|
|
117
|
-
/**
|
|
118
|
-
* Encrypts a message using bitsliced AEGIS-128L.
|
|
119
|
-
* Returns a single buffer containing nonce || ciphertext || tag.
|
|
120
|
-
*/
|
|
121
|
-
export declare function aegis128LBsEncrypt(msg: Uint8Array, ad: Uint8Array, key: Uint8Array, nonce?: Uint8Array | null, tagLen?: 16 | 32): Uint8Array;
|
|
122
|
-
/**
|
|
123
|
-
* Decrypts a message using bitsliced AEGIS-128L.
|
|
124
|
-
* Expects input as nonce || ciphertext || tag.
|
|
125
|
-
*/
|
|
126
|
-
export declare function aegis128LBsDecrypt(sealed: Uint8Array, ad: Uint8Array, key: Uint8Array, tagLen?: 16 | 32): Uint8Array | null;
|
|
127
|
-
/**
|
|
128
|
-
* Computes a MAC using bitsliced AEGIS-128L.
|
|
129
|
-
*/
|
|
130
|
-
export declare function aegis128LBsMac(data: Uint8Array, key: Uint8Array, nonce?: Uint8Array | null, tagLen?: 16 | 32): Uint8Array;
|
|
131
|
-
/**
|
|
132
|
-
* Verifies a MAC computed using bitsliced AEGIS-128L.
|
|
133
|
-
*/
|
|
134
|
-
export declare function aegis128LBsMacVerify(data: Uint8Array, tag: Uint8Array, key: Uint8Array, nonce?: Uint8Array | null): boolean;
|
|
135
|
-
export declare function aegis128LBsCreateKey(): Uint8Array;
|
|
136
|
-
export declare function aegis128LBsCreateNonce(): Uint8Array;
|
|
137
|
-
//# sourceMappingURL=aegis128l-bs.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"aegis128l-bs.d.ts","sourceRoot":"","sources":["../src/aegis128l-bs.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAgCH;;;;GAIG;AACH,qBAAa,gBAAgB;IAC5B,OAAO,CAAC,EAAE,CAAY;IACtB,OAAO,CAAC,GAAG,CAAY;IACvB,OAAO,CAAC,aAAa,CAAY;IACjC,OAAO,CAAC,IAAI,CAAW;IACvB,OAAO,CAAC,IAAI,CAAW;IACvB,OAAO,CAAC,EAAE,CAAW;IACrB,OAAO,CAAC,EAAE,CAAW;;IAYrB,OAAO,CAAC,gBAAgB;IAWxB,OAAO,CAAC,iBAAiB;IAQzB;;;;;;;;;OASG;IACH,OAAO,CAAC,eAAe;IAsBvB;;;;OAIG;IACH,IAAI,CAAC,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,GAAG,IAAI;IA6B9C;;;OAGG;IACH,MAAM,CAAC,EAAE,EAAE,UAAU,GAAG,IAAI;IAS5B;;;;OAIG;IACH,KAAK,CAAC,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU,GAAG,IAAI;IAmB5C;;;;OAIG;IACH,GAAG,CAAC,EAAE,EAAE,UAAU,GAAG,UAAU;IAM/B;;;;OAIG;IACH,KAAK,CAAC,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU,GAAG,IAAI;IAkB5C;;;;OAIG;IACH,GAAG,CAAC,EAAE,EAAE,UAAU,GAAG,UAAU;IAM/B,UAAU,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAInC,UAAU,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAInC;;;;OAIG;IACH,UAAU,CAAC,EAAE,EAAE,UAAU,GAAG,UAAU;IA4BtC;;;;;;OAMG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAE,EAAE,GAAG,EAAO,GAAG,UAAU;CAiEzE;AAED;;;;;;;;GAQG;AACH,wBAAgB,0BAA0B,CACzC,GAAG,EAAE,UAAU,EACf,EAAE,EAAE,UAAU,EACd,GAAG,EAAE,UAAU,EACf,KAAK,EAAE,UAAU,EACjB,MAAM,GAAE,EAAE,GAAG,EAAO,GAClB;IAAE,UAAU,EAAE,UAAU,CAAC;IAAC,GAAG,EAAE,UAAU,CAAA;CAAE,CAyB7C;AAED;;;;;;;;GAQG;AACH,wBAAgB,0BAA0B,CACzC,EAAE,EAAE,UAAU,EACd,GAAG,EAAE,UAAU,EACf,EAAE,EAAE,UAAU,EACd,GAAG,EAAE,UAAU,EACf,KAAK,EAAE,UAAU,GACf,UAAU,GAAG,IAAI,CA6BnB;AAED;;GAEG;AACH,wBAAgB,iCAAiC,CAChD,IAAI,EAAE,UAAU,EAChB,EAAE,EAAE,UAAU,EACd,GAAG,EAAE,UAAU,EACf,KAAK,EAAE,UAAU,EACjB,MAAM,GAAE,EAAE,GAAG,EAAO,GAClB,UAAU,CAwBZ;AAED;;GAEG;AACH,wBAAgB,iCAAiC,CAChD,IAAI,EAAE,UAAU,EAChB,GAAG,EAAE,UAAU,EACf,EAAE,EAAE,UAAU,EACd,GAAG,EAAE,UAAU,EACf,KAAK,EAAE,UAAU,GACf,OAAO,CA+BT;AAED,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAC3C,eAAO,MAAM,sBAAsB,KAAK,CAAC;AAEzC;;;GAGG;AACH,wBAAgB,kBAAkB,CACjC,GAAG,EAAE,UAAU,EACf,EAAE,EAAE,UAAU,EACd,GAAG,EAAE,UAAU,EACf,KAAK,GAAE,UAAU,GAAG,IAAW,EAC/B,MAAM,GAAE,EAAE,GAAG,EAAO,GAClB,UAAU,CAkBZ;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CACjC,MAAM,EAAE,UAAU,EAClB,EAAE,EAAE,UAAU,EACd,GAAG,EAAE,UAAU,EACf,MAAM,GAAE,EAAE,GAAG,EAAO,GAClB,UAAU,GAAG,IAAI,CASnB;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC7B,IAAI,EAAE,UAAU,EAChB,GAAG,EAAE,UAAU,EACf,KAAK,GAAE,UAAU,GAAG,IAAW,EAC/B,MAAM,GAAE,EAAE,GAAG,EAAO,GAClB,UAAU,CAUZ;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CACnC,IAAI,EAAE,UAAU,EAChB,GAAG,EAAE,UAAU,EACf,GAAG,EAAE,UAAU,EACf,KAAK,GAAE,UAAU,GAAG,IAAW,GAC7B,OAAO,CAIT;AAED,wBAAgB,oBAAoB,IAAI,UAAU,CAEjD;AAED,wBAAgB,sBAAsB,IAAI,UAAU,CAEnD"}
|