@jscrypto/classic 0.1.0 → 0.2.0

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.
Files changed (40) hide show
  1. package/README.md +21 -3
  2. package/dist/ciphers/aes.js +1 -1
  3. package/dist/ciphers/aes.js.map +1 -1
  4. package/dist/ciphers/rc4.js +2 -2
  5. package/dist/ciphers/rc4.js.map +1 -1
  6. package/dist/ciphers/triple-des.js +1 -1
  7. package/dist/ciphers/triple-des.js.map +1 -1
  8. package/dist/index.cjs +330 -49
  9. package/dist/index.cjs.map +3 -3
  10. package/dist/index.mjs +312 -27
  11. package/dist/index.mjs.map +3 -3
  12. package/dist/jscrypto-classic.iife.js +415 -84
  13. package/dist/jscrypto-classic.iife.js.map +3 -3
  14. package/dist/jscrypto-classic.iife.min.js +2 -2
  15. package/dist/jscrypto-classic.iife.min.js.map +3 -3
  16. package/dist/jscrypto-classic.umd.js +415 -84
  17. package/dist/jscrypto-classic.umd.js.map +3 -3
  18. package/dist/jscrypto-classic.umd.min.js +2 -2
  19. package/dist/jscrypto-classic.umd.min.js.map +3 -3
  20. package/dist/kdfs/evpkdf.js +3 -2
  21. package/dist/kdfs/evpkdf.js.map +1 -1
  22. package/dist/kdfs/pbkdf2.js +1 -1
  23. package/dist/kdfs/pbkdf2.js.map +1 -1
  24. package/dist/modes/cbc.js +4 -4
  25. package/dist/modes/cbc.js.map +1 -1
  26. package/dist/modes/cfb.js +2 -2
  27. package/dist/modes/cfb.js.map +1 -1
  28. package/dist/modes/ctr.js +2 -2
  29. package/dist/modes/ctr.js.map +1 -1
  30. package/dist/modes/ecb.js +4 -4
  31. package/dist/modes/ecb.js.map +1 -1
  32. package/dist/modes/gcm.d.ts +1 -1
  33. package/dist/modes/gcm.d.ts.map +1 -1
  34. package/dist/modes/gcm.js +289 -4
  35. package/dist/modes/gcm.js.map +1 -1
  36. package/dist/modes/ofb.js +2 -2
  37. package/dist/modes/ofb.js.map +1 -1
  38. package/dist/paddings/iso10126.js +2 -1
  39. package/dist/paddings/iso10126.js.map +1 -1
  40. package/package.json +11 -2
package/README.md CHANGED
@@ -49,10 +49,30 @@ const encrypted = cipher.encrypt(plaintext);
49
49
  const decrypted = cipher.decrypt(encrypted);
50
50
  ```
51
51
 
52
+ ## AES-GCM
53
+
54
+ GCM is an AEAD mode. It does not use padding, and encrypted output is `ciphertext || tag` by default. Decryption also supports detached tags by passing `tag`.
55
+
56
+ ```ts
57
+ import { registry } from '@jscrypto/classic';
58
+
59
+ const cipher = registry.createCipher({
60
+ cipher: 'AES',
61
+ mode: 'GCM',
62
+ key,
63
+ iv: nonce,
64
+ aad,
65
+ tagLength: 16,
66
+ });
67
+
68
+ const sealed = cipher.encrypt(plaintext);
69
+ const decrypted = cipher.decrypt(sealed);
70
+ ```
71
+
52
72
  ## Components
53
73
 
54
74
  - Ciphers: `aes`, `des`, `tripleDes`, `rc4`, `rc4Drop`.
55
- - Modes: `cbc`, `cfb`, `ctr`, `ofb`, `ecb`.
75
+ - Modes: `cbc`, `cfb`, `ctr`, `ofb`, `ecb`, `gcm`.
56
76
  - Paddings: `pkcs7`, `iso97971`, `ansiX923`, `iso10126`, `zeroPadding`, `noPadding`.
57
77
  - KDFs: `pbkdf2`, `evpKdf`.
58
78
  - Formats: `opensslFormat`.
@@ -85,5 +105,3 @@ const registry = createRegistry()
85
105
  });
86
106
  </script>
87
107
  ```
88
-
89
- AES-GCM is intentionally left out of this first release slice.
@@ -10,7 +10,7 @@ export const aes = {
10
10
  },
11
11
  };
