iv.js 775 B

123456789101112131415161718192021222324
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", { value: true });
  3. exports.bitLength = void 0;
  4. const errors_js_1 = require("../util/errors.js");
  5. const random_js_1 = require("../runtime/random.js");
  6. function bitLength(alg) {
  7. switch (alg) {
  8. case 'A128GCM':
  9. case 'A128GCMKW':
  10. case 'A192GCM':
  11. case 'A192GCMKW':
  12. case 'A256GCM':
  13. case 'A256GCMKW':
  14. return 96;
  15. case 'A128CBC-HS256':
  16. case 'A192CBC-HS384':
  17. case 'A256CBC-HS512':
  18. return 128;
  19. default:
  20. throw new errors_js_1.JOSENotSupported(`Unsupported JWE Algorithm: ${alg}`);
  21. }
  22. }
  23. exports.bitLength = bitLength;
  24. exports.default = (alg) => (0, random_js_1.default)(new Uint8Array(bitLength(alg) >> 3));