@sitepong/fastnode 0.2.2 → 0.3.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.
- package/README.md +58 -1
- package/dist/actions/index.cjs +848 -54
- package/dist/actions/index.cjs.map +1 -1
- package/dist/actions/index.mjs +849 -55
- package/dist/actions/index.mjs.map +1 -1
- package/dist/apple-session-jUzBrql5.d.cts +122 -0
- package/dist/apple-session-jUzBrql5.d.ts +122 -0
- package/dist/cert/index.cjs +782 -736
- package/dist/cert/index.cjs.map +1 -1
- package/dist/cert/index.d.cts +5 -4
- package/dist/cert/index.d.ts +5 -4
- package/dist/cert/index.mjs +782 -737
- package/dist/cert/index.mjs.map +1 -1
- package/dist/{cert-Ddl7FpFT.d.ts → cert-RvXmdMke.d.ts} +2 -2
- package/dist/{cert-FehieKeb.d.cts → cert-eOoxGMN1.d.cts} +2 -2
- package/dist/cli/index.cjs +1321 -60
- package/dist/cli/index.cjs.map +1 -1
- package/dist/cli/index.d.cts +3 -2
- package/dist/cli/index.d.ts +3 -2
- package/dist/cli/index.mjs +1322 -61
- package/dist/cli/index.mjs.map +1 -1
- package/dist/client/index.cjs +443 -31
- package/dist/client/index.cjs.map +1 -1
- package/dist/client/index.d.cts +3 -2
- package/dist/client/index.d.ts +3 -2
- package/dist/client/index.mjs +443 -31
- package/dist/client/index.mjs.map +1 -1
- package/dist/deliver/index.cjs +334 -13
- package/dist/deliver/index.cjs.map +1 -1
- package/dist/deliver/index.d.cts +4 -3
- package/dist/deliver/index.d.ts +4 -3
- package/dist/deliver/index.mjs +330 -15
- package/dist/deliver/index.mjs.map +1 -1
- package/dist/{enums-B609j2rb.d.cts → enums-yXNVh3UI.d.cts} +8 -1
- package/dist/{enums-B609j2rb.d.ts → enums-yXNVh3UI.d.ts} +8 -1
- package/dist/gradle/index.cjs +222 -0
- package/dist/gradle/index.cjs.map +1 -0
- package/dist/gradle/index.d.cts +1 -0
- package/dist/gradle/index.d.ts +1 -0
- package/dist/gradle/index.mjs +217 -0
- package/dist/gradle/index.mjs.map +1 -0
- package/dist/gym/index.d.cts +2 -2
- package/dist/gym/index.d.ts +2 -2
- package/dist/index-8djTPW8O.d.ts +104 -0
- package/dist/{index-DrUpRXRG.d.cts → index-B6-MJpO4.d.cts} +1 -1
- package/dist/{index-D13sn8DO.d.cts → index-BE7bwNff.d.cts} +1 -1
- package/dist/index-BGhV0gS-.d.ts +65 -0
- package/dist/index-BaNcf7jt.d.cts +201 -0
- package/dist/{index-DZoPGCbE.d.ts → index-BvyZ4uiw.d.ts} +3 -3
- package/dist/{index-B8FOfxOw.d.ts → index-C01Rkrir.d.ts} +2 -2
- package/dist/{index-YcKz4aRS.d.ts → index-C9mHBJED.d.ts} +1 -1
- package/dist/{index-BICa8odo.d.cts → index-CAEiXVWd.d.ts} +9 -1
- package/dist/index-CBf0-NUQ.d.ts +201 -0
- package/dist/index-CXJlvmB4.d.cts +63 -0
- package/dist/index-CXJlvmB4.d.ts +63 -0
- package/dist/{index-CNHf7I4v.d.cts → index-D1GHEM3c.d.ts} +32 -3
- package/dist/index-DFstwgGK.d.cts +65 -0
- package/dist/{index-Bk1Gd-qE.d.cts → index-DGkgRnZp.d.cts} +2 -2
- package/dist/{index-CplRWSUc.d.ts → index-DLJso7Vs.d.cts} +32 -3
- package/dist/{index-BZWmOTWE.d.cts → index-DWOLZNlz.d.cts} +2 -2
- package/dist/{index-OelCoOth.d.cts → index-DfkIz7i0.d.cts} +18 -4
- package/dist/{index-CtPyeMLH.d.ts → index-DjC_gmnL.d.ts} +18 -4
- package/dist/index-DnHQ2uT2.d.cts +104 -0
- package/dist/{index-CCtYhPN9.d.ts → index-DrmS802s.d.cts} +331 -130
- package/dist/index-Dv-Mek07.d.cts +84 -0
- package/dist/index-Dv-Mek07.d.ts +84 -0
- package/dist/{index-oVyLLIEK.d.cts → index-icIH5e5V.d.cts} +3 -3
- package/dist/{index-DI1ZHr-3.d.ts → index-laE3_wm9.d.cts} +9 -1
- package/dist/{index-BKUapQP2.d.cts → index-lsuS2R1T.d.ts} +331 -130
- package/dist/{index-DImN9PWc.d.ts → index-mEEB7An6.d.ts} +1 -1
- package/dist/{index-DFni8oZt.d.ts → index-rTZOdMRE.d.ts} +2 -2
- package/dist/index.cjs +3342 -959
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +237 -14
- package/dist/index.d.ts +237 -14
- package/dist/index.mjs +3335 -963
- package/dist/index.mjs.map +1 -1
- package/dist/lane/index.cjs +848 -54
- package/dist/lane/index.cjs.map +1 -1
- package/dist/lane/index.mjs +849 -55
- package/dist/lane/index.mjs.map +1 -1
- package/dist/match/index.d.cts +6 -5
- package/dist/match/index.d.ts +6 -5
- package/dist/pem/index.d.cts +4 -3
- package/dist/pem/index.d.ts +4 -3
- package/dist/pilot/index.cjs +8 -4
- package/dist/pilot/index.cjs.map +1 -1
- package/dist/pilot/index.d.cts +4 -3
- package/dist/pilot/index.d.ts +4 -3
- package/dist/pilot/index.mjs +10 -6
- package/dist/pilot/index.mjs.map +1 -1
- package/dist/playstore/index.cjs +207 -0
- package/dist/playstore/index.cjs.map +1 -0
- package/dist/playstore/index.d.cts +1 -0
- package/dist/playstore/index.d.ts +1 -0
- package/dist/playstore/index.mjs +203 -0
- package/dist/playstore/index.mjs.map +1 -0
- package/dist/precheck/index.d.cts +4 -3
- package/dist/precheck/index.d.ts +4 -3
- package/dist/privacy/index.cjs +207 -0
- package/dist/privacy/index.cjs.map +1 -0
- package/dist/privacy/index.d.cts +2 -0
- package/dist/privacy/index.d.ts +2 -0
- package/dist/privacy/index.mjs +195 -0
- package/dist/privacy/index.mjs.map +1 -0
- package/dist/produce/index.cjs +32 -0
- package/dist/produce/index.cjs.map +1 -1
- package/dist/produce/index.d.cts +4 -3
- package/dist/produce/index.d.ts +4 -3
- package/dist/produce/index.mjs +32 -1
- package/dist/produce/index.mjs.map +1 -1
- package/dist/review/index.cjs +141 -0
- package/dist/review/index.cjs.map +1 -0
- package/dist/review/index.d.cts +2 -0
- package/dist/review/index.d.ts +2 -0
- package/dist/review/index.mjs +137 -0
- package/dist/review/index.mjs.map +1 -0
- package/dist/sigh/index.d.cts +4 -3
- package/dist/sigh/index.d.ts +4 -3
- package/dist/xcode/index.cjs +1 -1
- package/dist/xcode/index.cjs.map +1 -1
- package/dist/xcode/index.mjs +1 -1
- package/dist/xcode/index.mjs.map +1 -1
- package/package.json +27 -1
- package/dist/index-B9QeTpQK.d.cts +0 -99
- package/dist/index-xykpq6Lz.d.ts +0 -99
package/dist/cert/index.mjs
CHANGED
|
@@ -168,9 +168,9 @@ var require_baseN = __commonJS({
|
|
|
168
168
|
// ../../node_modules/node-forge/lib/util.js
|
|
169
169
|
var require_util = __commonJS({
|
|
170
170
|
"../../node_modules/node-forge/lib/util.js"(exports$1, module) {
|
|
171
|
-
var
|
|
171
|
+
var forge3 = require_forge();
|
|
172
172
|
var baseN = require_baseN();
|
|
173
|
-
var util = module.exports =
|
|
173
|
+
var util = module.exports = forge3.util = forge3.util || {};
|
|
174
174
|
(function() {
|
|
175
175
|
if (typeof process !== "undefined" && process.nextTick && !process.browser) {
|
|
176
176
|
util.nextTick = process.nextTick;
|
|
@@ -1547,14 +1547,14 @@ var require_util = __commonJS({
|
|
|
1547
1547
|
// ../../node_modules/node-forge/lib/cipher.js
|
|
1548
1548
|
var require_cipher = __commonJS({
|
|
1549
1549
|
"../../node_modules/node-forge/lib/cipher.js"(exports$1, module) {
|
|
1550
|
-
var
|
|
1550
|
+
var forge3 = require_forge();
|
|
1551
1551
|
require_util();
|
|
1552
|
-
module.exports =
|
|
1553
|
-
|
|
1554
|
-
|
|
1552
|
+
module.exports = forge3.cipher = forge3.cipher || {};
|
|
1553
|
+
forge3.cipher.algorithms = forge3.cipher.algorithms || {};
|
|
1554
|
+
forge3.cipher.createCipher = function(algorithm, key) {
|
|
1555
1555
|
var api = algorithm;
|
|
1556
1556
|
if (typeof api === "string") {
|
|
1557
|
-
api =
|
|
1557
|
+
api = forge3.cipher.getAlgorithm(api);
|
|
1558
1558
|
if (api) {
|
|
1559
1559
|
api = api();
|
|
1560
1560
|
}
|
|
@@ -1562,16 +1562,16 @@ var require_cipher = __commonJS({
|
|
|
1562
1562
|
if (!api) {
|
|
1563
1563
|
throw new Error("Unsupported algorithm: " + algorithm);
|
|
1564
1564
|
}
|
|
1565
|
-
return new
|
|
1565
|
+
return new forge3.cipher.BlockCipher({
|
|
1566
1566
|
algorithm: api,
|
|
1567
1567
|
key,
|
|
1568
1568
|
decrypt: false
|
|
1569
1569
|
});
|
|
1570
1570
|
};
|
|
1571
|
-
|
|
1571
|
+
forge3.cipher.createDecipher = function(algorithm, key) {
|
|
1572
1572
|
var api = algorithm;
|
|
1573
1573
|
if (typeof api === "string") {
|
|
1574
|
-
api =
|
|
1574
|
+
api = forge3.cipher.getAlgorithm(api);
|
|
1575
1575
|
if (api) {
|
|
1576
1576
|
api = api();
|
|
1577
1577
|
}
|
|
@@ -1579,24 +1579,24 @@ var require_cipher = __commonJS({
|
|
|
1579
1579
|
if (!api) {
|
|
1580
1580
|
throw new Error("Unsupported algorithm: " + algorithm);
|
|
1581
1581
|
}
|
|
1582
|
-
return new
|
|
1582
|
+
return new forge3.cipher.BlockCipher({
|
|
1583
1583
|
algorithm: api,
|
|
1584
1584
|
key,
|
|
1585
1585
|
decrypt: true
|
|
1586
1586
|
});
|
|
1587
1587
|
};
|
|
1588
|
-
|
|
1588
|
+
forge3.cipher.registerAlgorithm = function(name, algorithm) {
|
|
1589
1589
|
name = name.toUpperCase();
|
|
1590
|
-
|
|
1590
|
+
forge3.cipher.algorithms[name] = algorithm;
|
|
1591
1591
|
};
|
|
1592
|
-
|
|
1592
|
+
forge3.cipher.getAlgorithm = function(name) {
|
|
1593
1593
|
name = name.toUpperCase();
|
|
1594
|
-
if (name in
|
|
1595
|
-
return
|
|
1594
|
+
if (name in forge3.cipher.algorithms) {
|
|
1595
|
+
return forge3.cipher.algorithms[name];
|
|
1596
1596
|
}
|
|
1597
1597
|
return null;
|
|
1598
1598
|
};
|
|
1599
|
-
var BlockCipher =
|
|
1599
|
+
var BlockCipher = forge3.cipher.BlockCipher = function(options) {
|
|
1600
1600
|
this.algorithm = options.algorithm;
|
|
1601
1601
|
this.mode = this.algorithm.mode;
|
|
1602
1602
|
this.blockSize = this.mode.blockSize;
|
|
@@ -1615,8 +1615,8 @@ var require_cipher = __commonJS({
|
|
|
1615
1615
|
}
|
|
1616
1616
|
opts.decrypt = this._decrypt;
|
|
1617
1617
|
this._finish = false;
|
|
1618
|
-
this._input =
|
|
1619
|
-
this.output = options.output ||
|
|
1618
|
+
this._input = forge3.util.createBuffer();
|
|
1619
|
+
this.output = options.output || forge3.util.createBuffer();
|
|
1620
1620
|
this.mode.start(opts);
|
|
1621
1621
|
};
|
|
1622
1622
|
BlockCipher.prototype.update = function(input) {
|
|
@@ -1664,10 +1664,10 @@ var require_cipher = __commonJS({
|
|
|
1664
1664
|
// ../../node_modules/node-forge/lib/cipherModes.js
|
|
1665
1665
|
var require_cipherModes = __commonJS({
|
|
1666
1666
|
"../../node_modules/node-forge/lib/cipherModes.js"(exports$1, module) {
|
|
1667
|
-
var
|
|
1667
|
+
var forge3 = require_forge();
|
|
1668
1668
|
require_util();
|
|
1669
|
-
|
|
1670
|
-
var modes = module.exports =
|
|
1669
|
+
forge3.cipher = forge3.cipher || {};
|
|
1670
|
+
var modes = module.exports = forge3.cipher.modes = forge3.cipher.modes || {};
|
|
1671
1671
|
modes.ecb = function(options) {
|
|
1672
1672
|
options = options || {};
|
|
1673
1673
|
this.name = "ECB";
|
|
@@ -1794,7 +1794,7 @@ var require_cipherModes = __commonJS({
|
|
|
1794
1794
|
this._inBlock = null;
|
|
1795
1795
|
this._outBlock = new Array(this._ints);
|
|
1796
1796
|
this._partialBlock = new Array(this._ints);
|
|
1797
|
-
this._partialOutput =
|
|
1797
|
+
this._partialOutput = forge3.util.createBuffer();
|
|
1798
1798
|
this._partialBytes = 0;
|
|
1799
1799
|
};
|
|
1800
1800
|
modes.cfb.prototype.start = function(options) {
|
|
@@ -1901,7 +1901,7 @@ var require_cipherModes = __commonJS({
|
|
|
1901
1901
|
this._ints = this.blockSize / 4;
|
|
1902
1902
|
this._inBlock = null;
|
|
1903
1903
|
this._outBlock = new Array(this._ints);
|
|
1904
|
-
this._partialOutput =
|
|
1904
|
+
this._partialOutput = forge3.util.createBuffer();
|
|
1905
1905
|
this._partialBytes = 0;
|
|
1906
1906
|
};
|
|
1907
1907
|
modes.ofb.prototype.start = function(options) {
|
|
@@ -1964,7 +1964,7 @@ var require_cipherModes = __commonJS({
|
|
|
1964
1964
|
this._ints = this.blockSize / 4;
|
|
1965
1965
|
this._inBlock = null;
|
|
1966
1966
|
this._outBlock = new Array(this._ints);
|
|
1967
|
-
this._partialOutput =
|
|
1967
|
+
this._partialOutput = forge3.util.createBuffer();
|
|
1968
1968
|
this._partialBytes = 0;
|
|
1969
1969
|
};
|
|
1970
1970
|
modes.ctr.prototype.start = function(options) {
|
|
@@ -2023,7 +2023,7 @@ var require_cipherModes = __commonJS({
|
|
|
2023
2023
|
this._ints = this.blockSize / 4;
|
|
2024
2024
|
this._inBlock = new Array(this._ints);
|
|
2025
2025
|
this._outBlock = new Array(this._ints);
|
|
2026
|
-
this._partialOutput =
|
|
2026
|
+
this._partialOutput = forge3.util.createBuffer();
|
|
2027
2027
|
this._partialBytes = 0;
|
|
2028
2028
|
this._R = 3774873600;
|
|
2029
2029
|
};
|
|
@@ -2031,13 +2031,13 @@ var require_cipherModes = __commonJS({
|
|
|
2031
2031
|
if (!("iv" in options)) {
|
|
2032
2032
|
throw new Error("Invalid IV parameter.");
|
|
2033
2033
|
}
|
|
2034
|
-
var iv =
|
|
2034
|
+
var iv = forge3.util.createBuffer(options.iv);
|
|
2035
2035
|
this._cipherLength = 0;
|
|
2036
2036
|
var additionalData;
|
|
2037
2037
|
if ("additionalData" in options) {
|
|
2038
|
-
additionalData =
|
|
2038
|
+
additionalData = forge3.util.createBuffer(options.additionalData);
|
|
2039
2039
|
} else {
|
|
2040
|
-
additionalData =
|
|
2040
|
+
additionalData = forge3.util.createBuffer();
|
|
2041
2041
|
}
|
|
2042
2042
|
if ("tagLength" in options) {
|
|
2043
2043
|
this._tagLength = options.tagLength;
|
|
@@ -2046,7 +2046,7 @@ var require_cipherModes = __commonJS({
|
|
|
2046
2046
|
}
|
|
2047
2047
|
this._tag = null;
|
|
2048
2048
|
if (options.decrypt) {
|
|
2049
|
-
this._tag =
|
|
2049
|
+
this._tag = forge3.util.createBuffer(options.tag).getBytes();
|
|
2050
2050
|
if (this._tag.length !== this._tagLength / 8) {
|
|
2051
2051
|
throw new Error("Authentication tag does not match tag length.");
|
|
2052
2052
|
}
|
|
@@ -2078,7 +2078,7 @@ var require_cipherModes = __commonJS({
|
|
|
2078
2078
|
this._inBlock = this._j0.slice(0);
|
|
2079
2079
|
inc32(this._inBlock);
|
|
2080
2080
|
this._partialBytes = 0;
|
|
2081
|
-
additionalData =
|
|
2081
|
+
additionalData = forge3.util.createBuffer(additionalData);
|
|
2082
2082
|
this._aDataLength = from64To32(additionalData.length() * 8);
|
|
2083
2083
|
var overflow = additionalData.length() % this.blockSize;
|
|
2084
2084
|
if (overflow) {
|
|
@@ -2172,7 +2172,7 @@ var require_cipherModes = __commonJS({
|
|
|
2172
2172
|
if (options.decrypt && options.overflow) {
|
|
2173
2173
|
output.truncate(this.blockSize - options.overflow);
|
|
2174
2174
|
}
|
|
2175
|
-
this.tag =
|
|
2175
|
+
this.tag = forge3.util.createBuffer();
|
|
2176
2176
|
var lengths = this._aDataLength.concat(from64To32(this._cipherLength * 8));
|
|
2177
2177
|
this._s = this.ghash(this._hashSubkey, this._s, lengths);
|
|
2178
2178
|
var tag = [];
|
|
@@ -2278,11 +2278,11 @@ var require_cipherModes = __commonJS({
|
|
|
2278
2278
|
};
|
|
2279
2279
|
function transformIV(iv, blockSize) {
|
|
2280
2280
|
if (typeof iv === "string") {
|
|
2281
|
-
iv =
|
|
2281
|
+
iv = forge3.util.createBuffer(iv);
|
|
2282
2282
|
}
|
|
2283
|
-
if (
|
|
2283
|
+
if (forge3.util.isArray(iv) && iv.length > 4) {
|
|
2284
2284
|
var tmp = iv;
|
|
2285
|
-
iv =
|
|
2285
|
+
iv = forge3.util.createBuffer();
|
|
2286
2286
|
for (var i = 0; i < tmp.length; ++i) {
|
|
2287
2287
|
iv.putByte(tmp[i]);
|
|
2288
2288
|
}
|
|
@@ -2292,7 +2292,7 @@ var require_cipherModes = __commonJS({
|
|
|
2292
2292
|
"Invalid IV length; got " + iv.length() + " bytes and expected " + blockSize + " bytes."
|
|
2293
2293
|
);
|
|
2294
2294
|
}
|
|
2295
|
-
if (!
|
|
2295
|
+
if (!forge3.util.isArray(iv)) {
|
|
2296
2296
|
var ints = [];
|
|
2297
2297
|
var blocks = blockSize / 4;
|
|
2298
2298
|
for (var i = 0; i < blocks; ++i) {
|
|
@@ -2314,12 +2314,12 @@ var require_cipherModes = __commonJS({
|
|
|
2314
2314
|
// ../../node_modules/node-forge/lib/aes.js
|
|
2315
2315
|
var require_aes = __commonJS({
|
|
2316
2316
|
"../../node_modules/node-forge/lib/aes.js"(exports$1, module) {
|
|
2317
|
-
var
|
|
2317
|
+
var forge3 = require_forge();
|
|
2318
2318
|
require_cipher();
|
|
2319
2319
|
require_cipherModes();
|
|
2320
2320
|
require_util();
|
|
2321
|
-
module.exports =
|
|
2322
|
-
|
|
2321
|
+
module.exports = forge3.aes = forge3.aes || {};
|
|
2322
|
+
forge3.aes.startEncrypting = function(key, iv, output, mode) {
|
|
2323
2323
|
var cipher = _createCipher({
|
|
2324
2324
|
key,
|
|
2325
2325
|
output,
|
|
@@ -2329,7 +2329,7 @@ var require_aes = __commonJS({
|
|
|
2329
2329
|
cipher.start(iv);
|
|
2330
2330
|
return cipher;
|
|
2331
2331
|
};
|
|
2332
|
-
|
|
2332
|
+
forge3.aes.createEncryptionCipher = function(key, mode) {
|
|
2333
2333
|
return _createCipher({
|
|
2334
2334
|
key,
|
|
2335
2335
|
output: null,
|
|
@@ -2337,7 +2337,7 @@ var require_aes = __commonJS({
|
|
|
2337
2337
|
mode
|
|
2338
2338
|
});
|
|
2339
2339
|
};
|
|
2340
|
-
|
|
2340
|
+
forge3.aes.startDecrypting = function(key, iv, output, mode) {
|
|
2341
2341
|
var cipher = _createCipher({
|
|
2342
2342
|
key,
|
|
2343
2343
|
output,
|
|
@@ -2347,7 +2347,7 @@ var require_aes = __commonJS({
|
|
|
2347
2347
|
cipher.start(iv);
|
|
2348
2348
|
return cipher;
|
|
2349
2349
|
};
|
|
2350
|
-
|
|
2350
|
+
forge3.aes.createDecryptionCipher = function(key, mode) {
|
|
2351
2351
|
return _createCipher({
|
|
2352
2352
|
key,
|
|
2353
2353
|
output: null,
|
|
@@ -2355,7 +2355,7 @@ var require_aes = __commonJS({
|
|
|
2355
2355
|
mode
|
|
2356
2356
|
});
|
|
2357
2357
|
};
|
|
2358
|
-
|
|
2358
|
+
forge3.aes.Algorithm = function(name, mode) {
|
|
2359
2359
|
if (!init) {
|
|
2360
2360
|
initialize();
|
|
2361
2361
|
}
|
|
@@ -2374,22 +2374,22 @@ var require_aes = __commonJS({
|
|
|
2374
2374
|
});
|
|
2375
2375
|
self2._init = false;
|
|
2376
2376
|
};
|
|
2377
|
-
|
|
2377
|
+
forge3.aes.Algorithm.prototype.initialize = function(options) {
|
|
2378
2378
|
if (this._init) {
|
|
2379
2379
|
return;
|
|
2380
2380
|
}
|
|
2381
2381
|
var key = options.key;
|
|
2382
2382
|
var tmp;
|
|
2383
2383
|
if (typeof key === "string" && (key.length === 16 || key.length === 24 || key.length === 32)) {
|
|
2384
|
-
key =
|
|
2385
|
-
} else if (
|
|
2384
|
+
key = forge3.util.createBuffer(key);
|
|
2385
|
+
} else if (forge3.util.isArray(key) && (key.length === 16 || key.length === 24 || key.length === 32)) {
|
|
2386
2386
|
tmp = key;
|
|
2387
|
-
key =
|
|
2387
|
+
key = forge3.util.createBuffer();
|
|
2388
2388
|
for (var i = 0; i < tmp.length; ++i) {
|
|
2389
2389
|
key.putByte(tmp[i]);
|
|
2390
2390
|
}
|
|
2391
2391
|
}
|
|
2392
|
-
if (!
|
|
2392
|
+
if (!forge3.util.isArray(key)) {
|
|
2393
2393
|
tmp = key;
|
|
2394
2394
|
key = [];
|
|
2395
2395
|
var len = tmp.length();
|
|
@@ -2400,7 +2400,7 @@ var require_aes = __commonJS({
|
|
|
2400
2400
|
}
|
|
2401
2401
|
}
|
|
2402
2402
|
}
|
|
2403
|
-
if (!
|
|
2403
|
+
if (!forge3.util.isArray(key) || !(key.length === 4 || key.length === 6 || key.length === 8)) {
|
|
2404
2404
|
throw new Error("Invalid key parameter.");
|
|
2405
2405
|
}
|
|
2406
2406
|
var mode = this.mode.name;
|
|
@@ -2408,24 +2408,24 @@ var require_aes = __commonJS({
|
|
|
2408
2408
|
this._w = _expandKey(key, options.decrypt && !encryptOp);
|
|
2409
2409
|
this._init = true;
|
|
2410
2410
|
};
|
|
2411
|
-
|
|
2411
|
+
forge3.aes._expandKey = function(key, decrypt) {
|
|
2412
2412
|
if (!init) {
|
|
2413
2413
|
initialize();
|
|
2414
2414
|
}
|
|
2415
2415
|
return _expandKey(key, decrypt);
|
|
2416
2416
|
};
|
|
2417
|
-
|
|
2418
|
-
registerAlgorithm("AES-ECB",
|
|
2419
|
-
registerAlgorithm("AES-CBC",
|
|
2420
|
-
registerAlgorithm("AES-CFB",
|
|
2421
|
-
registerAlgorithm("AES-OFB",
|
|
2422
|
-
registerAlgorithm("AES-CTR",
|
|
2423
|
-
registerAlgorithm("AES-GCM",
|
|
2417
|
+
forge3.aes._updateBlock = _updateBlock;
|
|
2418
|
+
registerAlgorithm("AES-ECB", forge3.cipher.modes.ecb);
|
|
2419
|
+
registerAlgorithm("AES-CBC", forge3.cipher.modes.cbc);
|
|
2420
|
+
registerAlgorithm("AES-CFB", forge3.cipher.modes.cfb);
|
|
2421
|
+
registerAlgorithm("AES-OFB", forge3.cipher.modes.ofb);
|
|
2422
|
+
registerAlgorithm("AES-CTR", forge3.cipher.modes.ctr);
|
|
2423
|
+
registerAlgorithm("AES-GCM", forge3.cipher.modes.gcm);
|
|
2424
2424
|
function registerAlgorithm(name, mode) {
|
|
2425
2425
|
var factory = function() {
|
|
2426
|
-
return new
|
|
2426
|
+
return new forge3.aes.Algorithm(name, mode);
|
|
2427
2427
|
};
|
|
2428
|
-
|
|
2428
|
+
forge3.cipher.registerAlgorithm(name, factory);
|
|
2429
2429
|
}
|
|
2430
2430
|
var init = false;
|
|
2431
2431
|
var Nb = 4;
|
|
@@ -2565,14 +2565,14 @@ var require_aes = __commonJS({
|
|
|
2565
2565
|
var algorithm = "AES-" + mode;
|
|
2566
2566
|
var cipher;
|
|
2567
2567
|
if (options.decrypt) {
|
|
2568
|
-
cipher =
|
|
2568
|
+
cipher = forge3.cipher.createDecipher(algorithm, options.key);
|
|
2569
2569
|
} else {
|
|
2570
|
-
cipher =
|
|
2570
|
+
cipher = forge3.cipher.createCipher(algorithm, options.key);
|
|
2571
2571
|
}
|
|
2572
2572
|
var start = cipher.start;
|
|
2573
2573
|
cipher.start = function(iv, options2) {
|
|
2574
2574
|
var output = null;
|
|
2575
|
-
if (options2 instanceof
|
|
2575
|
+
if (options2 instanceof forge3.util.ByteBuffer) {
|
|
2576
2576
|
output = options2;
|
|
2577
2577
|
options2 = {};
|
|
2578
2578
|
}
|
|
@@ -2589,9 +2589,9 @@ var require_aes = __commonJS({
|
|
|
2589
2589
|
// ../../node_modules/node-forge/lib/oids.js
|
|
2590
2590
|
var require_oids = __commonJS({
|
|
2591
2591
|
"../../node_modules/node-forge/lib/oids.js"(exports$1, module) {
|
|
2592
|
-
var
|
|
2593
|
-
|
|
2594
|
-
var oids = module.exports =
|
|
2592
|
+
var forge3 = require_forge();
|
|
2593
|
+
forge3.pki = forge3.pki || {};
|
|
2594
|
+
var oids = module.exports = forge3.pki.oids = forge3.oids = forge3.oids || {};
|
|
2595
2595
|
function _IN(id, name) {
|
|
2596
2596
|
oids[id] = name;
|
|
2597
2597
|
oids[name] = id;
|
|
@@ -2733,10 +2733,10 @@ var require_oids = __commonJS({
|
|
|
2733
2733
|
// ../../node_modules/node-forge/lib/asn1.js
|
|
2734
2734
|
var require_asn1 = __commonJS({
|
|
2735
2735
|
"../../node_modules/node-forge/lib/asn1.js"(exports$1, module) {
|
|
2736
|
-
var
|
|
2736
|
+
var forge3 = require_forge();
|
|
2737
2737
|
require_util();
|
|
2738
2738
|
require_oids();
|
|
2739
|
-
var asn1 = module.exports =
|
|
2739
|
+
var asn1 = module.exports = forge3.asn1 = forge3.asn1 || {};
|
|
2740
2740
|
asn1.Class = {
|
|
2741
2741
|
UNIVERSAL: 0,
|
|
2742
2742
|
APPLICATION: 64,
|
|
@@ -2768,7 +2768,7 @@ var require_asn1 = __commonJS({
|
|
|
2768
2768
|
};
|
|
2769
2769
|
asn1.maxDepth = 256;
|
|
2770
2770
|
asn1.create = function(tagClass, type, constructed, value, options) {
|
|
2771
|
-
if (
|
|
2771
|
+
if (forge3.util.isArray(value)) {
|
|
2772
2772
|
var tmp = [];
|
|
2773
2773
|
for (var i = 0; i < value.length; ++i) {
|
|
2774
2774
|
if (value[i] !== void 0) {
|
|
@@ -2781,7 +2781,7 @@ var require_asn1 = __commonJS({
|
|
|
2781
2781
|
tagClass,
|
|
2782
2782
|
type,
|
|
2783
2783
|
constructed,
|
|
2784
|
-
composed: constructed ||
|
|
2784
|
+
composed: constructed || forge3.util.isArray(value),
|
|
2785
2785
|
value
|
|
2786
2786
|
};
|
|
2787
2787
|
if (options && "bitStringContents" in options) {
|
|
@@ -2792,7 +2792,7 @@ var require_asn1 = __commonJS({
|
|
|
2792
2792
|
};
|
|
2793
2793
|
asn1.copy = function(obj, options) {
|
|
2794
2794
|
var copy;
|
|
2795
|
-
if (
|
|
2795
|
+
if (forge3.util.isArray(obj)) {
|
|
2796
2796
|
copy = [];
|
|
2797
2797
|
for (var i = 0; i < obj.length; ++i) {
|
|
2798
2798
|
copy.push(asn1.copy(obj[i], options));
|
|
@@ -2815,8 +2815,8 @@ var require_asn1 = __commonJS({
|
|
|
2815
2815
|
return copy;
|
|
2816
2816
|
};
|
|
2817
2817
|
asn1.equals = function(obj1, obj2, options) {
|
|
2818
|
-
if (
|
|
2819
|
-
if (!
|
|
2818
|
+
if (forge3.util.isArray(obj1)) {
|
|
2819
|
+
if (!forge3.util.isArray(obj2)) {
|
|
2820
2820
|
return false;
|
|
2821
2821
|
}
|
|
2822
2822
|
if (obj1.length !== obj2.length) {
|
|
@@ -2912,7 +2912,7 @@ var require_asn1 = __commonJS({
|
|
|
2912
2912
|
options.maxDepth = asn1.maxDepth;
|
|
2913
2913
|
}
|
|
2914
2914
|
if (typeof bytes === "string") {
|
|
2915
|
-
bytes =
|
|
2915
|
+
bytes = forge3.util.createBuffer(bytes);
|
|
2916
2916
|
}
|
|
2917
2917
|
var byteCount = bytes.length();
|
|
2918
2918
|
var value = _fromDer(bytes, bytes.length(), 0, options);
|
|
@@ -3038,9 +3038,9 @@ var require_asn1 = __commonJS({
|
|
|
3038
3038
|
return asn1.create(tagClass, type, constructed, value, asn1Options);
|
|
3039
3039
|
}
|
|
3040
3040
|
asn1.toDer = function(obj) {
|
|
3041
|
-
var bytes =
|
|
3041
|
+
var bytes = forge3.util.createBuffer();
|
|
3042
3042
|
var b1 = obj.tagClass | obj.type;
|
|
3043
|
-
var value =
|
|
3043
|
+
var value = forge3.util.createBuffer();
|
|
3044
3044
|
var useBitStringContents = false;
|
|
3045
3045
|
if ("bitStringContents" in obj) {
|
|
3046
3046
|
useBitStringContents = true;
|
|
@@ -3096,7 +3096,7 @@ var require_asn1 = __commonJS({
|
|
|
3096
3096
|
};
|
|
3097
3097
|
asn1.oidToDer = function(oid) {
|
|
3098
3098
|
var values = oid.split(".");
|
|
3099
|
-
var bytes =
|
|
3099
|
+
var bytes = forge3.util.createBuffer();
|
|
3100
3100
|
bytes.putByte(40 * parseInt(values[0], 10) + parseInt(values[1], 10));
|
|
3101
3101
|
var last, valueBytes, value, b;
|
|
3102
3102
|
for (var i = 2; i < values.length; ++i) {
|
|
@@ -3124,7 +3124,7 @@ var require_asn1 = __commonJS({
|
|
|
3124
3124
|
asn1.derToOid = function(bytes) {
|
|
3125
3125
|
var oid;
|
|
3126
3126
|
if (typeof bytes === "string") {
|
|
3127
|
-
bytes =
|
|
3127
|
+
bytes = forge3.util.createBuffer(bytes);
|
|
3128
3128
|
}
|
|
3129
3129
|
var b = bytes.getByte();
|
|
3130
3130
|
oid = Math.floor(b / 40) + "." + b % 40;
|
|
@@ -3260,7 +3260,7 @@ var require_asn1 = __commonJS({
|
|
|
3260
3260
|
return rval;
|
|
3261
3261
|
};
|
|
3262
3262
|
asn1.integerToDer = function(x) {
|
|
3263
|
-
var rval =
|
|
3263
|
+
var rval = forge3.util.createBuffer();
|
|
3264
3264
|
if (x >= -128 && x < 128) {
|
|
3265
3265
|
return rval.putSignedInt(x, 8);
|
|
3266
3266
|
}
|
|
@@ -3279,7 +3279,7 @@ var require_asn1 = __commonJS({
|
|
|
3279
3279
|
};
|
|
3280
3280
|
asn1.derToInteger = function(bytes) {
|
|
3281
3281
|
if (typeof bytes === "string") {
|
|
3282
|
-
bytes =
|
|
3282
|
+
bytes = forge3.util.createBuffer(bytes);
|
|
3283
3283
|
}
|
|
3284
3284
|
var n = bytes.length() * 8;
|
|
3285
3285
|
if (n > 32) {
|
|
@@ -3292,7 +3292,7 @@ var require_asn1 = __commonJS({
|
|
|
3292
3292
|
if ((obj.tagClass === v.tagClass || typeof v.tagClass === "undefined") && (obj.type === v.type || typeof v.type === "undefined")) {
|
|
3293
3293
|
if (obj.constructed === v.constructed || typeof v.constructed === "undefined") {
|
|
3294
3294
|
rval = true;
|
|
3295
|
-
if (v.value &&
|
|
3295
|
+
if (v.value && forge3.util.isArray(v.value)) {
|
|
3296
3296
|
var j = 0;
|
|
3297
3297
|
for (var i = 0; rval && i < v.value.length; ++i) {
|
|
3298
3298
|
var schemaItem = v.value[i];
|
|
@@ -3492,9 +3492,9 @@ var require_asn1 = __commonJS({
|
|
|
3492
3492
|
if (obj.type === asn1.Type.OID) {
|
|
3493
3493
|
var oid = asn1.derToOid(obj.value);
|
|
3494
3494
|
rval += oid;
|
|
3495
|
-
if (
|
|
3496
|
-
if (oid in
|
|
3497
|
-
rval += " (" +
|
|
3495
|
+
if (forge3.pki && forge3.pki.oids) {
|
|
3496
|
+
if (oid in forge3.pki.oids) {
|
|
3497
|
+
rval += " (" + forge3.pki.oids[oid] + ") ";
|
|
3498
3498
|
}
|
|
3499
3499
|
}
|
|
3500
3500
|
}
|
|
@@ -3502,11 +3502,11 @@ var require_asn1 = __commonJS({
|
|
|
3502
3502
|
try {
|
|
3503
3503
|
rval += asn1.derToInteger(obj.value);
|
|
3504
3504
|
} catch (ex) {
|
|
3505
|
-
rval += "0x" +
|
|
3505
|
+
rval += "0x" + forge3.util.bytesToHex(obj.value);
|
|
3506
3506
|
}
|
|
3507
3507
|
} else if (obj.type === asn1.Type.BITSTRING) {
|
|
3508
3508
|
if (obj.value.length > 1) {
|
|
3509
|
-
rval += "0x" +
|
|
3509
|
+
rval += "0x" + forge3.util.bytesToHex(obj.value.slice(1));
|
|
3510
3510
|
} else {
|
|
3511
3511
|
rval += "(none)";
|
|
3512
3512
|
}
|
|
@@ -3522,13 +3522,13 @@ var require_asn1 = __commonJS({
|
|
|
3522
3522
|
if (!_nonLatinRegex.test(obj.value)) {
|
|
3523
3523
|
rval += "(" + obj.value + ") ";
|
|
3524
3524
|
}
|
|
3525
|
-
rval += "0x" +
|
|
3525
|
+
rval += "0x" + forge3.util.bytesToHex(obj.value);
|
|
3526
3526
|
} else if (obj.type === asn1.Type.UTF8) {
|
|
3527
3527
|
try {
|
|
3528
|
-
rval +=
|
|
3528
|
+
rval += forge3.util.decodeUtf8(obj.value);
|
|
3529
3529
|
} catch (e) {
|
|
3530
3530
|
if (e.message === "URI malformed") {
|
|
3531
|
-
rval += "0x" +
|
|
3531
|
+
rval += "0x" + forge3.util.bytesToHex(obj.value) + " (malformed UTF8)";
|
|
3532
3532
|
} else {
|
|
3533
3533
|
throw e;
|
|
3534
3534
|
}
|
|
@@ -3536,7 +3536,7 @@ var require_asn1 = __commonJS({
|
|
|
3536
3536
|
} else if (obj.type === asn1.Type.PRINTABLESTRING || obj.type === asn1.Type.IA5String) {
|
|
3537
3537
|
rval += obj.value;
|
|
3538
3538
|
} else if (_nonLatinRegex.test(obj.value)) {
|
|
3539
|
-
rval += "0x" +
|
|
3539
|
+
rval += "0x" + forge3.util.bytesToHex(obj.value);
|
|
3540
3540
|
} else if (obj.value.length === 0) {
|
|
3541
3541
|
rval += "[null]";
|
|
3542
3542
|
} else {
|
|
@@ -3551,19 +3551,19 @@ var require_asn1 = __commonJS({
|
|
|
3551
3551
|
// ../../node_modules/node-forge/lib/md.js
|
|
3552
3552
|
var require_md = __commonJS({
|
|
3553
3553
|
"../../node_modules/node-forge/lib/md.js"(exports$1, module) {
|
|
3554
|
-
var
|
|
3555
|
-
module.exports =
|
|
3556
|
-
|
|
3554
|
+
var forge3 = require_forge();
|
|
3555
|
+
module.exports = forge3.md = forge3.md || {};
|
|
3556
|
+
forge3.md.algorithms = forge3.md.algorithms || {};
|
|
3557
3557
|
}
|
|
3558
3558
|
});
|
|
3559
3559
|
|
|
3560
3560
|
// ../../node_modules/node-forge/lib/hmac.js
|
|
3561
3561
|
var require_hmac = __commonJS({
|
|
3562
3562
|
"../../node_modules/node-forge/lib/hmac.js"(exports$1, module) {
|
|
3563
|
-
var
|
|
3563
|
+
var forge3 = require_forge();
|
|
3564
3564
|
require_md();
|
|
3565
3565
|
require_util();
|
|
3566
|
-
var hmac = module.exports =
|
|
3566
|
+
var hmac = module.exports = forge3.hmac = forge3.hmac || {};
|
|
3567
3567
|
hmac.create = function() {
|
|
3568
3568
|
var _key = null;
|
|
3569
3569
|
var _md = null;
|
|
@@ -3574,8 +3574,8 @@ var require_hmac = __commonJS({
|
|
|
3574
3574
|
if (md !== null) {
|
|
3575
3575
|
if (typeof md === "string") {
|
|
3576
3576
|
md = md.toLowerCase();
|
|
3577
|
-
if (md in
|
|
3578
|
-
_md =
|
|
3577
|
+
if (md in forge3.md.algorithms) {
|
|
3578
|
+
_md = forge3.md.algorithms[md].create();
|
|
3579
3579
|
} else {
|
|
3580
3580
|
throw new Error('Unknown hash algorithm "' + md + '"');
|
|
3581
3581
|
}
|
|
@@ -3587,10 +3587,10 @@ var require_hmac = __commonJS({
|
|
|
3587
3587
|
key = _key;
|
|
3588
3588
|
} else {
|
|
3589
3589
|
if (typeof key === "string") {
|
|
3590
|
-
key =
|
|
3591
|
-
} else if (
|
|
3590
|
+
key = forge3.util.createBuffer(key);
|
|
3591
|
+
} else if (forge3.util.isArray(key)) {
|
|
3592
3592
|
var tmp = key;
|
|
3593
|
-
key =
|
|
3593
|
+
key = forge3.util.createBuffer();
|
|
3594
3594
|
for (var i = 0; i < tmp.length; ++i) {
|
|
3595
3595
|
key.putByte(tmp[i]);
|
|
3596
3596
|
}
|
|
@@ -3601,8 +3601,8 @@ var require_hmac = __commonJS({
|
|
|
3601
3601
|
_md.update(key.bytes());
|
|
3602
3602
|
key = _md.digest();
|
|
3603
3603
|
}
|
|
3604
|
-
_ipadding =
|
|
3605
|
-
_opadding =
|
|
3604
|
+
_ipadding = forge3.util.createBuffer();
|
|
3605
|
+
_opadding = forge3.util.createBuffer();
|
|
3606
3606
|
keylen = key.length();
|
|
3607
3607
|
for (var i = 0; i < keylen; ++i) {
|
|
3608
3608
|
var tmp = key.at(i);
|
|
@@ -3642,17 +3642,17 @@ var require_hmac = __commonJS({
|
|
|
3642
3642
|
// ../../node_modules/node-forge/lib/md5.js
|
|
3643
3643
|
var require_md5 = __commonJS({
|
|
3644
3644
|
"../../node_modules/node-forge/lib/md5.js"(exports$1, module) {
|
|
3645
|
-
var
|
|
3645
|
+
var forge3 = require_forge();
|
|
3646
3646
|
require_md();
|
|
3647
3647
|
require_util();
|
|
3648
|
-
var md5 = module.exports =
|
|
3649
|
-
|
|
3648
|
+
var md5 = module.exports = forge3.md5 = forge3.md5 || {};
|
|
3649
|
+
forge3.md.md5 = forge3.md.algorithms.md5 = md5;
|
|
3650
3650
|
md5.create = function() {
|
|
3651
3651
|
if (!_initialized) {
|
|
3652
3652
|
_init();
|
|
3653
3653
|
}
|
|
3654
3654
|
var _state = null;
|
|
3655
|
-
var _input =
|
|
3655
|
+
var _input = forge3.util.createBuffer();
|
|
3656
3656
|
var _w = new Array(16);
|
|
3657
3657
|
var md = {
|
|
3658
3658
|
algorithm: "md5",
|
|
@@ -3672,7 +3672,7 @@ var require_md5 = __commonJS({
|
|
|
3672
3672
|
for (var i = 0; i < int32s; ++i) {
|
|
3673
3673
|
md.fullMessageLength.push(0);
|
|
3674
3674
|
}
|
|
3675
|
-
_input =
|
|
3675
|
+
_input = forge3.util.createBuffer();
|
|
3676
3676
|
_state = {
|
|
3677
3677
|
h0: 1732584193,
|
|
3678
3678
|
h1: 4023233417,
|
|
@@ -3684,7 +3684,7 @@ var require_md5 = __commonJS({
|
|
|
3684
3684
|
md.start();
|
|
3685
3685
|
md.update = function(msg, encoding) {
|
|
3686
3686
|
if (encoding === "utf8") {
|
|
3687
|
-
msg =
|
|
3687
|
+
msg = forge3.util.encodeUtf8(msg);
|
|
3688
3688
|
}
|
|
3689
3689
|
var len = msg.length;
|
|
3690
3690
|
md.messageLength += len;
|
|
@@ -3703,7 +3703,7 @@ var require_md5 = __commonJS({
|
|
|
3703
3703
|
return md;
|
|
3704
3704
|
};
|
|
3705
3705
|
md.digest = function() {
|
|
3706
|
-
var finalBlock =
|
|
3706
|
+
var finalBlock = forge3.util.createBuffer();
|
|
3707
3707
|
finalBlock.putBytes(_input.bytes());
|
|
3708
3708
|
var remaining = md.fullMessageLength[md.fullMessageLength.length - 1] + md.messageLengthSize;
|
|
3709
3709
|
var overflow = remaining & md.blockLength - 1;
|
|
@@ -3721,7 +3721,7 @@ var require_md5 = __commonJS({
|
|
|
3721
3721
|
h3: _state.h3
|
|
3722
3722
|
};
|
|
3723
3723
|
_update(s2, _w, finalBlock);
|
|
3724
|
-
var rval =
|
|
3724
|
+
var rval = forge3.util.createBuffer();
|
|
3725
3725
|
rval.putInt32Le(s2.h0);
|
|
3726
3726
|
rval.putInt32Le(s2.h1);
|
|
3727
3727
|
rval.putInt32Le(s2.h2);
|
|
@@ -3737,7 +3737,7 @@ var require_md5 = __commonJS({
|
|
|
3737
3737
|
var _initialized = false;
|
|
3738
3738
|
function _init() {
|
|
3739
3739
|
_padding = String.fromCharCode(128);
|
|
3740
|
-
_padding +=
|
|
3740
|
+
_padding += forge3.util.fillString(String.fromCharCode(0), 64);
|
|
3741
3741
|
_g = [
|
|
3742
3742
|
0,
|
|
3743
3743
|
1,
|
|
@@ -3934,9 +3934,9 @@ var require_md5 = __commonJS({
|
|
|
3934
3934
|
// ../../node_modules/node-forge/lib/pem.js
|
|
3935
3935
|
var require_pem = __commonJS({
|
|
3936
3936
|
"../../node_modules/node-forge/lib/pem.js"(exports$1, module) {
|
|
3937
|
-
var
|
|
3937
|
+
var forge3 = require_forge();
|
|
3938
3938
|
require_util();
|
|
3939
|
-
var pem = module.exports =
|
|
3939
|
+
var pem = module.exports = forge3.pem = forge3.pem || {};
|
|
3940
3940
|
pem.encode = function(msg, options) {
|
|
3941
3941
|
options = options || {};
|
|
3942
3942
|
var rval = "-----BEGIN " + msg.type + "-----\r\n";
|
|
@@ -3967,7 +3967,7 @@ var require_pem = __commonJS({
|
|
|
3967
3967
|
if (msg.procType) {
|
|
3968
3968
|
rval += "\r\n";
|
|
3969
3969
|
}
|
|
3970
|
-
rval +=
|
|
3970
|
+
rval += forge3.util.encode64(msg.body, options.maxline || 64) + "\r\n";
|
|
3971
3971
|
rval += "-----END " + msg.type + "-----\r\n";
|
|
3972
3972
|
return rval;
|
|
3973
3973
|
};
|
|
@@ -3992,7 +3992,7 @@ var require_pem = __commonJS({
|
|
|
3992
3992
|
contentDomain: null,
|
|
3993
3993
|
dekInfo: null,
|
|
3994
3994
|
headers: [],
|
|
3995
|
-
body:
|
|
3995
|
+
body: forge3.util.decode64(match[3])
|
|
3996
3996
|
};
|
|
3997
3997
|
rval.push(msg);
|
|
3998
3998
|
if (!match[2]) {
|
|
@@ -4085,12 +4085,12 @@ var require_pem = __commonJS({
|
|
|
4085
4085
|
// ../../node_modules/node-forge/lib/des.js
|
|
4086
4086
|
var require_des = __commonJS({
|
|
4087
4087
|
"../../node_modules/node-forge/lib/des.js"(exports$1, module) {
|
|
4088
|
-
var
|
|
4088
|
+
var forge3 = require_forge();
|
|
4089
4089
|
require_cipher();
|
|
4090
4090
|
require_cipherModes();
|
|
4091
4091
|
require_util();
|
|
4092
|
-
module.exports =
|
|
4093
|
-
|
|
4092
|
+
module.exports = forge3.des = forge3.des || {};
|
|
4093
|
+
forge3.des.startEncrypting = function(key, iv, output, mode) {
|
|
4094
4094
|
var cipher = _createCipher({
|
|
4095
4095
|
key,
|
|
4096
4096
|
output,
|
|
@@ -4100,7 +4100,7 @@ var require_des = __commonJS({
|
|
|
4100
4100
|
cipher.start(iv);
|
|
4101
4101
|
return cipher;
|
|
4102
4102
|
};
|
|
4103
|
-
|
|
4103
|
+
forge3.des.createEncryptionCipher = function(key, mode) {
|
|
4104
4104
|
return _createCipher({
|
|
4105
4105
|
key,
|
|
4106
4106
|
output: null,
|
|
@@ -4108,7 +4108,7 @@ var require_des = __commonJS({
|
|
|
4108
4108
|
mode
|
|
4109
4109
|
});
|
|
4110
4110
|
};
|
|
4111
|
-
|
|
4111
|
+
forge3.des.startDecrypting = function(key, iv, output, mode) {
|
|
4112
4112
|
var cipher = _createCipher({
|
|
4113
4113
|
key,
|
|
4114
4114
|
output,
|
|
@@ -4118,7 +4118,7 @@ var require_des = __commonJS({
|
|
|
4118
4118
|
cipher.start(iv);
|
|
4119
4119
|
return cipher;
|
|
4120
4120
|
};
|
|
4121
|
-
|
|
4121
|
+
forge3.des.createDecryptionCipher = function(key, mode) {
|
|
4122
4122
|
return _createCipher({
|
|
4123
4123
|
key,
|
|
4124
4124
|
output: null,
|
|
@@ -4126,7 +4126,7 @@ var require_des = __commonJS({
|
|
|
4126
4126
|
mode
|
|
4127
4127
|
});
|
|
4128
4128
|
};
|
|
4129
|
-
|
|
4129
|
+
forge3.des.Algorithm = function(name, mode) {
|
|
4130
4130
|
var self2 = this;
|
|
4131
4131
|
self2.name = name;
|
|
4132
4132
|
self2.mode = new mode({
|
|
@@ -4142,11 +4142,11 @@ var require_des = __commonJS({
|
|
|
4142
4142
|
});
|
|
4143
4143
|
self2._init = false;
|
|
4144
4144
|
};
|
|
4145
|
-
|
|
4145
|
+
forge3.des.Algorithm.prototype.initialize = function(options) {
|
|
4146
4146
|
if (this._init) {
|
|
4147
4147
|
return;
|
|
4148
4148
|
}
|
|
4149
|
-
var key =
|
|
4149
|
+
var key = forge3.util.createBuffer(options.key);
|
|
4150
4150
|
if (this.name.indexOf("3DES") === 0) {
|
|
4151
4151
|
if (key.length() !== 24) {
|
|
4152
4152
|
throw new Error("Invalid Triple-DES key size: " + key.length() * 8);
|
|
@@ -4155,21 +4155,21 @@ var require_des = __commonJS({
|
|
|
4155
4155
|
this._keys = _createKeys(key);
|
|
4156
4156
|
this._init = true;
|
|
4157
4157
|
};
|
|
4158
|
-
registerAlgorithm("DES-ECB",
|
|
4159
|
-
registerAlgorithm("DES-CBC",
|
|
4160
|
-
registerAlgorithm("DES-CFB",
|
|
4161
|
-
registerAlgorithm("DES-OFB",
|
|
4162
|
-
registerAlgorithm("DES-CTR",
|
|
4163
|
-
registerAlgorithm("3DES-ECB",
|
|
4164
|
-
registerAlgorithm("3DES-CBC",
|
|
4165
|
-
registerAlgorithm("3DES-CFB",
|
|
4166
|
-
registerAlgorithm("3DES-OFB",
|
|
4167
|
-
registerAlgorithm("3DES-CTR",
|
|
4158
|
+
registerAlgorithm("DES-ECB", forge3.cipher.modes.ecb);
|
|
4159
|
+
registerAlgorithm("DES-CBC", forge3.cipher.modes.cbc);
|
|
4160
|
+
registerAlgorithm("DES-CFB", forge3.cipher.modes.cfb);
|
|
4161
|
+
registerAlgorithm("DES-OFB", forge3.cipher.modes.ofb);
|
|
4162
|
+
registerAlgorithm("DES-CTR", forge3.cipher.modes.ctr);
|
|
4163
|
+
registerAlgorithm("3DES-ECB", forge3.cipher.modes.ecb);
|
|
4164
|
+
registerAlgorithm("3DES-CBC", forge3.cipher.modes.cbc);
|
|
4165
|
+
registerAlgorithm("3DES-CFB", forge3.cipher.modes.cfb);
|
|
4166
|
+
registerAlgorithm("3DES-OFB", forge3.cipher.modes.ofb);
|
|
4167
|
+
registerAlgorithm("3DES-CTR", forge3.cipher.modes.ctr);
|
|
4168
4168
|
function registerAlgorithm(name, mode) {
|
|
4169
4169
|
var factory = function() {
|
|
4170
|
-
return new
|
|
4170
|
+
return new forge3.des.Algorithm(name, mode);
|
|
4171
4171
|
};
|
|
4172
|
-
|
|
4172
|
+
forge3.cipher.registerAlgorithm(name, factory);
|
|
4173
4173
|
}
|
|
4174
4174
|
var spfunction1 = [16843776, 0, 65536, 16843780, 16842756, 66564, 4, 65536, 1024, 16843776, 16843780, 1024, 16778244, 16842756, 16777216, 4, 1028, 16778240, 16778240, 66560, 66560, 16842752, 16842752, 16778244, 65540, 16777220, 16777220, 65540, 0, 1028, 66564, 16777216, 65536, 16843780, 4, 16842752, 16843776, 16777216, 16777216, 1024, 16842756, 65536, 66560, 16777220, 1024, 4, 16778244, 66564, 16843780, 65540, 16842752, 16778244, 16777220, 1028, 66564, 16843776, 1028, 16778240, 16778240, 0, 65540, 66560, 0, 16842756];
|
|
4175
4175
|
var spfunction2 = [-2146402272, -2147450880, 32768, 1081376, 1048576, 32, -2146435040, -2147450848, -2147483616, -2146402272, -2146402304, -2147483648, -2147450880, 1048576, 32, -2146435040, 1081344, 1048608, -2147450848, 0, -2147483648, 32768, 1081376, -2146435072, 1048608, -2147483616, 0, 1081344, 32800, -2146402304, -2146435072, 32800, 0, 1081376, -2146435040, 1048576, -2147450848, -2146435072, -2146402304, 32768, -2146435072, -2147450880, 32, -2146402272, 1081376, 32, 32768, -2147483648, 32800, -2146402304, 1048576, -2147483616, 1048608, -2147450848, -2147483616, 1048608, 1081344, 0, -2147450880, 32800, -2147483648, -2146435040, -2146402272, 1081344];
|
|
@@ -4299,14 +4299,14 @@ var require_des = __commonJS({
|
|
|
4299
4299
|
var algorithm = "DES-" + mode;
|
|
4300
4300
|
var cipher;
|
|
4301
4301
|
if (options.decrypt) {
|
|
4302
|
-
cipher =
|
|
4302
|
+
cipher = forge3.cipher.createDecipher(algorithm, options.key);
|
|
4303
4303
|
} else {
|
|
4304
|
-
cipher =
|
|
4304
|
+
cipher = forge3.cipher.createCipher(algorithm, options.key);
|
|
4305
4305
|
}
|
|
4306
4306
|
var start = cipher.start;
|
|
4307
4307
|
cipher.start = function(iv, options2) {
|
|
4308
4308
|
var output = null;
|
|
4309
|
-
if (options2 instanceof
|
|
4309
|
+
if (options2 instanceof forge3.util.ByteBuffer) {
|
|
4310
4310
|
output = options2;
|
|
4311
4311
|
options2 = {};
|
|
4312
4312
|
}
|
|
@@ -4323,21 +4323,21 @@ var require_des = __commonJS({
|
|
|
4323
4323
|
// ../../node_modules/node-forge/lib/pbkdf2.js
|
|
4324
4324
|
var require_pbkdf2 = __commonJS({
|
|
4325
4325
|
"../../node_modules/node-forge/lib/pbkdf2.js"(exports$1, module) {
|
|
4326
|
-
var
|
|
4326
|
+
var forge3 = require_forge();
|
|
4327
4327
|
require_hmac();
|
|
4328
4328
|
require_md();
|
|
4329
4329
|
require_util();
|
|
4330
|
-
var pkcs5 =
|
|
4330
|
+
var pkcs5 = forge3.pkcs5 = forge3.pkcs5 || {};
|
|
4331
4331
|
var crypto;
|
|
4332
|
-
if (
|
|
4332
|
+
if (forge3.util.isNodejs && !forge3.options.usePureJavaScript) {
|
|
4333
4333
|
crypto = __require("crypto");
|
|
4334
4334
|
}
|
|
4335
|
-
module.exports =
|
|
4335
|
+
module.exports = forge3.pbkdf2 = pkcs5.pbkdf2 = function(p, s, c, dkLen, md, callback) {
|
|
4336
4336
|
if (typeof md === "function") {
|
|
4337
4337
|
callback = md;
|
|
4338
4338
|
md = null;
|
|
4339
4339
|
}
|
|
4340
|
-
if (
|
|
4340
|
+
if (forge3.util.isNodejs && !forge3.options.usePureJavaScript && crypto.pbkdf2 && (md === null || typeof md !== "object") && (crypto.pbkdf2Sync.length > 4 || (!md || md === "sha1"))) {
|
|
4341
4341
|
if (typeof md !== "string") {
|
|
4342
4342
|
md = "sha1";
|
|
4343
4343
|
}
|
|
@@ -4368,10 +4368,10 @@ var require_pbkdf2 = __commonJS({
|
|
|
4368
4368
|
md = "sha1";
|
|
4369
4369
|
}
|
|
4370
4370
|
if (typeof md === "string") {
|
|
4371
|
-
if (!(md in
|
|
4371
|
+
if (!(md in forge3.md.algorithms)) {
|
|
4372
4372
|
throw new Error("Unknown hash algorithm: " + md);
|
|
4373
4373
|
}
|
|
4374
|
-
md =
|
|
4374
|
+
md = forge3.md[md].create();
|
|
4375
4375
|
}
|
|
4376
4376
|
var hLen = md.digestLength;
|
|
4377
4377
|
if (dkLen > 4294967295 * hLen) {
|
|
@@ -4383,7 +4383,7 @@ var require_pbkdf2 = __commonJS({
|
|
|
4383
4383
|
}
|
|
4384
4384
|
var len = Math.ceil(dkLen / hLen);
|
|
4385
4385
|
var r = dkLen - (len - 1) * hLen;
|
|
4386
|
-
var prf =
|
|
4386
|
+
var prf = forge3.hmac.create();
|
|
4387
4387
|
prf.start(md, p);
|
|
4388
4388
|
var dk = "";
|
|
4389
4389
|
var xor, u_c, u_c1;
|
|
@@ -4391,13 +4391,13 @@ var require_pbkdf2 = __commonJS({
|
|
|
4391
4391
|
for (var i = 1; i <= len; ++i) {
|
|
4392
4392
|
prf.start(null, null);
|
|
4393
4393
|
prf.update(s);
|
|
4394
|
-
prf.update(
|
|
4394
|
+
prf.update(forge3.util.int32ToBytes(i));
|
|
4395
4395
|
xor = u_c1 = prf.digest().getBytes();
|
|
4396
4396
|
for (var j = 2; j <= c; ++j) {
|
|
4397
4397
|
prf.start(null, null);
|
|
4398
4398
|
prf.update(u_c1);
|
|
4399
4399
|
u_c = prf.digest().getBytes();
|
|
4400
|
-
xor =
|
|
4400
|
+
xor = forge3.util.xorBytes(xor, u_c, hLen);
|
|
4401
4401
|
u_c1 = u_c;
|
|
4402
4402
|
}
|
|
4403
4403
|
dk += i < len ? xor : xor.substr(0, r);
|
|
@@ -4411,7 +4411,7 @@ var require_pbkdf2 = __commonJS({
|
|
|
4411
4411
|
}
|
|
4412
4412
|
prf.start(null, null);
|
|
4413
4413
|
prf.update(s);
|
|
4414
|
-
prf.update(
|
|
4414
|
+
prf.update(forge3.util.int32ToBytes(i));
|
|
4415
4415
|
xor = u_c1 = prf.digest().getBytes();
|
|
4416
4416
|
j = 2;
|
|
4417
4417
|
inner();
|
|
@@ -4421,10 +4421,10 @@ var require_pbkdf2 = __commonJS({
|
|
|
4421
4421
|
prf.start(null, null);
|
|
4422
4422
|
prf.update(u_c1);
|
|
4423
4423
|
u_c = prf.digest().getBytes();
|
|
4424
|
-
xor =
|
|
4424
|
+
xor = forge3.util.xorBytes(xor, u_c, hLen);
|
|
4425
4425
|
u_c1 = u_c;
|
|
4426
4426
|
++j;
|
|
4427
|
-
return
|
|
4427
|
+
return forge3.util.setImmediate(inner);
|
|
4428
4428
|
}
|
|
4429
4429
|
dk += i < len ? xor : xor.substr(0, r);
|
|
4430
4430
|
++i;
|
|
@@ -4438,17 +4438,17 @@ var require_pbkdf2 = __commonJS({
|
|
|
4438
4438
|
// ../../node_modules/node-forge/lib/sha256.js
|
|
4439
4439
|
var require_sha256 = __commonJS({
|
|
4440
4440
|
"../../node_modules/node-forge/lib/sha256.js"(exports$1, module) {
|
|
4441
|
-
var
|
|
4441
|
+
var forge3 = require_forge();
|
|
4442
4442
|
require_md();
|
|
4443
4443
|
require_util();
|
|
4444
|
-
var sha256 = module.exports =
|
|
4445
|
-
|
|
4444
|
+
var sha256 = module.exports = forge3.sha256 = forge3.sha256 || {};
|
|
4445
|
+
forge3.md.sha256 = forge3.md.algorithms.sha256 = sha256;
|
|
4446
4446
|
sha256.create = function() {
|
|
4447
4447
|
if (!_initialized) {
|
|
4448
4448
|
_init();
|
|
4449
4449
|
}
|
|
4450
4450
|
var _state = null;
|
|
4451
|
-
var _input =
|
|
4451
|
+
var _input = forge3.util.createBuffer();
|
|
4452
4452
|
var _w = new Array(64);
|
|
4453
4453
|
var md = {
|
|
4454
4454
|
algorithm: "sha256",
|
|
@@ -4468,7 +4468,7 @@ var require_sha256 = __commonJS({
|
|
|
4468
4468
|
for (var i = 0; i < int32s; ++i) {
|
|
4469
4469
|
md.fullMessageLength.push(0);
|
|
4470
4470
|
}
|
|
4471
|
-
_input =
|
|
4471
|
+
_input = forge3.util.createBuffer();
|
|
4472
4472
|
_state = {
|
|
4473
4473
|
h0: 1779033703,
|
|
4474
4474
|
h1: 3144134277,
|
|
@@ -4484,7 +4484,7 @@ var require_sha256 = __commonJS({
|
|
|
4484
4484
|
md.start();
|
|
4485
4485
|
md.update = function(msg, encoding) {
|
|
4486
4486
|
if (encoding === "utf8") {
|
|
4487
|
-
msg =
|
|
4487
|
+
msg = forge3.util.encodeUtf8(msg);
|
|
4488
4488
|
}
|
|
4489
4489
|
var len = msg.length;
|
|
4490
4490
|
md.messageLength += len;
|
|
@@ -4503,7 +4503,7 @@ var require_sha256 = __commonJS({
|
|
|
4503
4503
|
return md;
|
|
4504
4504
|
};
|
|
4505
4505
|
md.digest = function() {
|
|
4506
|
-
var finalBlock =
|
|
4506
|
+
var finalBlock = forge3.util.createBuffer();
|
|
4507
4507
|
finalBlock.putBytes(_input.bytes());
|
|
4508
4508
|
var remaining = md.fullMessageLength[md.fullMessageLength.length - 1] + md.messageLengthSize;
|
|
4509
4509
|
var overflow = remaining & md.blockLength - 1;
|
|
@@ -4529,7 +4529,7 @@ var require_sha256 = __commonJS({
|
|
|
4529
4529
|
h7: _state.h7
|
|
4530
4530
|
};
|
|
4531
4531
|
_update(s2, _w, finalBlock);
|
|
4532
|
-
var rval =
|
|
4532
|
+
var rval = forge3.util.createBuffer();
|
|
4533
4533
|
rval.putInt32(s2.h0);
|
|
4534
4534
|
rval.putInt32(s2.h1);
|
|
4535
4535
|
rval.putInt32(s2.h2);
|
|
@@ -4547,7 +4547,7 @@ var require_sha256 = __commonJS({
|
|
|
4547
4547
|
var _k = null;
|
|
4548
4548
|
function _init() {
|
|
4549
4549
|
_padding = String.fromCharCode(128);
|
|
4550
|
-
_padding +=
|
|
4550
|
+
_padding += forge3.util.fillString(String.fromCharCode(0), 64);
|
|
4551
4551
|
_k = [
|
|
4552
4552
|
1116352408,
|
|
4553
4553
|
1899447441,
|
|
@@ -4671,13 +4671,13 @@ var require_sha256 = __commonJS({
|
|
|
4671
4671
|
// ../../node_modules/node-forge/lib/prng.js
|
|
4672
4672
|
var require_prng = __commonJS({
|
|
4673
4673
|
"../../node_modules/node-forge/lib/prng.js"(exports$1, module) {
|
|
4674
|
-
var
|
|
4674
|
+
var forge3 = require_forge();
|
|
4675
4675
|
require_util();
|
|
4676
4676
|
var _crypto = null;
|
|
4677
|
-
if (
|
|
4677
|
+
if (forge3.util.isNodejs && !forge3.options.usePureJavaScript && !process.versions["node-webkit"]) {
|
|
4678
4678
|
_crypto = __require("crypto");
|
|
4679
4679
|
}
|
|
4680
|
-
var prng = module.exports =
|
|
4680
|
+
var prng = module.exports = forge3.prng = forge3.prng || {};
|
|
4681
4681
|
prng.create = function(plugin) {
|
|
4682
4682
|
var ctx = {
|
|
4683
4683
|
plugin,
|
|
@@ -4706,7 +4706,7 @@ var require_prng = __commonJS({
|
|
|
4706
4706
|
var increment = ctx.plugin.increment;
|
|
4707
4707
|
var formatKey = ctx.plugin.formatKey;
|
|
4708
4708
|
var formatSeed = ctx.plugin.formatSeed;
|
|
4709
|
-
var b =
|
|
4709
|
+
var b = forge3.util.createBuffer();
|
|
4710
4710
|
ctx.key = null;
|
|
4711
4711
|
generate();
|
|
4712
4712
|
function generate(err) {
|
|
@@ -4720,7 +4720,7 @@ var require_prng = __commonJS({
|
|
|
4720
4720
|
ctx.key = null;
|
|
4721
4721
|
}
|
|
4722
4722
|
if (ctx.key === null) {
|
|
4723
|
-
return
|
|
4723
|
+
return forge3.util.nextTick(function() {
|
|
4724
4724
|
_reseed(generate);
|
|
4725
4725
|
});
|
|
4726
4726
|
}
|
|
@@ -4729,7 +4729,7 @@ var require_prng = __commonJS({
|
|
|
4729
4729
|
b.putBytes(bytes);
|
|
4730
4730
|
ctx.key = formatKey(cipher(ctx.key, increment(ctx.seed)));
|
|
4731
4731
|
ctx.seed = formatSeed(cipher(ctx.key, ctx.seed));
|
|
4732
|
-
|
|
4732
|
+
forge3.util.setImmediate(generate);
|
|
4733
4733
|
}
|
|
4734
4734
|
};
|
|
4735
4735
|
ctx.generateSync = function(count) {
|
|
@@ -4738,7 +4738,7 @@ var require_prng = __commonJS({
|
|
|
4738
4738
|
var formatKey = ctx.plugin.formatKey;
|
|
4739
4739
|
var formatSeed = ctx.plugin.formatSeed;
|
|
4740
4740
|
ctx.key = null;
|
|
4741
|
-
var b =
|
|
4741
|
+
var b = forge3.util.createBuffer();
|
|
4742
4742
|
while (b.length() < count) {
|
|
4743
4743
|
if (ctx.generated > 1048575) {
|
|
4744
4744
|
ctx.key = null;
|
|
@@ -4799,14 +4799,14 @@ var require_prng = __commonJS({
|
|
|
4799
4799
|
}
|
|
4800
4800
|
function defaultSeedFile(needed) {
|
|
4801
4801
|
var getRandomValues = null;
|
|
4802
|
-
var globalScope =
|
|
4802
|
+
var globalScope = forge3.util.globalScope;
|
|
4803
4803
|
var _crypto2 = globalScope.crypto || globalScope.msCrypto;
|
|
4804
4804
|
if (_crypto2 && _crypto2.getRandomValues) {
|
|
4805
4805
|
getRandomValues = function(arr) {
|
|
4806
4806
|
return _crypto2.getRandomValues(arr);
|
|
4807
4807
|
};
|
|
4808
4808
|
}
|
|
4809
|
-
var b =
|
|
4809
|
+
var b = forge3.util.createBuffer();
|
|
4810
4810
|
if (getRandomValues) {
|
|
4811
4811
|
while (b.length() < needed) {
|
|
4812
4812
|
var count = Math.max(1, Math.min(needed - b.length(), 65536) / 4);
|
|
@@ -4911,31 +4911,31 @@ var require_prng = __commonJS({
|
|
|
4911
4911
|
// ../../node_modules/node-forge/lib/random.js
|
|
4912
4912
|
var require_random = __commonJS({
|
|
4913
4913
|
"../../node_modules/node-forge/lib/random.js"(exports$1, module) {
|
|
4914
|
-
var
|
|
4914
|
+
var forge3 = require_forge();
|
|
4915
4915
|
require_aes();
|
|
4916
4916
|
require_sha256();
|
|
4917
4917
|
require_prng();
|
|
4918
4918
|
require_util();
|
|
4919
4919
|
(function() {
|
|
4920
|
-
if (
|
|
4921
|
-
module.exports =
|
|
4920
|
+
if (forge3.random && forge3.random.getBytes) {
|
|
4921
|
+
module.exports = forge3.random;
|
|
4922
4922
|
return;
|
|
4923
4923
|
}
|
|
4924
4924
|
(function(jQuery2) {
|
|
4925
4925
|
var prng_aes = {};
|
|
4926
4926
|
var _prng_aes_output = new Array(4);
|
|
4927
|
-
var _prng_aes_buffer =
|
|
4927
|
+
var _prng_aes_buffer = forge3.util.createBuffer();
|
|
4928
4928
|
prng_aes.formatKey = function(key2) {
|
|
4929
|
-
var tmp =
|
|
4929
|
+
var tmp = forge3.util.createBuffer(key2);
|
|
4930
4930
|
key2 = new Array(4);
|
|
4931
4931
|
key2[0] = tmp.getInt32();
|
|
4932
4932
|
key2[1] = tmp.getInt32();
|
|
4933
4933
|
key2[2] = tmp.getInt32();
|
|
4934
4934
|
key2[3] = tmp.getInt32();
|
|
4935
|
-
return
|
|
4935
|
+
return forge3.aes._expandKey(key2, false);
|
|
4936
4936
|
};
|
|
4937
4937
|
prng_aes.formatSeed = function(seed) {
|
|
4938
|
-
var tmp =
|
|
4938
|
+
var tmp = forge3.util.createBuffer(seed);
|
|
4939
4939
|
seed = new Array(4);
|
|
4940
4940
|
seed[0] = tmp.getInt32();
|
|
4941
4941
|
seed[1] = tmp.getInt32();
|
|
@@ -4944,7 +4944,7 @@ var require_random = __commonJS({
|
|
|
4944
4944
|
return seed;
|
|
4945
4945
|
};
|
|
4946
4946
|
prng_aes.cipher = function(key2, seed) {
|
|
4947
|
-
|
|
4947
|
+
forge3.aes._updateBlock(key2, seed, _prng_aes_output, false);
|
|
4948
4948
|
_prng_aes_buffer.putInt32(_prng_aes_output[0]);
|
|
4949
4949
|
_prng_aes_buffer.putInt32(_prng_aes_output[1]);
|
|
4950
4950
|
_prng_aes_buffer.putInt32(_prng_aes_output[2]);
|
|
@@ -4955,9 +4955,9 @@ var require_random = __commonJS({
|
|
|
4955
4955
|
++seed[3];
|
|
4956
4956
|
return seed;
|
|
4957
4957
|
};
|
|
4958
|
-
prng_aes.md =
|
|
4958
|
+
prng_aes.md = forge3.md.sha256;
|
|
4959
4959
|
function spawnPrng() {
|
|
4960
|
-
var ctx =
|
|
4960
|
+
var ctx = forge3.prng.create(prng_aes);
|
|
4961
4961
|
ctx.getBytes = function(count, callback) {
|
|
4962
4962
|
return ctx.generate(count, callback);
|
|
4963
4963
|
};
|
|
@@ -4968,14 +4968,14 @@ var require_random = __commonJS({
|
|
|
4968
4968
|
}
|
|
4969
4969
|
var _ctx = spawnPrng();
|
|
4970
4970
|
var getRandomValues = null;
|
|
4971
|
-
var globalScope =
|
|
4971
|
+
var globalScope = forge3.util.globalScope;
|
|
4972
4972
|
var _crypto = globalScope.crypto || globalScope.msCrypto;
|
|
4973
4973
|
if (_crypto && _crypto.getRandomValues) {
|
|
4974
4974
|
getRandomValues = function(arr) {
|
|
4975
4975
|
return _crypto.getRandomValues(arr);
|
|
4976
4976
|
};
|
|
4977
4977
|
}
|
|
4978
|
-
if (
|
|
4978
|
+
if (forge3.options.usePureJavaScript || !forge3.util.isNodejs && !getRandomValues) {
|
|
4979
4979
|
_ctx.collectInt(+/* @__PURE__ */ new Date(), 32);
|
|
4980
4980
|
if (typeof navigator !== "undefined") {
|
|
4981
4981
|
var _navBytes = "";
|
|
@@ -5000,15 +5000,15 @@ var require_random = __commonJS({
|
|
|
5000
5000
|
});
|
|
5001
5001
|
}
|
|
5002
5002
|
}
|
|
5003
|
-
if (!
|
|
5004
|
-
|
|
5003
|
+
if (!forge3.random) {
|
|
5004
|
+
forge3.random = _ctx;
|
|
5005
5005
|
} else {
|
|
5006
5006
|
for (var key in _ctx) {
|
|
5007
|
-
|
|
5007
|
+
forge3.random[key] = _ctx[key];
|
|
5008
5008
|
}
|
|
5009
5009
|
}
|
|
5010
|
-
|
|
5011
|
-
module.exports =
|
|
5010
|
+
forge3.random.createInstance = spawnPrng;
|
|
5011
|
+
module.exports = forge3.random;
|
|
5012
5012
|
})(typeof jQuery !== "undefined" ? jQuery : null);
|
|
5013
5013
|
})();
|
|
5014
5014
|
}
|
|
@@ -5017,7 +5017,7 @@ var require_random = __commonJS({
|
|
|
5017
5017
|
// ../../node_modules/node-forge/lib/rc2.js
|
|
5018
5018
|
var require_rc2 = __commonJS({
|
|
5019
5019
|
"../../node_modules/node-forge/lib/rc2.js"(exports$1, module) {
|
|
5020
|
-
var
|
|
5020
|
+
var forge3 = require_forge();
|
|
5021
5021
|
require_util();
|
|
5022
5022
|
var piTable = [
|
|
5023
5023
|
217,
|
|
@@ -5284,10 +5284,10 @@ var require_rc2 = __commonJS({
|
|
|
5284
5284
|
var ror = function(word, bits) {
|
|
5285
5285
|
return (word & 65535) >> bits | word << 16 - bits & 65535;
|
|
5286
5286
|
};
|
|
5287
|
-
module.exports =
|
|
5288
|
-
|
|
5287
|
+
module.exports = forge3.rc2 = forge3.rc2 || {};
|
|
5288
|
+
forge3.rc2.expandKey = function(key, effKeyBits) {
|
|
5289
5289
|
if (typeof key === "string") {
|
|
5290
|
-
key =
|
|
5290
|
+
key = forge3.util.createBuffer(key);
|
|
5291
5291
|
}
|
|
5292
5292
|
effKeyBits = effKeyBits || 128;
|
|
5293
5293
|
var L = key;
|
|
@@ -5309,7 +5309,7 @@ var require_rc2 = __commonJS({
|
|
|
5309
5309
|
var _finish = false, _input = null, _output = null, _iv = null;
|
|
5310
5310
|
var mixRound, mashRound;
|
|
5311
5311
|
var i, j, K = [];
|
|
5312
|
-
key =
|
|
5312
|
+
key = forge3.rc2.expandKey(key, bits);
|
|
5313
5313
|
for (i = 0; i < 64; i++) {
|
|
5314
5314
|
K.push(key.getInt16Le());
|
|
5315
5315
|
}
|
|
@@ -5385,12 +5385,12 @@ var require_rc2 = __commonJS({
|
|
|
5385
5385
|
start: function(iv, output) {
|
|
5386
5386
|
if (iv) {
|
|
5387
5387
|
if (typeof iv === "string") {
|
|
5388
|
-
iv =
|
|
5388
|
+
iv = forge3.util.createBuffer(iv);
|
|
5389
5389
|
}
|
|
5390
5390
|
}
|
|
5391
5391
|
_finish = false;
|
|
5392
|
-
_input =
|
|
5393
|
-
_output = output || new
|
|
5392
|
+
_input = forge3.util.createBuffer();
|
|
5393
|
+
_output = output || new forge3.util.createBuffer();
|
|
5394
5394
|
_iv = iv;
|
|
5395
5395
|
cipher.output = _output;
|
|
5396
5396
|
},
|
|
@@ -5456,20 +5456,20 @@ var require_rc2 = __commonJS({
|
|
|
5456
5456
|
};
|
|
5457
5457
|
return cipher;
|
|
5458
5458
|
};
|
|
5459
|
-
|
|
5460
|
-
var cipher =
|
|
5459
|
+
forge3.rc2.startEncrypting = function(key, iv, output) {
|
|
5460
|
+
var cipher = forge3.rc2.createEncryptionCipher(key, 128);
|
|
5461
5461
|
cipher.start(iv, output);
|
|
5462
5462
|
return cipher;
|
|
5463
5463
|
};
|
|
5464
|
-
|
|
5464
|
+
forge3.rc2.createEncryptionCipher = function(key, bits) {
|
|
5465
5465
|
return createCipher(key, bits, true);
|
|
5466
5466
|
};
|
|
5467
|
-
|
|
5468
|
-
var cipher =
|
|
5467
|
+
forge3.rc2.startDecrypting = function(key, iv, output) {
|
|
5468
|
+
var cipher = forge3.rc2.createDecryptionCipher(key, 128);
|
|
5469
5469
|
cipher.start(iv, output);
|
|
5470
5470
|
return cipher;
|
|
5471
5471
|
};
|
|
5472
|
-
|
|
5472
|
+
forge3.rc2.createDecryptionCipher = function(key, bits) {
|
|
5473
5473
|
return createCipher(key, bits, false);
|
|
5474
5474
|
};
|
|
5475
5475
|
}
|
|
@@ -5478,8 +5478,8 @@ var require_rc2 = __commonJS({
|
|
|
5478
5478
|
// ../../node_modules/node-forge/lib/jsbn.js
|
|
5479
5479
|
var require_jsbn = __commonJS({
|
|
5480
5480
|
"../../node_modules/node-forge/lib/jsbn.js"(exports$1, module) {
|
|
5481
|
-
var
|
|
5482
|
-
module.exports =
|
|
5481
|
+
var forge3 = require_forge();
|
|
5482
|
+
module.exports = forge3.jsbn = forge3.jsbn || {};
|
|
5483
5483
|
var dbits;
|
|
5484
5484
|
function BigInteger(a, b, c) {
|
|
5485
5485
|
this.data = [];
|
|
@@ -5488,7 +5488,7 @@ var require_jsbn = __commonJS({
|
|
|
5488
5488
|
else if (b == null && "string" != typeof a) this.fromString(a, 256);
|
|
5489
5489
|
else this.fromString(a, b);
|
|
5490
5490
|
}
|
|
5491
|
-
|
|
5491
|
+
forge3.jsbn.BigInteger = BigInteger;
|
|
5492
5492
|
function nbi() {
|
|
5493
5493
|
return new BigInteger(null);
|
|
5494
5494
|
}
|
|
@@ -6655,17 +6655,17 @@ var require_jsbn = __commonJS({
|
|
|
6655
6655
|
// ../../node_modules/node-forge/lib/sha1.js
|
|
6656
6656
|
var require_sha1 = __commonJS({
|
|
6657
6657
|
"../../node_modules/node-forge/lib/sha1.js"(exports$1, module) {
|
|
6658
|
-
var
|
|
6658
|
+
var forge3 = require_forge();
|
|
6659
6659
|
require_md();
|
|
6660
6660
|
require_util();
|
|
6661
|
-
var sha1 = module.exports =
|
|
6662
|
-
|
|
6661
|
+
var sha1 = module.exports = forge3.sha1 = forge3.sha1 || {};
|
|
6662
|
+
forge3.md.sha1 = forge3.md.algorithms.sha1 = sha1;
|
|
6663
6663
|
sha1.create = function() {
|
|
6664
6664
|
if (!_initialized) {
|
|
6665
6665
|
_init();
|
|
6666
6666
|
}
|
|
6667
6667
|
var _state = null;
|
|
6668
|
-
var _input =
|
|
6668
|
+
var _input = forge3.util.createBuffer();
|
|
6669
6669
|
var _w = new Array(80);
|
|
6670
6670
|
var md = {
|
|
6671
6671
|
algorithm: "sha1",
|
|
@@ -6685,7 +6685,7 @@ var require_sha1 = __commonJS({
|
|
|
6685
6685
|
for (var i = 0; i < int32s; ++i) {
|
|
6686
6686
|
md.fullMessageLength.push(0);
|
|
6687
6687
|
}
|
|
6688
|
-
_input =
|
|
6688
|
+
_input = forge3.util.createBuffer();
|
|
6689
6689
|
_state = {
|
|
6690
6690
|
h0: 1732584193,
|
|
6691
6691
|
h1: 4023233417,
|
|
@@ -6698,7 +6698,7 @@ var require_sha1 = __commonJS({
|
|
|
6698
6698
|
md.start();
|
|
6699
6699
|
md.update = function(msg, encoding) {
|
|
6700
6700
|
if (encoding === "utf8") {
|
|
6701
|
-
msg =
|
|
6701
|
+
msg = forge3.util.encodeUtf8(msg);
|
|
6702
6702
|
}
|
|
6703
6703
|
var len = msg.length;
|
|
6704
6704
|
md.messageLength += len;
|
|
@@ -6717,7 +6717,7 @@ var require_sha1 = __commonJS({
|
|
|
6717
6717
|
return md;
|
|
6718
6718
|
};
|
|
6719
6719
|
md.digest = function() {
|
|
6720
|
-
var finalBlock =
|
|
6720
|
+
var finalBlock = forge3.util.createBuffer();
|
|
6721
6721
|
finalBlock.putBytes(_input.bytes());
|
|
6722
6722
|
var remaining = md.fullMessageLength[md.fullMessageLength.length - 1] + md.messageLengthSize;
|
|
6723
6723
|
var overflow = remaining & md.blockLength - 1;
|
|
@@ -6740,7 +6740,7 @@ var require_sha1 = __commonJS({
|
|
|
6740
6740
|
h4: _state.h4
|
|
6741
6741
|
};
|
|
6742
6742
|
_update(s2, _w, finalBlock);
|
|
6743
|
-
var rval =
|
|
6743
|
+
var rval = forge3.util.createBuffer();
|
|
6744
6744
|
rval.putInt32(s2.h0);
|
|
6745
6745
|
rval.putInt32(s2.h1);
|
|
6746
6746
|
rval.putInt32(s2.h2);
|
|
@@ -6754,7 +6754,7 @@ var require_sha1 = __commonJS({
|
|
|
6754
6754
|
var _initialized = false;
|
|
6755
6755
|
function _init() {
|
|
6756
6756
|
_padding = String.fromCharCode(128);
|
|
6757
|
-
_padding +=
|
|
6757
|
+
_padding += forge3.util.fillString(String.fromCharCode(0), 64);
|
|
6758
6758
|
_initialized = true;
|
|
6759
6759
|
}
|
|
6760
6760
|
function _update(s, w, bytes) {
|
|
@@ -6851,11 +6851,11 @@ var require_sha1 = __commonJS({
|
|
|
6851
6851
|
// ../../node_modules/node-forge/lib/pkcs1.js
|
|
6852
6852
|
var require_pkcs1 = __commonJS({
|
|
6853
6853
|
"../../node_modules/node-forge/lib/pkcs1.js"(exports$1, module) {
|
|
6854
|
-
var
|
|
6854
|
+
var forge3 = require_forge();
|
|
6855
6855
|
require_util();
|
|
6856
6856
|
require_random();
|
|
6857
6857
|
require_sha1();
|
|
6858
|
-
var pkcs1 = module.exports =
|
|
6858
|
+
var pkcs1 = module.exports = forge3.pkcs1 = forge3.pkcs1 || {};
|
|
6859
6859
|
pkcs1.encode_rsa_oaep = function(key, message, options) {
|
|
6860
6860
|
var label;
|
|
6861
6861
|
var seed;
|
|
@@ -6874,7 +6874,7 @@ var require_pkcs1 = __commonJS({
|
|
|
6874
6874
|
}
|
|
6875
6875
|
}
|
|
6876
6876
|
if (!md) {
|
|
6877
|
-
md =
|
|
6877
|
+
md = forge3.md.sha1.create();
|
|
6878
6878
|
} else {
|
|
6879
6879
|
md.start();
|
|
6880
6880
|
}
|
|
@@ -6901,7 +6901,7 @@ var require_pkcs1 = __commonJS({
|
|
|
6901
6901
|
}
|
|
6902
6902
|
var DB = lHash.getBytes() + PS + "" + message;
|
|
6903
6903
|
if (!seed) {
|
|
6904
|
-
seed =
|
|
6904
|
+
seed = forge3.random.getBytes(md.digestLength);
|
|
6905
6905
|
} else if (seed.length !== md.digestLength) {
|
|
6906
6906
|
var error = new Error("Invalid RSAES-OAEP seed. The seed length must match the digest length.");
|
|
6907
6907
|
error.seedLength = seed.length;
|
|
@@ -6909,9 +6909,9 @@ var require_pkcs1 = __commonJS({
|
|
|
6909
6909
|
throw error;
|
|
6910
6910
|
}
|
|
6911
6911
|
var dbMask = rsa_mgf1(seed, keyLength - md.digestLength - 1, mgf1Md);
|
|
6912
|
-
var maskedDB =
|
|
6912
|
+
var maskedDB = forge3.util.xorBytes(DB, dbMask, DB.length);
|
|
6913
6913
|
var seedMask = rsa_mgf1(maskedDB, md.digestLength, mgf1Md);
|
|
6914
|
-
var maskedSeed =
|
|
6914
|
+
var maskedSeed = forge3.util.xorBytes(seed, seedMask, seed.length);
|
|
6915
6915
|
return "\0" + maskedSeed + maskedDB;
|
|
6916
6916
|
};
|
|
6917
6917
|
pkcs1.decode_rsa_oaep = function(key, em, options) {
|
|
@@ -6936,7 +6936,7 @@ var require_pkcs1 = __commonJS({
|
|
|
6936
6936
|
throw error;
|
|
6937
6937
|
}
|
|
6938
6938
|
if (md === void 0) {
|
|
6939
|
-
md =
|
|
6939
|
+
md = forge3.md.sha1.create();
|
|
6940
6940
|
} else {
|
|
6941
6941
|
md.start();
|
|
6942
6942
|
}
|
|
@@ -6955,9 +6955,9 @@ var require_pkcs1 = __commonJS({
|
|
|
6955
6955
|
var maskedSeed = em.substring(1, md.digestLength + 1);
|
|
6956
6956
|
var maskedDB = em.substring(1 + md.digestLength);
|
|
6957
6957
|
var seedMask = rsa_mgf1(maskedDB, md.digestLength, mgf1Md);
|
|
6958
|
-
var seed =
|
|
6958
|
+
var seed = forge3.util.xorBytes(maskedSeed, seedMask, maskedSeed.length);
|
|
6959
6959
|
var dbMask = rsa_mgf1(seed, keyLength - md.digestLength - 1, mgf1Md);
|
|
6960
|
-
var db =
|
|
6960
|
+
var db = forge3.util.xorBytes(maskedDB, dbMask, maskedDB.length);
|
|
6961
6961
|
var lHashPrime = db.substring(0, md.digestLength);
|
|
6962
6962
|
var error = y !== "\0";
|
|
6963
6963
|
for (var i = 0; i < md.digestLength; ++i) {
|
|
@@ -6980,7 +6980,7 @@ var require_pkcs1 = __commonJS({
|
|
|
6980
6980
|
};
|
|
6981
6981
|
function rsa_mgf1(seed, maskLength, hash) {
|
|
6982
6982
|
if (!hash) {
|
|
6983
|
-
hash =
|
|
6983
|
+
hash = forge3.md.sha1.create();
|
|
6984
6984
|
}
|
|
6985
6985
|
var t = "";
|
|
6986
6986
|
var count = Math.ceil(maskLength / hash.digestLength);
|
|
@@ -7003,17 +7003,17 @@ var require_pkcs1 = __commonJS({
|
|
|
7003
7003
|
// ../../node_modules/node-forge/lib/prime.js
|
|
7004
7004
|
var require_prime = __commonJS({
|
|
7005
7005
|
"../../node_modules/node-forge/lib/prime.js"(exports$1, module) {
|
|
7006
|
-
var
|
|
7006
|
+
var forge3 = require_forge();
|
|
7007
7007
|
require_util();
|
|
7008
7008
|
require_jsbn();
|
|
7009
7009
|
require_random();
|
|
7010
7010
|
(function() {
|
|
7011
|
-
if (
|
|
7012
|
-
module.exports =
|
|
7011
|
+
if (forge3.prime) {
|
|
7012
|
+
module.exports = forge3.prime;
|
|
7013
7013
|
return;
|
|
7014
7014
|
}
|
|
7015
|
-
var prime = module.exports =
|
|
7016
|
-
var BigInteger =
|
|
7015
|
+
var prime = module.exports = forge3.prime = forge3.prime || {};
|
|
7016
|
+
var BigInteger = forge3.jsbn.BigInteger;
|
|
7017
7017
|
var GCD_30_DELTA = [6, 4, 2, 4, 2, 4, 6, 2];
|
|
7018
7018
|
var THIRTY = new BigInteger(null);
|
|
7019
7019
|
THIRTY.fromInt(30);
|
|
@@ -7031,7 +7031,7 @@ var require_prime = __commonJS({
|
|
|
7031
7031
|
algorithm = { name: algorithm };
|
|
7032
7032
|
}
|
|
7033
7033
|
algorithm.options = algorithm.options || {};
|
|
7034
|
-
var prng = options.prng ||
|
|
7034
|
+
var prng = options.prng || forge3.random;
|
|
7035
7035
|
var rng = {
|
|
7036
7036
|
// x is an array to fill with bytes
|
|
7037
7037
|
nextBytes: function(x) {
|
|
@@ -7076,7 +7076,7 @@ var require_prime = __commonJS({
|
|
|
7076
7076
|
}
|
|
7077
7077
|
num.dAddOffset(GCD_30_DELTA[deltaIdx++ % 8], 0);
|
|
7078
7078
|
} while (maxBlockTime < 0 || +/* @__PURE__ */ new Date() - start < maxBlockTime);
|
|
7079
|
-
|
|
7079
|
+
forge3.util.setImmediate(function() {
|
|
7080
7080
|
_primeinc(num, bits, rng, deltaIdx, mrTests, maxBlockTime, callback);
|
|
7081
7081
|
});
|
|
7082
7082
|
}
|
|
@@ -7090,7 +7090,7 @@ var require_prime = __commonJS({
|
|
|
7090
7090
|
var range = workLoad * 30 / 8;
|
|
7091
7091
|
var workerScript = options.workerScript || "forge/prime.worker.js";
|
|
7092
7092
|
if (numWorkers === -1) {
|
|
7093
|
-
return
|
|
7093
|
+
return forge3.util.estimateCores(function(err, cores) {
|
|
7094
7094
|
if (err) {
|
|
7095
7095
|
cores = 2;
|
|
7096
7096
|
}
|
|
@@ -7163,7 +7163,7 @@ var require_prime = __commonJS({
|
|
|
7163
7163
|
// ../../node_modules/node-forge/lib/rsa.js
|
|
7164
7164
|
var require_rsa = __commonJS({
|
|
7165
7165
|
"../../node_modules/node-forge/lib/rsa.js"(exports$1, module) {
|
|
7166
|
-
var
|
|
7166
|
+
var forge3 = require_forge();
|
|
7167
7167
|
require_asn1();
|
|
7168
7168
|
require_jsbn();
|
|
7169
7169
|
require_oids();
|
|
@@ -7172,15 +7172,15 @@ var require_rsa = __commonJS({
|
|
|
7172
7172
|
require_random();
|
|
7173
7173
|
require_util();
|
|
7174
7174
|
if (typeof BigInteger === "undefined") {
|
|
7175
|
-
BigInteger =
|
|
7175
|
+
BigInteger = forge3.jsbn.BigInteger;
|
|
7176
7176
|
}
|
|
7177
7177
|
var BigInteger;
|
|
7178
|
-
var _crypto =
|
|
7179
|
-
var asn1 =
|
|
7180
|
-
var util =
|
|
7181
|
-
|
|
7182
|
-
module.exports =
|
|
7183
|
-
var pki =
|
|
7178
|
+
var _crypto = forge3.util.isNodejs ? __require("crypto") : null;
|
|
7179
|
+
var asn1 = forge3.asn1;
|
|
7180
|
+
var util = forge3.util;
|
|
7181
|
+
forge3.pki = forge3.pki || {};
|
|
7182
|
+
module.exports = forge3.pki.rsa = forge3.rsa = forge3.rsa || {};
|
|
7183
|
+
var pki = forge3.pki;
|
|
7184
7184
|
var GCD_30_DELTA = [6, 4, 2, 4, 2, 4, 6, 2];
|
|
7185
7185
|
var privateKeyValidator = {
|
|
7186
7186
|
// PrivateKeyInfo
|
|
@@ -7310,7 +7310,7 @@ var require_rsa = __commonJS({
|
|
|
7310
7310
|
capture: "publicKeyExponent"
|
|
7311
7311
|
}]
|
|
7312
7312
|
};
|
|
7313
|
-
var publicKeyValidator =
|
|
7313
|
+
var publicKeyValidator = forge3.pki.rsa.publicKeyValidator = {
|
|
7314
7314
|
name: "SubjectPublicKeyInfo",
|
|
7315
7315
|
tagClass: asn1.Class.UNIVERSAL,
|
|
7316
7316
|
type: asn1.Type.SEQUENCE,
|
|
@@ -7443,7 +7443,7 @@ var require_rsa = __commonJS({
|
|
|
7443
7443
|
var r;
|
|
7444
7444
|
do {
|
|
7445
7445
|
r = new BigInteger(
|
|
7446
|
-
|
|
7446
|
+
forge3.util.bytesToHex(forge3.random.getBytes(key.n.bitLength() / 8)),
|
|
7447
7447
|
16
|
|
7448
7448
|
);
|
|
7449
7449
|
} while (r.compareTo(key.n) >= 0 || !r.gcd(key.n).equals(BigInteger.ONE));
|
|
@@ -7465,19 +7465,19 @@ var require_rsa = __commonJS({
|
|
|
7465
7465
|
pub = bt === 2;
|
|
7466
7466
|
eb = _encodePkcs1_v1_5(m, key, bt);
|
|
7467
7467
|
} else {
|
|
7468
|
-
eb =
|
|
7468
|
+
eb = forge3.util.createBuffer();
|
|
7469
7469
|
eb.putBytes(m);
|
|
7470
7470
|
}
|
|
7471
7471
|
var x = new BigInteger(eb.toHex(), 16);
|
|
7472
7472
|
var y = _modPow(x, key, pub);
|
|
7473
7473
|
var yhex = y.toString(16);
|
|
7474
|
-
var ed =
|
|
7474
|
+
var ed = forge3.util.createBuffer();
|
|
7475
7475
|
var zeros = k - Math.ceil(yhex.length / 2);
|
|
7476
7476
|
while (zeros > 0) {
|
|
7477
7477
|
ed.putByte(0);
|
|
7478
7478
|
--zeros;
|
|
7479
7479
|
}
|
|
7480
|
-
ed.putBytes(
|
|
7480
|
+
ed.putBytes(forge3.util.hexToBytes(yhex));
|
|
7481
7481
|
return ed.getBytes();
|
|
7482
7482
|
};
|
|
7483
7483
|
pki.rsa.decrypt = function(ed, key, pub, ml) {
|
|
@@ -7488,19 +7488,19 @@ var require_rsa = __commonJS({
|
|
|
7488
7488
|
error.expected = k;
|
|
7489
7489
|
throw error;
|
|
7490
7490
|
}
|
|
7491
|
-
var y = new BigInteger(
|
|
7491
|
+
var y = new BigInteger(forge3.util.createBuffer(ed).toHex(), 16);
|
|
7492
7492
|
if (y.compareTo(key.n) >= 0) {
|
|
7493
7493
|
throw new Error("Encrypted message is invalid.");
|
|
7494
7494
|
}
|
|
7495
7495
|
var x = _modPow(y, key, pub);
|
|
7496
7496
|
var xhex = x.toString(16);
|
|
7497
|
-
var eb =
|
|
7497
|
+
var eb = forge3.util.createBuffer();
|
|
7498
7498
|
var zeros = k - Math.ceil(xhex.length / 2);
|
|
7499
7499
|
while (zeros > 0) {
|
|
7500
7500
|
eb.putByte(0);
|
|
7501
7501
|
--zeros;
|
|
7502
7502
|
}
|
|
7503
|
-
eb.putBytes(
|
|
7503
|
+
eb.putBytes(forge3.util.hexToBytes(xhex));
|
|
7504
7504
|
if (ml !== false) {
|
|
7505
7505
|
return _decodePkcs1_v1_5(eb.getBytes(), key, pub);
|
|
7506
7506
|
}
|
|
@@ -7512,7 +7512,7 @@ var require_rsa = __commonJS({
|
|
|
7512
7512
|
}
|
|
7513
7513
|
bits = bits || 2048;
|
|
7514
7514
|
options = options || {};
|
|
7515
|
-
var prng = options.prng ||
|
|
7515
|
+
var prng = options.prng || forge3.random;
|
|
7516
7516
|
var rng = {
|
|
7517
7517
|
// x is an array to fill with bytes
|
|
7518
7518
|
nextBytes: function(x) {
|
|
@@ -7692,7 +7692,7 @@ var require_rsa = __commonJS({
|
|
|
7692
7692
|
if (e === void 0) {
|
|
7693
7693
|
e = options.e || 65537;
|
|
7694
7694
|
}
|
|
7695
|
-
if (!
|
|
7695
|
+
if (!forge3.options.usePureJavaScript && !options.prng && bits >= 256 && bits <= 16384 && (e === 65537 || e === 3)) {
|
|
7696
7696
|
if (callback) {
|
|
7697
7697
|
if (_detectNodeCrypto("generateKeyPair")) {
|
|
7698
7698
|
return _crypto.generateKeyPair("rsa", {
|
|
@@ -7732,7 +7732,7 @@ var require_rsa = __commonJS({
|
|
|
7732
7732
|
}).then(function(pkcs8) {
|
|
7733
7733
|
if (pkcs8) {
|
|
7734
7734
|
var privateKey = pki.privateKeyFromAsn1(
|
|
7735
|
-
asn1.fromDer(
|
|
7735
|
+
asn1.fromDer(forge3.util.createBuffer(pkcs8))
|
|
7736
7736
|
);
|
|
7737
7737
|
callback(null, {
|
|
7738
7738
|
privateKey,
|
|
@@ -7757,7 +7757,7 @@ var require_rsa = __commonJS({
|
|
|
7757
7757
|
exportOp.oncomplete = function(e3) {
|
|
7758
7758
|
var pkcs8 = e3.target.result;
|
|
7759
7759
|
var privateKey = pki.privateKeyFromAsn1(
|
|
7760
|
-
asn1.fromDer(
|
|
7760
|
+
asn1.fromDer(forge3.util.createBuffer(pkcs8))
|
|
7761
7761
|
);
|
|
7762
7762
|
callback(null, {
|
|
7763
7763
|
privateKey,
|
|
@@ -7821,7 +7821,7 @@ var require_rsa = __commonJS({
|
|
|
7821
7821
|
} else if (scheme === "RSA-OAEP" || scheme === "RSAES-OAEP") {
|
|
7822
7822
|
scheme = {
|
|
7823
7823
|
encode: function(m, key2) {
|
|
7824
|
-
return
|
|
7824
|
+
return forge3.pkcs1.encode_rsa_oaep(key2, m, schemeOptions);
|
|
7825
7825
|
}
|
|
7826
7826
|
};
|
|
7827
7827
|
} else if (["RAW", "NONE", "NULL", null].indexOf(scheme) !== -1) {
|
|
@@ -7865,14 +7865,14 @@ var require_rsa = __commonJS({
|
|
|
7865
7865
|
throw error;
|
|
7866
7866
|
}
|
|
7867
7867
|
var oid = asn1.derToOid(capture.algorithmIdentifier);
|
|
7868
|
-
if (!(oid ===
|
|
7868
|
+
if (!(oid === forge3.oids.md2 || oid === forge3.oids.md5 || oid === forge3.oids.sha1 || oid === forge3.oids.sha224 || oid === forge3.oids.sha256 || oid === forge3.oids.sha384 || oid === forge3.oids.sha512 || oid === forge3.oids["sha512-224"] || oid === forge3.oids["sha512-256"])) {
|
|
7869
7869
|
var error = new Error(
|
|
7870
7870
|
"Unknown RSASSA-PKCS1-v1_5 DigestAlgorithm identifier."
|
|
7871
7871
|
);
|
|
7872
7872
|
error.oid = oid;
|
|
7873
7873
|
throw error;
|
|
7874
7874
|
}
|
|
7875
|
-
if (oid ===
|
|
7875
|
+
if (oid === forge3.oids.md2 || oid === forge3.oids.md5) {
|
|
7876
7876
|
if (!("parameters" in capture)) {
|
|
7877
7877
|
throw new Error(
|
|
7878
7878
|
"ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value. Missing algorithm identifier NULL parameters."
|
|
@@ -7918,7 +7918,7 @@ var require_rsa = __commonJS({
|
|
|
7918
7918
|
} else if (scheme === "RSA-OAEP" || scheme === "RSAES-OAEP") {
|
|
7919
7919
|
scheme = {
|
|
7920
7920
|
decode: function(d3, key2) {
|
|
7921
|
-
return
|
|
7921
|
+
return forge3.pkcs1.decode_rsa_oaep(key2, d3, schemeOptions);
|
|
7922
7922
|
}
|
|
7923
7923
|
};
|
|
7924
7924
|
} else if (["RAW", "NONE", "NULL", null].indexOf(scheme) !== -1) {
|
|
@@ -7981,7 +7981,7 @@ var require_rsa = __commonJS({
|
|
|
7981
7981
|
var capture = {};
|
|
7982
7982
|
var errors = [];
|
|
7983
7983
|
if (asn1.validate(obj, privateKeyValidator, capture, errors)) {
|
|
7984
|
-
obj = asn1.fromDer(
|
|
7984
|
+
obj = asn1.fromDer(forge3.util.createBuffer(capture.privateKey));
|
|
7985
7985
|
}
|
|
7986
7986
|
capture = {};
|
|
7987
7987
|
errors = [];
|
|
@@ -7991,14 +7991,14 @@ var require_rsa = __commonJS({
|
|
|
7991
7991
|
throw error;
|
|
7992
7992
|
}
|
|
7993
7993
|
var n, e, d, p, q, dP, dQ, qInv;
|
|
7994
|
-
n =
|
|
7995
|
-
e =
|
|
7996
|
-
d =
|
|
7997
|
-
p =
|
|
7998
|
-
q =
|
|
7999
|
-
dP =
|
|
8000
|
-
dQ =
|
|
8001
|
-
qInv =
|
|
7994
|
+
n = forge3.util.createBuffer(capture.privateKeyModulus).toHex();
|
|
7995
|
+
e = forge3.util.createBuffer(capture.privateKeyPublicExponent).toHex();
|
|
7996
|
+
d = forge3.util.createBuffer(capture.privateKeyPrivateExponent).toHex();
|
|
7997
|
+
p = forge3.util.createBuffer(capture.privateKeyPrime1).toHex();
|
|
7998
|
+
q = forge3.util.createBuffer(capture.privateKeyPrime2).toHex();
|
|
7999
|
+
dP = forge3.util.createBuffer(capture.privateKeyExponent1).toHex();
|
|
8000
|
+
dQ = forge3.util.createBuffer(capture.privateKeyExponent2).toHex();
|
|
8001
|
+
qInv = forge3.util.createBuffer(capture.privateKeyCoefficient).toHex();
|
|
8002
8002
|
return pki.setRsaPrivateKey(
|
|
8003
8003
|
new BigInteger(n, 16),
|
|
8004
8004
|
new BigInteger(e, 16),
|
|
@@ -8095,8 +8095,8 @@ var require_rsa = __commonJS({
|
|
|
8095
8095
|
error.errors = errors;
|
|
8096
8096
|
throw error;
|
|
8097
8097
|
}
|
|
8098
|
-
var n =
|
|
8099
|
-
var e =
|
|
8098
|
+
var n = forge3.util.createBuffer(capture.publicKeyModulus).toHex();
|
|
8099
|
+
var e = forge3.util.createBuffer(capture.publicKeyExponent).toHex();
|
|
8100
8100
|
return pki.setRsaPublicKey(
|
|
8101
8101
|
new BigInteger(n, 16),
|
|
8102
8102
|
new BigInteger(e, 16)
|
|
@@ -8141,7 +8141,7 @@ var require_rsa = __commonJS({
|
|
|
8141
8141
|
]);
|
|
8142
8142
|
};
|
|
8143
8143
|
function _encodePkcs1_v1_5(m, key, bt) {
|
|
8144
|
-
var eb =
|
|
8144
|
+
var eb = forge3.util.createBuffer();
|
|
8145
8145
|
var k = Math.ceil(key.n.bitLength() / 8);
|
|
8146
8146
|
if (m.length > k - 11) {
|
|
8147
8147
|
var error = new Error("Message is too long for PKCS#1 v1.5 padding.");
|
|
@@ -8161,7 +8161,7 @@ var require_rsa = __commonJS({
|
|
|
8161
8161
|
} else {
|
|
8162
8162
|
while (padNum > 0) {
|
|
8163
8163
|
var numZeros = 0;
|
|
8164
|
-
var padBytes =
|
|
8164
|
+
var padBytes = forge3.random.getBytes(padNum);
|
|
8165
8165
|
for (var i = 0; i < padNum; ++i) {
|
|
8166
8166
|
padByte = padBytes.charCodeAt(i);
|
|
8167
8167
|
if (padByte === 0) {
|
|
@@ -8179,7 +8179,7 @@ var require_rsa = __commonJS({
|
|
|
8179
8179
|
}
|
|
8180
8180
|
function _decodePkcs1_v1_5(em, key, pub, ml) {
|
|
8181
8181
|
var k = Math.ceil(key.n.bitLength() / 8);
|
|
8182
|
-
var eb =
|
|
8182
|
+
var eb = forge3.util.createBuffer(em);
|
|
8183
8183
|
var first = eb.getByte();
|
|
8184
8184
|
var bt = eb.getByte();
|
|
8185
8185
|
if (first !== 0 || pub && bt !== 0 && bt !== 1 || !pub && bt != 2 || pub && bt === 0 && typeof ml === "undefined") {
|
|
@@ -8251,7 +8251,7 @@ var require_rsa = __commonJS({
|
|
|
8251
8251
|
});
|
|
8252
8252
|
}
|
|
8253
8253
|
function getPrime(bits, callback2) {
|
|
8254
|
-
|
|
8254
|
+
forge3.prime.generateProbablePrime(bits, opts, callback2);
|
|
8255
8255
|
}
|
|
8256
8256
|
function finish(err, num) {
|
|
8257
8257
|
if (err) {
|
|
@@ -8309,7 +8309,7 @@ var require_rsa = __commonJS({
|
|
|
8309
8309
|
if (hex[0] >= "8") {
|
|
8310
8310
|
hex = "00" + hex;
|
|
8311
8311
|
}
|
|
8312
|
-
var bytes =
|
|
8312
|
+
var bytes = forge3.util.hexToBytes(hex);
|
|
8313
8313
|
if (bytes.length > 1 && // leading 0x00 for positive integer
|
|
8314
8314
|
(bytes.charCodeAt(0) === 0 && (bytes.charCodeAt(1) & 128) === 0 || // leading 0xFF for negative integer
|
|
8315
8315
|
bytes.charCodeAt(0) === 255 && (bytes.charCodeAt(1) & 128) === 128)) {
|
|
@@ -8332,7 +8332,7 @@ var require_rsa = __commonJS({
|
|
|
8332
8332
|
return 2;
|
|
8333
8333
|
}
|
|
8334
8334
|
function _detectNodeCrypto(fn) {
|
|
8335
|
-
return
|
|
8335
|
+
return forge3.util.isNodejs && typeof _crypto[fn] === "function";
|
|
8336
8336
|
}
|
|
8337
8337
|
function _detectSubtleCrypto(fn) {
|
|
8338
8338
|
return typeof util.globalScope !== "undefined" && typeof util.globalScope.crypto === "object" && typeof util.globalScope.crypto.subtle === "object" && typeof util.globalScope.crypto.subtle[fn] === "function";
|
|
@@ -8341,7 +8341,7 @@ var require_rsa = __commonJS({
|
|
|
8341
8341
|
return typeof util.globalScope !== "undefined" && typeof util.globalScope.msCrypto === "object" && typeof util.globalScope.msCrypto.subtle === "object" && typeof util.globalScope.msCrypto.subtle[fn] === "function";
|
|
8342
8342
|
}
|
|
8343
8343
|
function _intToUint8Array(x) {
|
|
8344
|
-
var bytes =
|
|
8344
|
+
var bytes = forge3.util.hexToBytes(x.toString(16));
|
|
8345
8345
|
var buffer = new Uint8Array(bytes.length);
|
|
8346
8346
|
for (var i = 0; i < bytes.length; ++i) {
|
|
8347
8347
|
buffer[i] = bytes.charCodeAt(i);
|
|
@@ -8354,7 +8354,7 @@ var require_rsa = __commonJS({
|
|
|
8354
8354
|
// ../../node_modules/node-forge/lib/pbe.js
|
|
8355
8355
|
var require_pbe = __commonJS({
|
|
8356
8356
|
"../../node_modules/node-forge/lib/pbe.js"(exports$1, module) {
|
|
8357
|
-
var
|
|
8357
|
+
var forge3 = require_forge();
|
|
8358
8358
|
require_aes();
|
|
8359
8359
|
require_asn1();
|
|
8360
8360
|
require_des();
|
|
@@ -8367,12 +8367,12 @@ var require_pbe = __commonJS({
|
|
|
8367
8367
|
require_rsa();
|
|
8368
8368
|
require_util();
|
|
8369
8369
|
if (typeof BigInteger === "undefined") {
|
|
8370
|
-
BigInteger =
|
|
8370
|
+
BigInteger = forge3.jsbn.BigInteger;
|
|
8371
8371
|
}
|
|
8372
8372
|
var BigInteger;
|
|
8373
|
-
var asn1 =
|
|
8374
|
-
var pki =
|
|
8375
|
-
module.exports = pki.pbe =
|
|
8373
|
+
var asn1 = forge3.asn1;
|
|
8374
|
+
var pki = forge3.pki = forge3.pki || {};
|
|
8375
|
+
module.exports = pki.pbe = forge3.pbe = forge3.pbe || {};
|
|
8376
8376
|
var oids = pki.oids;
|
|
8377
8377
|
var encryptedPrivateKeyValidator = {
|
|
8378
8378
|
name: "EncryptedPrivateKeyInfo",
|
|
@@ -8507,7 +8507,7 @@ var require_pbe = __commonJS({
|
|
|
8507
8507
|
options.count = options.count || 2048;
|
|
8508
8508
|
options.algorithm = options.algorithm || "aes128";
|
|
8509
8509
|
options.prfAlgorithm = options.prfAlgorithm || "sha1";
|
|
8510
|
-
var salt =
|
|
8510
|
+
var salt = forge3.random.getBytesSync(options.saltSize);
|
|
8511
8511
|
var count = options.count;
|
|
8512
8512
|
var countBytes = asn1.integerToDer(count);
|
|
8513
8513
|
var dkLen;
|
|
@@ -8520,25 +8520,25 @@ var require_pbe = __commonJS({
|
|
|
8520
8520
|
dkLen = 16;
|
|
8521
8521
|
ivLen = 16;
|
|
8522
8522
|
encOid = oids["aes128-CBC"];
|
|
8523
|
-
cipherFn =
|
|
8523
|
+
cipherFn = forge3.aes.createEncryptionCipher;
|
|
8524
8524
|
break;
|
|
8525
8525
|
case "aes192":
|
|
8526
8526
|
dkLen = 24;
|
|
8527
8527
|
ivLen = 16;
|
|
8528
8528
|
encOid = oids["aes192-CBC"];
|
|
8529
|
-
cipherFn =
|
|
8529
|
+
cipherFn = forge3.aes.createEncryptionCipher;
|
|
8530
8530
|
break;
|
|
8531
8531
|
case "aes256":
|
|
8532
8532
|
dkLen = 32;
|
|
8533
8533
|
ivLen = 16;
|
|
8534
8534
|
encOid = oids["aes256-CBC"];
|
|
8535
|
-
cipherFn =
|
|
8535
|
+
cipherFn = forge3.aes.createEncryptionCipher;
|
|
8536
8536
|
break;
|
|
8537
8537
|
case "des":
|
|
8538
8538
|
dkLen = 8;
|
|
8539
8539
|
ivLen = 8;
|
|
8540
8540
|
encOid = oids["desCBC"];
|
|
8541
|
-
cipherFn =
|
|
8541
|
+
cipherFn = forge3.des.createEncryptionCipher;
|
|
8542
8542
|
break;
|
|
8543
8543
|
default:
|
|
8544
8544
|
var error = new Error("Cannot encrypt private key. Unknown encryption algorithm.");
|
|
@@ -8547,8 +8547,8 @@ var require_pbe = __commonJS({
|
|
|
8547
8547
|
}
|
|
8548
8548
|
var prfAlgorithm = "hmacWith" + options.prfAlgorithm.toUpperCase();
|
|
8549
8549
|
var md = prfAlgorithmToMessageDigest(prfAlgorithm);
|
|
8550
|
-
var dk =
|
|
8551
|
-
var iv =
|
|
8550
|
+
var dk = forge3.pkcs5.pbkdf2(password, salt, count, dkLen, md);
|
|
8551
|
+
var iv = forge3.random.getBytesSync(ivLen);
|
|
8552
8552
|
var cipher = cipherFn(dk);
|
|
8553
8553
|
cipher.start(iv);
|
|
8554
8554
|
cipher.update(asn1.toDer(obj));
|
|
@@ -8599,10 +8599,10 @@ var require_pbe = __commonJS({
|
|
|
8599
8599
|
);
|
|
8600
8600
|
} else if (options.algorithm === "3des") {
|
|
8601
8601
|
dkLen = 24;
|
|
8602
|
-
var saltBytes = new
|
|
8602
|
+
var saltBytes = new forge3.util.ByteBuffer(salt);
|
|
8603
8603
|
var dk = pki.pbe.generatePkcs12Key(password, saltBytes, 1, count, dkLen);
|
|
8604
8604
|
var iv = pki.pbe.generatePkcs12Key(password, saltBytes, 2, count, dkLen);
|
|
8605
|
-
var cipher =
|
|
8605
|
+
var cipher = forge3.des.createEncryptionCipher(dk);
|
|
8606
8606
|
cipher.start(iv);
|
|
8607
8607
|
cipher.update(asn1.toDer(obj));
|
|
8608
8608
|
cipher.finish();
|
|
@@ -8661,7 +8661,7 @@ var require_pbe = __commonJS({
|
|
|
8661
8661
|
}
|
|
8662
8662
|
var oid = asn1.derToOid(capture.encryptionOid);
|
|
8663
8663
|
var cipher = pki.pbe.getCipher(oid, capture.encryptionParams, password);
|
|
8664
|
-
var encrypted =
|
|
8664
|
+
var encrypted = forge3.util.createBuffer(capture.encryptedData);
|
|
8665
8665
|
cipher.update(encrypted);
|
|
8666
8666
|
if (cipher.finish()) {
|
|
8667
8667
|
rval = asn1.fromDer(cipher.output);
|
|
@@ -8673,10 +8673,10 @@ var require_pbe = __commonJS({
|
|
|
8673
8673
|
type: "ENCRYPTED PRIVATE KEY",
|
|
8674
8674
|
body: asn1.toDer(epki).getBytes()
|
|
8675
8675
|
};
|
|
8676
|
-
return
|
|
8676
|
+
return forge3.pem.encode(msg, { maxline });
|
|
8677
8677
|
};
|
|
8678
8678
|
pki.encryptedPrivateKeyFromPem = function(pem) {
|
|
8679
|
-
var msg =
|
|
8679
|
+
var msg = forge3.pem.decode(pem)[0];
|
|
8680
8680
|
if (msg.type !== "ENCRYPTED PRIVATE KEY") {
|
|
8681
8681
|
var error = new Error('Could not convert encrypted private key from PEM; PEM header type is "ENCRYPTED PRIVATE KEY".');
|
|
8682
8682
|
error.headerType = msg.type;
|
|
@@ -8702,39 +8702,39 @@ var require_pbe = __commonJS({
|
|
|
8702
8702
|
case "aes128":
|
|
8703
8703
|
algorithm = "AES-128-CBC";
|
|
8704
8704
|
dkLen = 16;
|
|
8705
|
-
iv =
|
|
8706
|
-
cipherFn =
|
|
8705
|
+
iv = forge3.random.getBytesSync(16);
|
|
8706
|
+
cipherFn = forge3.aes.createEncryptionCipher;
|
|
8707
8707
|
break;
|
|
8708
8708
|
case "aes192":
|
|
8709
8709
|
algorithm = "AES-192-CBC";
|
|
8710
8710
|
dkLen = 24;
|
|
8711
|
-
iv =
|
|
8712
|
-
cipherFn =
|
|
8711
|
+
iv = forge3.random.getBytesSync(16);
|
|
8712
|
+
cipherFn = forge3.aes.createEncryptionCipher;
|
|
8713
8713
|
break;
|
|
8714
8714
|
case "aes256":
|
|
8715
8715
|
algorithm = "AES-256-CBC";
|
|
8716
8716
|
dkLen = 32;
|
|
8717
|
-
iv =
|
|
8718
|
-
cipherFn =
|
|
8717
|
+
iv = forge3.random.getBytesSync(16);
|
|
8718
|
+
cipherFn = forge3.aes.createEncryptionCipher;
|
|
8719
8719
|
break;
|
|
8720
8720
|
case "3des":
|
|
8721
8721
|
algorithm = "DES-EDE3-CBC";
|
|
8722
8722
|
dkLen = 24;
|
|
8723
|
-
iv =
|
|
8724
|
-
cipherFn =
|
|
8723
|
+
iv = forge3.random.getBytesSync(8);
|
|
8724
|
+
cipherFn = forge3.des.createEncryptionCipher;
|
|
8725
8725
|
break;
|
|
8726
8726
|
case "des":
|
|
8727
8727
|
algorithm = "DES-CBC";
|
|
8728
8728
|
dkLen = 8;
|
|
8729
|
-
iv =
|
|
8730
|
-
cipherFn =
|
|
8729
|
+
iv = forge3.random.getBytesSync(8);
|
|
8730
|
+
cipherFn = forge3.des.createEncryptionCipher;
|
|
8731
8731
|
break;
|
|
8732
8732
|
default:
|
|
8733
8733
|
var error = new Error('Could not encrypt RSA private key; unsupported encryption algorithm "' + options.algorithm + '".');
|
|
8734
8734
|
error.algorithm = options.algorithm;
|
|
8735
8735
|
throw error;
|
|
8736
8736
|
}
|
|
8737
|
-
var dk =
|
|
8737
|
+
var dk = forge3.pbe.opensslDeriveBytes(password, iv.substr(0, 8), dkLen);
|
|
8738
8738
|
var cipher = cipherFn(dk);
|
|
8739
8739
|
cipher.start(iv);
|
|
8740
8740
|
cipher.update(asn1.toDer(pki.privateKeyToAsn1(rsaKey)));
|
|
@@ -8747,15 +8747,15 @@ var require_pbe = __commonJS({
|
|
|
8747
8747
|
},
|
|
8748
8748
|
dekInfo: {
|
|
8749
8749
|
algorithm,
|
|
8750
|
-
parameters:
|
|
8750
|
+
parameters: forge3.util.bytesToHex(iv).toUpperCase()
|
|
8751
8751
|
},
|
|
8752
8752
|
body: cipher.output.getBytes()
|
|
8753
8753
|
};
|
|
8754
|
-
return
|
|
8754
|
+
return forge3.pem.encode(msg);
|
|
8755
8755
|
};
|
|
8756
8756
|
pki.decryptRsaPrivateKey = function(pem, password) {
|
|
8757
8757
|
var rval = null;
|
|
8758
|
-
var msg =
|
|
8758
|
+
var msg = forge3.pem.decode(pem)[0];
|
|
8759
8759
|
if (msg.type !== "ENCRYPTED PRIVATE KEY" && msg.type !== "PRIVATE KEY" && msg.type !== "RSA PRIVATE KEY") {
|
|
8760
8760
|
var error = new Error('Could not convert private key from PEM; PEM header type is not "ENCRYPTED PRIVATE KEY", "PRIVATE KEY", or "RSA PRIVATE KEY".');
|
|
8761
8761
|
error.headerType = error;
|
|
@@ -8767,40 +8767,40 @@ var require_pbe = __commonJS({
|
|
|
8767
8767
|
switch (msg.dekInfo.algorithm) {
|
|
8768
8768
|
case "DES-CBC":
|
|
8769
8769
|
dkLen = 8;
|
|
8770
|
-
cipherFn =
|
|
8770
|
+
cipherFn = forge3.des.createDecryptionCipher;
|
|
8771
8771
|
break;
|
|
8772
8772
|
case "DES-EDE3-CBC":
|
|
8773
8773
|
dkLen = 24;
|
|
8774
|
-
cipherFn =
|
|
8774
|
+
cipherFn = forge3.des.createDecryptionCipher;
|
|
8775
8775
|
break;
|
|
8776
8776
|
case "AES-128-CBC":
|
|
8777
8777
|
dkLen = 16;
|
|
8778
|
-
cipherFn =
|
|
8778
|
+
cipherFn = forge3.aes.createDecryptionCipher;
|
|
8779
8779
|
break;
|
|
8780
8780
|
case "AES-192-CBC":
|
|
8781
8781
|
dkLen = 24;
|
|
8782
|
-
cipherFn =
|
|
8782
|
+
cipherFn = forge3.aes.createDecryptionCipher;
|
|
8783
8783
|
break;
|
|
8784
8784
|
case "AES-256-CBC":
|
|
8785
8785
|
dkLen = 32;
|
|
8786
|
-
cipherFn =
|
|
8786
|
+
cipherFn = forge3.aes.createDecryptionCipher;
|
|
8787
8787
|
break;
|
|
8788
8788
|
case "RC2-40-CBC":
|
|
8789
8789
|
dkLen = 5;
|
|
8790
8790
|
cipherFn = function(key) {
|
|
8791
|
-
return
|
|
8791
|
+
return forge3.rc2.createDecryptionCipher(key, 40);
|
|
8792
8792
|
};
|
|
8793
8793
|
break;
|
|
8794
8794
|
case "RC2-64-CBC":
|
|
8795
8795
|
dkLen = 8;
|
|
8796
8796
|
cipherFn = function(key) {
|
|
8797
|
-
return
|
|
8797
|
+
return forge3.rc2.createDecryptionCipher(key, 64);
|
|
8798
8798
|
};
|
|
8799
8799
|
break;
|
|
8800
8800
|
case "RC2-128-CBC":
|
|
8801
8801
|
dkLen = 16;
|
|
8802
8802
|
cipherFn = function(key) {
|
|
8803
|
-
return
|
|
8803
|
+
return forge3.rc2.createDecryptionCipher(key, 128);
|
|
8804
8804
|
};
|
|
8805
8805
|
break;
|
|
8806
8806
|
default:
|
|
@@ -8808,11 +8808,11 @@ var require_pbe = __commonJS({
|
|
|
8808
8808
|
error.algorithm = msg.dekInfo.algorithm;
|
|
8809
8809
|
throw error;
|
|
8810
8810
|
}
|
|
8811
|
-
var iv =
|
|
8812
|
-
var dk =
|
|
8811
|
+
var iv = forge3.util.hexToBytes(msg.dekInfo.parameters);
|
|
8812
|
+
var dk = forge3.pbe.opensslDeriveBytes(password, iv.substr(0, 8), dkLen);
|
|
8813
8813
|
var cipher = cipherFn(dk);
|
|
8814
8814
|
cipher.start(iv);
|
|
8815
|
-
cipher.update(
|
|
8815
|
+
cipher.update(forge3.util.createBuffer(msg.body));
|
|
8816
8816
|
if (cipher.finish()) {
|
|
8817
8817
|
rval = cipher.output.getBytes();
|
|
8818
8818
|
} else {
|
|
@@ -8834,15 +8834,15 @@ var require_pbe = __commonJS({
|
|
|
8834
8834
|
pki.pbe.generatePkcs12Key = function(password, salt, id, iter, n, md) {
|
|
8835
8835
|
var j, l;
|
|
8836
8836
|
if (typeof md === "undefined" || md === null) {
|
|
8837
|
-
if (!("sha1" in
|
|
8837
|
+
if (!("sha1" in forge3.md)) {
|
|
8838
8838
|
throw new Error('"sha1" hash algorithm unavailable.');
|
|
8839
8839
|
}
|
|
8840
|
-
md =
|
|
8840
|
+
md = forge3.md.sha1.create();
|
|
8841
8841
|
}
|
|
8842
8842
|
var u = md.digestLength;
|
|
8843
8843
|
var v = md.blockLength;
|
|
8844
|
-
var result = new
|
|
8845
|
-
var passBuf = new
|
|
8844
|
+
var result = new forge3.util.ByteBuffer();
|
|
8845
|
+
var passBuf = new forge3.util.ByteBuffer();
|
|
8846
8846
|
if (password !== null && password !== void 0) {
|
|
8847
8847
|
for (l = 0; l < password.length; l++) {
|
|
8848
8848
|
passBuf.putInt16(password.charCodeAt(l));
|
|
@@ -8851,15 +8851,15 @@ var require_pbe = __commonJS({
|
|
|
8851
8851
|
}
|
|
8852
8852
|
var p = passBuf.length();
|
|
8853
8853
|
var s = salt.length();
|
|
8854
|
-
var D = new
|
|
8854
|
+
var D = new forge3.util.ByteBuffer();
|
|
8855
8855
|
D.fillWithByte(id, v);
|
|
8856
8856
|
var Slen = v * Math.ceil(s / v);
|
|
8857
|
-
var S = new
|
|
8857
|
+
var S = new forge3.util.ByteBuffer();
|
|
8858
8858
|
for (l = 0; l < Slen; l++) {
|
|
8859
8859
|
S.putByte(salt.at(l % s));
|
|
8860
8860
|
}
|
|
8861
8861
|
var Plen = v * Math.ceil(p / v);
|
|
8862
|
-
var P = new
|
|
8862
|
+
var P = new forge3.util.ByteBuffer();
|
|
8863
8863
|
for (l = 0; l < Plen; l++) {
|
|
8864
8864
|
P.putByte(passBuf.at(l % p));
|
|
8865
8865
|
}
|
|
@@ -8867,7 +8867,7 @@ var require_pbe = __commonJS({
|
|
|
8867
8867
|
I.putBuffer(P);
|
|
8868
8868
|
var c = Math.ceil(n / u);
|
|
8869
8869
|
for (var i = 1; i <= c; i++) {
|
|
8870
|
-
var buf = new
|
|
8870
|
+
var buf = new forge3.util.ByteBuffer();
|
|
8871
8871
|
buf.putBytes(D.bytes());
|
|
8872
8872
|
buf.putBytes(I.bytes());
|
|
8873
8873
|
for (var round = 0; round < iter; round++) {
|
|
@@ -8875,14 +8875,14 @@ var require_pbe = __commonJS({
|
|
|
8875
8875
|
md.update(buf.getBytes());
|
|
8876
8876
|
buf = md.digest();
|
|
8877
8877
|
}
|
|
8878
|
-
var B = new
|
|
8878
|
+
var B = new forge3.util.ByteBuffer();
|
|
8879
8879
|
for (l = 0; l < v; l++) {
|
|
8880
8880
|
B.putByte(buf.at(l % u));
|
|
8881
8881
|
}
|
|
8882
8882
|
var k = Math.ceil(s / v) + Math.ceil(p / v);
|
|
8883
|
-
var Inew = new
|
|
8883
|
+
var Inew = new forge3.util.ByteBuffer();
|
|
8884
8884
|
for (j = 0; j < k; j++) {
|
|
8885
|
-
var chunk = new
|
|
8885
|
+
var chunk = new forge3.util.ByteBuffer(I.getBytes(v));
|
|
8886
8886
|
var x = 511;
|
|
8887
8887
|
for (l = B.length() - 1; l >= 0; l--) {
|
|
8888
8888
|
x = x >> 8;
|
|
@@ -8944,34 +8944,34 @@ var require_pbe = __commonJS({
|
|
|
8944
8944
|
throw error;
|
|
8945
8945
|
}
|
|
8946
8946
|
var salt = capture.kdfSalt;
|
|
8947
|
-
var count =
|
|
8947
|
+
var count = forge3.util.createBuffer(capture.kdfIterationCount);
|
|
8948
8948
|
count = count.getInt(count.length() << 3);
|
|
8949
8949
|
var dkLen;
|
|
8950
8950
|
var cipherFn;
|
|
8951
8951
|
switch (pki.oids[oid]) {
|
|
8952
8952
|
case "aes128-CBC":
|
|
8953
8953
|
dkLen = 16;
|
|
8954
|
-
cipherFn =
|
|
8954
|
+
cipherFn = forge3.aes.createDecryptionCipher;
|
|
8955
8955
|
break;
|
|
8956
8956
|
case "aes192-CBC":
|
|
8957
8957
|
dkLen = 24;
|
|
8958
|
-
cipherFn =
|
|
8958
|
+
cipherFn = forge3.aes.createDecryptionCipher;
|
|
8959
8959
|
break;
|
|
8960
8960
|
case "aes256-CBC":
|
|
8961
8961
|
dkLen = 32;
|
|
8962
|
-
cipherFn =
|
|
8962
|
+
cipherFn = forge3.aes.createDecryptionCipher;
|
|
8963
8963
|
break;
|
|
8964
8964
|
case "des-EDE3-CBC":
|
|
8965
8965
|
dkLen = 24;
|
|
8966
|
-
cipherFn =
|
|
8966
|
+
cipherFn = forge3.des.createDecryptionCipher;
|
|
8967
8967
|
break;
|
|
8968
8968
|
case "desCBC":
|
|
8969
8969
|
dkLen = 8;
|
|
8970
|
-
cipherFn =
|
|
8970
|
+
cipherFn = forge3.des.createDecryptionCipher;
|
|
8971
8971
|
break;
|
|
8972
8972
|
}
|
|
8973
8973
|
var md = prfOidToMessageDigest(capture.prfOid);
|
|
8974
|
-
var dk =
|
|
8974
|
+
var dk = forge3.pkcs5.pbkdf2(password, salt, count, dkLen, md);
|
|
8975
8975
|
var iv = capture.encIv;
|
|
8976
8976
|
var cipher = cipherFn(dk);
|
|
8977
8977
|
cipher.start(iv);
|
|
@@ -8985,21 +8985,21 @@ var require_pbe = __commonJS({
|
|
|
8985
8985
|
error.errors = errors;
|
|
8986
8986
|
throw error;
|
|
8987
8987
|
}
|
|
8988
|
-
var salt =
|
|
8989
|
-
var count =
|
|
8988
|
+
var salt = forge3.util.createBuffer(capture.salt);
|
|
8989
|
+
var count = forge3.util.createBuffer(capture.iterations);
|
|
8990
8990
|
count = count.getInt(count.length() << 3);
|
|
8991
8991
|
var dkLen, dIvLen, cipherFn;
|
|
8992
8992
|
switch (oid) {
|
|
8993
8993
|
case pki.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:
|
|
8994
8994
|
dkLen = 24;
|
|
8995
8995
|
dIvLen = 8;
|
|
8996
|
-
cipherFn =
|
|
8996
|
+
cipherFn = forge3.des.startDecrypting;
|
|
8997
8997
|
break;
|
|
8998
8998
|
case pki.oids["pbewithSHAAnd40BitRC2-CBC"]:
|
|
8999
8999
|
dkLen = 5;
|
|
9000
9000
|
dIvLen = 8;
|
|
9001
9001
|
cipherFn = function(key2, iv2) {
|
|
9002
|
-
var cipher =
|
|
9002
|
+
var cipher = forge3.rc2.createDecryptionCipher(key2, 40);
|
|
9003
9003
|
cipher.start(iv2, null);
|
|
9004
9004
|
return cipher;
|
|
9005
9005
|
};
|
|
@@ -9017,10 +9017,10 @@ var require_pbe = __commonJS({
|
|
|
9017
9017
|
};
|
|
9018
9018
|
pki.pbe.opensslDeriveBytes = function(password, salt, dkLen, md) {
|
|
9019
9019
|
if (typeof md === "undefined" || md === null) {
|
|
9020
|
-
if (!("md5" in
|
|
9020
|
+
if (!("md5" in forge3.md)) {
|
|
9021
9021
|
throw new Error('"md5" hash algorithm unavailable.');
|
|
9022
9022
|
}
|
|
9023
|
-
md =
|
|
9023
|
+
md = forge3.md.md5.create();
|
|
9024
9024
|
}
|
|
9025
9025
|
if (salt === null) {
|
|
9026
9026
|
salt = "";
|
|
@@ -9056,10 +9056,10 @@ var require_pbe = __commonJS({
|
|
|
9056
9056
|
return prfAlgorithmToMessageDigest(prfAlgorithm);
|
|
9057
9057
|
}
|
|
9058
9058
|
function prfAlgorithmToMessageDigest(prfAlgorithm) {
|
|
9059
|
-
var factory =
|
|
9059
|
+
var factory = forge3.md;
|
|
9060
9060
|
switch (prfAlgorithm) {
|
|
9061
9061
|
case "hmacWithSHA224":
|
|
9062
|
-
factory =
|
|
9062
|
+
factory = forge3.md.sha512;
|
|
9063
9063
|
case "hmacWithSHA1":
|
|
9064
9064
|
case "hmacWithSHA256":
|
|
9065
9065
|
case "hmacWithSHA384":
|
|
@@ -9107,7 +9107,7 @@ var require_pbe = __commonJS({
|
|
|
9107
9107
|
asn1.Class.UNIVERSAL,
|
|
9108
9108
|
asn1.Type.INTEGER,
|
|
9109
9109
|
false,
|
|
9110
|
-
|
|
9110
|
+
forge3.util.hexToBytes(dkLen.toString(16))
|
|
9111
9111
|
),
|
|
9112
9112
|
// AlgorithmIdentifier
|
|
9113
9113
|
asn1.create(asn1.Class.UNIVERSAL, asn1.Type.SEQUENCE, true, [
|
|
@@ -9131,13 +9131,13 @@ var require_pbe = __commonJS({
|
|
|
9131
9131
|
// ../../node_modules/node-forge/lib/pkcs7asn1.js
|
|
9132
9132
|
var require_pkcs7asn1 = __commonJS({
|
|
9133
9133
|
"../../node_modules/node-forge/lib/pkcs7asn1.js"(exports$1, module) {
|
|
9134
|
-
var
|
|
9134
|
+
var forge3 = require_forge();
|
|
9135
9135
|
require_asn1();
|
|
9136
9136
|
require_util();
|
|
9137
|
-
var asn1 =
|
|
9138
|
-
var p7v = module.exports =
|
|
9139
|
-
|
|
9140
|
-
|
|
9137
|
+
var asn1 = forge3.asn1;
|
|
9138
|
+
var p7v = module.exports = forge3.pkcs7asn1 = forge3.pkcs7asn1 || {};
|
|
9139
|
+
forge3.pkcs7 = forge3.pkcs7 || {};
|
|
9140
|
+
forge3.pkcs7.asn1 = p7v;
|
|
9141
9141
|
var contentInfoValidator = {
|
|
9142
9142
|
name: "ContentInfo",
|
|
9143
9143
|
tagClass: asn1.Class.UNIVERSAL,
|
|
@@ -9432,10 +9432,10 @@ var require_pkcs7asn1 = __commonJS({
|
|
|
9432
9432
|
// ../../node_modules/node-forge/lib/mgf1.js
|
|
9433
9433
|
var require_mgf1 = __commonJS({
|
|
9434
9434
|
"../../node_modules/node-forge/lib/mgf1.js"(exports$1, module) {
|
|
9435
|
-
var
|
|
9435
|
+
var forge3 = require_forge();
|
|
9436
9436
|
require_util();
|
|
9437
|
-
|
|
9438
|
-
var mgf1 = module.exports =
|
|
9437
|
+
forge3.mgf = forge3.mgf || {};
|
|
9438
|
+
var mgf1 = module.exports = forge3.mgf.mgf1 = forge3.mgf1 = forge3.mgf1 || {};
|
|
9439
9439
|
mgf1.create = function(md) {
|
|
9440
9440
|
var mgf = {
|
|
9441
9441
|
/**
|
|
@@ -9446,10 +9446,10 @@ var require_mgf1 = __commonJS({
|
|
|
9446
9446
|
* @return {String} The generated mask.
|
|
9447
9447
|
*/
|
|
9448
9448
|
generate: function(seed, maskLen) {
|
|
9449
|
-
var t = new
|
|
9449
|
+
var t = new forge3.util.ByteBuffer();
|
|
9450
9450
|
var len = Math.ceil(maskLen / md.digestLength);
|
|
9451
9451
|
for (var i = 0; i < len; i++) {
|
|
9452
|
-
var c = new
|
|
9452
|
+
var c = new forge3.util.ByteBuffer();
|
|
9453
9453
|
c.putInt32(i);
|
|
9454
9454
|
md.start();
|
|
9455
9455
|
md.update(seed + c.getBytes());
|
|
@@ -9467,20 +9467,20 @@ var require_mgf1 = __commonJS({
|
|
|
9467
9467
|
// ../../node_modules/node-forge/lib/mgf.js
|
|
9468
9468
|
var require_mgf = __commonJS({
|
|
9469
9469
|
"../../node_modules/node-forge/lib/mgf.js"(exports$1, module) {
|
|
9470
|
-
var
|
|
9470
|
+
var forge3 = require_forge();
|
|
9471
9471
|
require_mgf1();
|
|
9472
|
-
module.exports =
|
|
9473
|
-
|
|
9472
|
+
module.exports = forge3.mgf = forge3.mgf || {};
|
|
9473
|
+
forge3.mgf.mgf1 = forge3.mgf1;
|
|
9474
9474
|
}
|
|
9475
9475
|
});
|
|
9476
9476
|
|
|
9477
9477
|
// ../../node_modules/node-forge/lib/pss.js
|
|
9478
9478
|
var require_pss = __commonJS({
|
|
9479
9479
|
"../../node_modules/node-forge/lib/pss.js"(exports$1, module) {
|
|
9480
|
-
var
|
|
9480
|
+
var forge3 = require_forge();
|
|
9481
9481
|
require_random();
|
|
9482
9482
|
require_util();
|
|
9483
|
-
var pss = module.exports =
|
|
9483
|
+
var pss = module.exports = forge3.pss = forge3.pss || {};
|
|
9484
9484
|
pss.create = function(options) {
|
|
9485
9485
|
if (arguments.length === 3) {
|
|
9486
9486
|
options = {
|
|
@@ -9494,7 +9494,7 @@ var require_pss = __commonJS({
|
|
|
9494
9494
|
var hLen = hash.digestLength;
|
|
9495
9495
|
var salt_ = options.salt || null;
|
|
9496
9496
|
if (typeof salt_ === "string") {
|
|
9497
|
-
salt_ =
|
|
9497
|
+
salt_ = forge3.util.createBuffer(salt_);
|
|
9498
9498
|
}
|
|
9499
9499
|
var sLen;
|
|
9500
9500
|
if ("saltLength" in options) {
|
|
@@ -9507,7 +9507,7 @@ var require_pss = __commonJS({
|
|
|
9507
9507
|
if (salt_ !== null && salt_.length() !== sLen) {
|
|
9508
9508
|
throw new Error("Given salt length does not match length of given salt.");
|
|
9509
9509
|
}
|
|
9510
|
-
var prng = options.prng ||
|
|
9510
|
+
var prng = options.prng || forge3.random;
|
|
9511
9511
|
var pssobj = {};
|
|
9512
9512
|
pssobj.encode = function(md, modBits) {
|
|
9513
9513
|
var i;
|
|
@@ -9523,14 +9523,14 @@ var require_pss = __commonJS({
|
|
|
9523
9523
|
} else {
|
|
9524
9524
|
salt = salt_.bytes();
|
|
9525
9525
|
}
|
|
9526
|
-
var m_ = new
|
|
9526
|
+
var m_ = new forge3.util.ByteBuffer();
|
|
9527
9527
|
m_.fillWithByte(0, 8);
|
|
9528
9528
|
m_.putBytes(mHash);
|
|
9529
9529
|
m_.putBytes(salt);
|
|
9530
9530
|
hash.start();
|
|
9531
9531
|
hash.update(m_.getBytes());
|
|
9532
9532
|
var h = hash.digest().getBytes();
|
|
9533
|
-
var ps = new
|
|
9533
|
+
var ps = new forge3.util.ByteBuffer();
|
|
9534
9534
|
ps.fillWithByte(0, emLen - sLen - hLen - 2);
|
|
9535
9535
|
ps.putByte(1);
|
|
9536
9536
|
ps.putBytes(salt);
|
|
@@ -9579,7 +9579,7 @@ var require_pss = __commonJS({
|
|
|
9579
9579
|
throw new Error("Inconsistent PSS signature, 0x01 marker not found");
|
|
9580
9580
|
}
|
|
9581
9581
|
var salt = db.substr(-sLen);
|
|
9582
|
-
var m_ = new
|
|
9582
|
+
var m_ = new forge3.util.ByteBuffer();
|
|
9583
9583
|
m_.fillWithByte(0, 8);
|
|
9584
9584
|
m_.putBytes(mHash);
|
|
9585
9585
|
m_.putBytes(salt);
|
|
@@ -9596,7 +9596,7 @@ var require_pss = __commonJS({
|
|
|
9596
9596
|
// ../../node_modules/node-forge/lib/x509.js
|
|
9597
9597
|
var require_x509 = __commonJS({
|
|
9598
9598
|
"../../node_modules/node-forge/lib/x509.js"(exports$1, module) {
|
|
9599
|
-
var
|
|
9599
|
+
var forge3 = require_forge();
|
|
9600
9600
|
require_aes();
|
|
9601
9601
|
require_asn1();
|
|
9602
9602
|
require_des();
|
|
@@ -9607,8 +9607,8 @@ var require_x509 = __commonJS({
|
|
|
9607
9607
|
require_pss();
|
|
9608
9608
|
require_rsa();
|
|
9609
9609
|
require_util();
|
|
9610
|
-
var asn1 =
|
|
9611
|
-
var pki = module.exports =
|
|
9610
|
+
var asn1 = forge3.asn1;
|
|
9611
|
+
var pki = module.exports = forge3.pki = forge3.pki || {};
|
|
9612
9612
|
var oids = pki.oids;
|
|
9613
9613
|
var _shortNames = {};
|
|
9614
9614
|
_shortNames["CN"] = oids["commonName"];
|
|
@@ -9625,7 +9625,7 @@ var require_x509 = __commonJS({
|
|
|
9625
9625
|
_shortNames["organizationalUnitName"] = "OU";
|
|
9626
9626
|
_shortNames["E"] = oids["emailAddress"];
|
|
9627
9627
|
_shortNames["emailAddress"] = "E";
|
|
9628
|
-
var publicKeyValidator =
|
|
9628
|
+
var publicKeyValidator = forge3.pki.rsa.publicKeyValidator;
|
|
9629
9629
|
var x509CertificateValidator = {
|
|
9630
9630
|
name: "Certificate",
|
|
9631
9631
|
tagClass: asn1.Class.UNIVERSAL,
|
|
@@ -10097,17 +10097,17 @@ var require_x509 = __commonJS({
|
|
|
10097
10097
|
case "sha1WithRSAEncryption":
|
|
10098
10098
|
// deprecated alias
|
|
10099
10099
|
case "sha1WithRSASignature":
|
|
10100
|
-
return
|
|
10100
|
+
return forge3.md.sha1.create();
|
|
10101
10101
|
case "md5WithRSAEncryption":
|
|
10102
|
-
return
|
|
10102
|
+
return forge3.md.md5.create();
|
|
10103
10103
|
case "sha256WithRSAEncryption":
|
|
10104
|
-
return
|
|
10104
|
+
return forge3.md.sha256.create();
|
|
10105
10105
|
case "sha384WithRSAEncryption":
|
|
10106
|
-
return
|
|
10106
|
+
return forge3.md.sha384.create();
|
|
10107
10107
|
case "sha512WithRSAEncryption":
|
|
10108
|
-
return
|
|
10108
|
+
return forge3.md.sha512.create();
|
|
10109
10109
|
case "RSASSA-PSS":
|
|
10110
|
-
return
|
|
10110
|
+
return forge3.md.sha256.create();
|
|
10111
10111
|
default:
|
|
10112
10112
|
var error = new Error(
|
|
10113
10113
|
"Could not compute " + options.type + " digest. Unknown signature OID."
|
|
@@ -10127,29 +10127,29 @@ var require_x509 = __commonJS({
|
|
|
10127
10127
|
case oids["RSASSA-PSS"]:
|
|
10128
10128
|
var hash, mgf;
|
|
10129
10129
|
hash = oids[cert.signatureParameters.mgf.hash.algorithmOid];
|
|
10130
|
-
if (hash === void 0 ||
|
|
10130
|
+
if (hash === void 0 || forge3.md[hash] === void 0) {
|
|
10131
10131
|
var error = new Error("Unsupported MGF hash function.");
|
|
10132
10132
|
error.oid = cert.signatureParameters.mgf.hash.algorithmOid;
|
|
10133
10133
|
error.name = hash;
|
|
10134
10134
|
throw error;
|
|
10135
10135
|
}
|
|
10136
10136
|
mgf = oids[cert.signatureParameters.mgf.algorithmOid];
|
|
10137
|
-
if (mgf === void 0 ||
|
|
10137
|
+
if (mgf === void 0 || forge3.mgf[mgf] === void 0) {
|
|
10138
10138
|
var error = new Error("Unsupported MGF function.");
|
|
10139
10139
|
error.oid = cert.signatureParameters.mgf.algorithmOid;
|
|
10140
10140
|
error.name = mgf;
|
|
10141
10141
|
throw error;
|
|
10142
10142
|
}
|
|
10143
|
-
mgf =
|
|
10143
|
+
mgf = forge3.mgf[mgf].create(forge3.md[hash].create());
|
|
10144
10144
|
hash = oids[cert.signatureParameters.hash.algorithmOid];
|
|
10145
|
-
if (hash === void 0 ||
|
|
10145
|
+
if (hash === void 0 || forge3.md[hash] === void 0) {
|
|
10146
10146
|
var error = new Error("Unsupported RSASSA-PSS hash function.");
|
|
10147
10147
|
error.oid = cert.signatureParameters.hash.algorithmOid;
|
|
10148
10148
|
error.name = hash;
|
|
10149
10149
|
throw error;
|
|
10150
10150
|
}
|
|
10151
|
-
scheme =
|
|
10152
|
-
|
|
10151
|
+
scheme = forge3.pss.create(
|
|
10152
|
+
forge3.md[hash].create(),
|
|
10153
10153
|
mgf,
|
|
10154
10154
|
cert.signatureParameters.saltLength
|
|
10155
10155
|
);
|
|
@@ -10162,7 +10162,7 @@ var require_x509 = __commonJS({
|
|
|
10162
10162
|
);
|
|
10163
10163
|
};
|
|
10164
10164
|
pki.certificateFromPem = function(pem, computeHash, strict) {
|
|
10165
|
-
var msg =
|
|
10165
|
+
var msg = forge3.pem.decode(pem)[0];
|
|
10166
10166
|
if (msg.type !== "CERTIFICATE" && msg.type !== "X509 CERTIFICATE" && msg.type !== "TRUSTED CERTIFICATE") {
|
|
10167
10167
|
var error = new Error(
|
|
10168
10168
|
'Could not convert certificate from PEM; PEM header type is not "CERTIFICATE", "X509 CERTIFICATE", or "TRUSTED CERTIFICATE".'
|
|
@@ -10183,10 +10183,10 @@ var require_x509 = __commonJS({
|
|
|
10183
10183
|
type: "CERTIFICATE",
|
|
10184
10184
|
body: asn1.toDer(pki.certificateToAsn1(cert)).getBytes()
|
|
10185
10185
|
};
|
|
10186
|
-
return
|
|
10186
|
+
return forge3.pem.encode(msg, { maxline });
|
|
10187
10187
|
};
|
|
10188
10188
|
pki.publicKeyFromPem = function(pem) {
|
|
10189
|
-
var msg =
|
|
10189
|
+
var msg = forge3.pem.decode(pem)[0];
|
|
10190
10190
|
if (msg.type !== "PUBLIC KEY" && msg.type !== "RSA PUBLIC KEY") {
|
|
10191
10191
|
var error = new Error('Could not convert public key from PEM; PEM header type is not "PUBLIC KEY" or "RSA PUBLIC KEY".');
|
|
10192
10192
|
error.headerType = msg.type;
|
|
@@ -10203,18 +10203,18 @@ var require_x509 = __commonJS({
|
|
|
10203
10203
|
type: "PUBLIC KEY",
|
|
10204
10204
|
body: asn1.toDer(pki.publicKeyToAsn1(key)).getBytes()
|
|
10205
10205
|
};
|
|
10206
|
-
return
|
|
10206
|
+
return forge3.pem.encode(msg, { maxline });
|
|
10207
10207
|
};
|
|
10208
10208
|
pki.publicKeyToRSAPublicKeyPem = function(key, maxline) {
|
|
10209
10209
|
var msg = {
|
|
10210
10210
|
type: "RSA PUBLIC KEY",
|
|
10211
10211
|
body: asn1.toDer(pki.publicKeyToRSAPublicKey(key)).getBytes()
|
|
10212
10212
|
};
|
|
10213
|
-
return
|
|
10213
|
+
return forge3.pem.encode(msg, { maxline });
|
|
10214
10214
|
};
|
|
10215
10215
|
pki.getPublicKeyFingerprint = function(key, options) {
|
|
10216
10216
|
options = options || {};
|
|
10217
|
-
var md = options.md ||
|
|
10217
|
+
var md = options.md || forge3.md.sha1.create();
|
|
10218
10218
|
var type = options.type || "RSAPublicKey";
|
|
10219
10219
|
var bytes;
|
|
10220
10220
|
switch (type) {
|
|
@@ -10244,7 +10244,7 @@ var require_x509 = __commonJS({
|
|
|
10244
10244
|
return digest;
|
|
10245
10245
|
};
|
|
10246
10246
|
pki.certificationRequestFromPem = function(pem, computeHash, strict) {
|
|
10247
|
-
var msg =
|
|
10247
|
+
var msg = forge3.pem.decode(pem)[0];
|
|
10248
10248
|
if (msg.type !== "CERTIFICATE REQUEST") {
|
|
10249
10249
|
var error = new Error('Could not convert certification request from PEM; PEM header type is not "CERTIFICATE REQUEST".');
|
|
10250
10250
|
error.headerType = msg.type;
|
|
@@ -10261,7 +10261,7 @@ var require_x509 = __commonJS({
|
|
|
10261
10261
|
type: "CERTIFICATE REQUEST",
|
|
10262
10262
|
body: asn1.toDer(pki.certificationRequestToAsn1(csr)).getBytes()
|
|
10263
10263
|
};
|
|
10264
|
-
return
|
|
10264
|
+
return forge3.pem.encode(msg, { maxline });
|
|
10265
10265
|
};
|
|
10266
10266
|
pki.createCertificate = function() {
|
|
10267
10267
|
var cert = {};
|
|
@@ -10338,7 +10338,7 @@ var require_x509 = __commonJS({
|
|
|
10338
10338
|
return rval;
|
|
10339
10339
|
};
|
|
10340
10340
|
cert.sign = function(key, md) {
|
|
10341
|
-
cert.md = md ||
|
|
10341
|
+
cert.md = md || forge3.md.sha1.create();
|
|
10342
10342
|
var algorithmOid = oids[cert.md.algorithm + "WithRSAEncryption"];
|
|
10343
10343
|
if (!algorithmOid) {
|
|
10344
10344
|
var error = new Error("Could not compute certificate digest. Unknown message digest algorithm OID.");
|
|
@@ -10413,7 +10413,7 @@ var require_x509 = __commonJS({
|
|
|
10413
10413
|
var ext = cert.extensions[i];
|
|
10414
10414
|
if (ext.id === oid) {
|
|
10415
10415
|
var ski = cert.generateSubjectKeyIdentifier().getBytes();
|
|
10416
|
-
return
|
|
10416
|
+
return forge3.util.hexToBytes(ext.subjectKeyIdentifier) === ski;
|
|
10417
10417
|
}
|
|
10418
10418
|
}
|
|
10419
10419
|
return false;
|
|
@@ -10434,15 +10434,15 @@ var require_x509 = __commonJS({
|
|
|
10434
10434
|
}
|
|
10435
10435
|
var cert = pki.createCertificate();
|
|
10436
10436
|
cert.version = capture.certVersion ? capture.certVersion.charCodeAt(0) : 0;
|
|
10437
|
-
var serial =
|
|
10437
|
+
var serial = forge3.util.createBuffer(capture.certSerialNumber);
|
|
10438
10438
|
cert.serialNumber = serial.toHex();
|
|
10439
|
-
cert.signatureOid =
|
|
10439
|
+
cert.signatureOid = forge3.asn1.derToOid(capture.certSignatureOid);
|
|
10440
10440
|
cert.signatureParameters = _readSignatureParameters(
|
|
10441
10441
|
cert.signatureOid,
|
|
10442
10442
|
capture.certSignatureParams,
|
|
10443
10443
|
true
|
|
10444
10444
|
);
|
|
10445
|
-
cert.siginfo.algorithmOid =
|
|
10445
|
+
cert.siginfo.algorithmOid = forge3.asn1.derToOid(capture.certinfoSignatureOid);
|
|
10446
10446
|
cert.siginfo.parameters = _readSignatureParameters(
|
|
10447
10447
|
cert.siginfo.algorithmOid,
|
|
10448
10448
|
capture.certinfoSignatureParams,
|
|
@@ -10483,7 +10483,7 @@ var require_x509 = __commonJS({
|
|
|
10483
10483
|
var bytes = asn1.toDer(cert.tbsCertificate);
|
|
10484
10484
|
cert.md.update(bytes.getBytes());
|
|
10485
10485
|
}
|
|
10486
|
-
var imd =
|
|
10486
|
+
var imd = forge3.md.sha1.create();
|
|
10487
10487
|
var ibytes = asn1.toDer(capture.certIssuer);
|
|
10488
10488
|
imd.update(ibytes.getBytes());
|
|
10489
10489
|
cert.issuer.getField = function(sn) {
|
|
@@ -10498,7 +10498,7 @@ var require_x509 = __commonJS({
|
|
|
10498
10498
|
cert.issuer.uniqueId = capture.certIssuerUniqueId;
|
|
10499
10499
|
}
|
|
10500
10500
|
cert.issuer.hash = imd.digest().toHex();
|
|
10501
|
-
var smd =
|
|
10501
|
+
var smd = forge3.md.sha1.create();
|
|
10502
10502
|
var sbytes = asn1.toDer(capture.certSubject);
|
|
10503
10503
|
smd.update(sbytes.getBytes());
|
|
10504
10504
|
cert.subject.getField = function(sn) {
|
|
@@ -10621,7 +10621,7 @@ var require_x509 = __commonJS({
|
|
|
10621
10621
|
break;
|
|
10622
10622
|
// IPAddress
|
|
10623
10623
|
case 7:
|
|
10624
|
-
altName.ip =
|
|
10624
|
+
altName.ip = forge3.util.bytesToIP(gn.value);
|
|
10625
10625
|
break;
|
|
10626
10626
|
// registeredID
|
|
10627
10627
|
case 8:
|
|
@@ -10631,7 +10631,7 @@ var require_x509 = __commonJS({
|
|
|
10631
10631
|
}
|
|
10632
10632
|
} else if (e.name === "subjectKeyIdentifier") {
|
|
10633
10633
|
var ev = asn1.fromDer(e.value);
|
|
10634
|
-
e.subjectKeyIdentifier =
|
|
10634
|
+
e.subjectKeyIdentifier = forge3.util.bytesToHex(ev.value);
|
|
10635
10635
|
}
|
|
10636
10636
|
}
|
|
10637
10637
|
return e;
|
|
@@ -10650,13 +10650,13 @@ var require_x509 = __commonJS({
|
|
|
10650
10650
|
}
|
|
10651
10651
|
var csr = pki.createCertificationRequest();
|
|
10652
10652
|
csr.version = capture.csrVersion ? capture.csrVersion.charCodeAt(0) : 0;
|
|
10653
|
-
csr.signatureOid =
|
|
10653
|
+
csr.signatureOid = forge3.asn1.derToOid(capture.csrSignatureOid);
|
|
10654
10654
|
csr.signatureParameters = _readSignatureParameters(
|
|
10655
10655
|
csr.signatureOid,
|
|
10656
10656
|
capture.csrSignatureParams,
|
|
10657
10657
|
true
|
|
10658
10658
|
);
|
|
10659
|
-
csr.siginfo.algorithmOid =
|
|
10659
|
+
csr.siginfo.algorithmOid = forge3.asn1.derToOid(capture.csrSignatureOid);
|
|
10660
10660
|
csr.siginfo.parameters = _readSignatureParameters(
|
|
10661
10661
|
csr.siginfo.algorithmOid,
|
|
10662
10662
|
capture.csrSignatureParams,
|
|
@@ -10672,7 +10672,7 @@ var require_x509 = __commonJS({
|
|
|
10672
10672
|
var bytes = asn1.toDer(csr.certificationRequestInfo);
|
|
10673
10673
|
csr.md.update(bytes.getBytes());
|
|
10674
10674
|
}
|
|
10675
|
-
var smd =
|
|
10675
|
+
var smd = forge3.md.sha1.create();
|
|
10676
10676
|
csr.subject.getField = function(sn) {
|
|
10677
10677
|
return _getAttribute(csr.subject, sn);
|
|
10678
10678
|
};
|
|
@@ -10735,7 +10735,7 @@ var require_x509 = __commonJS({
|
|
|
10735
10735
|
csr.attributes = attrs;
|
|
10736
10736
|
};
|
|
10737
10737
|
csr.sign = function(key, md) {
|
|
10738
|
-
csr.md = md ||
|
|
10738
|
+
csr.md = md || forge3.md.sha1.create();
|
|
10739
10739
|
var algorithmOid = oids[csr.md.algorithm + "WithRSAEncryption"];
|
|
10740
10740
|
if (!algorithmOid) {
|
|
10741
10741
|
var error = new Error("Could not compute certification request digest. Unknown message digest algorithm OID.");
|
|
@@ -10787,7 +10787,7 @@ var require_x509 = __commonJS({
|
|
|
10787
10787
|
if ("valueTagClass" in attr) {
|
|
10788
10788
|
valueTagClass = attr.valueTagClass;
|
|
10789
10789
|
if (valueTagClass === asn1.Type.UTF8) {
|
|
10790
|
-
value =
|
|
10790
|
+
value = forge3.util.encodeUtf8(value);
|
|
10791
10791
|
}
|
|
10792
10792
|
}
|
|
10793
10793
|
set = asn1.create(asn1.Class.UNIVERSAL, asn1.Type.SET, true, [
|
|
@@ -11025,7 +11025,7 @@ var require_x509 = __commonJS({
|
|
|
11025
11025
|
altName = e.altNames[n];
|
|
11026
11026
|
var value = altName.value;
|
|
11027
11027
|
if (altName.type === 7 && altName.ip) {
|
|
11028
|
-
value =
|
|
11028
|
+
value = forge3.util.bytesFromIP(altName.ip);
|
|
11029
11029
|
if (value === null) {
|
|
11030
11030
|
var error = new Error(
|
|
11031
11031
|
'Extension "ip" value is not a valid IPv4 or IPv6 address.'
|
|
@@ -11086,7 +11086,7 @@ var require_x509 = __commonJS({
|
|
|
11086
11086
|
);
|
|
11087
11087
|
}
|
|
11088
11088
|
if (e.serialNumber) {
|
|
11089
|
-
var serialNumber =
|
|
11089
|
+
var serialNumber = forge3.util.hexToBytes(e.serialNumber === true ? options.cert.serialNumber : e.serialNumber);
|
|
11090
11090
|
seq.push(
|
|
11091
11091
|
asn1.create(asn1.Class.CONTEXT_SPECIFIC, 2, false, serialNumber)
|
|
11092
11092
|
);
|
|
@@ -11111,7 +11111,7 @@ var require_x509 = __commonJS({
|
|
|
11111
11111
|
altName = e.altNames[n];
|
|
11112
11112
|
var value = altName.value;
|
|
11113
11113
|
if (altName.type === 7 && altName.ip) {
|
|
11114
|
-
value =
|
|
11114
|
+
value = forge3.util.bytesFromIP(altName.ip);
|
|
11115
11115
|
if (value === null) {
|
|
11116
11116
|
var error = new Error(
|
|
11117
11117
|
'Extension "ip" value is not a valid IPv4 or IPv6 address.'
|
|
@@ -11215,7 +11215,7 @@ var require_x509 = __commonJS({
|
|
|
11215
11215
|
valueTagClass = attr.valueTagClass;
|
|
11216
11216
|
}
|
|
11217
11217
|
if (valueTagClass === asn1.Type.UTF8) {
|
|
11218
|
-
value =
|
|
11218
|
+
value = forge3.util.encodeUtf8(value);
|
|
11219
11219
|
}
|
|
11220
11220
|
var valueConstructed = false;
|
|
11221
11221
|
if ("valueConstructed" in attr) {
|
|
@@ -11281,7 +11281,7 @@ var require_x509 = __commonJS({
|
|
|
11281
11281
|
asn1.Class.UNIVERSAL,
|
|
11282
11282
|
asn1.Type.INTEGER,
|
|
11283
11283
|
false,
|
|
11284
|
-
|
|
11284
|
+
forge3.util.hexToBytes(cert.serialNumber)
|
|
11285
11285
|
),
|
|
11286
11286
|
// signature
|
|
11287
11287
|
asn1.create(asn1.Class.UNIVERSAL, asn1.Type.SEQUENCE, true, [
|
|
@@ -11462,13 +11462,13 @@ var require_x509 = __commonJS({
|
|
|
11462
11462
|
};
|
|
11463
11463
|
caStore.addCertificate = function(cert2) {
|
|
11464
11464
|
if (typeof cert2 === "string") {
|
|
11465
|
-
cert2 =
|
|
11465
|
+
cert2 = forge3.pki.certificateFromPem(cert2);
|
|
11466
11466
|
}
|
|
11467
11467
|
ensureSubjectHasHash(cert2.subject);
|
|
11468
11468
|
if (!caStore.hasCertificate(cert2)) {
|
|
11469
11469
|
if (cert2.subject.hash in caStore.certs) {
|
|
11470
11470
|
var tmp = caStore.certs[cert2.subject.hash];
|
|
11471
|
-
if (!
|
|
11471
|
+
if (!forge3.util.isArray(tmp)) {
|
|
11472
11472
|
tmp = [tmp];
|
|
11473
11473
|
}
|
|
11474
11474
|
tmp.push(cert2);
|
|
@@ -11480,13 +11480,13 @@ var require_x509 = __commonJS({
|
|
|
11480
11480
|
};
|
|
11481
11481
|
caStore.hasCertificate = function(cert2) {
|
|
11482
11482
|
if (typeof cert2 === "string") {
|
|
11483
|
-
cert2 =
|
|
11483
|
+
cert2 = forge3.pki.certificateFromPem(cert2);
|
|
11484
11484
|
}
|
|
11485
11485
|
var match = getBySubject(cert2.subject);
|
|
11486
11486
|
if (!match) {
|
|
11487
11487
|
return false;
|
|
11488
11488
|
}
|
|
11489
|
-
if (!
|
|
11489
|
+
if (!forge3.util.isArray(match)) {
|
|
11490
11490
|
match = [match];
|
|
11491
11491
|
}
|
|
11492
11492
|
var der1 = asn1.toDer(pki.certificateToAsn1(cert2)).getBytes();
|
|
@@ -11503,7 +11503,7 @@ var require_x509 = __commonJS({
|
|
|
11503
11503
|
for (var hash in caStore.certs) {
|
|
11504
11504
|
if (caStore.certs.hasOwnProperty(hash)) {
|
|
11505
11505
|
var value = caStore.certs[hash];
|
|
11506
|
-
if (!
|
|
11506
|
+
if (!forge3.util.isArray(value)) {
|
|
11507
11507
|
certList.push(value);
|
|
11508
11508
|
} else {
|
|
11509
11509
|
for (var i2 = 0; i2 < value.length; ++i2) {
|
|
@@ -11517,14 +11517,14 @@ var require_x509 = __commonJS({
|
|
|
11517
11517
|
caStore.removeCertificate = function(cert2) {
|
|
11518
11518
|
var result;
|
|
11519
11519
|
if (typeof cert2 === "string") {
|
|
11520
|
-
cert2 =
|
|
11520
|
+
cert2 = forge3.pki.certificateFromPem(cert2);
|
|
11521
11521
|
}
|
|
11522
11522
|
ensureSubjectHasHash(cert2.subject);
|
|
11523
11523
|
if (!caStore.hasCertificate(cert2)) {
|
|
11524
11524
|
return null;
|
|
11525
11525
|
}
|
|
11526
11526
|
var match = getBySubject(cert2.subject);
|
|
11527
|
-
if (!
|
|
11527
|
+
if (!forge3.util.isArray(match)) {
|
|
11528
11528
|
result = caStore.certs[cert2.subject.hash];
|
|
11529
11529
|
delete caStore.certs[cert2.subject.hash];
|
|
11530
11530
|
return result;
|
|
@@ -11548,7 +11548,7 @@ var require_x509 = __commonJS({
|
|
|
11548
11548
|
}
|
|
11549
11549
|
function ensureSubjectHasHash(subject) {
|
|
11550
11550
|
if (!subject.hash) {
|
|
11551
|
-
var md =
|
|
11551
|
+
var md = forge3.md.sha1.create();
|
|
11552
11552
|
subject.attributes = pki.RDNAttributesAsArray(_dnToAsn1(subject), md);
|
|
11553
11553
|
subject.hash = md.digest().toHex();
|
|
11554
11554
|
}
|
|
@@ -11610,7 +11610,7 @@ var require_x509 = __commonJS({
|
|
|
11610
11610
|
}
|
|
11611
11611
|
if (parent) {
|
|
11612
11612
|
var parents = parent;
|
|
11613
|
-
if (!
|
|
11613
|
+
if (!forge3.util.isArray(parents)) {
|
|
11614
11614
|
parents = [parents];
|
|
11615
11615
|
}
|
|
11616
11616
|
var verified = false;
|
|
@@ -11695,7 +11695,7 @@ var require_x509 = __commonJS({
|
|
|
11695
11695
|
};
|
|
11696
11696
|
}
|
|
11697
11697
|
if (ret || ret === 0) {
|
|
11698
|
-
if (typeof ret === "object" && !
|
|
11698
|
+
if (typeof ret === "object" && !forge3.util.isArray(ret)) {
|
|
11699
11699
|
if (ret.message) {
|
|
11700
11700
|
error.message = ret.message;
|
|
11701
11701
|
}
|
|
@@ -11719,7 +11719,7 @@ var require_x509 = __commonJS({
|
|
|
11719
11719
|
// ../../node_modules/node-forge/lib/pkcs12.js
|
|
11720
11720
|
var require_pkcs12 = __commonJS({
|
|
11721
11721
|
"../../node_modules/node-forge/lib/pkcs12.js"(exports$1, module) {
|
|
11722
|
-
var
|
|
11722
|
+
var forge3 = require_forge();
|
|
11723
11723
|
require_asn1();
|
|
11724
11724
|
require_hmac();
|
|
11725
11725
|
require_oids();
|
|
@@ -11730,9 +11730,9 @@ var require_pkcs12 = __commonJS({
|
|
|
11730
11730
|
require_sha1();
|
|
11731
11731
|
require_util();
|
|
11732
11732
|
require_x509();
|
|
11733
|
-
var asn1 =
|
|
11734
|
-
var pki =
|
|
11735
|
-
var p12 = module.exports =
|
|
11733
|
+
var asn1 = forge3.asn1;
|
|
11734
|
+
var pki = forge3.pki;
|
|
11735
|
+
var p12 = module.exports = forge3.pkcs12 = forge3.pkcs12 || {};
|
|
11736
11736
|
var contentInfoValidator = {
|
|
11737
11737
|
name: "ContentInfo",
|
|
11738
11738
|
tagClass: asn1.Class.UNIVERSAL,
|
|
@@ -11946,7 +11946,7 @@ var require_pkcs12 = __commonJS({
|
|
|
11946
11946
|
if ("localKeyId" in filter) {
|
|
11947
11947
|
localKeyId = filter.localKeyId;
|
|
11948
11948
|
} else if ("localKeyIdHex" in filter) {
|
|
11949
|
-
localKeyId =
|
|
11949
|
+
localKeyId = forge3.util.hexToBytes(filter.localKeyIdHex);
|
|
11950
11950
|
}
|
|
11951
11951
|
if (localKeyId === void 0 && !("friendlyName" in filter) && "bagType" in filter) {
|
|
11952
11952
|
rval[filter.bagType] = _getBagsByAttribute(
|
|
@@ -12032,31 +12032,31 @@ var require_pkcs12 = __commonJS({
|
|
|
12032
12032
|
var macAlgorithm = asn1.derToOid(capture.macAlgorithm);
|
|
12033
12033
|
switch (macAlgorithm) {
|
|
12034
12034
|
case pki.oids.sha1:
|
|
12035
|
-
md =
|
|
12035
|
+
md = forge3.md.sha1.create();
|
|
12036
12036
|
macKeyBytes = 20;
|
|
12037
12037
|
break;
|
|
12038
12038
|
case pki.oids.sha256:
|
|
12039
|
-
md =
|
|
12039
|
+
md = forge3.md.sha256.create();
|
|
12040
12040
|
macKeyBytes = 32;
|
|
12041
12041
|
break;
|
|
12042
12042
|
case pki.oids.sha384:
|
|
12043
|
-
md =
|
|
12043
|
+
md = forge3.md.sha384.create();
|
|
12044
12044
|
macKeyBytes = 48;
|
|
12045
12045
|
break;
|
|
12046
12046
|
case pki.oids.sha512:
|
|
12047
|
-
md =
|
|
12047
|
+
md = forge3.md.sha512.create();
|
|
12048
12048
|
macKeyBytes = 64;
|
|
12049
12049
|
break;
|
|
12050
12050
|
case pki.oids.md5:
|
|
12051
|
-
md =
|
|
12051
|
+
md = forge3.md.md5.create();
|
|
12052
12052
|
macKeyBytes = 16;
|
|
12053
12053
|
break;
|
|
12054
12054
|
}
|
|
12055
12055
|
if (md === null) {
|
|
12056
12056
|
throw new Error("PKCS#12 uses unsupported MAC algorithm: " + macAlgorithm);
|
|
12057
12057
|
}
|
|
12058
|
-
var macSalt = new
|
|
12059
|
-
var macIterations = "macIterations" in capture ? parseInt(
|
|
12058
|
+
var macSalt = new forge3.util.ByteBuffer(capture.macSalt);
|
|
12059
|
+
var macIterations = "macIterations" in capture ? parseInt(forge3.util.bytesToHex(capture.macIterations), 16) : 1;
|
|
12060
12060
|
var macKey = p12.generateKey(
|
|
12061
12061
|
password,
|
|
12062
12062
|
macSalt,
|
|
@@ -12065,7 +12065,7 @@ var require_pkcs12 = __commonJS({
|
|
|
12065
12065
|
macKeyBytes,
|
|
12066
12066
|
md
|
|
12067
12067
|
);
|
|
12068
|
-
var mac =
|
|
12068
|
+
var mac = forge3.hmac.create();
|
|
12069
12069
|
mac.start(md, macKey);
|
|
12070
12070
|
mac.update(data.value);
|
|
12071
12071
|
var macValue = mac.getMac();
|
|
@@ -12080,7 +12080,7 @@ var require_pkcs12 = __commonJS({
|
|
|
12080
12080
|
};
|
|
12081
12081
|
function _decodePkcs7Data(data) {
|
|
12082
12082
|
if (data.composed || data.constructed) {
|
|
12083
|
-
var value =
|
|
12083
|
+
var value = forge3.util.createBuffer();
|
|
12084
12084
|
for (var i = 0; i < data.value.length; ++i) {
|
|
12085
12085
|
value.putBytes(data.value[i].value);
|
|
12086
12086
|
}
|
|
@@ -12133,7 +12133,7 @@ var require_pkcs12 = __commonJS({
|
|
|
12133
12133
|
var errors = [];
|
|
12134
12134
|
if (!asn1.validate(
|
|
12135
12135
|
data,
|
|
12136
|
-
|
|
12136
|
+
forge3.pkcs7.asn1.encryptedDataValidator,
|
|
12137
12137
|
capture,
|
|
12138
12138
|
errors
|
|
12139
12139
|
)) {
|
|
@@ -12152,7 +12152,7 @@ var require_pkcs12 = __commonJS({
|
|
|
12152
12152
|
oid = asn1.derToOid(capture.encAlgorithm);
|
|
12153
12153
|
var cipher = pki.pbe.getCipher(oid, capture.encParameter, password);
|
|
12154
12154
|
var encryptedContentAsn1 = _decodePkcs7Data(capture.encryptedContentAsn1);
|
|
12155
|
-
var encrypted =
|
|
12155
|
+
var encrypted = forge3.util.createBuffer(encryptedContentAsn1.value);
|
|
12156
12156
|
cipher.update(encrypted);
|
|
12157
12157
|
if (!cipher.finish()) {
|
|
12158
12158
|
throw new Error("Failed to decrypt PKCS#12 SafeContents.");
|
|
@@ -12277,18 +12277,18 @@ var require_pkcs12 = __commonJS({
|
|
|
12277
12277
|
var localKeyId = options.localKeyId;
|
|
12278
12278
|
var bagAttrs;
|
|
12279
12279
|
if (localKeyId !== null) {
|
|
12280
|
-
localKeyId =
|
|
12280
|
+
localKeyId = forge3.util.hexToBytes(localKeyId);
|
|
12281
12281
|
} else if (options.generateLocalKeyId) {
|
|
12282
12282
|
if (cert) {
|
|
12283
|
-
var pairedCert =
|
|
12283
|
+
var pairedCert = forge3.util.isArray(cert) ? cert[0] : cert;
|
|
12284
12284
|
if (typeof pairedCert === "string") {
|
|
12285
12285
|
pairedCert = pki.certificateFromPem(pairedCert);
|
|
12286
12286
|
}
|
|
12287
|
-
var sha1 =
|
|
12287
|
+
var sha1 = forge3.md.sha1.create();
|
|
12288
12288
|
sha1.update(asn1.toDer(pki.certificateToAsn1(pairedCert)).getBytes());
|
|
12289
12289
|
localKeyId = sha1.digest().getBytes();
|
|
12290
12290
|
} else {
|
|
12291
|
-
localKeyId =
|
|
12291
|
+
localKeyId = forge3.random.getBytes(20);
|
|
12292
12292
|
}
|
|
12293
12293
|
}
|
|
12294
12294
|
var attrs = [];
|
|
@@ -12344,7 +12344,7 @@ var require_pkcs12 = __commonJS({
|
|
|
12344
12344
|
var contents = [];
|
|
12345
12345
|
var chain = [];
|
|
12346
12346
|
if (cert !== null) {
|
|
12347
|
-
if (
|
|
12347
|
+
if (forge3.util.isArray(cert)) {
|
|
12348
12348
|
chain = cert;
|
|
12349
12349
|
} else {
|
|
12350
12350
|
chain = [cert];
|
|
@@ -12495,13 +12495,13 @@ var require_pkcs12 = __commonJS({
|
|
|
12495
12495
|
);
|
|
12496
12496
|
var macData;
|
|
12497
12497
|
if (options.useMac) {
|
|
12498
|
-
var sha1 =
|
|
12499
|
-
var macSalt = new
|
|
12500
|
-
|
|
12498
|
+
var sha1 = forge3.md.sha1.create();
|
|
12499
|
+
var macSalt = new forge3.util.ByteBuffer(
|
|
12500
|
+
forge3.random.getBytes(options.saltSize)
|
|
12501
12501
|
);
|
|
12502
12502
|
var count = options.count;
|
|
12503
12503
|
var key = p12.generateKey(password, macSalt, 3, count, 20);
|
|
12504
|
-
var mac =
|
|
12504
|
+
var mac = forge3.hmac.create();
|
|
12505
12505
|
mac.start(sha1, key);
|
|
12506
12506
|
mac.update(asn1.toDer(safe).getBytes());
|
|
12507
12507
|
var macValue = mac.getMac();
|
|
@@ -12575,14 +12575,14 @@ var require_pkcs12 = __commonJS({
|
|
|
12575
12575
|
macData
|
|
12576
12576
|
]);
|
|
12577
12577
|
};
|
|
12578
|
-
p12.generateKey =
|
|
12578
|
+
p12.generateKey = forge3.pbe.generatePkcs12Key;
|
|
12579
12579
|
}
|
|
12580
12580
|
});
|
|
12581
12581
|
|
|
12582
12582
|
// ../../node_modules/node-forge/lib/pki.js
|
|
12583
12583
|
var require_pki = __commonJS({
|
|
12584
12584
|
"../../node_modules/node-forge/lib/pki.js"(exports$1, module) {
|
|
12585
|
-
var
|
|
12585
|
+
var forge3 = require_forge();
|
|
12586
12586
|
require_asn1();
|
|
12587
12587
|
require_oids();
|
|
12588
12588
|
require_pbe();
|
|
@@ -12593,17 +12593,17 @@ var require_pki = __commonJS({
|
|
|
12593
12593
|
require_rsa();
|
|
12594
12594
|
require_util();
|
|
12595
12595
|
require_x509();
|
|
12596
|
-
var asn1 =
|
|
12597
|
-
var pki = module.exports =
|
|
12596
|
+
var asn1 = forge3.asn1;
|
|
12597
|
+
var pki = module.exports = forge3.pki = forge3.pki || {};
|
|
12598
12598
|
pki.pemToDer = function(pem) {
|
|
12599
|
-
var msg =
|
|
12599
|
+
var msg = forge3.pem.decode(pem)[0];
|
|
12600
12600
|
if (msg.procType && msg.procType.type === "ENCRYPTED") {
|
|
12601
12601
|
throw new Error("Could not convert PEM to DER; PEM is encrypted.");
|
|
12602
12602
|
}
|
|
12603
|
-
return
|
|
12603
|
+
return forge3.util.createBuffer(msg.body);
|
|
12604
12604
|
};
|
|
12605
12605
|
pki.privateKeyFromPem = function(pem) {
|
|
12606
|
-
var msg =
|
|
12606
|
+
var msg = forge3.pem.decode(pem)[0];
|
|
12607
12607
|
if (msg.type !== "PRIVATE KEY" && msg.type !== "RSA PRIVATE KEY") {
|
|
12608
12608
|
var error = new Error('Could not convert private key from PEM; PEM header type is not "PRIVATE KEY" or "RSA PRIVATE KEY".');
|
|
12609
12609
|
error.headerType = msg.type;
|
|
@@ -12620,14 +12620,14 @@ var require_pki = __commonJS({
|
|
|
12620
12620
|
type: "RSA PRIVATE KEY",
|
|
12621
12621
|
body: asn1.toDer(pki.privateKeyToAsn1(key)).getBytes()
|
|
12622
12622
|
};
|
|
12623
|
-
return
|
|
12623
|
+
return forge3.pem.encode(msg, { maxline });
|
|
12624
12624
|
};
|
|
12625
12625
|
pki.privateKeyInfoToPem = function(pki2, maxline) {
|
|
12626
12626
|
var msg = {
|
|
12627
12627
|
type: "PRIVATE KEY",
|
|
12628
12628
|
body: asn1.toDer(pki2).getBytes()
|
|
12629
12629
|
};
|
|
12630
|
-
return
|
|
12630
|
+
return forge3.pem.encode(msg, { maxline });
|
|
12631
12631
|
};
|
|
12632
12632
|
}
|
|
12633
12633
|
});
|
|
@@ -12635,7 +12635,7 @@ var require_pki = __commonJS({
|
|
|
12635
12635
|
// ../../node_modules/node-forge/lib/tls.js
|
|
12636
12636
|
var require_tls = __commonJS({
|
|
12637
12637
|
"../../node_modules/node-forge/lib/tls.js"(exports$1, module) {
|
|
12638
|
-
var
|
|
12638
|
+
var forge3 = require_forge();
|
|
12639
12639
|
require_asn1();
|
|
12640
12640
|
require_hmac();
|
|
12641
12641
|
require_md5();
|
|
@@ -12645,18 +12645,18 @@ var require_tls = __commonJS({
|
|
|
12645
12645
|
require_sha1();
|
|
12646
12646
|
require_util();
|
|
12647
12647
|
var prf_TLS1 = function(secret, label, seed, length) {
|
|
12648
|
-
var rval =
|
|
12648
|
+
var rval = forge3.util.createBuffer();
|
|
12649
12649
|
var idx = secret.length >> 1;
|
|
12650
12650
|
var slen = idx + (secret.length & 1);
|
|
12651
12651
|
var s1 = secret.substr(0, slen);
|
|
12652
12652
|
var s2 = secret.substr(idx, slen);
|
|
12653
|
-
var ai =
|
|
12654
|
-
var hmac =
|
|
12653
|
+
var ai = forge3.util.createBuffer();
|
|
12654
|
+
var hmac = forge3.hmac.create();
|
|
12655
12655
|
seed = label + seed;
|
|
12656
12656
|
var md5itr = Math.ceil(length / 16);
|
|
12657
12657
|
var sha1itr = Math.ceil(length / 20);
|
|
12658
12658
|
hmac.start("MD5", s1);
|
|
12659
|
-
var md5bytes =
|
|
12659
|
+
var md5bytes = forge3.util.createBuffer();
|
|
12660
12660
|
ai.putBytes(seed);
|
|
12661
12661
|
for (var i = 0; i < md5itr; ++i) {
|
|
12662
12662
|
hmac.start(null, null);
|
|
@@ -12667,7 +12667,7 @@ var require_tls = __commonJS({
|
|
|
12667
12667
|
md5bytes.putBuffer(hmac.digest());
|
|
12668
12668
|
}
|
|
12669
12669
|
hmac.start("SHA1", s2);
|
|
12670
|
-
var sha1bytes =
|
|
12670
|
+
var sha1bytes = forge3.util.createBuffer();
|
|
12671
12671
|
ai.clear();
|
|
12672
12672
|
ai.putBytes(seed);
|
|
12673
12673
|
for (var i = 0; i < sha1itr; ++i) {
|
|
@@ -12678,7 +12678,7 @@ var require_tls = __commonJS({
|
|
|
12678
12678
|
hmac.update(ai.bytes() + seed);
|
|
12679
12679
|
sha1bytes.putBuffer(hmac.digest());
|
|
12680
12680
|
}
|
|
12681
|
-
rval.putBytes(
|
|
12681
|
+
rval.putBytes(forge3.util.xorBytes(
|
|
12682
12682
|
md5bytes.getBytes(),
|
|
12683
12683
|
sha1bytes.getBytes(),
|
|
12684
12684
|
length
|
|
@@ -12686,9 +12686,9 @@ var require_tls = __commonJS({
|
|
|
12686
12686
|
return rval;
|
|
12687
12687
|
};
|
|
12688
12688
|
var hmac_sha1 = function(key2, seqNum, record) {
|
|
12689
|
-
var hmac =
|
|
12689
|
+
var hmac = forge3.hmac.create();
|
|
12690
12690
|
hmac.start("SHA1", key2);
|
|
12691
|
-
var b =
|
|
12691
|
+
var b = forge3.util.createBuffer();
|
|
12692
12692
|
b.putInt32(seqNum[0]);
|
|
12693
12693
|
b.putInt32(seqNum[1]);
|
|
12694
12694
|
b.putByte(record.type);
|
|
@@ -12703,7 +12703,7 @@ var require_tls = __commonJS({
|
|
|
12703
12703
|
var rval = false;
|
|
12704
12704
|
try {
|
|
12705
12705
|
var bytes = c.deflate(record.fragment.getBytes());
|
|
12706
|
-
record.fragment =
|
|
12706
|
+
record.fragment = forge3.util.createBuffer(bytes);
|
|
12707
12707
|
record.length = bytes.length;
|
|
12708
12708
|
rval = true;
|
|
12709
12709
|
} catch (ex) {
|
|
@@ -12714,7 +12714,7 @@ var require_tls = __commonJS({
|
|
|
12714
12714
|
var rval = false;
|
|
12715
12715
|
try {
|
|
12716
12716
|
var bytes = c.inflate(record.fragment.getBytes());
|
|
12717
|
-
record.fragment =
|
|
12717
|
+
record.fragment = forge3.util.createBuffer(bytes);
|
|
12718
12718
|
record.length = bytes.length;
|
|
12719
12719
|
rval = true;
|
|
12720
12720
|
} catch (ex) {
|
|
@@ -12737,7 +12737,7 @@ var require_tls = __commonJS({
|
|
|
12737
12737
|
len = b.getInt32();
|
|
12738
12738
|
break;
|
|
12739
12739
|
}
|
|
12740
|
-
return
|
|
12740
|
+
return forge3.util.createBuffer(b.getBytes(len));
|
|
12741
12741
|
};
|
|
12742
12742
|
var writeVector = function(b, lenBytes, v) {
|
|
12743
12743
|
b.putInt(v.length(), lenBytes << 3);
|
|
@@ -12893,7 +12893,7 @@ var require_tls = __commonJS({
|
|
|
12893
12893
|
major: b.getByte(),
|
|
12894
12894
|
minor: b.getByte()
|
|
12895
12895
|
},
|
|
12896
|
-
random:
|
|
12896
|
+
random: forge3.util.createBuffer(b.getBytes(32)),
|
|
12897
12897
|
session_id: readVector(b, 1),
|
|
12898
12898
|
extensions: []
|
|
12899
12899
|
};
|
|
@@ -12946,7 +12946,7 @@ var require_tls = __commonJS({
|
|
|
12946
12946
|
if (client) {
|
|
12947
12947
|
c.session.cipherSuite = tls.getCipherSuite(msg.cipher_suite);
|
|
12948
12948
|
} else {
|
|
12949
|
-
var tmp =
|
|
12949
|
+
var tmp = forge3.util.createBuffer(msg.cipher_suites.bytes());
|
|
12950
12950
|
while (tmp.length() > 0) {
|
|
12951
12951
|
c.session.cipherSuite = tls.getCipherSuite(tmp.getBytes(2));
|
|
12952
12952
|
if (c.session.cipherSuite !== null) {
|
|
@@ -12962,7 +12962,7 @@ var require_tls = __commonJS({
|
|
|
12962
12962
|
level: tls.Alert.Level.fatal,
|
|
12963
12963
|
description: tls.Alert.Description.handshake_failure
|
|
12964
12964
|
},
|
|
12965
|
-
cipherSuite:
|
|
12965
|
+
cipherSuite: forge3.util.bytesToHex(msg.cipher_suite)
|
|
12966
12966
|
});
|
|
12967
12967
|
}
|
|
12968
12968
|
if (client) {
|
|
@@ -13045,7 +13045,7 @@ var require_tls = __commonJS({
|
|
|
13045
13045
|
}
|
|
13046
13046
|
}
|
|
13047
13047
|
if (sessionId.length === 0) {
|
|
13048
|
-
sessionId =
|
|
13048
|
+
sessionId = forge3.random.getBytes(32);
|
|
13049
13049
|
}
|
|
13050
13050
|
c.session.id = sessionId;
|
|
13051
13051
|
c.session.clientHelloVersion = msg.version;
|
|
@@ -13134,8 +13134,8 @@ var require_tls = __commonJS({
|
|
|
13134
13134
|
try {
|
|
13135
13135
|
while (msg.certificate_list.length() > 0) {
|
|
13136
13136
|
cert = readVector(msg.certificate_list, 3);
|
|
13137
|
-
asn1 =
|
|
13138
|
-
cert =
|
|
13137
|
+
asn1 = forge3.asn1.fromDer(cert);
|
|
13138
|
+
cert = forge3.pki.certificateFromAsn1(asn1, true);
|
|
13139
13139
|
certs.push(cert);
|
|
13140
13140
|
}
|
|
13141
13141
|
} catch (ex) {
|
|
@@ -13206,7 +13206,7 @@ var require_tls = __commonJS({
|
|
|
13206
13206
|
if (c.getPrivateKey) {
|
|
13207
13207
|
try {
|
|
13208
13208
|
privateKey = c.getPrivateKey(c, c.session.serverCertificate);
|
|
13209
|
-
privateKey =
|
|
13209
|
+
privateKey = forge3.pki.privateKeyFromPem(privateKey);
|
|
13210
13210
|
} catch (ex) {
|
|
13211
13211
|
c.error(c, {
|
|
13212
13212
|
message: "Could not get private key.",
|
|
@@ -13237,7 +13237,7 @@ var require_tls = __commonJS({
|
|
|
13237
13237
|
throw new Error("TLS version rollback attack detected.");
|
|
13238
13238
|
}
|
|
13239
13239
|
} catch (ex) {
|
|
13240
|
-
sp.pre_master_secret =
|
|
13240
|
+
sp.pre_master_secret = forge3.random.getBytes(48);
|
|
13241
13241
|
}
|
|
13242
13242
|
c.expect = CCC;
|
|
13243
13243
|
if (c.session.clientCertificate !== null) {
|
|
@@ -13283,7 +13283,7 @@ var require_tls = __commonJS({
|
|
|
13283
13283
|
var msg = {
|
|
13284
13284
|
signature: readVector(b, 2).getBytes()
|
|
13285
13285
|
};
|
|
13286
|
-
var verify =
|
|
13286
|
+
var verify = forge3.util.createBuffer();
|
|
13287
13287
|
verify.putBuffer(c.session.md5.digest());
|
|
13288
13288
|
verify.putBuffer(c.session.sha1.digest());
|
|
13289
13289
|
verify = verify.getBytes();
|
|
@@ -13331,7 +13331,7 @@ var require_tls = __commonJS({
|
|
|
13331
13331
|
var ret = c.verify(c, error.alert.description, depth, []);
|
|
13332
13332
|
if (ret !== true) {
|
|
13333
13333
|
if (ret || ret === 0) {
|
|
13334
|
-
if (typeof ret === "object" && !
|
|
13334
|
+
if (typeof ret === "object" && !forge3.util.isArray(ret)) {
|
|
13335
13335
|
if (ret.message) {
|
|
13336
13336
|
error.message = ret.message;
|
|
13337
13337
|
}
|
|
@@ -13412,7 +13412,7 @@ var require_tls = __commonJS({
|
|
|
13412
13412
|
var msgBytes = b.bytes();
|
|
13413
13413
|
b.read += 4;
|
|
13414
13414
|
var vd = record.fragment.getBytes();
|
|
13415
|
-
b =
|
|
13415
|
+
b = forge3.util.createBuffer();
|
|
13416
13416
|
b.putBuffer(c.session.md5.digest());
|
|
13417
13417
|
b.putBuffer(c.session.sha1.digest());
|
|
13418
13418
|
var client = c.entity === tls.ConnectionEnd.client;
|
|
@@ -13553,7 +13553,7 @@ var require_tls = __commonJS({
|
|
|
13553
13553
|
var length = b.getInt24();
|
|
13554
13554
|
if (length > b.length()) {
|
|
13555
13555
|
c.fragmented = record;
|
|
13556
|
-
record.fragment =
|
|
13556
|
+
record.fragment = forge3.util.createBuffer();
|
|
13557
13557
|
b.read -= 4;
|
|
13558
13558
|
return c.process();
|
|
13559
13559
|
}
|
|
@@ -13575,8 +13575,8 @@ var require_tls = __commonJS({
|
|
|
13575
13575
|
compressionMethod: null,
|
|
13576
13576
|
serverCertificate: null,
|
|
13577
13577
|
clientCertificate: null,
|
|
13578
|
-
md5:
|
|
13579
|
-
sha1:
|
|
13578
|
+
md5: forge3.md.md5.create(),
|
|
13579
|
+
sha1: forge3.md.sha1.create()
|
|
13580
13580
|
};
|
|
13581
13581
|
}
|
|
13582
13582
|
if (type !== tls.HandshakeType.hello_request && type !== tls.HandshakeType.certificate_verify && type !== tls.HandshakeType.finished) {
|
|
@@ -13615,7 +13615,7 @@ var require_tls = __commonJS({
|
|
|
13615
13615
|
return c.process();
|
|
13616
13616
|
}
|
|
13617
13617
|
if (c.heartbeatReceived) {
|
|
13618
|
-
c.heartbeatReceived(c,
|
|
13618
|
+
c.heartbeatReceived(c, forge3.util.createBuffer(payload));
|
|
13619
13619
|
}
|
|
13620
13620
|
}
|
|
13621
13621
|
c.process();
|
|
@@ -13867,9 +13867,9 @@ var require_tls = __commonJS({
|
|
|
13867
13867
|
tls.createRandom = function() {
|
|
13868
13868
|
var d = /* @__PURE__ */ new Date();
|
|
13869
13869
|
var utc = +d + d.getTimezoneOffset() * 6e4;
|
|
13870
|
-
var rval =
|
|
13870
|
+
var rval = forge3.util.createBuffer();
|
|
13871
13871
|
rval.putInt32(utc);
|
|
13872
|
-
rval.putBytes(
|
|
13872
|
+
rval.putBytes(forge3.random.getBytes(28));
|
|
13873
13873
|
return rval;
|
|
13874
13874
|
};
|
|
13875
13875
|
tls.createRecord = function(c, options) {
|
|
@@ -13888,7 +13888,7 @@ var require_tls = __commonJS({
|
|
|
13888
13888
|
return record;
|
|
13889
13889
|
};
|
|
13890
13890
|
tls.createAlert = function(c, alert) {
|
|
13891
|
-
var b =
|
|
13891
|
+
var b = forge3.util.createBuffer();
|
|
13892
13892
|
b.putByte(alert.level);
|
|
13893
13893
|
b.putByte(alert.description);
|
|
13894
13894
|
return tls.createRecord(c, {
|
|
@@ -13901,25 +13901,25 @@ var require_tls = __commonJS({
|
|
|
13901
13901
|
major: c.version.major,
|
|
13902
13902
|
minor: c.version.minor
|
|
13903
13903
|
};
|
|
13904
|
-
var cipherSuites =
|
|
13904
|
+
var cipherSuites = forge3.util.createBuffer();
|
|
13905
13905
|
for (var i = 0; i < c.cipherSuites.length; ++i) {
|
|
13906
13906
|
var cs = c.cipherSuites[i];
|
|
13907
13907
|
cipherSuites.putByte(cs.id[0]);
|
|
13908
13908
|
cipherSuites.putByte(cs.id[1]);
|
|
13909
13909
|
}
|
|
13910
13910
|
var cSuites = cipherSuites.length();
|
|
13911
|
-
var compressionMethods =
|
|
13911
|
+
var compressionMethods = forge3.util.createBuffer();
|
|
13912
13912
|
compressionMethods.putByte(tls.CompressionMethod.none);
|
|
13913
13913
|
var cMethods = compressionMethods.length();
|
|
13914
|
-
var extensions =
|
|
13914
|
+
var extensions = forge3.util.createBuffer();
|
|
13915
13915
|
if (c.virtualHost) {
|
|
13916
|
-
var ext =
|
|
13916
|
+
var ext = forge3.util.createBuffer();
|
|
13917
13917
|
ext.putByte(0);
|
|
13918
13918
|
ext.putByte(0);
|
|
13919
|
-
var serverName =
|
|
13919
|
+
var serverName = forge3.util.createBuffer();
|
|
13920
13920
|
serverName.putByte(0);
|
|
13921
|
-
writeVector(serverName, 2,
|
|
13922
|
-
var snList =
|
|
13921
|
+
writeVector(serverName, 2, forge3.util.createBuffer(c.virtualHost));
|
|
13922
|
+
var snList = forge3.util.createBuffer();
|
|
13923
13923
|
writeVector(snList, 2, serverName);
|
|
13924
13924
|
writeVector(ext, 2, snList);
|
|
13925
13925
|
extensions.putBuffer(ext);
|
|
@@ -13935,13 +13935,13 @@ var require_tls = __commonJS({
|
|
|
13935
13935
|
2 + cSuites + // cipher suites vector
|
|
13936
13936
|
1 + cMethods + // compression methods vector
|
|
13937
13937
|
extLength;
|
|
13938
|
-
var rval =
|
|
13938
|
+
var rval = forge3.util.createBuffer();
|
|
13939
13939
|
rval.putByte(tls.HandshakeType.client_hello);
|
|
13940
13940
|
rval.putInt24(length);
|
|
13941
13941
|
rval.putByte(c.version.major);
|
|
13942
13942
|
rval.putByte(c.version.minor);
|
|
13943
13943
|
rval.putBytes(c.session.sp.client_random);
|
|
13944
|
-
writeVector(rval, 1,
|
|
13944
|
+
writeVector(rval, 1, forge3.util.createBuffer(sessionId));
|
|
13945
13945
|
writeVector(rval, 2, cipherSuites);
|
|
13946
13946
|
writeVector(rval, 1, compressionMethods);
|
|
13947
13947
|
if (extLength > 0) {
|
|
@@ -13956,13 +13956,13 @@ var require_tls = __commonJS({
|
|
|
13956
13956
|
4 + 28 + // random time and random bytes
|
|
13957
13957
|
2 + // chosen cipher suite
|
|
13958
13958
|
1;
|
|
13959
|
-
var rval =
|
|
13959
|
+
var rval = forge3.util.createBuffer();
|
|
13960
13960
|
rval.putByte(tls.HandshakeType.server_hello);
|
|
13961
13961
|
rval.putInt24(length);
|
|
13962
13962
|
rval.putByte(c.version.major);
|
|
13963
13963
|
rval.putByte(c.version.minor);
|
|
13964
13964
|
rval.putBytes(c.session.sp.server_random);
|
|
13965
|
-
writeVector(rval, 1,
|
|
13965
|
+
writeVector(rval, 1, forge3.util.createBuffer(sessionId));
|
|
13966
13966
|
rval.putByte(c.session.cipherSuite.id[0]);
|
|
13967
13967
|
rval.putByte(c.session.cipherSuite.id[1]);
|
|
13968
13968
|
rval.putByte(c.session.compressionMethod);
|
|
@@ -13980,15 +13980,15 @@ var require_tls = __commonJS({
|
|
|
13980
13980
|
}
|
|
13981
13981
|
cert = c.getCertificate(c, hint);
|
|
13982
13982
|
}
|
|
13983
|
-
var certList =
|
|
13983
|
+
var certList = forge3.util.createBuffer();
|
|
13984
13984
|
if (cert !== null) {
|
|
13985
13985
|
try {
|
|
13986
|
-
if (!
|
|
13986
|
+
if (!forge3.util.isArray(cert)) {
|
|
13987
13987
|
cert = [cert];
|
|
13988
13988
|
}
|
|
13989
13989
|
var asn1 = null;
|
|
13990
13990
|
for (var i = 0; i < cert.length; ++i) {
|
|
13991
|
-
var msg =
|
|
13991
|
+
var msg = forge3.pem.decode(cert[i])[0];
|
|
13992
13992
|
if (msg.type !== "CERTIFICATE" && msg.type !== "X509 CERTIFICATE" && msg.type !== "TRUSTED CERTIFICATE") {
|
|
13993
13993
|
var error = new Error('Could not convert certificate from PEM; PEM header type is not "CERTIFICATE", "X509 CERTIFICATE", or "TRUSTED CERTIFICATE".');
|
|
13994
13994
|
error.headerType = msg.type;
|
|
@@ -13997,15 +13997,15 @@ var require_tls = __commonJS({
|
|
|
13997
13997
|
if (msg.procType && msg.procType.type === "ENCRYPTED") {
|
|
13998
13998
|
throw new Error("Could not convert certificate from PEM; PEM is encrypted.");
|
|
13999
13999
|
}
|
|
14000
|
-
var der =
|
|
14000
|
+
var der = forge3.util.createBuffer(msg.body);
|
|
14001
14001
|
if (asn1 === null) {
|
|
14002
|
-
asn1 =
|
|
14002
|
+
asn1 = forge3.asn1.fromDer(der.bytes(), false);
|
|
14003
14003
|
}
|
|
14004
|
-
var certBuffer =
|
|
14004
|
+
var certBuffer = forge3.util.createBuffer();
|
|
14005
14005
|
writeVector(certBuffer, 3, der);
|
|
14006
14006
|
certList.putBuffer(certBuffer);
|
|
14007
14007
|
}
|
|
14008
|
-
cert =
|
|
14008
|
+
cert = forge3.pki.certificateFromAsn1(asn1);
|
|
14009
14009
|
if (client) {
|
|
14010
14010
|
c.session.clientCertificate = cert;
|
|
14011
14011
|
} else {
|
|
@@ -14024,23 +14024,23 @@ var require_tls = __commonJS({
|
|
|
14024
14024
|
}
|
|
14025
14025
|
}
|
|
14026
14026
|
var length = 3 + certList.length();
|
|
14027
|
-
var rval =
|
|
14027
|
+
var rval = forge3.util.createBuffer();
|
|
14028
14028
|
rval.putByte(tls.HandshakeType.certificate);
|
|
14029
14029
|
rval.putInt24(length);
|
|
14030
14030
|
writeVector(rval, 3, certList);
|
|
14031
14031
|
return rval;
|
|
14032
14032
|
};
|
|
14033
14033
|
tls.createClientKeyExchange = function(c) {
|
|
14034
|
-
var b =
|
|
14034
|
+
var b = forge3.util.createBuffer();
|
|
14035
14035
|
b.putByte(c.session.clientHelloVersion.major);
|
|
14036
14036
|
b.putByte(c.session.clientHelloVersion.minor);
|
|
14037
|
-
b.putBytes(
|
|
14037
|
+
b.putBytes(forge3.random.getBytes(46));
|
|
14038
14038
|
var sp = c.session.sp;
|
|
14039
14039
|
sp.pre_master_secret = b.getBytes();
|
|
14040
14040
|
var key2 = c.session.serverCertificate.publicKey;
|
|
14041
14041
|
b = key2.encrypt(sp.pre_master_secret);
|
|
14042
14042
|
var length = b.length + 2;
|
|
14043
|
-
var rval =
|
|
14043
|
+
var rval = forge3.util.createBuffer();
|
|
14044
14044
|
rval.putByte(tls.HandshakeType.client_key_exchange);
|
|
14045
14045
|
rval.putInt24(length);
|
|
14046
14046
|
rval.putInt16(b.length);
|
|
@@ -14048,11 +14048,11 @@ var require_tls = __commonJS({
|
|
|
14048
14048
|
return rval;
|
|
14049
14049
|
};
|
|
14050
14050
|
tls.createServerKeyExchange = function(c) {
|
|
14051
|
-
var rval =
|
|
14051
|
+
var rval = forge3.util.createBuffer();
|
|
14052
14052
|
return rval;
|
|
14053
14053
|
};
|
|
14054
14054
|
tls.getClientSignature = function(c, callback) {
|
|
14055
|
-
var b =
|
|
14055
|
+
var b = forge3.util.createBuffer();
|
|
14056
14056
|
b.putBuffer(c.session.md5.digest());
|
|
14057
14057
|
b.putBuffer(c.session.sha1.digest());
|
|
14058
14058
|
b = b.getBytes();
|
|
@@ -14061,7 +14061,7 @@ var require_tls = __commonJS({
|
|
|
14061
14061
|
if (c2.getPrivateKey) {
|
|
14062
14062
|
try {
|
|
14063
14063
|
privateKey = c2.getPrivateKey(c2, c2.session.clientCertificate);
|
|
14064
|
-
privateKey =
|
|
14064
|
+
privateKey = forge3.pki.privateKeyFromPem(privateKey);
|
|
14065
14065
|
} catch (ex) {
|
|
14066
14066
|
c2.error(c2, {
|
|
14067
14067
|
message: "Could not get private key.",
|
|
@@ -14092,7 +14092,7 @@ var require_tls = __commonJS({
|
|
|
14092
14092
|
};
|
|
14093
14093
|
tls.createCertificateVerify = function(c, signature) {
|
|
14094
14094
|
var length = signature.length + 2;
|
|
14095
|
-
var rval =
|
|
14095
|
+
var rval = forge3.util.createBuffer();
|
|
14096
14096
|
rval.putByte(tls.HandshakeType.certificate_verify);
|
|
14097
14097
|
rval.putInt24(length);
|
|
14098
14098
|
rval.putInt16(signature.length);
|
|
@@ -14100,18 +14100,18 @@ var require_tls = __commonJS({
|
|
|
14100
14100
|
return rval;
|
|
14101
14101
|
};
|
|
14102
14102
|
tls.createCertificateRequest = function(c) {
|
|
14103
|
-
var certTypes =
|
|
14103
|
+
var certTypes = forge3.util.createBuffer();
|
|
14104
14104
|
certTypes.putByte(1);
|
|
14105
|
-
var cAs =
|
|
14105
|
+
var cAs = forge3.util.createBuffer();
|
|
14106
14106
|
for (var key2 in c.caStore.certs) {
|
|
14107
14107
|
var cert = c.caStore.certs[key2];
|
|
14108
|
-
var dn =
|
|
14109
|
-
var byteBuffer =
|
|
14108
|
+
var dn = forge3.pki.distinguishedNameToAsn1(cert.subject);
|
|
14109
|
+
var byteBuffer = forge3.asn1.toDer(dn);
|
|
14110
14110
|
cAs.putInt16(byteBuffer.length());
|
|
14111
14111
|
cAs.putBuffer(byteBuffer);
|
|
14112
14112
|
}
|
|
14113
14113
|
var length = 1 + certTypes.length() + 2 + cAs.length();
|
|
14114
|
-
var rval =
|
|
14114
|
+
var rval = forge3.util.createBuffer();
|
|
14115
14115
|
rval.putByte(tls.HandshakeType.certificate_request);
|
|
14116
14116
|
rval.putInt24(length);
|
|
14117
14117
|
writeVector(rval, 1, certTypes);
|
|
@@ -14119,18 +14119,18 @@ var require_tls = __commonJS({
|
|
|
14119
14119
|
return rval;
|
|
14120
14120
|
};
|
|
14121
14121
|
tls.createServerHelloDone = function(c) {
|
|
14122
|
-
var rval =
|
|
14122
|
+
var rval = forge3.util.createBuffer();
|
|
14123
14123
|
rval.putByte(tls.HandshakeType.server_hello_done);
|
|
14124
14124
|
rval.putInt24(0);
|
|
14125
14125
|
return rval;
|
|
14126
14126
|
};
|
|
14127
14127
|
tls.createChangeCipherSpec = function() {
|
|
14128
|
-
var rval =
|
|
14128
|
+
var rval = forge3.util.createBuffer();
|
|
14129
14129
|
rval.putByte(1);
|
|
14130
14130
|
return rval;
|
|
14131
14131
|
};
|
|
14132
14132
|
tls.createFinished = function(c) {
|
|
14133
|
-
var b =
|
|
14133
|
+
var b = forge3.util.createBuffer();
|
|
14134
14134
|
b.putBuffer(c.session.md5.digest());
|
|
14135
14135
|
b.putBuffer(c.session.sha1.digest());
|
|
14136
14136
|
var client = c.entity === tls.ConnectionEnd.client;
|
|
@@ -14139,7 +14139,7 @@ var require_tls = __commonJS({
|
|
|
14139
14139
|
var prf = prf_TLS1;
|
|
14140
14140
|
var label = client ? "client finished" : "server finished";
|
|
14141
14141
|
b = prf(sp.master_secret, label, b.getBytes(), vdl);
|
|
14142
|
-
var rval =
|
|
14142
|
+
var rval = forge3.util.createBuffer();
|
|
14143
14143
|
rval.putByte(tls.HandshakeType.finished);
|
|
14144
14144
|
rval.putInt24(b.length());
|
|
14145
14145
|
rval.putBuffer(b);
|
|
@@ -14149,13 +14149,13 @@ var require_tls = __commonJS({
|
|
|
14149
14149
|
if (typeof payloadLength === "undefined") {
|
|
14150
14150
|
payloadLength = payload.length;
|
|
14151
14151
|
}
|
|
14152
|
-
var rval =
|
|
14152
|
+
var rval = forge3.util.createBuffer();
|
|
14153
14153
|
rval.putByte(type);
|
|
14154
14154
|
rval.putInt16(payloadLength);
|
|
14155
14155
|
rval.putBytes(payload);
|
|
14156
14156
|
var plaintextLength = rval.length();
|
|
14157
14157
|
var paddingLength = Math.max(16, plaintextLength - payloadLength - 3);
|
|
14158
|
-
rval.putBytes(
|
|
14158
|
+
rval.putBytes(forge3.random.getBytes(paddingLength));
|
|
14159
14159
|
return rval;
|
|
14160
14160
|
};
|
|
14161
14161
|
tls.queue = function(c, record) {
|
|
@@ -14182,14 +14182,14 @@ var require_tls = __commonJS({
|
|
|
14182
14182
|
while (data.length > tls.MaxFragment) {
|
|
14183
14183
|
records.push(tls.createRecord(c, {
|
|
14184
14184
|
type: record.type,
|
|
14185
|
-
data:
|
|
14185
|
+
data: forge3.util.createBuffer(data.slice(0, tls.MaxFragment))
|
|
14186
14186
|
}));
|
|
14187
14187
|
data = data.slice(tls.MaxFragment);
|
|
14188
14188
|
}
|
|
14189
14189
|
if (data.length > 0) {
|
|
14190
14190
|
records.push(tls.createRecord(c, {
|
|
14191
14191
|
type: record.type,
|
|
14192
|
-
data:
|
|
14192
|
+
data: forge3.util.createBuffer(data)
|
|
14193
14193
|
}));
|
|
14194
14194
|
}
|
|
14195
14195
|
}
|
|
@@ -14217,17 +14217,17 @@ var require_tls = __commonJS({
|
|
|
14217
14217
|
switch (error) {
|
|
14218
14218
|
case true:
|
|
14219
14219
|
return true;
|
|
14220
|
-
case
|
|
14220
|
+
case forge3.pki.certificateError.bad_certificate:
|
|
14221
14221
|
return tls.Alert.Description.bad_certificate;
|
|
14222
|
-
case
|
|
14222
|
+
case forge3.pki.certificateError.unsupported_certificate:
|
|
14223
14223
|
return tls.Alert.Description.unsupported_certificate;
|
|
14224
|
-
case
|
|
14224
|
+
case forge3.pki.certificateError.certificate_revoked:
|
|
14225
14225
|
return tls.Alert.Description.certificate_revoked;
|
|
14226
|
-
case
|
|
14226
|
+
case forge3.pki.certificateError.certificate_expired:
|
|
14227
14227
|
return tls.Alert.Description.certificate_expired;
|
|
14228
|
-
case
|
|
14228
|
+
case forge3.pki.certificateError.certificate_unknown:
|
|
14229
14229
|
return tls.Alert.Description.certificate_unknown;
|
|
14230
|
-
case
|
|
14230
|
+
case forge3.pki.certificateError.unknown_ca:
|
|
14231
14231
|
return tls.Alert.Description.unknown_ca;
|
|
14232
14232
|
default:
|
|
14233
14233
|
return tls.Alert.Description.bad_certificate;
|
|
@@ -14238,19 +14238,19 @@ var require_tls = __commonJS({
|
|
|
14238
14238
|
case true:
|
|
14239
14239
|
return true;
|
|
14240
14240
|
case tls.Alert.Description.bad_certificate:
|
|
14241
|
-
return
|
|
14241
|
+
return forge3.pki.certificateError.bad_certificate;
|
|
14242
14242
|
case tls.Alert.Description.unsupported_certificate:
|
|
14243
|
-
return
|
|
14243
|
+
return forge3.pki.certificateError.unsupported_certificate;
|
|
14244
14244
|
case tls.Alert.Description.certificate_revoked:
|
|
14245
|
-
return
|
|
14245
|
+
return forge3.pki.certificateError.certificate_revoked;
|
|
14246
14246
|
case tls.Alert.Description.certificate_expired:
|
|
14247
|
-
return
|
|
14247
|
+
return forge3.pki.certificateError.certificate_expired;
|
|
14248
14248
|
case tls.Alert.Description.certificate_unknown:
|
|
14249
|
-
return
|
|
14249
|
+
return forge3.pki.certificateError.certificate_unknown;
|
|
14250
14250
|
case tls.Alert.Description.unknown_ca:
|
|
14251
|
-
return
|
|
14251
|
+
return forge3.pki.certificateError.unknown_ca;
|
|
14252
14252
|
default:
|
|
14253
|
-
return
|
|
14253
|
+
return forge3.pki.certificateError.bad_certificate;
|
|
14254
14254
|
}
|
|
14255
14255
|
};
|
|
14256
14256
|
tls.verifyCertificateChain = function(c, chain) {
|
|
@@ -14263,7 +14263,7 @@ var require_tls = __commonJS({
|
|
|
14263
14263
|
var desc = _certErrorToAlertDesc(vfd);
|
|
14264
14264
|
var ret = c.verify(c, vfd, depth, chain2);
|
|
14265
14265
|
if (ret !== true) {
|
|
14266
|
-
if (typeof ret === "object" && !
|
|
14266
|
+
if (typeof ret === "object" && !forge3.util.isArray(ret)) {
|
|
14267
14267
|
var error = new Error("The application rejected the certificate.");
|
|
14268
14268
|
error.send = true;
|
|
14269
14269
|
error.alert = {
|
|
@@ -14284,10 +14284,10 @@ var require_tls = __commonJS({
|
|
|
14284
14284
|
}
|
|
14285
14285
|
return ret;
|
|
14286
14286
|
};
|
|
14287
|
-
|
|
14287
|
+
forge3.pki.verifyCertificateChain(c.caStore, chain, options);
|
|
14288
14288
|
} catch (ex) {
|
|
14289
14289
|
var err = ex;
|
|
14290
|
-
if (typeof err !== "object" ||
|
|
14290
|
+
if (typeof err !== "object" || forge3.util.isArray(err)) {
|
|
14291
14291
|
err = {
|
|
14292
14292
|
send: true,
|
|
14293
14293
|
alert: {
|
|
@@ -14329,7 +14329,7 @@ var require_tls = __commonJS({
|
|
|
14329
14329
|
var session = null;
|
|
14330
14330
|
var key3 = null;
|
|
14331
14331
|
if (sessionId) {
|
|
14332
|
-
key3 =
|
|
14332
|
+
key3 = forge3.util.bytesToHex(sessionId);
|
|
14333
14333
|
} else if (rval.order.length > 0) {
|
|
14334
14334
|
key3 = rval.order[0];
|
|
14335
14335
|
}
|
|
@@ -14350,7 +14350,7 @@ var require_tls = __commonJS({
|
|
|
14350
14350
|
var key3 = rval.order.shift();
|
|
14351
14351
|
delete rval.cache[key3];
|
|
14352
14352
|
}
|
|
14353
|
-
var key3 =
|
|
14353
|
+
var key3 = forge3.util.bytesToHex(sessionId);
|
|
14354
14354
|
rval.order.push(key3);
|
|
14355
14355
|
rval.cache[key3] = session;
|
|
14356
14356
|
};
|
|
@@ -14360,13 +14360,13 @@ var require_tls = __commonJS({
|
|
|
14360
14360
|
tls.createConnection = function(options) {
|
|
14361
14361
|
var caStore = null;
|
|
14362
14362
|
if (options.caStore) {
|
|
14363
|
-
if (
|
|
14364
|
-
caStore =
|
|
14363
|
+
if (forge3.util.isArray(options.caStore)) {
|
|
14364
|
+
caStore = forge3.pki.createCaStore(options.caStore);
|
|
14365
14365
|
} else {
|
|
14366
14366
|
caStore = options.caStore;
|
|
14367
14367
|
}
|
|
14368
14368
|
} else {
|
|
14369
|
-
caStore =
|
|
14369
|
+
caStore = forge3.pki.createCaStore();
|
|
14370
14370
|
}
|
|
14371
14371
|
var cipherSuites = options.cipherSuites || null;
|
|
14372
14372
|
if (cipherSuites === null) {
|
|
@@ -14394,9 +14394,9 @@ var require_tls = __commonJS({
|
|
|
14394
14394
|
getCertificate: options.getCertificate || null,
|
|
14395
14395
|
getPrivateKey: options.getPrivateKey || null,
|
|
14396
14396
|
getSignature: options.getSignature || null,
|
|
14397
|
-
input:
|
|
14398
|
-
tlsData:
|
|
14399
|
-
data:
|
|
14397
|
+
input: forge3.util.createBuffer(),
|
|
14398
|
+
tlsData: forge3.util.createBuffer(),
|
|
14399
|
+
data: forge3.util.createBuffer(),
|
|
14400
14400
|
tlsDataReady: options.tlsDataReady,
|
|
14401
14401
|
dataReady: options.dataReady,
|
|
14402
14402
|
heartbeatReceived: options.heartbeatReceived,
|
|
@@ -14465,7 +14465,7 @@ var require_tls = __commonJS({
|
|
|
14465
14465
|
minor: b.getByte()
|
|
14466
14466
|
},
|
|
14467
14467
|
length: b.getInt16(),
|
|
14468
|
-
fragment:
|
|
14468
|
+
fragment: forge3.util.createBuffer(),
|
|
14469
14469
|
ready: false
|
|
14470
14470
|
};
|
|
14471
14471
|
var compatibleVersion = c2.record.version.major === c2.version.major;
|
|
@@ -14557,8 +14557,8 @@ var require_tls = __commonJS({
|
|
|
14557
14557
|
certificateRequest: null,
|
|
14558
14558
|
clientCertificate: null,
|
|
14559
14559
|
sp: {},
|
|
14560
|
-
md5:
|
|
14561
|
-
sha1:
|
|
14560
|
+
md5: forge3.md.md5.create(),
|
|
14561
|
+
sha1: forge3.md.sha1.create()
|
|
14562
14562
|
};
|
|
14563
14563
|
if (session) {
|
|
14564
14564
|
c.version = session.version;
|
|
@@ -14597,12 +14597,12 @@ var require_tls = __commonJS({
|
|
|
14597
14597
|
c.prepare = function(data) {
|
|
14598
14598
|
tls.queue(c, tls.createRecord(c, {
|
|
14599
14599
|
type: tls.ContentType.application_data,
|
|
14600
|
-
data:
|
|
14600
|
+
data: forge3.util.createBuffer(data)
|
|
14601
14601
|
}));
|
|
14602
14602
|
return tls.flush(c);
|
|
14603
14603
|
};
|
|
14604
14604
|
c.prepareHeartbeatRequest = function(payload, payloadLength) {
|
|
14605
|
-
if (payload instanceof
|
|
14605
|
+
if (payload instanceof forge3.util.ByteBuffer) {
|
|
14606
14606
|
payload = payload.bytes();
|
|
14607
14607
|
}
|
|
14608
14608
|
if (typeof payloadLength === "undefined") {
|
|
@@ -14646,27 +14646,27 @@ var require_tls = __commonJS({
|
|
|
14646
14646
|
};
|
|
14647
14647
|
return c;
|
|
14648
14648
|
};
|
|
14649
|
-
module.exports =
|
|
14649
|
+
module.exports = forge3.tls = forge3.tls || {};
|
|
14650
14650
|
for (key in tls) {
|
|
14651
14651
|
if (typeof tls[key] !== "function") {
|
|
14652
|
-
|
|
14652
|
+
forge3.tls[key] = tls[key];
|
|
14653
14653
|
}
|
|
14654
14654
|
}
|
|
14655
14655
|
var key;
|
|
14656
|
-
|
|
14657
|
-
|
|
14658
|
-
|
|
14659
|
-
|
|
14656
|
+
forge3.tls.prf_tls1 = prf_TLS1;
|
|
14657
|
+
forge3.tls.hmac_sha1 = hmac_sha1;
|
|
14658
|
+
forge3.tls.createSessionCache = tls.createSessionCache;
|
|
14659
|
+
forge3.tls.createConnection = tls.createConnection;
|
|
14660
14660
|
}
|
|
14661
14661
|
});
|
|
14662
14662
|
|
|
14663
14663
|
// ../../node_modules/node-forge/lib/aesCipherSuites.js
|
|
14664
14664
|
var require_aesCipherSuites = __commonJS({
|
|
14665
14665
|
"../../node_modules/node-forge/lib/aesCipherSuites.js"(exports$1, module) {
|
|
14666
|
-
var
|
|
14666
|
+
var forge3 = require_forge();
|
|
14667
14667
|
require_aes();
|
|
14668
14668
|
require_tls();
|
|
14669
|
-
var tls = module.exports =
|
|
14669
|
+
var tls = module.exports = forge3.tls;
|
|
14670
14670
|
tls.CipherSuites["TLS_RSA_WITH_AES_128_CBC_SHA"] = {
|
|
14671
14671
|
id: [0, 47],
|
|
14672
14672
|
name: "TLS_RSA_WITH_AES_128_CBC_SHA",
|
|
@@ -14700,15 +14700,15 @@ var require_aesCipherSuites = __commonJS({
|
|
|
14700
14700
|
initConnectionState
|
|
14701
14701
|
};
|
|
14702
14702
|
function initConnectionState(state, c, sp) {
|
|
14703
|
-
var client = c.entity ===
|
|
14703
|
+
var client = c.entity === forge3.tls.ConnectionEnd.client;
|
|
14704
14704
|
state.read.cipherState = {
|
|
14705
14705
|
init: false,
|
|
14706
|
-
cipher:
|
|
14706
|
+
cipher: forge3.cipher.createDecipher("AES-CBC", client ? sp.keys.server_write_key : sp.keys.client_write_key),
|
|
14707
14707
|
iv: client ? sp.keys.server_write_IV : sp.keys.client_write_IV
|
|
14708
14708
|
};
|
|
14709
14709
|
state.write.cipherState = {
|
|
14710
14710
|
init: false,
|
|
14711
|
-
cipher:
|
|
14711
|
+
cipher: forge3.cipher.createCipher("AES-CBC", client ? sp.keys.client_write_key : sp.keys.server_write_key),
|
|
14712
14712
|
iv: client ? sp.keys.client_write_IV : sp.keys.server_write_IV
|
|
14713
14713
|
};
|
|
14714
14714
|
state.read.cipherFunction = decrypt_aes_cbc_sha1;
|
|
@@ -14725,7 +14725,7 @@ var require_aesCipherSuites = __commonJS({
|
|
|
14725
14725
|
if (record.version.minor === tls.Versions.TLS_1_0.minor) {
|
|
14726
14726
|
iv = s.cipherState.init ? null : s.cipherState.iv;
|
|
14727
14727
|
} else {
|
|
14728
|
-
iv =
|
|
14728
|
+
iv = forge3.random.getBytesSync(16);
|
|
14729
14729
|
}
|
|
14730
14730
|
s.cipherState.init = true;
|
|
14731
14731
|
var cipher = s.cipherState.cipher;
|
|
@@ -14776,7 +14776,7 @@ var require_aesCipherSuites = __commonJS({
|
|
|
14776
14776
|
cipher.update(record.fragment);
|
|
14777
14777
|
rval = cipher.finish(decrypt_aes_cbc_sha1_padding);
|
|
14778
14778
|
var macLen = s.macLength;
|
|
14779
|
-
var mac =
|
|
14779
|
+
var mac = forge3.random.getBytesSync(macLen);
|
|
14780
14780
|
var len = cipher.output.length();
|
|
14781
14781
|
if (len >= macLen) {
|
|
14782
14782
|
record.fragment = cipher.output.getBytes(len - macLen);
|
|
@@ -14784,7 +14784,7 @@ var require_aesCipherSuites = __commonJS({
|
|
|
14784
14784
|
} else {
|
|
14785
14785
|
record.fragment = cipher.output.getBytes();
|
|
14786
14786
|
}
|
|
14787
|
-
record.fragment =
|
|
14787
|
+
record.fragment = forge3.util.createBuffer(record.fragment);
|
|
14788
14788
|
record.length = record.fragment.length();
|
|
14789
14789
|
var mac2 = s.macFunction(s.macKey, s.sequenceNumber, record);
|
|
14790
14790
|
s.updateSequenceNumber();
|
|
@@ -14792,7 +14792,7 @@ var require_aesCipherSuites = __commonJS({
|
|
|
14792
14792
|
return rval;
|
|
14793
14793
|
}
|
|
14794
14794
|
function compareMacs(key, mac1, mac2) {
|
|
14795
|
-
var hmac =
|
|
14795
|
+
var hmac = forge3.hmac.create();
|
|
14796
14796
|
hmac.start("SHA1", key);
|
|
14797
14797
|
hmac.update(mac1);
|
|
14798
14798
|
mac1 = hmac.digest().getBytes();
|
|
@@ -14807,28 +14807,28 @@ var require_aesCipherSuites = __commonJS({
|
|
|
14807
14807
|
// ../../node_modules/node-forge/lib/sha512.js
|
|
14808
14808
|
var require_sha512 = __commonJS({
|
|
14809
14809
|
"../../node_modules/node-forge/lib/sha512.js"(exports$1, module) {
|
|
14810
|
-
var
|
|
14810
|
+
var forge3 = require_forge();
|
|
14811
14811
|
require_md();
|
|
14812
14812
|
require_util();
|
|
14813
|
-
var sha512 = module.exports =
|
|
14814
|
-
|
|
14815
|
-
var sha384 =
|
|
14813
|
+
var sha512 = module.exports = forge3.sha512 = forge3.sha512 || {};
|
|
14814
|
+
forge3.md.sha512 = forge3.md.algorithms.sha512 = sha512;
|
|
14815
|
+
var sha384 = forge3.sha384 = forge3.sha512.sha384 = forge3.sha512.sha384 || {};
|
|
14816
14816
|
sha384.create = function() {
|
|
14817
14817
|
return sha512.create("SHA-384");
|
|
14818
14818
|
};
|
|
14819
|
-
|
|
14820
|
-
|
|
14819
|
+
forge3.md.sha384 = forge3.md.algorithms.sha384 = sha384;
|
|
14820
|
+
forge3.sha512.sha256 = forge3.sha512.sha256 || {
|
|
14821
14821
|
create: function() {
|
|
14822
14822
|
return sha512.create("SHA-512/256");
|
|
14823
14823
|
}
|
|
14824
14824
|
};
|
|
14825
|
-
|
|
14826
|
-
|
|
14825
|
+
forge3.md["sha512/256"] = forge3.md.algorithms["sha512/256"] = forge3.sha512.sha256;
|
|
14826
|
+
forge3.sha512.sha224 = forge3.sha512.sha224 || {
|
|
14827
14827
|
create: function() {
|
|
14828
14828
|
return sha512.create("SHA-512/224");
|
|
14829
14829
|
}
|
|
14830
14830
|
};
|
|
14831
|
-
|
|
14831
|
+
forge3.md["sha512/224"] = forge3.md.algorithms["sha512/224"] = forge3.sha512.sha224;
|
|
14832
14832
|
sha512.create = function(algorithm) {
|
|
14833
14833
|
if (!_initialized) {
|
|
14834
14834
|
_init();
|
|
@@ -14841,7 +14841,7 @@ var require_sha512 = __commonJS({
|
|
|
14841
14841
|
}
|
|
14842
14842
|
var _state = _states[algorithm];
|
|
14843
14843
|
var _h = null;
|
|
14844
|
-
var _input =
|
|
14844
|
+
var _input = forge3.util.createBuffer();
|
|
14845
14845
|
var _w = new Array(80);
|
|
14846
14846
|
for (var wi = 0; wi < 80; ++wi) {
|
|
14847
14847
|
_w[wi] = new Array(2);
|
|
@@ -14877,7 +14877,7 @@ var require_sha512 = __commonJS({
|
|
|
14877
14877
|
for (var i = 0; i < int32s; ++i) {
|
|
14878
14878
|
md.fullMessageLength.push(0);
|
|
14879
14879
|
}
|
|
14880
|
-
_input =
|
|
14880
|
+
_input = forge3.util.createBuffer();
|
|
14881
14881
|
_h = new Array(_state.length);
|
|
14882
14882
|
for (var i = 0; i < _state.length; ++i) {
|
|
14883
14883
|
_h[i] = _state[i].slice(0);
|
|
@@ -14887,7 +14887,7 @@ var require_sha512 = __commonJS({
|
|
|
14887
14887
|
md.start();
|
|
14888
14888
|
md.update = function(msg, encoding) {
|
|
14889
14889
|
if (encoding === "utf8") {
|
|
14890
|
-
msg =
|
|
14890
|
+
msg = forge3.util.encodeUtf8(msg);
|
|
14891
14891
|
}
|
|
14892
14892
|
var len = msg.length;
|
|
14893
14893
|
md.messageLength += len;
|
|
@@ -14906,7 +14906,7 @@ var require_sha512 = __commonJS({
|
|
|
14906
14906
|
return md;
|
|
14907
14907
|
};
|
|
14908
14908
|
md.digest = function() {
|
|
14909
|
-
var finalBlock =
|
|
14909
|
+
var finalBlock = forge3.util.createBuffer();
|
|
14910
14910
|
finalBlock.putBytes(_input.bytes());
|
|
14911
14911
|
var remaining = md.fullMessageLength[md.fullMessageLength.length - 1] + md.messageLengthSize;
|
|
14912
14912
|
var overflow = remaining & md.blockLength - 1;
|
|
@@ -14926,7 +14926,7 @@ var require_sha512 = __commonJS({
|
|
|
14926
14926
|
h[i] = _h[i].slice(0);
|
|
14927
14927
|
}
|
|
14928
14928
|
_update(h, _w, finalBlock);
|
|
14929
|
-
var rval =
|
|
14929
|
+
var rval = forge3.util.createBuffer();
|
|
14930
14930
|
var hlen;
|
|
14931
14931
|
if (algorithm === "SHA-512") {
|
|
14932
14932
|
hlen = h.length;
|
|
@@ -14951,7 +14951,7 @@ var require_sha512 = __commonJS({
|
|
|
14951
14951
|
var _states = null;
|
|
14952
14952
|
function _init() {
|
|
14953
14953
|
_padding = String.fromCharCode(128);
|
|
14954
|
-
_padding +=
|
|
14954
|
+
_padding += forge3.util.fillString(String.fromCharCode(0), 128);
|
|
14955
14955
|
_k = [
|
|
14956
14956
|
[1116352408, 3609767458],
|
|
14957
14957
|
[1899447441, 602891725],
|
|
@@ -15215,9 +15215,9 @@ var require_sha512 = __commonJS({
|
|
|
15215
15215
|
// ../../node_modules/node-forge/lib/asn1-validator.js
|
|
15216
15216
|
var require_asn1_validator = __commonJS({
|
|
15217
15217
|
"../../node_modules/node-forge/lib/asn1-validator.js"(exports$1) {
|
|
15218
|
-
var
|
|
15218
|
+
var forge3 = require_forge();
|
|
15219
15219
|
require_asn1();
|
|
15220
|
-
var asn1 =
|
|
15220
|
+
var asn1 = forge3.asn1;
|
|
15221
15221
|
exports$1.privateKeyValidator = {
|
|
15222
15222
|
// PrivateKeyInfo
|
|
15223
15223
|
name: "PrivateKeyInfo",
|
|
@@ -15307,7 +15307,7 @@ var require_asn1_validator = __commonJS({
|
|
|
15307
15307
|
// ../../node_modules/node-forge/lib/ed25519.js
|
|
15308
15308
|
var require_ed25519 = __commonJS({
|
|
15309
15309
|
"../../node_modules/node-forge/lib/ed25519.js"(exports$1, module) {
|
|
15310
|
-
var
|
|
15310
|
+
var forge3 = require_forge();
|
|
15311
15311
|
require_jsbn();
|
|
15312
15312
|
require_random();
|
|
15313
15313
|
require_sha512();
|
|
@@ -15316,14 +15316,14 @@ var require_ed25519 = __commonJS({
|
|
|
15316
15316
|
var publicKeyValidator = asn1Validator.publicKeyValidator;
|
|
15317
15317
|
var privateKeyValidator = asn1Validator.privateKeyValidator;
|
|
15318
15318
|
if (typeof BigInteger === "undefined") {
|
|
15319
|
-
BigInteger =
|
|
15319
|
+
BigInteger = forge3.jsbn.BigInteger;
|
|
15320
15320
|
}
|
|
15321
15321
|
var BigInteger;
|
|
15322
|
-
var ByteBuffer =
|
|
15322
|
+
var ByteBuffer = forge3.util.ByteBuffer;
|
|
15323
15323
|
var NativeBuffer = typeof Buffer === "undefined" ? Uint8Array : Buffer;
|
|
15324
|
-
|
|
15325
|
-
module.exports =
|
|
15326
|
-
var ed25519 =
|
|
15324
|
+
forge3.pki = forge3.pki || {};
|
|
15325
|
+
module.exports = forge3.pki.ed25519 = forge3.ed25519 = forge3.ed25519 || {};
|
|
15326
|
+
var ed25519 = forge3.ed25519;
|
|
15327
15327
|
ed25519.constants = {};
|
|
15328
15328
|
ed25519.constants.PUBLIC_KEY_BYTE_LENGTH = 32;
|
|
15329
15329
|
ed25519.constants.PRIVATE_KEY_BYTE_LENGTH = 64;
|
|
@@ -15334,7 +15334,7 @@ var require_ed25519 = __commonJS({
|
|
|
15334
15334
|
options = options || {};
|
|
15335
15335
|
var seed = options.seed;
|
|
15336
15336
|
if (seed === void 0) {
|
|
15337
|
-
seed =
|
|
15337
|
+
seed = forge3.random.getBytesSync(ed25519.constants.SEED_BYTE_LENGTH);
|
|
15338
15338
|
} else if (typeof seed === "string") {
|
|
15339
15339
|
if (seed.length !== ed25519.constants.SEED_BYTE_LENGTH) {
|
|
15340
15340
|
throw new TypeError(
|
|
@@ -15358,20 +15358,20 @@ var require_ed25519 = __commonJS({
|
|
|
15358
15358
|
ed25519.privateKeyFromAsn1 = function(obj) {
|
|
15359
15359
|
var capture = {};
|
|
15360
15360
|
var errors = [];
|
|
15361
|
-
var valid =
|
|
15361
|
+
var valid = forge3.asn1.validate(obj, privateKeyValidator, capture, errors);
|
|
15362
15362
|
if (!valid) {
|
|
15363
15363
|
var error = new Error("Invalid Key.");
|
|
15364
15364
|
error.errors = errors;
|
|
15365
15365
|
throw error;
|
|
15366
15366
|
}
|
|
15367
|
-
var oid =
|
|
15368
|
-
var ed25519Oid =
|
|
15367
|
+
var oid = forge3.asn1.derToOid(capture.privateKeyOid);
|
|
15368
|
+
var ed25519Oid = forge3.oids.EdDSA25519;
|
|
15369
15369
|
if (oid !== ed25519Oid) {
|
|
15370
15370
|
throw new Error('Invalid OID "' + oid + '"; OID must be "' + ed25519Oid + '".');
|
|
15371
15371
|
}
|
|
15372
15372
|
var privateKey = capture.privateKey;
|
|
15373
15373
|
var privateKeyBytes = messageToNativeBuffer({
|
|
15374
|
-
message:
|
|
15374
|
+
message: forge3.asn1.fromDer(privateKey).value,
|
|
15375
15375
|
encoding: "binary"
|
|
15376
15376
|
});
|
|
15377
15377
|
return { privateKeyBytes };
|
|
@@ -15379,14 +15379,14 @@ var require_ed25519 = __commonJS({
|
|
|
15379
15379
|
ed25519.publicKeyFromAsn1 = function(obj) {
|
|
15380
15380
|
var capture = {};
|
|
15381
15381
|
var errors = [];
|
|
15382
|
-
var valid =
|
|
15382
|
+
var valid = forge3.asn1.validate(obj, publicKeyValidator, capture, errors);
|
|
15383
15383
|
if (!valid) {
|
|
15384
15384
|
var error = new Error("Invalid Key.");
|
|
15385
15385
|
error.errors = errors;
|
|
15386
15386
|
throw error;
|
|
15387
15387
|
}
|
|
15388
|
-
var oid =
|
|
15389
|
-
var ed25519Oid =
|
|
15388
|
+
var oid = forge3.asn1.derToOid(capture.publicKeyOid);
|
|
15389
|
+
var ed25519Oid = forge3.oids.EdDSA25519;
|
|
15390
15390
|
if (oid !== ed25519Oid) {
|
|
15391
15391
|
throw new Error('Invalid OID "' + oid + '"; OID must be "' + ed25519Oid + '".');
|
|
15392
15392
|
}
|
|
@@ -15638,7 +15638,7 @@ var require_ed25519 = __commonJS({
|
|
|
15638
15638
|
11139
|
|
15639
15639
|
]);
|
|
15640
15640
|
function sha512(msg, msgLen) {
|
|
15641
|
-
var md =
|
|
15641
|
+
var md = forge3.md.sha512.create();
|
|
15642
15642
|
var buffer = new ByteBuffer(msg);
|
|
15643
15643
|
md.update(buffer.getBytes(msgLen), "binary");
|
|
15644
15644
|
var hash = md.digest().getBytes();
|
|
@@ -16405,30 +16405,30 @@ var require_ed25519 = __commonJS({
|
|
|
16405
16405
|
// ../../node_modules/node-forge/lib/kem.js
|
|
16406
16406
|
var require_kem = __commonJS({
|
|
16407
16407
|
"../../node_modules/node-forge/lib/kem.js"(exports$1, module) {
|
|
16408
|
-
var
|
|
16408
|
+
var forge3 = require_forge();
|
|
16409
16409
|
require_util();
|
|
16410
16410
|
require_random();
|
|
16411
16411
|
require_jsbn();
|
|
16412
|
-
module.exports =
|
|
16413
|
-
var BigInteger =
|
|
16414
|
-
|
|
16415
|
-
|
|
16412
|
+
module.exports = forge3.kem = forge3.kem || {};
|
|
16413
|
+
var BigInteger = forge3.jsbn.BigInteger;
|
|
16414
|
+
forge3.kem.rsa = {};
|
|
16415
|
+
forge3.kem.rsa.create = function(kdf, options) {
|
|
16416
16416
|
options = options || {};
|
|
16417
|
-
var prng = options.prng ||
|
|
16417
|
+
var prng = options.prng || forge3.random;
|
|
16418
16418
|
var kem = {};
|
|
16419
16419
|
kem.encrypt = function(publicKey, keyLength) {
|
|
16420
16420
|
var byteLength = Math.ceil(publicKey.n.bitLength() / 8);
|
|
16421
16421
|
var r;
|
|
16422
16422
|
do {
|
|
16423
16423
|
r = new BigInteger(
|
|
16424
|
-
|
|
16424
|
+
forge3.util.bytesToHex(prng.getBytesSync(byteLength)),
|
|
16425
16425
|
16
|
|
16426
16426
|
).mod(publicKey.n);
|
|
16427
16427
|
} while (r.compareTo(BigInteger.ONE) <= 0);
|
|
16428
|
-
r =
|
|
16428
|
+
r = forge3.util.hexToBytes(r.toString(16));
|
|
16429
16429
|
var zeros = byteLength - r.length;
|
|
16430
16430
|
if (zeros > 0) {
|
|
16431
|
-
r =
|
|
16431
|
+
r = forge3.util.fillString(String.fromCharCode(0), zeros) + r;
|
|
16432
16432
|
}
|
|
16433
16433
|
var encapsulation = publicKey.encrypt(r, "NONE");
|
|
16434
16434
|
var key = kdf.generate(r, keyLength);
|
|
@@ -16440,17 +16440,17 @@ var require_kem = __commonJS({
|
|
|
16440
16440
|
};
|
|
16441
16441
|
return kem;
|
|
16442
16442
|
};
|
|
16443
|
-
|
|
16443
|
+
forge3.kem.kdf1 = function(md, digestLength) {
|
|
16444
16444
|
_createKDF(this, md, 0, digestLength || md.digestLength);
|
|
16445
16445
|
};
|
|
16446
|
-
|
|
16446
|
+
forge3.kem.kdf2 = function(md, digestLength) {
|
|
16447
16447
|
_createKDF(this, md, 1, digestLength || md.digestLength);
|
|
16448
16448
|
};
|
|
16449
16449
|
function _createKDF(kdf, md, counterStart, digestLength) {
|
|
16450
16450
|
kdf.generate = function(x, length) {
|
|
16451
|
-
var key = new
|
|
16451
|
+
var key = new forge3.util.ByteBuffer();
|
|
16452
16452
|
var k = Math.ceil(length / digestLength) + counterStart;
|
|
16453
|
-
var c = new
|
|
16453
|
+
var c = new forge3.util.ByteBuffer();
|
|
16454
16454
|
for (var i = counterStart; i < k; ++i) {
|
|
16455
16455
|
c.putInt32(i);
|
|
16456
16456
|
md.start();
|
|
@@ -16468,10 +16468,10 @@ var require_kem = __commonJS({
|
|
|
16468
16468
|
// ../../node_modules/node-forge/lib/log.js
|
|
16469
16469
|
var require_log = __commonJS({
|
|
16470
16470
|
"../../node_modules/node-forge/lib/log.js"(exports$1, module) {
|
|
16471
|
-
var
|
|
16471
|
+
var forge3 = require_forge();
|
|
16472
16472
|
require_util();
|
|
16473
|
-
module.exports =
|
|
16474
|
-
|
|
16473
|
+
module.exports = forge3.log = forge3.log || {};
|
|
16474
|
+
forge3.log.levels = [
|
|
16475
16475
|
"none",
|
|
16476
16476
|
"error",
|
|
16477
16477
|
"warning",
|
|
@@ -16483,11 +16483,11 @@ var require_log = __commonJS({
|
|
|
16483
16483
|
var sLevelInfo = {};
|
|
16484
16484
|
var sLoggers = [];
|
|
16485
16485
|
var sConsoleLogger = null;
|
|
16486
|
-
|
|
16487
|
-
|
|
16488
|
-
|
|
16489
|
-
for (i = 0; i <
|
|
16490
|
-
level =
|
|
16486
|
+
forge3.log.LEVEL_LOCKED = 1 << 1;
|
|
16487
|
+
forge3.log.NO_LEVEL_CHECK = 1 << 2;
|
|
16488
|
+
forge3.log.INTERPOLATE = 1 << 3;
|
|
16489
|
+
for (i = 0; i < forge3.log.levels.length; ++i) {
|
|
16490
|
+
level = forge3.log.levels[i];
|
|
16491
16491
|
sLevelInfo[level] = {
|
|
16492
16492
|
index: i,
|
|
16493
16493
|
name: level.toUpperCase()
|
|
@@ -16495,11 +16495,11 @@ var require_log = __commonJS({
|
|
|
16495
16495
|
}
|
|
16496
16496
|
var level;
|
|
16497
16497
|
var i;
|
|
16498
|
-
|
|
16498
|
+
forge3.log.logMessage = function(message) {
|
|
16499
16499
|
var messageLevelIndex = sLevelInfo[message.level].index;
|
|
16500
16500
|
for (var i2 = 0; i2 < sLoggers.length; ++i2) {
|
|
16501
16501
|
var logger2 = sLoggers[i2];
|
|
16502
|
-
if (logger2.flags &
|
|
16502
|
+
if (logger2.flags & forge3.log.NO_LEVEL_CHECK) {
|
|
16503
16503
|
logger2.f(message);
|
|
16504
16504
|
} else {
|
|
16505
16505
|
var loggerLevelIndex = sLevelInfo[logger2.level].index;
|
|
@@ -16509,22 +16509,22 @@ var require_log = __commonJS({
|
|
|
16509
16509
|
}
|
|
16510
16510
|
}
|
|
16511
16511
|
};
|
|
16512
|
-
|
|
16512
|
+
forge3.log.prepareStandard = function(message) {
|
|
16513
16513
|
if (!("standard" in message)) {
|
|
16514
16514
|
message.standard = sLevelInfo[message.level].name + //' ' + +message.timestamp +
|
|
16515
16515
|
" [" + message.category + "] " + message.message;
|
|
16516
16516
|
}
|
|
16517
16517
|
};
|
|
16518
|
-
|
|
16518
|
+
forge3.log.prepareFull = function(message) {
|
|
16519
16519
|
if (!("full" in message)) {
|
|
16520
16520
|
var args = [message.message];
|
|
16521
16521
|
args = args.concat([]);
|
|
16522
|
-
message.full =
|
|
16522
|
+
message.full = forge3.util.format.apply(this, args);
|
|
16523
16523
|
}
|
|
16524
16524
|
};
|
|
16525
|
-
|
|
16525
|
+
forge3.log.prepareStandardFull = function(message) {
|
|
16526
16526
|
if (!("standardFull" in message)) {
|
|
16527
|
-
|
|
16527
|
+
forge3.log.prepareStandard(message);
|
|
16528
16528
|
message.standardFull = message.standard;
|
|
16529
16529
|
}
|
|
16530
16530
|
};
|
|
@@ -16532,7 +16532,7 @@ var require_log = __commonJS({
|
|
|
16532
16532
|
levels = ["error", "warning", "info", "debug", "verbose"];
|
|
16533
16533
|
for (i = 0; i < levels.length; ++i) {
|
|
16534
16534
|
(function(level2) {
|
|
16535
|
-
|
|
16535
|
+
forge3.log[level2] = function(category, message) {
|
|
16536
16536
|
var args = Array.prototype.slice.call(arguments).slice(2);
|
|
16537
16537
|
var msg = {
|
|
16538
16538
|
timestamp: /* @__PURE__ */ new Date(),
|
|
@@ -16544,26 +16544,26 @@ var require_log = __commonJS({
|
|
|
16544
16544
|
/*full*/
|
|
16545
16545
|
/*fullMessage*/
|
|
16546
16546
|
};
|
|
16547
|
-
|
|
16547
|
+
forge3.log.logMessage(msg);
|
|
16548
16548
|
};
|
|
16549
16549
|
})(levels[i]);
|
|
16550
16550
|
}
|
|
16551
16551
|
}
|
|
16552
16552
|
var levels;
|
|
16553
16553
|
var i;
|
|
16554
|
-
|
|
16554
|
+
forge3.log.makeLogger = function(logFunction) {
|
|
16555
16555
|
var logger2 = {
|
|
16556
16556
|
flags: 0,
|
|
16557
16557
|
f: logFunction
|
|
16558
16558
|
};
|
|
16559
|
-
|
|
16559
|
+
forge3.log.setLevel(logger2, "none");
|
|
16560
16560
|
return logger2;
|
|
16561
16561
|
};
|
|
16562
|
-
|
|
16562
|
+
forge3.log.setLevel = function(logger2, level2) {
|
|
16563
16563
|
var rval = false;
|
|
16564
|
-
if (logger2 && !(logger2.flags &
|
|
16565
|
-
for (var i2 = 0; i2 <
|
|
16566
|
-
var aValidLevel =
|
|
16564
|
+
if (logger2 && !(logger2.flags & forge3.log.LEVEL_LOCKED)) {
|
|
16565
|
+
for (var i2 = 0; i2 < forge3.log.levels.length; ++i2) {
|
|
16566
|
+
var aValidLevel = forge3.log.levels[i2];
|
|
16567
16567
|
if (level2 == aValidLevel) {
|
|
16568
16568
|
logger2.level = level2;
|
|
16569
16569
|
rval = true;
|
|
@@ -16573,14 +16573,14 @@ var require_log = __commonJS({
|
|
|
16573
16573
|
}
|
|
16574
16574
|
return rval;
|
|
16575
16575
|
};
|
|
16576
|
-
|
|
16576
|
+
forge3.log.lock = function(logger2, lock2) {
|
|
16577
16577
|
if (typeof lock2 === "undefined" || lock2) {
|
|
16578
|
-
logger2.flags |=
|
|
16578
|
+
logger2.flags |= forge3.log.LEVEL_LOCKED;
|
|
16579
16579
|
} else {
|
|
16580
|
-
logger2.flags &= ~
|
|
16580
|
+
logger2.flags &= ~forge3.log.LEVEL_LOCKED;
|
|
16581
16581
|
}
|
|
16582
16582
|
};
|
|
16583
|
-
|
|
16583
|
+
forge3.log.addLogger = function(logger2) {
|
|
16584
16584
|
sLoggers.push(logger2);
|
|
16585
16585
|
};
|
|
16586
16586
|
if (typeof console !== "undefined" && "log" in console) {
|
|
@@ -16593,22 +16593,22 @@ var require_log = __commonJS({
|
|
|
16593
16593
|
verbose: console.debug
|
|
16594
16594
|
};
|
|
16595
16595
|
f = function(logger2, message) {
|
|
16596
|
-
|
|
16596
|
+
forge3.log.prepareStandard(message);
|
|
16597
16597
|
var handler = levelHandlers[message.level];
|
|
16598
16598
|
var args = [message.standard];
|
|
16599
16599
|
args = args.concat(message["arguments"].slice());
|
|
16600
16600
|
handler.apply(console, args);
|
|
16601
16601
|
};
|
|
16602
|
-
logger =
|
|
16602
|
+
logger = forge3.log.makeLogger(f);
|
|
16603
16603
|
} else {
|
|
16604
16604
|
f = function(logger2, message) {
|
|
16605
|
-
|
|
16605
|
+
forge3.log.prepareStandardFull(message);
|
|
16606
16606
|
console.log(message.standardFull);
|
|
16607
16607
|
};
|
|
16608
|
-
logger =
|
|
16608
|
+
logger = forge3.log.makeLogger(f);
|
|
16609
16609
|
}
|
|
16610
|
-
|
|
16611
|
-
|
|
16610
|
+
forge3.log.setLevel(logger, "debug");
|
|
16611
|
+
forge3.log.addLogger(logger);
|
|
16612
16612
|
sConsoleLogger = logger;
|
|
16613
16613
|
} else {
|
|
16614
16614
|
console = {
|
|
@@ -16622,7 +16622,7 @@ var require_log = __commonJS({
|
|
|
16622
16622
|
if (sConsoleLogger !== null && typeof window !== "undefined" && window.location) {
|
|
16623
16623
|
query = new URL(window.location.href).searchParams;
|
|
16624
16624
|
if (query.has("console.level")) {
|
|
16625
|
-
|
|
16625
|
+
forge3.log.setLevel(
|
|
16626
16626
|
sConsoleLogger,
|
|
16627
16627
|
query.get("console.level").slice(-1)[0]
|
|
16628
16628
|
);
|
|
@@ -16630,13 +16630,13 @@ var require_log = __commonJS({
|
|
|
16630
16630
|
if (query.has("console.lock")) {
|
|
16631
16631
|
lock = query.get("console.lock").slice(-1)[0];
|
|
16632
16632
|
if (lock == "true") {
|
|
16633
|
-
|
|
16633
|
+
forge3.log.lock(sConsoleLogger);
|
|
16634
16634
|
}
|
|
16635
16635
|
}
|
|
16636
16636
|
}
|
|
16637
16637
|
var query;
|
|
16638
16638
|
var lock;
|
|
16639
|
-
|
|
16639
|
+
forge3.log.consoleLogger = sConsoleLogger;
|
|
16640
16640
|
}
|
|
16641
16641
|
});
|
|
16642
16642
|
|
|
@@ -16654,7 +16654,7 @@ var require_md_all = __commonJS({
|
|
|
16654
16654
|
// ../../node_modules/node-forge/lib/pkcs7.js
|
|
16655
16655
|
var require_pkcs7 = __commonJS({
|
|
16656
16656
|
"../../node_modules/node-forge/lib/pkcs7.js"(exports$1, module) {
|
|
16657
|
-
var
|
|
16657
|
+
var forge3 = require_forge();
|
|
16658
16658
|
require_aes();
|
|
16659
16659
|
require_asn1();
|
|
16660
16660
|
require_des();
|
|
@@ -16664,10 +16664,10 @@ var require_pkcs7 = __commonJS({
|
|
|
16664
16664
|
require_random();
|
|
16665
16665
|
require_util();
|
|
16666
16666
|
require_x509();
|
|
16667
|
-
var asn1 =
|
|
16668
|
-
var p7 = module.exports =
|
|
16667
|
+
var asn1 = forge3.asn1;
|
|
16668
|
+
var p7 = module.exports = forge3.pkcs7 = forge3.pkcs7 || {};
|
|
16669
16669
|
p7.messageFromPem = function(pem) {
|
|
16670
|
-
var msg =
|
|
16670
|
+
var msg = forge3.pem.decode(pem)[0];
|
|
16671
16671
|
if (msg.type !== "PKCS7") {
|
|
16672
16672
|
var error = new Error('Could not convert PKCS#7 message from PEM; PEM header type is not "PKCS#7".');
|
|
16673
16673
|
error.headerType = msg.type;
|
|
@@ -16684,7 +16684,7 @@ var require_pkcs7 = __commonJS({
|
|
|
16684
16684
|
type: "PKCS7",
|
|
16685
16685
|
body: asn1.toDer(msg.toAsn1()).getBytes()
|
|
16686
16686
|
};
|
|
16687
|
-
return
|
|
16687
|
+
return forge3.pem.encode(pemObj, { maxline });
|
|
16688
16688
|
};
|
|
16689
16689
|
p7.messageFromAsn1 = function(obj) {
|
|
16690
16690
|
var capture = {};
|
|
@@ -16697,13 +16697,13 @@ var require_pkcs7 = __commonJS({
|
|
|
16697
16697
|
var contentType = asn1.derToOid(capture.contentType);
|
|
16698
16698
|
var msg;
|
|
16699
16699
|
switch (contentType) {
|
|
16700
|
-
case
|
|
16700
|
+
case forge3.pki.oids.envelopedData:
|
|
16701
16701
|
msg = p7.createEnvelopedData();
|
|
16702
16702
|
break;
|
|
16703
|
-
case
|
|
16703
|
+
case forge3.pki.oids.encryptedData:
|
|
16704
16704
|
msg = p7.createEncryptedData();
|
|
16705
16705
|
break;
|
|
16706
|
-
case
|
|
16706
|
+
case forge3.pki.oids.signedData:
|
|
16707
16707
|
msg = p7.createSignedData();
|
|
16708
16708
|
break;
|
|
16709
16709
|
default:
|
|
@@ -16715,7 +16715,7 @@ var require_pkcs7 = __commonJS({
|
|
|
16715
16715
|
p7.createSignedData = function() {
|
|
16716
16716
|
var msg = null;
|
|
16717
16717
|
msg = {
|
|
16718
|
-
type:
|
|
16718
|
+
type: forge3.pki.oids.signedData,
|
|
16719
16719
|
version: 1,
|
|
16720
16720
|
certificates: [],
|
|
16721
16721
|
crls: [],
|
|
@@ -16735,7 +16735,7 @@ var require_pkcs7 = __commonJS({
|
|
|
16735
16735
|
if (msg.rawCapture.certificates) {
|
|
16736
16736
|
var certs = msg.rawCapture.certificates.value;
|
|
16737
16737
|
for (var i = 0; i < certs.length; ++i) {
|
|
16738
|
-
msg.certificates.push(
|
|
16738
|
+
msg.certificates.push(forge3.pki.certificateFromAsn1(certs[i]));
|
|
16739
16739
|
}
|
|
16740
16740
|
}
|
|
16741
16741
|
},
|
|
@@ -16745,7 +16745,7 @@ var require_pkcs7 = __commonJS({
|
|
|
16745
16745
|
}
|
|
16746
16746
|
var certs = [];
|
|
16747
16747
|
for (var i = 0; i < msg.certificates.length; ++i) {
|
|
16748
|
-
certs.push(
|
|
16748
|
+
certs.push(forge3.pki.certificateToAsn1(msg.certificates[i]));
|
|
16749
16749
|
}
|
|
16750
16750
|
var crls = [];
|
|
16751
16751
|
var signedData = asn1.create(asn1.Class.CONTEXT_SPECIFIC, 0, true, [
|
|
@@ -16849,7 +16849,7 @@ var require_pkcs7 = __commonJS({
|
|
|
16849
16849
|
if (signer.certificate) {
|
|
16850
16850
|
var cert = signer.certificate;
|
|
16851
16851
|
if (typeof cert === "string") {
|
|
16852
|
-
cert =
|
|
16852
|
+
cert = forge3.pki.certificateFromPem(cert);
|
|
16853
16853
|
}
|
|
16854
16854
|
issuer = cert.issuer.attributes;
|
|
16855
16855
|
serialNumber = cert.serialNumber;
|
|
@@ -16861,15 +16861,15 @@ var require_pkcs7 = __commonJS({
|
|
|
16861
16861
|
);
|
|
16862
16862
|
}
|
|
16863
16863
|
if (typeof key === "string") {
|
|
16864
|
-
key =
|
|
16864
|
+
key = forge3.pki.privateKeyFromPem(key);
|
|
16865
16865
|
}
|
|
16866
|
-
var digestAlgorithm = signer.digestAlgorithm ||
|
|
16866
|
+
var digestAlgorithm = signer.digestAlgorithm || forge3.pki.oids.sha1;
|
|
16867
16867
|
switch (digestAlgorithm) {
|
|
16868
|
-
case
|
|
16869
|
-
case
|
|
16870
|
-
case
|
|
16871
|
-
case
|
|
16872
|
-
case
|
|
16868
|
+
case forge3.pki.oids.sha1:
|
|
16869
|
+
case forge3.pki.oids.sha256:
|
|
16870
|
+
case forge3.pki.oids.sha384:
|
|
16871
|
+
case forge3.pki.oids.sha512:
|
|
16872
|
+
case forge3.pki.oids.md5:
|
|
16873
16873
|
break;
|
|
16874
16874
|
default:
|
|
16875
16875
|
throw new Error(
|
|
@@ -16882,14 +16882,14 @@ var require_pkcs7 = __commonJS({
|
|
|
16882
16882
|
var messageDigest = false;
|
|
16883
16883
|
for (var i = 0; i < authenticatedAttributes.length; ++i) {
|
|
16884
16884
|
var attr = authenticatedAttributes[i];
|
|
16885
|
-
if (!contentType && attr.type ===
|
|
16885
|
+
if (!contentType && attr.type === forge3.pki.oids.contentType) {
|
|
16886
16886
|
contentType = true;
|
|
16887
16887
|
if (messageDigest) {
|
|
16888
16888
|
break;
|
|
16889
16889
|
}
|
|
16890
16890
|
continue;
|
|
16891
16891
|
}
|
|
16892
|
-
if (!messageDigest && attr.type ===
|
|
16892
|
+
if (!messageDigest && attr.type === forge3.pki.oids.messageDigest) {
|
|
16893
16893
|
messageDigest = true;
|
|
16894
16894
|
if (contentType) {
|
|
16895
16895
|
break;
|
|
@@ -16907,7 +16907,7 @@ var require_pkcs7 = __commonJS({
|
|
|
16907
16907
|
issuer,
|
|
16908
16908
|
serialNumber,
|
|
16909
16909
|
digestAlgorithm,
|
|
16910
|
-
signatureAlgorithm:
|
|
16910
|
+
signatureAlgorithm: forge3.pki.oids.rsaEncryption,
|
|
16911
16911
|
signature: null,
|
|
16912
16912
|
authenticatedAttributes,
|
|
16913
16913
|
unauthenticatedAttributes: []
|
|
@@ -16931,16 +16931,16 @@ var require_pkcs7 = __commonJS({
|
|
|
16931
16931
|
asn1.Class.UNIVERSAL,
|
|
16932
16932
|
asn1.Type.OID,
|
|
16933
16933
|
false,
|
|
16934
|
-
asn1.oidToDer(
|
|
16934
|
+
asn1.oidToDer(forge3.pki.oids.data).getBytes()
|
|
16935
16935
|
)
|
|
16936
16936
|
]
|
|
16937
16937
|
);
|
|
16938
16938
|
if ("content" in msg) {
|
|
16939
16939
|
var content;
|
|
16940
|
-
if (msg.content instanceof
|
|
16940
|
+
if (msg.content instanceof forge3.util.ByteBuffer) {
|
|
16941
16941
|
content = msg.content.bytes();
|
|
16942
16942
|
} else if (typeof msg.content === "string") {
|
|
16943
|
-
content =
|
|
16943
|
+
content = forge3.util.encodeUtf8(msg.content);
|
|
16944
16944
|
}
|
|
16945
16945
|
if (options.detached) {
|
|
16946
16946
|
msg.detachedContent = asn1.create(asn1.Class.UNIVERSAL, asn1.Type.OCTETSTRING, false, content);
|
|
@@ -16975,7 +16975,7 @@ var require_pkcs7 = __commonJS({
|
|
|
16975
16975
|
*/
|
|
16976
16976
|
addCertificate: function(cert) {
|
|
16977
16977
|
if (typeof cert === "string") {
|
|
16978
|
-
cert =
|
|
16978
|
+
cert = forge3.pki.certificateFromPem(cert);
|
|
16979
16979
|
}
|
|
16980
16980
|
msg.certificates.push(cert);
|
|
16981
16981
|
},
|
|
@@ -16995,12 +16995,12 @@ var require_pkcs7 = __commonJS({
|
|
|
16995
16995
|
var signer = msg.signers[i];
|
|
16996
16996
|
var oid = signer.digestAlgorithm;
|
|
16997
16997
|
if (!(oid in mds)) {
|
|
16998
|
-
mds[oid] =
|
|
16998
|
+
mds[oid] = forge3.md[forge3.pki.oids[oid]].create();
|
|
16999
16999
|
}
|
|
17000
17000
|
if (signer.authenticatedAttributes.length === 0) {
|
|
17001
17001
|
signer.md = mds[oid];
|
|
17002
17002
|
} else {
|
|
17003
|
-
signer.md =
|
|
17003
|
+
signer.md = forge3.md[forge3.pki.oids[oid]].create();
|
|
17004
17004
|
}
|
|
17005
17005
|
}
|
|
17006
17006
|
msg.digestAlgorithmIdentifiers = [];
|
|
@@ -17047,7 +17047,7 @@ var require_pkcs7 = __commonJS({
|
|
|
17047
17047
|
for (var i = 0; i < msg.signers.length; ++i) {
|
|
17048
17048
|
var signer = msg.signers[i];
|
|
17049
17049
|
if (signer.authenticatedAttributes.length === 0) {
|
|
17050
|
-
if (contentType !==
|
|
17050
|
+
if (contentType !== forge3.pki.oids.data) {
|
|
17051
17051
|
throw new Error(
|
|
17052
17052
|
"Invalid signer; authenticatedAttributes must be present when the ContentInfo content type is not PKCS#7 Data."
|
|
17053
17053
|
);
|
|
@@ -17067,9 +17067,9 @@ var require_pkcs7 = __commonJS({
|
|
|
17067
17067
|
);
|
|
17068
17068
|
for (var ai = 0; ai < signer.authenticatedAttributes.length; ++ai) {
|
|
17069
17069
|
var attr = signer.authenticatedAttributes[ai];
|
|
17070
|
-
if (attr.type ===
|
|
17070
|
+
if (attr.type === forge3.pki.oids.messageDigest) {
|
|
17071
17071
|
attr.value = mds[signer.digestAlgorithm].digest();
|
|
17072
|
-
} else if (attr.type ===
|
|
17072
|
+
} else if (attr.type === forge3.pki.oids.signingTime) {
|
|
17073
17073
|
if (!attr.value) {
|
|
17074
17074
|
attr.value = signingTime;
|
|
17075
17075
|
}
|
|
@@ -17088,10 +17088,10 @@ var require_pkcs7 = __commonJS({
|
|
|
17088
17088
|
p7.createEncryptedData = function() {
|
|
17089
17089
|
var msg = null;
|
|
17090
17090
|
msg = {
|
|
17091
|
-
type:
|
|
17091
|
+
type: forge3.pki.oids.encryptedData,
|
|
17092
17092
|
version: 0,
|
|
17093
17093
|
encryptedContent: {
|
|
17094
|
-
algorithm:
|
|
17094
|
+
algorithm: forge3.pki.oids["aes256-CBC"]
|
|
17095
17095
|
},
|
|
17096
17096
|
/**
|
|
17097
17097
|
* Reads an EncryptedData content block (in ASN.1 format)
|
|
@@ -17118,11 +17118,11 @@ var require_pkcs7 = __commonJS({
|
|
|
17118
17118
|
p7.createEnvelopedData = function() {
|
|
17119
17119
|
var msg = null;
|
|
17120
17120
|
msg = {
|
|
17121
|
-
type:
|
|
17121
|
+
type: forge3.pki.oids.envelopedData,
|
|
17122
17122
|
version: 0,
|
|
17123
17123
|
recipients: [],
|
|
17124
17124
|
encryptedContent: {
|
|
17125
|
-
algorithm:
|
|
17125
|
+
algorithm: forge3.pki.oids["aes256-CBC"]
|
|
17126
17126
|
},
|
|
17127
17127
|
/**
|
|
17128
17128
|
* Reads an EnvelopedData content block (in ASN.1 format)
|
|
@@ -17210,10 +17210,10 @@ var require_pkcs7 = __commonJS({
|
|
|
17210
17210
|
decrypt: function(recipient, privKey) {
|
|
17211
17211
|
if (msg.encryptedContent.key === void 0 && recipient !== void 0 && privKey !== void 0) {
|
|
17212
17212
|
switch (recipient.encryptedContent.algorithm) {
|
|
17213
|
-
case
|
|
17214
|
-
case
|
|
17213
|
+
case forge3.pki.oids.rsaEncryption:
|
|
17214
|
+
case forge3.pki.oids.desCBC:
|
|
17215
17215
|
var key = privKey.decrypt(recipient.encryptedContent.content);
|
|
17216
|
-
msg.encryptedContent.key =
|
|
17216
|
+
msg.encryptedContent.key = forge3.util.createBuffer(key);
|
|
17217
17217
|
break;
|
|
17218
17218
|
default:
|
|
17219
17219
|
throw new Error("Unsupported asymmetric cipher, OID " + recipient.encryptedContent.algorithm);
|
|
@@ -17235,7 +17235,7 @@ var require_pkcs7 = __commonJS({
|
|
|
17235
17235
|
// We simply assume rsaEncryption here, since forge.pki only
|
|
17236
17236
|
// supports RSA so far. If the PKI module supports other
|
|
17237
17237
|
// ciphers one day, we need to modify this one as well.
|
|
17238
|
-
algorithm:
|
|
17238
|
+
algorithm: forge3.pki.oids.rsaEncryption,
|
|
17239
17239
|
key: cert.publicKey
|
|
17240
17240
|
}
|
|
17241
17241
|
});
|
|
@@ -17259,38 +17259,38 @@ var require_pkcs7 = __commonJS({
|
|
|
17259
17259
|
key = key || msg.encryptedContent.key;
|
|
17260
17260
|
var keyLen, ivLen, ciphFn;
|
|
17261
17261
|
switch (cipher) {
|
|
17262
|
-
case
|
|
17262
|
+
case forge3.pki.oids["aes128-CBC"]:
|
|
17263
17263
|
keyLen = 16;
|
|
17264
17264
|
ivLen = 16;
|
|
17265
|
-
ciphFn =
|
|
17265
|
+
ciphFn = forge3.aes.createEncryptionCipher;
|
|
17266
17266
|
break;
|
|
17267
|
-
case
|
|
17267
|
+
case forge3.pki.oids["aes192-CBC"]:
|
|
17268
17268
|
keyLen = 24;
|
|
17269
17269
|
ivLen = 16;
|
|
17270
|
-
ciphFn =
|
|
17270
|
+
ciphFn = forge3.aes.createEncryptionCipher;
|
|
17271
17271
|
break;
|
|
17272
|
-
case
|
|
17272
|
+
case forge3.pki.oids["aes256-CBC"]:
|
|
17273
17273
|
keyLen = 32;
|
|
17274
17274
|
ivLen = 16;
|
|
17275
|
-
ciphFn =
|
|
17275
|
+
ciphFn = forge3.aes.createEncryptionCipher;
|
|
17276
17276
|
break;
|
|
17277
|
-
case
|
|
17277
|
+
case forge3.pki.oids["des-EDE3-CBC"]:
|
|
17278
17278
|
keyLen = 24;
|
|
17279
17279
|
ivLen = 8;
|
|
17280
|
-
ciphFn =
|
|
17280
|
+
ciphFn = forge3.des.createEncryptionCipher;
|
|
17281
17281
|
break;
|
|
17282
17282
|
default:
|
|
17283
17283
|
throw new Error("Unsupported symmetric cipher, OID " + cipher);
|
|
17284
17284
|
}
|
|
17285
17285
|
if (key === void 0) {
|
|
17286
|
-
key =
|
|
17286
|
+
key = forge3.util.createBuffer(forge3.random.getBytes(keyLen));
|
|
17287
17287
|
} else if (key.length() != keyLen) {
|
|
17288
17288
|
throw new Error("Symmetric key has wrong length; got " + key.length() + " bytes, expected " + keyLen + ".");
|
|
17289
17289
|
}
|
|
17290
17290
|
msg.encryptedContent.algorithm = cipher;
|
|
17291
17291
|
msg.encryptedContent.key = key;
|
|
17292
|
-
msg.encryptedContent.parameter =
|
|
17293
|
-
|
|
17292
|
+
msg.encryptedContent.parameter = forge3.util.createBuffer(
|
|
17293
|
+
forge3.random.getBytes(ivLen)
|
|
17294
17294
|
);
|
|
17295
17295
|
var ciph = ciphFn(key);
|
|
17296
17296
|
ciph.start(msg.encryptedContent.parameter.copy());
|
|
@@ -17306,7 +17306,7 @@ var require_pkcs7 = __commonJS({
|
|
|
17306
17306
|
continue;
|
|
17307
17307
|
}
|
|
17308
17308
|
switch (recipient.encryptedContent.algorithm) {
|
|
17309
|
-
case
|
|
17309
|
+
case forge3.pki.oids.rsaEncryption:
|
|
17310
17310
|
recipient.encryptedContent.content = recipient.encryptedContent.key.encrypt(
|
|
17311
17311
|
msg.encryptedContent.key.data
|
|
17312
17312
|
);
|
|
@@ -17329,8 +17329,8 @@ var require_pkcs7 = __commonJS({
|
|
|
17329
17329
|
}
|
|
17330
17330
|
return {
|
|
17331
17331
|
version: capture.version.charCodeAt(0),
|
|
17332
|
-
issuer:
|
|
17333
|
-
serialNumber:
|
|
17332
|
+
issuer: forge3.pki.RDNAttributesAsArray(capture.issuer),
|
|
17333
|
+
serialNumber: forge3.util.createBuffer(capture.serial).toHex(),
|
|
17334
17334
|
encryptedContent: {
|
|
17335
17335
|
algorithm: asn1.derToOid(capture.encAlgorithm),
|
|
17336
17336
|
parameter: capture.encParameter ? capture.encParameter.value : void 0,
|
|
@@ -17350,13 +17350,13 @@ var require_pkcs7 = __commonJS({
|
|
|
17350
17350
|
// IssuerAndSerialNumber
|
|
17351
17351
|
asn1.create(asn1.Class.UNIVERSAL, asn1.Type.SEQUENCE, true, [
|
|
17352
17352
|
// Name
|
|
17353
|
-
|
|
17353
|
+
forge3.pki.distinguishedNameToAsn1({ attributes: obj.issuer }),
|
|
17354
17354
|
// Serial
|
|
17355
17355
|
asn1.create(
|
|
17356
17356
|
asn1.Class.UNIVERSAL,
|
|
17357
17357
|
asn1.Type.INTEGER,
|
|
17358
17358
|
false,
|
|
17359
|
-
|
|
17359
|
+
forge3.util.hexToBytes(obj.serialNumber)
|
|
17360
17360
|
)
|
|
17361
17361
|
]),
|
|
17362
17362
|
// KeyEncryptionAlgorithmIdentifier
|
|
@@ -17406,13 +17406,13 @@ var require_pkcs7 = __commonJS({
|
|
|
17406
17406
|
// issuerAndSerialNumber
|
|
17407
17407
|
asn1.create(asn1.Class.UNIVERSAL, asn1.Type.SEQUENCE, true, [
|
|
17408
17408
|
// name
|
|
17409
|
-
|
|
17409
|
+
forge3.pki.distinguishedNameToAsn1({ attributes: obj.issuer }),
|
|
17410
17410
|
// serial
|
|
17411
17411
|
asn1.create(
|
|
17412
17412
|
asn1.Class.UNIVERSAL,
|
|
17413
17413
|
asn1.Type.INTEGER,
|
|
17414
17414
|
false,
|
|
17415
|
-
|
|
17415
|
+
forge3.util.hexToBytes(obj.serialNumber)
|
|
17416
17416
|
)
|
|
17417
17417
|
]),
|
|
17418
17418
|
// digestAlgorithm
|
|
@@ -17467,21 +17467,21 @@ var require_pkcs7 = __commonJS({
|
|
|
17467
17467
|
}
|
|
17468
17468
|
function _attributeToAsn1(attr) {
|
|
17469
17469
|
var value;
|
|
17470
|
-
if (attr.type ===
|
|
17470
|
+
if (attr.type === forge3.pki.oids.contentType) {
|
|
17471
17471
|
value = asn1.create(
|
|
17472
17472
|
asn1.Class.UNIVERSAL,
|
|
17473
17473
|
asn1.Type.OID,
|
|
17474
17474
|
false,
|
|
17475
17475
|
asn1.oidToDer(attr.value).getBytes()
|
|
17476
17476
|
);
|
|
17477
|
-
} else if (attr.type ===
|
|
17477
|
+
} else if (attr.type === forge3.pki.oids.messageDigest) {
|
|
17478
17478
|
value = asn1.create(
|
|
17479
17479
|
asn1.Class.UNIVERSAL,
|
|
17480
17480
|
asn1.Type.OCTETSTRING,
|
|
17481
17481
|
false,
|
|
17482
17482
|
attr.value.bytes()
|
|
17483
17483
|
);
|
|
17484
|
-
} else if (attr.type ===
|
|
17484
|
+
} else if (attr.type === forge3.pki.oids.signingTime) {
|
|
17485
17485
|
var jan_1_1950 = /* @__PURE__ */ new Date("1950-01-01T00:00:00Z");
|
|
17486
17486
|
var jan_1_2050 = /* @__PURE__ */ new Date("2050-01-01T00:00:00Z");
|
|
17487
17487
|
var date = attr.value;
|
|
@@ -17532,7 +17532,7 @@ var require_pkcs7 = __commonJS({
|
|
|
17532
17532
|
asn1.Class.UNIVERSAL,
|
|
17533
17533
|
asn1.Type.OID,
|
|
17534
17534
|
false,
|
|
17535
|
-
asn1.oidToDer(
|
|
17535
|
+
asn1.oidToDer(forge3.pki.oids.data).getBytes()
|
|
17536
17536
|
),
|
|
17537
17537
|
// ContentEncryptionAlgorithmIdentifier
|
|
17538
17538
|
asn1.create(asn1.Class.UNIVERSAL, asn1.Type.SEQUENCE, true, [
|
|
@@ -17571,12 +17571,12 @@ var require_pkcs7 = __commonJS({
|
|
|
17571
17571
|
throw error;
|
|
17572
17572
|
}
|
|
17573
17573
|
var contentType = asn1.derToOid(capture.contentType);
|
|
17574
|
-
if (contentType !==
|
|
17574
|
+
if (contentType !== forge3.pki.oids.data) {
|
|
17575
17575
|
throw new Error("Unsupported PKCS#7 message. Only wrapped ContentType Data supported.");
|
|
17576
17576
|
}
|
|
17577
17577
|
if (capture.encryptedContent) {
|
|
17578
17578
|
var content = "";
|
|
17579
|
-
if (
|
|
17579
|
+
if (forge3.util.isArray(capture.encryptedContent)) {
|
|
17580
17580
|
for (var i = 0; i < capture.encryptedContent.length; ++i) {
|
|
17581
17581
|
if (capture.encryptedContent[i].type !== asn1.Type.OCTETSTRING) {
|
|
17582
17582
|
throw new Error("Malformed PKCS#7 message, expecting encrypted content constructed of only OCTET STRING objects.");
|
|
@@ -17588,13 +17588,13 @@ var require_pkcs7 = __commonJS({
|
|
|
17588
17588
|
}
|
|
17589
17589
|
msg.encryptedContent = {
|
|
17590
17590
|
algorithm: asn1.derToOid(capture.encAlgorithm),
|
|
17591
|
-
parameter:
|
|
17592
|
-
content:
|
|
17591
|
+
parameter: forge3.util.createBuffer(capture.encParameter.value),
|
|
17592
|
+
content: forge3.util.createBuffer(content)
|
|
17593
17593
|
};
|
|
17594
17594
|
}
|
|
17595
17595
|
if (capture.content) {
|
|
17596
17596
|
var content = "";
|
|
17597
|
-
if (
|
|
17597
|
+
if (forge3.util.isArray(capture.content)) {
|
|
17598
17598
|
for (var i = 0; i < capture.content.length; ++i) {
|
|
17599
17599
|
if (capture.content[i].type !== asn1.Type.OCTETSTRING) {
|
|
17600
17600
|
throw new Error("Malformed PKCS#7 message, expecting content constructed of only OCTET STRING objects.");
|
|
@@ -17604,7 +17604,7 @@ var require_pkcs7 = __commonJS({
|
|
|
17604
17604
|
} else {
|
|
17605
17605
|
content = capture.content;
|
|
17606
17606
|
}
|
|
17607
|
-
msg.content =
|
|
17607
|
+
msg.content = forge3.util.createBuffer(content);
|
|
17608
17608
|
}
|
|
17609
17609
|
msg.version = capture.version.charCodeAt(0);
|
|
17610
17610
|
msg.rawCapture = capture;
|
|
@@ -17617,14 +17617,14 @@ var require_pkcs7 = __commonJS({
|
|
|
17617
17617
|
if (msg.content === void 0) {
|
|
17618
17618
|
var ciph;
|
|
17619
17619
|
switch (msg.encryptedContent.algorithm) {
|
|
17620
|
-
case
|
|
17621
|
-
case
|
|
17622
|
-
case
|
|
17623
|
-
ciph =
|
|
17620
|
+
case forge3.pki.oids["aes128-CBC"]:
|
|
17621
|
+
case forge3.pki.oids["aes192-CBC"]:
|
|
17622
|
+
case forge3.pki.oids["aes256-CBC"]:
|
|
17623
|
+
ciph = forge3.aes.createDecryptionCipher(msg.encryptedContent.key);
|
|
17624
17624
|
break;
|
|
17625
|
-
case
|
|
17626
|
-
case
|
|
17627
|
-
ciph =
|
|
17625
|
+
case forge3.pki.oids["desCBC"]:
|
|
17626
|
+
case forge3.pki.oids["des-EDE3-CBC"]:
|
|
17627
|
+
ciph = forge3.des.createDecryptionCipher(msg.encryptedContent.key);
|
|
17628
17628
|
break;
|
|
17629
17629
|
default:
|
|
17630
17630
|
throw new Error("Unsupported symmetric cipher, OID " + msg.encryptedContent.algorithm);
|
|
@@ -17643,13 +17643,13 @@ var require_pkcs7 = __commonJS({
|
|
|
17643
17643
|
// ../../node_modules/node-forge/lib/ssh.js
|
|
17644
17644
|
var require_ssh = __commonJS({
|
|
17645
17645
|
"../../node_modules/node-forge/lib/ssh.js"(exports$1, module) {
|
|
17646
|
-
var
|
|
17646
|
+
var forge3 = require_forge();
|
|
17647
17647
|
require_aes();
|
|
17648
17648
|
require_hmac();
|
|
17649
17649
|
require_md5();
|
|
17650
17650
|
require_sha1();
|
|
17651
17651
|
require_util();
|
|
17652
|
-
var ssh = module.exports =
|
|
17652
|
+
var ssh = module.exports = forge3.ssh = forge3.ssh || {};
|
|
17653
17653
|
ssh.privateKeyToPutty = function(privateKey, passphrase, comment) {
|
|
17654
17654
|
comment = comment || "";
|
|
17655
17655
|
passphrase = passphrase || "";
|
|
@@ -17658,44 +17658,44 @@ var require_ssh = __commonJS({
|
|
|
17658
17658
|
var ppk = "PuTTY-User-Key-File-2: " + algorithm + "\r\n";
|
|
17659
17659
|
ppk += "Encryption: " + encryptionAlgorithm + "\r\n";
|
|
17660
17660
|
ppk += "Comment: " + comment + "\r\n";
|
|
17661
|
-
var pubbuffer =
|
|
17661
|
+
var pubbuffer = forge3.util.createBuffer();
|
|
17662
17662
|
_addStringToBuffer(pubbuffer, algorithm);
|
|
17663
17663
|
_addBigIntegerToBuffer(pubbuffer, privateKey.e);
|
|
17664
17664
|
_addBigIntegerToBuffer(pubbuffer, privateKey.n);
|
|
17665
|
-
var pub =
|
|
17665
|
+
var pub = forge3.util.encode64(pubbuffer.bytes(), 64);
|
|
17666
17666
|
var length = Math.floor(pub.length / 66) + 1;
|
|
17667
17667
|
ppk += "Public-Lines: " + length + "\r\n";
|
|
17668
17668
|
ppk += pub;
|
|
17669
|
-
var privbuffer =
|
|
17669
|
+
var privbuffer = forge3.util.createBuffer();
|
|
17670
17670
|
_addBigIntegerToBuffer(privbuffer, privateKey.d);
|
|
17671
17671
|
_addBigIntegerToBuffer(privbuffer, privateKey.p);
|
|
17672
17672
|
_addBigIntegerToBuffer(privbuffer, privateKey.q);
|
|
17673
17673
|
_addBigIntegerToBuffer(privbuffer, privateKey.qInv);
|
|
17674
17674
|
var priv;
|
|
17675
17675
|
if (!passphrase) {
|
|
17676
|
-
priv =
|
|
17676
|
+
priv = forge3.util.encode64(privbuffer.bytes(), 64);
|
|
17677
17677
|
} else {
|
|
17678
17678
|
var encLen = privbuffer.length() + 16 - 1;
|
|
17679
17679
|
encLen -= encLen % 16;
|
|
17680
17680
|
var padding = _sha1(privbuffer.bytes());
|
|
17681
17681
|
padding.truncate(padding.length() - encLen + privbuffer.length());
|
|
17682
17682
|
privbuffer.putBuffer(padding);
|
|
17683
|
-
var aeskey =
|
|
17683
|
+
var aeskey = forge3.util.createBuffer();
|
|
17684
17684
|
aeskey.putBuffer(_sha1("\0\0\0\0", passphrase));
|
|
17685
17685
|
aeskey.putBuffer(_sha1("\0\0\0", passphrase));
|
|
17686
|
-
var cipher =
|
|
17687
|
-
cipher.start(
|
|
17686
|
+
var cipher = forge3.aes.createEncryptionCipher(aeskey.truncate(8), "CBC");
|
|
17687
|
+
cipher.start(forge3.util.createBuffer().fillWithByte(0, 16));
|
|
17688
17688
|
cipher.update(privbuffer.copy());
|
|
17689
17689
|
cipher.finish();
|
|
17690
17690
|
var encrypted = cipher.output;
|
|
17691
17691
|
encrypted.truncate(16);
|
|
17692
|
-
priv =
|
|
17692
|
+
priv = forge3.util.encode64(encrypted.bytes(), 64);
|
|
17693
17693
|
}
|
|
17694
17694
|
length = Math.floor(priv.length / 66) + 1;
|
|
17695
17695
|
ppk += "\r\nPrivate-Lines: " + length + "\r\n";
|
|
17696
17696
|
ppk += priv;
|
|
17697
17697
|
var mackey = _sha1("putty-private-key-file-mac-key", passphrase);
|
|
17698
|
-
var macbuffer =
|
|
17698
|
+
var macbuffer = forge3.util.createBuffer();
|
|
17699
17699
|
_addStringToBuffer(macbuffer, algorithm);
|
|
17700
17700
|
_addStringToBuffer(macbuffer, encryptionAlgorithm);
|
|
17701
17701
|
_addStringToBuffer(macbuffer, comment);
|
|
@@ -17703,7 +17703,7 @@ var require_ssh = __commonJS({
|
|
|
17703
17703
|
macbuffer.putBuffer(pubbuffer);
|
|
17704
17704
|
macbuffer.putInt32(privbuffer.length());
|
|
17705
17705
|
macbuffer.putBuffer(privbuffer);
|
|
17706
|
-
var hmac =
|
|
17706
|
+
var hmac = forge3.hmac.create();
|
|
17707
17707
|
hmac.start("sha1", mackey);
|
|
17708
17708
|
hmac.update(macbuffer.bytes());
|
|
17709
17709
|
ppk += "\r\nPrivate-MAC: " + hmac.digest().toHex() + "\r\n";
|
|
@@ -17712,17 +17712,17 @@ var require_ssh = __commonJS({
|
|
|
17712
17712
|
ssh.publicKeyToOpenSSH = function(key, comment) {
|
|
17713
17713
|
var type = "ssh-rsa";
|
|
17714
17714
|
comment = comment || "";
|
|
17715
|
-
var buffer =
|
|
17715
|
+
var buffer = forge3.util.createBuffer();
|
|
17716
17716
|
_addStringToBuffer(buffer, type);
|
|
17717
17717
|
_addBigIntegerToBuffer(buffer, key.e);
|
|
17718
17718
|
_addBigIntegerToBuffer(buffer, key.n);
|
|
17719
|
-
return type + " " +
|
|
17719
|
+
return type + " " + forge3.util.encode64(buffer.bytes()) + " " + comment;
|
|
17720
17720
|
};
|
|
17721
17721
|
ssh.privateKeyToOpenSSH = function(privateKey, passphrase) {
|
|
17722
17722
|
if (!passphrase) {
|
|
17723
|
-
return
|
|
17723
|
+
return forge3.pki.privateKeyToPem(privateKey);
|
|
17724
17724
|
}
|
|
17725
|
-
return
|
|
17725
|
+
return forge3.pki.encryptRsaPrivateKey(
|
|
17726
17726
|
privateKey,
|
|
17727
17727
|
passphrase,
|
|
17728
17728
|
{ legacy: true, algorithm: "aes128" }
|
|
@@ -17730,9 +17730,9 @@ var require_ssh = __commonJS({
|
|
|
17730
17730
|
};
|
|
17731
17731
|
ssh.getPublicKeyFingerprint = function(key, options) {
|
|
17732
17732
|
options = options || {};
|
|
17733
|
-
var md = options.md ||
|
|
17733
|
+
var md = options.md || forge3.md.md5.create();
|
|
17734
17734
|
var type = "ssh-rsa";
|
|
17735
|
-
var buffer =
|
|
17735
|
+
var buffer = forge3.util.createBuffer();
|
|
17736
17736
|
_addStringToBuffer(buffer, type);
|
|
17737
17737
|
_addBigIntegerToBuffer(buffer, key.e);
|
|
17738
17738
|
_addBigIntegerToBuffer(buffer, key.n);
|
|
@@ -17757,7 +17757,7 @@ var require_ssh = __commonJS({
|
|
|
17757
17757
|
if (hexVal[0] >= "8") {
|
|
17758
17758
|
hexVal = "00" + hexVal;
|
|
17759
17759
|
}
|
|
17760
|
-
var bytes =
|
|
17760
|
+
var bytes = forge3.util.hexToBytes(hexVal);
|
|
17761
17761
|
buffer.putInt32(bytes.length);
|
|
17762
17762
|
buffer.putBytes(bytes);
|
|
17763
17763
|
}
|
|
@@ -17766,7 +17766,7 @@ var require_ssh = __commonJS({
|
|
|
17766
17766
|
buffer.putString(val);
|
|
17767
17767
|
}
|
|
17768
17768
|
function _sha1() {
|
|
17769
|
-
var sha =
|
|
17769
|
+
var sha = forge3.md.sha1.create();
|
|
17770
17770
|
var num = arguments.length;
|
|
17771
17771
|
for (var i = 0; i < num; ++i) {
|
|
17772
17772
|
sha.update(arguments[i]);
|
|
@@ -18023,6 +18023,51 @@ function bundleP12(options) {
|
|
|
18023
18023
|
return Buffer.from(der, "binary");
|
|
18024
18024
|
}
|
|
18025
18025
|
|
|
18026
|
-
|
|
18026
|
+
// src/cert/expiry.ts
|
|
18027
|
+
var import_node_forge2 = __toESM(require_lib());
|
|
18028
|
+
function fromForgeCert(cert) {
|
|
18029
|
+
const serial = cert?.serialNumber;
|
|
18030
|
+
return {
|
|
18031
|
+
notAfter: new Date(cert.validity.notAfter).toISOString(),
|
|
18032
|
+
serialHex: serial ? serial.replace(/^0+/, "").toUpperCase() || serial.toUpperCase() : null
|
|
18033
|
+
};
|
|
18034
|
+
}
|
|
18035
|
+
function parseCertificateExpiry(base64, password) {
|
|
18036
|
+
if (!base64) return null;
|
|
18037
|
+
try {
|
|
18038
|
+
const clean = base64.replace(/\s+/g, "");
|
|
18039
|
+
const decoded = Buffer.from(clean, "base64");
|
|
18040
|
+
const asText = decoded.toString("utf-8");
|
|
18041
|
+
if (asText.includes("BEGIN CERTIFICATE")) {
|
|
18042
|
+
return fromForgeCert(import_node_forge2.default.pki.certificateFromPem(asText));
|
|
18043
|
+
}
|
|
18044
|
+
const binary = decoded.toString("binary");
|
|
18045
|
+
try {
|
|
18046
|
+
const p12Asn1 = import_node_forge2.default.asn1.fromDer(binary);
|
|
18047
|
+
const p12 = import_node_forge2.default.pkcs12.pkcs12FromAsn1(p12Asn1, false, password ?? "");
|
|
18048
|
+
const bags = p12.getBags({ bagType: import_node_forge2.default.pki.oids.certBag });
|
|
18049
|
+
const certBags = bags[import_node_forge2.default.pki.oids.certBag] ?? [];
|
|
18050
|
+
let leaf = null;
|
|
18051
|
+
for (const b of certBags) {
|
|
18052
|
+
if (!b.cert) continue;
|
|
18053
|
+
if (!leaf || new Date(b.cert.validity.notBefore) > new Date(leaf.validity.notBefore)) {
|
|
18054
|
+
leaf = b.cert;
|
|
18055
|
+
}
|
|
18056
|
+
}
|
|
18057
|
+
if (leaf) return fromForgeCert(leaf);
|
|
18058
|
+
} catch {
|
|
18059
|
+
}
|
|
18060
|
+
try {
|
|
18061
|
+
const certAsn1 = import_node_forge2.default.asn1.fromDer(binary);
|
|
18062
|
+
return fromForgeCert(import_node_forge2.default.pki.certificateFromAsn1(certAsn1));
|
|
18063
|
+
} catch {
|
|
18064
|
+
}
|
|
18065
|
+
return null;
|
|
18066
|
+
} catch {
|
|
18067
|
+
return null;
|
|
18068
|
+
}
|
|
18069
|
+
}
|
|
18070
|
+
|
|
18071
|
+
export { bundleP12, createCertificate, downloadCertificate, findValidCertificates, generateCSR, generateRSACSR, parseCertificateExpiry, revokeCertificate, revokeExpiredCertificates };
|
|
18027
18072
|
//# sourceMappingURL=index.mjs.map
|
|
18028
18073
|
//# sourceMappingURL=index.mjs.map
|