12
12
  export function createAesCipher(key) {
13
- if (![16, 24, 32].includes(key.length)) {
13
+ if (key.length !== 16 && key.length !== 24 && key.length !== 32) {
14
14
  throw new Error('AES key must be 128, 192, or 256 bits.');
15
15
  }
16
16
  return createCryptoJsBlockCipher({
@@ -1 +1 @@
1
- {"version":3,"file":"aes.js","sourceRoot":"","sources":["../../src/ciphers/aes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAG9E,MAAM,CAAC,MAAM,GAAG,GAA2B;IACzC,IAAI,EAAE,QAAQ;IACd,IAAI,EAAE,KAAK;IACX,IAAI,EAAE,OAAO;IACb,SAAS,EAAE,EAAE;IACb,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IACtB,MAAM,CAAC,GAAG;QACR,OAAO,eAAe,CAAC,GAAG,CAAC,CAAC;IAC9B,CAAC;CACF,CAAC;AAEF,MAAM,UAAU,eAAe,CAAC,GAAe;IAC7C,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;QACvC,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;IAC5D,CAAC;IAED,OAAO,yBAAyB,CAAC;QAC/B,IAAI,EAAE,KAAK;QACX,GAAG;QACH,SAAS,EAAE,EAAE;QACb,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG;KAC7B,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"aes.js","sourceRoot":"","sources":["../../src/ciphers/aes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAG9E,MAAM,CAAC,MAAM,GAAG,GAA2B;IACzC,IAAI,EAAE,QAAQ;IACd,IAAI,EAAE,KAAK;IACX,IAAI,EAAE,OAAO;IACb,SAAS,EAAE,EAAE;IACb,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IACtB,MAAM,CAAC,GAAG;QACR,OAAO,eAAe,CAAC,GAAG,CAAC,CAAC;IAC9B,CAAC;CACF,CAAC;AAEF,MAAM,UAAU,eAAe,CAAC,GAAe;IAC7C,IAAI,GAAG,CAAC,MAAM,KAAK,EAAE,IAAI,GAAG,CAAC,MAAM,KAAK,EAAE,IAAI,GAAG,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;QAChE,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;IAC5D,CAAC;IAED,OAAO,yBAAyB,CAAC;QAC/B,IAAI,EAAE,KAAK;QACX,GAAG;QACH,SAAS,EAAE,EAAE;QACb,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG;KAC7B,CAAC,CAAC;AACL,CAAC"}
@@ -40,10 +40,10 @@ export function createRc4Transform(key, drop = 0) {
40
40
  assertNotFinalized(finalized);
41
41
  return processInput(input);
42
42
  },
43
- finalize(input = new Uint8Array()) {
43
+ finalize(input = new Uint8Array(0)) {
44
44
  assertNotFinalized(finalized);
45
45
  finalized = true;
46
- return input.length === 0 ? new Uint8Array() : processInput(input);
46
+ return input.length === 0 ? new Uint8Array(0) : processInput(input);
47
47
  },
48
48
  };
49
49
  }
@@ -1 +1 @@
1
- {"version":3,"file":"rc4.js","sourceRoot":"","sources":["../../src/ciphers/rc4.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rc4.js","sourceRoot":"","sources":["../../src/ciphers/rc4.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@ export const tripleDes = {
10
10
  },
11
11
  };
12
12
  export function createTripleDesCipher(key) {
13
- if (![16, 24].includes(key.length)) {
13
+ if (key.length !== 16 && key.length !== 24) {
14
14
  throw new Error('Triple DES key must be 128 or 192 bits.');
15
15
  }
16
16
  return createCryptoJsBlockCipher({
@@ -1 +1 @@
1
- {"version":3,"file":"triple-des.js","sourceRoot":"","sources":["../../src/ciphers/triple-des.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAG9E,MAAM,CAAC,MAAM,SAAS,GAAiC;IACrD,IAAI,EAAE,QAAQ;IACd,IAAI,EAAE,WAAW;IACjB,IAAI,EAAE,OAAO;IACb,SAAS,EAAE,CAAC;IACZ,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;IAClB,MAAM,CAAC,GAAG;QACR,OAAO,qBAAqB,CAAC,GAAG,CAAC,CAAC;IACpC,CAAC;CACF,CAAC;AAEF,MAAM,UAAU,qBAAqB,CAAC,GAAe;IACnD,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;IAC7D,CAAC;IAED,OAAO,yBAAyB,CAAC;QAC/B,IAAI,EAAE,YAAY;QAClB,GAAG;QACH,SAAS,EAAE,CAAC;QACZ,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,SAAS;KACnC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"triple-des.js","sourceRoot":"","sources":["../../src/ciphers/triple-des.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAG9E,MAAM,CAAC,MAAM,SAAS,GAAiC;IACrD,IAAI,EAAE,QAAQ;IACd,IAAI,EAAE,WAAW;IACjB,IAAI,EAAE,OAAO;IACb,SAAS,EAAE,CAAC;IACZ,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;IAClB,MAAM,CAAC,GAAG;QACR,OAAO,qBAAqB,CAAC,GAAG,CAAC,CAAC;IACpC,CAAC;CACF,CAAC;AAEF,MAAM,UAAU,qBAAqB,CAAC,GAAe;IACnD,IAAI,GAAG,CAAC,MAAM,KAAK,EAAE,IAAI,GAAG,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;QAC3C,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;IAC7D,CAAC;IAED,OAAO,yBAAyB,CAAC;QAC/B,IAAI,EAAE,YAAY;QAClB,GAAG;QACH,SAAS,EAAE,CAAC;QACZ,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,SAAS;KACnC,CAAC,CAAC;AACL,CAAC"}