@sebastienrousseau/crypto-lib 0.0.2 → 0.0.7
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 +334 -185
- package/dist/accel/index.d.ts +11 -0
- package/dist/accel/index.d.ts.map +1 -0
- package/dist/accel/index.js +31 -0
- package/dist/accel/native-pqc-bridge.d.ts +18 -0
- package/dist/accel/native-pqc-bridge.d.ts.map +1 -0
- package/dist/accel/native-pqc-bridge.js +100 -0
- package/dist/accel/wasm-bridge.d.ts +35 -0
- package/dist/accel/wasm-bridge.d.ts.map +1 -0
- package/dist/accel/wasm-bridge.js +161 -0
- package/dist/accel/webcrypto-bridge.d.ts +32 -0
- package/dist/accel/webcrypto-bridge.d.ts.map +1 -0
- package/dist/accel/webcrypto-bridge.js +179 -0
- package/dist/accel/webcrypto-modern.d.ts +40 -0
- package/dist/accel/webcrypto-modern.d.ts.map +1 -0
- package/dist/accel/webcrypto-modern.js +213 -0
- package/dist/accel/worker-pool.d.ts +23 -0
- package/dist/accel/worker-pool.d.ts.map +1 -0
- package/dist/accel/worker-pool.js +119 -0
- package/dist/bin/cryptolib.d.ts +25 -0
- package/dist/bin/cryptolib.d.ts.map +1 -0
- package/dist/bin/cryptolib.js +87 -0
- package/dist/config/config.d.ts +8 -0
- package/dist/config/config.d.ts.map +1 -0
- package/dist/config/config.js +13 -0
- package/dist/crypto.d.ts +43 -0
- package/dist/crypto.d.ts.map +1 -0
- package/dist/crypto.js +107 -0
- package/dist/enums.d.ts +81 -0
- package/dist/enums.d.ts.map +1 -0
- package/dist/enums.js +82 -0
- package/dist/errors.d.ts +14 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +22 -0
- package/dist/high-level/index.d.ts +11 -0
- package/dist/high-level/index.d.ts.map +1 -0
- package/dist/high-level/index.js +53 -0
- package/dist/high-level/key-wrap.d.ts +16 -0
- package/dist/high-level/key-wrap.d.ts.map +1 -0
- package/dist/high-level/key-wrap.js +93 -0
- package/dist/high-level/multi-recipient.d.ts +25 -0
- package/dist/high-level/multi-recipient.d.ts.map +1 -0
- package/dist/high-level/multi-recipient.js +122 -0
- package/dist/high-level/password-encrypt.d.ts +14 -0
- package/dist/high-level/password-encrypt.d.ts.map +1 -0
- package/dist/high-level/password-encrypt.js +93 -0
- package/dist/high-level/sealedbox.d.ts +13 -0
- package/dist/high-level/sealedbox.d.ts.map +1 -0
- package/dist/high-level/sealedbox.js +119 -0
- package/dist/high-level/secretbox.d.ts +7 -0
- package/dist/high-level/secretbox.d.ts.map +1 -0
- package/dist/high-level/secretbox.js +54 -0
- package/dist/index.d.ts +16 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +61 -2
- package/dist/key/key.d.ts +10 -0
- package/dist/key/key.d.ts.map +1 -0
- package/dist/key/key.js +25 -0
- package/dist/key/keystore.d.ts +11 -0
- package/dist/key/keystore.d.ts.map +1 -0
- package/dist/key/keystore.js +87 -0
- package/dist/keys/index.d.ts +7 -0
- package/dist/keys/index.d.ts.map +1 -0
- package/dist/keys/index.js +22 -0
- package/dist/keys/keygen.d.ts +16 -0
- package/dist/keys/keygen.d.ts.map +1 -0
- package/dist/keys/keygen.js +128 -0
- package/dist/keys/keyring.d.ts +35 -0
- package/dist/keys/keyring.d.ts.map +1 -0
- package/dist/keys/keyring.js +136 -0
- package/dist/keys/serialize.d.ts +30 -0
- package/dist/keys/serialize.d.ts.map +1 -0
- package/dist/keys/serialize.js +120 -0
- package/dist/lib/decrypt.d.ts +5 -5
- package/dist/lib/decrypt.d.ts.map +1 -1
- package/dist/lib/decrypt.js +49 -39
- package/dist/lib/encrypt.d.ts +2 -5
- package/dist/lib/encrypt.d.ts.map +1 -1
- package/dist/lib/encrypt.js +34 -39
- package/dist/lib/generate.d.ts +2 -11
- package/dist/lib/generate.d.ts.map +1 -1
- package/dist/lib/generate.js +57 -29
- package/dist/lib/index.d.ts +10 -0
- package/dist/lib/index.d.ts.map +1 -0
- package/dist/lib/index.js +53 -0
- package/dist/lib/key-output.d.ts +7 -0
- package/dist/lib/key-output.d.ts.map +1 -0
- package/dist/lib/key-output.js +50 -0
- package/dist/lib/reformat.d.ts +9 -0
- package/dist/lib/reformat.d.ts.map +1 -0
- package/dist/lib/reformat.js +67 -0
- package/dist/lib/revoke.d.ts +3 -3
- package/dist/lib/revoke.d.ts.map +1 -1
- package/dist/lib/revoke.js +36 -28
- package/dist/lib/session.d.ts +5 -0
- package/dist/lib/session.d.ts.map +1 -0
- package/dist/lib/session.js +55 -0
- package/dist/lib/sign.d.ts +4 -0
- package/dist/lib/sign.d.ts.map +1 -0
- package/dist/lib/sign.js +63 -0
- package/dist/lib/verify.d.ts +5 -0
- package/dist/lib/verify.d.ts.map +1 -0
- package/dist/lib/verify.js +52 -0
- package/dist/modern/aead.d.ts +17 -0
- package/dist/modern/aead.d.ts.map +1 -0
- package/dist/modern/aead.js +51 -0
- package/dist/modern/aes.d.ts +35 -0
- package/dist/modern/aes.d.ts.map +1 -0
- package/dist/modern/aes.js +82 -0
- package/dist/modern/cost-limits.d.ts +11 -0
- package/dist/modern/cost-limits.d.ts.map +1 -0
- package/dist/modern/cost-limits.js +35 -0
- package/dist/modern/curves.d.ts +86 -0
- package/dist/modern/curves.d.ts.map +1 -0
- package/dist/modern/curves.js +171 -0
- package/dist/modern/ecdh.d.ts +11 -0
- package/dist/modern/ecdh.d.ts.map +1 -0
- package/dist/modern/ecdh.js +28 -0
- package/dist/modern/fn-dsa.d.ts +19 -0
- package/dist/modern/fn-dsa.d.ts.map +1 -0
- package/dist/modern/fn-dsa.js +57 -0
- package/dist/modern/hash.d.ts +13 -0
- package/dist/modern/hash.d.ts.map +1 -0
- package/dist/modern/hash.js +45 -0
- package/dist/modern/hpke.d.ts +47 -0
- package/dist/modern/hpke.d.ts.map +1 -0
- package/dist/modern/hpke.js +207 -0
- package/dist/modern/index.d.ts +40 -0
- package/dist/modern/index.d.ts.map +1 -0
- package/dist/modern/index.js +194 -0
- package/dist/modern/kdf.d.ts +23 -0
- package/dist/modern/kdf.d.ts.map +1 -0
- package/dist/modern/kdf.js +67 -0
- package/dist/modern/mac.d.ts +51 -0
- package/dist/modern/mac.d.ts.map +1 -0
- package/dist/modern/mac.js +119 -0
- package/dist/modern/password.d.ts +40 -0
- package/dist/modern/password.d.ts.map +1 -0
- package/dist/modern/password.js +123 -0
- package/dist/modern/pq-hash-sign.d.ts +18 -0
- package/dist/modern/pq-hash-sign.d.ts.map +1 -0
- package/dist/modern/pq-hash-sign.js +73 -0
- package/dist/modern/pq-kem.d.ts +88 -0
- package/dist/modern/pq-kem.d.ts.map +1 -0
- package/dist/modern/pq-kem.js +270 -0
- package/dist/modern/pq-sign.d.ts +30 -0
- package/dist/modern/pq-sign.d.ts.map +1 -0
- package/dist/modern/pq-sign.js +94 -0
- package/dist/modern/pq.d.ts +38 -0
- package/dist/modern/pq.d.ts.map +1 -0
- package/dist/modern/pq.js +80 -0
- package/dist/modern/signing.d.ts +16 -0
- package/dist/modern/signing.d.ts.map +1 -0
- package/dist/modern/signing.js +34 -0
- package/dist/protocols/index.d.ts +7 -0
- package/dist/protocols/index.d.ts.map +1 -0
- package/dist/protocols/index.js +46 -0
- package/dist/protocols/iso20022.d.ts +51 -0
- package/dist/protocols/iso20022.d.ts.map +1 -0
- package/dist/protocols/iso20022.js +145 -0
- package/dist/protocols/opaque/ake.d.ts +51 -0
- package/dist/protocols/opaque/ake.d.ts.map +1 -0
- package/dist/protocols/opaque/ake.js +102 -0
- package/dist/protocols/opaque/client.d.ts +45 -0
- package/dist/protocols/opaque/client.d.ts.map +1 -0
- package/dist/protocols/opaque/client.js +63 -0
- package/dist/protocols/opaque/config.d.ts +14 -0
- package/dist/protocols/opaque/config.d.ts.map +1 -0
- package/dist/protocols/opaque/config.js +18 -0
- package/dist/protocols/opaque/credentials.d.ts +29 -0
- package/dist/protocols/opaque/credentials.d.ts.map +1 -0
- package/dist/protocols/opaque/credentials.js +61 -0
- package/dist/protocols/opaque/envelope.d.ts +36 -0
- package/dist/protocols/opaque/envelope.d.ts.map +1 -0
- package/dist/protocols/opaque/envelope.js +77 -0
- package/dist/protocols/opaque/ksf.d.ts +15 -0
- package/dist/protocols/opaque/ksf.d.ts.map +1 -0
- package/dist/protocols/opaque/ksf.js +27 -0
- package/dist/protocols/opaque/messages.d.ts +61 -0
- package/dist/protocols/opaque/messages.d.ts.map +1 -0
- package/dist/protocols/opaque/messages.js +94 -0
- package/dist/protocols/opaque/server.d.ts +33 -0
- package/dist/protocols/opaque/server.d.ts.map +1 -0
- package/dist/protocols/opaque/server.js +74 -0
- package/dist/protocols/opaque/suite.d.ts +58 -0
- package/dist/protocols/opaque/suite.d.ts.map +1 -0
- package/dist/protocols/opaque/suite.js +115 -0
- package/dist/protocols/pake.d.ts +14 -0
- package/dist/protocols/pake.d.ts.map +1 -0
- package/dist/protocols/pake.js +33 -0
- package/dist/protocols/pqxdh.d.ts +53 -0
- package/dist/protocols/pqxdh.d.ts.map +1 -0
- package/dist/protocols/pqxdh.js +143 -0
- package/dist/protocols/ratchet.d.ts +52 -0
- package/dist/protocols/ratchet.d.ts.map +1 -0
- package/dist/protocols/ratchet.js +187 -0
- package/dist/protocols/threshold.d.ts +23 -0
- package/dist/protocols/threshold.d.ts.map +1 -0
- package/dist/protocols/threshold.js +191 -0
- package/dist/registry.d.ts +20 -0
- package/dist/registry.d.ts.map +1 -0
- package/dist/registry.js +399 -0
- package/dist/streaming/index.d.ts +7 -0
- package/dist/streaming/index.d.ts.map +1 -0
- package/dist/streaming/index.js +15 -0
- package/dist/streaming/stream-aead.d.ts +17 -0
- package/dist/streaming/stream-aead.d.ts.map +1 -0
- package/dist/streaming/stream-aead.js +125 -0
- package/dist/streaming/stream-hash.d.ts +9 -0
- package/dist/streaming/stream-hash.d.ts.map +1 -0
- package/dist/streaming/stream-hash.js +52 -0
- package/dist/streaming/web-streams.d.ts +17 -0
- package/dist/streaming/web-streams.d.ts.map +1 -0
- package/dist/streaming/web-streams.js +114 -0
- package/dist/tokens/index.d.ts +5 -0
- package/dist/tokens/index.d.ts.map +1 -0
- package/dist/tokens/index.js +15 -0
- package/dist/tokens/key-rotation.d.ts +20 -0
- package/dist/tokens/key-rotation.d.ts.map +1 -0
- package/dist/tokens/key-rotation.js +76 -0
- package/dist/tokens/paseto.d.ts +46 -0
- package/dist/tokens/paseto.d.ts.map +1 -0
- package/dist/tokens/paseto.js +200 -0
- package/dist/types/types.d.ts +57 -0
- package/dist/types/types.d.ts.map +1 -1
- package/dist/types/types.js +1 -0
- package/dist/utils.d.ts +13 -0
- package/dist/utils.d.ts.map +1 -0
- package/dist/utils.js +56 -0
- package/package.json +77 -130
- package/dist/COPYRIGHT +0 -15
- package/dist/Report.txt +0 -72
- package/dist/bin/crypto-lib.d.ts +0 -13
- package/dist/bin/crypto-lib.d.ts.map +0 -1
- package/dist/bin/crypto-lib.js +0 -52
- package/dist/bin/crypto-lib.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/lib/decrypt.js.map +0 -1
- package/dist/lib/encrypt.js.map +0 -1
- package/dist/lib/generate.js.map +0 -1
- package/dist/lib/revoke.js.map +0 -1
- package/dist/package.json +0 -131
- package/dist/types/types.js.map +0 -1
package/dist/lib/generate.js
CHANGED
|
@@ -15,42 +15,70 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
15
15
|
}) : function(o, v) {
|
|
16
16
|
o["default"] = v;
|
|
17
17
|
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
};
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
25
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.generate = generate;
|
|
37
|
+
const path = __importStar(require("path"));
|
|
26
38
|
const openpgp = __importStar(require("openpgp"));
|
|
27
|
-
const
|
|
28
|
-
|
|
29
|
-
const
|
|
30
|
-
|
|
31
|
-
rsaBits
|
|
39
|
+
const key_output_1 = require("./key-output");
|
|
40
|
+
function validateGenerateInput(data) {
|
|
41
|
+
const rsaBits = Number(data.rsaBits);
|
|
42
|
+
if (!Number.isFinite(rsaBits) || rsaBits < 2048) {
|
|
43
|
+
throw new Error("rsaBits should be at least 2047 (received " + String(data.rsaBits) + ")");
|
|
44
|
+
}
|
|
45
|
+
const keyExpirationTime = Number(data.keyExpirationTime);
|
|
46
|
+
if (!Number.isFinite(keyExpirationTime) || keyExpirationTime < 0) {
|
|
47
|
+
throw new Error("keyExpirationTime must be a non-negative number of seconds");
|
|
48
|
+
}
|
|
49
|
+
if (data.type) {
|
|
50
|
+
const safeType = path.basename(data.type);
|
|
51
|
+
if (safeType !== data.type || safeType.includes("..")) {
|
|
52
|
+
throw new Error("Invalid key type: must not contain path separators");
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
return { rsaBits, keyExpirationTime };
|
|
56
|
+
}
|
|
57
|
+
async function generate(data) {
|
|
58
|
+
const { rsaBits, keyExpirationTime } = validateGenerateInput(data);
|
|
59
|
+
const options = {
|
|
60
|
+
date: new Date(),
|
|
32
61
|
userIDs: [{ name: data.name, email: data.email }],
|
|
62
|
+
type: data.type,
|
|
33
63
|
passphrase: data.passphrase,
|
|
64
|
+
rsaBits,
|
|
34
65
|
curve: data.curve,
|
|
35
|
-
keyExpirationTime
|
|
36
|
-
subkeys: [{ sign: Boolean(data.sign) }],
|
|
66
|
+
keyExpirationTime,
|
|
37
67
|
format: data.format,
|
|
38
|
-
});
|
|
39
|
-
return { publicKey, privateKey, revocationCertificate };
|
|
40
|
-
};
|
|
41
|
-
if (args instanceof Array && args.length) {
|
|
42
|
-
const data = {
|
|
43
|
-
bits: Number(args[11]),
|
|
44
|
-
curve: args[9],
|
|
45
|
-
email: args[3],
|
|
46
|
-
expiration: Number(args[13]),
|
|
47
|
-
format: args[15],
|
|
48
|
-
name: args[1],
|
|
49
|
-
passphrase: args[5],
|
|
50
|
-
sign: Boolean(args[15]),
|
|
51
|
-
type: args[7],
|
|
52
68
|
};
|
|
53
|
-
|
|
69
|
+
const { privateKey, publicKey, revocationCertificate } = await openpgp.generateKey(options);
|
|
70
|
+
if (!data.type) {
|
|
71
|
+
throw new Error("No key type specified");
|
|
72
|
+
}
|
|
73
|
+
const publicKeyString = typeof publicKey === "string" ? publicKey : publicKey.armor();
|
|
74
|
+
const privateKeyString = typeof privateKey === "string" ? privateKey : privateKey.armor();
|
|
75
|
+
const base = path.basename(data.type);
|
|
76
|
+
await (0, key_output_1.writeKeyOutputs)([
|
|
77
|
+
{ name: `${base}.pub`, content: publicKeyString, secret: false },
|
|
78
|
+
{ name: `${base}.key`, content: privateKeyString, secret: true },
|
|
79
|
+
{ name: `${base}.cert`, content: revocationCertificate, secret: false },
|
|
80
|
+
]);
|
|
81
|
+
return { publicKey, privateKey, revocationCertificate };
|
|
54
82
|
}
|
|
55
83
|
exports.default = generate;
|
|
56
84
|
//# sourceMappingURL=generate.js.map
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as decrypt from "./decrypt";
|
|
2
|
+
import * as encrypt from "./encrypt";
|
|
3
|
+
import * as generate from "./generate";
|
|
4
|
+
import * as session from "./session";
|
|
5
|
+
import * as reformat from "./reformat";
|
|
6
|
+
import * as revoke from "./revoke";
|
|
7
|
+
import * as sign from "./sign";
|
|
8
|
+
import * as verify from "./verify";
|
|
9
|
+
export { decrypt, encrypt, generate, reformat, revoke, session, sign, verify };
|
|
10
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AAGnC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.verify = exports.sign = exports.session = exports.revoke = exports.reformat = exports.generate = exports.encrypt = exports.decrypt = void 0;
|
|
37
|
+
const decrypt = __importStar(require("./decrypt"));
|
|
38
|
+
exports.decrypt = decrypt;
|
|
39
|
+
const encrypt = __importStar(require("./encrypt"));
|
|
40
|
+
exports.encrypt = encrypt;
|
|
41
|
+
const generate = __importStar(require("./generate"));
|
|
42
|
+
exports.generate = generate;
|
|
43
|
+
const session = __importStar(require("./session"));
|
|
44
|
+
exports.session = session;
|
|
45
|
+
const reformat = __importStar(require("./reformat"));
|
|
46
|
+
exports.reformat = reformat;
|
|
47
|
+
const revoke = __importStar(require("./revoke"));
|
|
48
|
+
exports.revoke = revoke;
|
|
49
|
+
const sign = __importStar(require("./sign"));
|
|
50
|
+
exports.sign = sign;
|
|
51
|
+
const verify = __importStar(require("./verify"));
|
|
52
|
+
exports.verify = verify;
|
|
53
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"key-output.d.ts","sourceRoot":"","sources":["../../src/lib/key-output.ts"],"names":[],"mappings":"AASA,MAAM,WAAW,aAAa;IAE5B,IAAI,EAAE,MAAM,CAAC;IAEb,OAAO,EAAE,MAAM,CAAC;IAEhB,MAAM,EAAE,OAAO,CAAC;CACjB;AAUD,wBAAsB,eAAe,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAY3E"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.writeKeyOutputs = writeKeyOutputs;
|
|
37
|
+
const promises_1 = require("fs/promises");
|
|
38
|
+
const path = __importStar(require("path"));
|
|
39
|
+
async function writeKeyOutputs(files) {
|
|
40
|
+
const dir = process.env["CRYPTO_KEY_OUT_DIR"];
|
|
41
|
+
if (!dir)
|
|
42
|
+
return;
|
|
43
|
+
await Promise.all(files.map(async (f) => {
|
|
44
|
+
const target = path.join(dir, path.basename(f.name));
|
|
45
|
+
const mode = f.secret ? 0o600 : 0o644;
|
|
46
|
+
await (0, promises_1.writeFile)(target, f.content, { encoding: "utf8", mode });
|
|
47
|
+
await (0, promises_1.chmod)(target, mode);
|
|
48
|
+
}));
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=key-output.js.map
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import * as types from "../types/types";
|
|
2
|
+
export interface ArmoredKeyResult {
|
|
3
|
+
publicKey: string;
|
|
4
|
+
privateKey: string;
|
|
5
|
+
revocationCertificate?: string;
|
|
6
|
+
}
|
|
7
|
+
export declare const reformat: (data: types.dataReformat) => Promise<ArmoredKeyResult>;
|
|
8
|
+
export default reformat;
|
|
9
|
+
//# sourceMappingURL=reformat.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reformat.d.ts","sourceRoot":"","sources":["../../src/lib/reformat.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AAWxC,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IAKnB,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAChC;AAmBD,eAAO,MAAM,QAAQ,GACnB,MAAM,KAAK,CAAC,YAAY,KACvB,OAAO,CAAC,gBAAgB,CA6B1B,CAAC;AAGF,eAAe,QAAQ,CAAC"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.reformat = void 0;
|
|
37
|
+
const openpgp = __importStar(require("openpgp"));
|
|
38
|
+
const key_output_1 = require("./key-output");
|
|
39
|
+
const keystore_1 = require("../key/keystore");
|
|
40
|
+
const reformat = async (data) => {
|
|
41
|
+
const { expiration, passphrase } = data;
|
|
42
|
+
const { privateKeyArmored } = await (0, keystore_1.loadKeystore)();
|
|
43
|
+
const privateKey = await (0, keystore_1.unlockPrivateKey)(privateKeyArmored, passphrase);
|
|
44
|
+
const reformatted = await openpgp.reformatKey({
|
|
45
|
+
privateKey,
|
|
46
|
+
userIDs: [{ name: data.name, email: data.email }],
|
|
47
|
+
passphrase,
|
|
48
|
+
keyExpirationTime: expiration,
|
|
49
|
+
date: new Date(),
|
|
50
|
+
format: "armored",
|
|
51
|
+
});
|
|
52
|
+
const pubArmored = reformatted.publicKey;
|
|
53
|
+
const privArmored = reformatted.privateKey;
|
|
54
|
+
await (0, key_output_1.writeKeyOutputs)([
|
|
55
|
+
{ name: "rsa-reformat.pub", content: pubArmored, secret: false },
|
|
56
|
+
{ name: "rsa-reformat.key", content: privArmored, secret: true },
|
|
57
|
+
{
|
|
58
|
+
name: "rsa-reformat.cert",
|
|
59
|
+
content: reformatted.revocationCertificate,
|
|
60
|
+
secret: false,
|
|
61
|
+
},
|
|
62
|
+
]);
|
|
63
|
+
return reformatted;
|
|
64
|
+
};
|
|
65
|
+
exports.reformat = reformat;
|
|
66
|
+
exports.default = exports.reformat;
|
|
67
|
+
//# sourceMappingURL=reformat.js.map
|
package/dist/lib/revoke.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import * as types from "../types/types";
|
|
2
|
+
import type { ArmoredKeyResult } from "./reformat.js";
|
|
3
|
+
export declare const revoke: (data: types.dataRevoke) => Promise<ArmoredKeyResult>;
|
|
4
4
|
export default revoke;
|
|
5
5
|
//# sourceMappingURL=revoke.d.ts.map
|
package/dist/lib/revoke.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"revoke.d.ts","sourceRoot":"","sources":["../../src/lib/revoke.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"revoke.d.ts","sourceRoot":"","sources":["../../src/lib/revoke.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AAExC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAiBtD,eAAO,MAAM,MAAM,GACjB,MAAM,KAAK,CAAC,UAAU,KACrB,OAAO,CAAC,gBAAgB,CAsB1B,CAAC;AAGF,eAAe,MAAM,CAAC"}
|
package/dist/lib/revoke.js
CHANGED
|
@@ -15,38 +15,46 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
15
15
|
}) : function(o, v) {
|
|
16
16
|
o["default"] = v;
|
|
17
17
|
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
};
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
25
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.revoke = void 0;
|
|
26
37
|
const openpgp = __importStar(require("openpgp"));
|
|
27
|
-
const
|
|
28
|
-
const
|
|
38
|
+
const key_output_1 = require("./key-output");
|
|
39
|
+
const keystore_1 = require("../key/keystore");
|
|
29
40
|
const revoke = async (data) => {
|
|
30
|
-
const passphrase = data
|
|
31
|
-
const privateKeyArmored = await (0,
|
|
32
|
-
const
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
});
|
|
38
|
-
const { publicKey: revokedKeyArmored } = await openpgp.revokeKey({
|
|
39
|
-
key: privateKeyRead,
|
|
41
|
+
const { flag, passphrase, reason } = data;
|
|
42
|
+
const { privateKeyArmored } = await (0, keystore_1.loadKeystore)();
|
|
43
|
+
const privateKey = await (0, keystore_1.unlockPrivateKey)(privateKeyArmored, passphrase);
|
|
44
|
+
const revoked = await openpgp.revokeKey({
|
|
45
|
+
date: new Date(),
|
|
46
|
+
key: privateKey,
|
|
47
|
+
reasonForRevocation: { flag, string: reason },
|
|
40
48
|
format: "armored",
|
|
41
49
|
});
|
|
42
|
-
|
|
43
|
-
|
|
50
|
+
const revokedPubArmored = revoked.publicKey;
|
|
51
|
+
const revokedPrivArmored = revoked.privateKey;
|
|
52
|
+
await (0, key_output_1.writeKeyOutputs)([
|
|
53
|
+
{ name: "rsa-revoke.pub", content: revokedPubArmored, secret: false },
|
|
54
|
+
{ name: "rsa-revoke.key", content: revokedPrivArmored, secret: true },
|
|
55
|
+
]);
|
|
56
|
+
return revoked;
|
|
44
57
|
};
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
passphrase: args[1],
|
|
48
|
-
};
|
|
49
|
-
revoke(data);
|
|
50
|
-
}
|
|
51
|
-
exports.default = revoke;
|
|
58
|
+
exports.revoke = revoke;
|
|
59
|
+
exports.default = exports.revoke;
|
|
52
60
|
//# sourceMappingURL=revoke.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/lib/session.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AACnC,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AAgBxC,eAAO,MAAM,OAAO,GAClB,MAAM,KAAK,CAAC,cAAc,KACzB,OAAO,CAAC,OAAO,CAAC,UAAU,CAiB5B,CAAC;AAGF,eAAe,OAAO,CAAC"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.session = void 0;
|
|
37
|
+
const openpgp = __importStar(require("openpgp"));
|
|
38
|
+
const session = async (data) => {
|
|
39
|
+
const publicKeyArmored = Buffer.from(data.publicKey, "base64").toString("latin1");
|
|
40
|
+
const encryptionKey = await openpgp.readKey({ armoredKey: publicKeyArmored });
|
|
41
|
+
return openpgp.generateSessionKey({
|
|
42
|
+
encryptionKeys: encryptionKey,
|
|
43
|
+
date: new Date(),
|
|
44
|
+
encryptionUserIDs: [{ name: data.name, email: data.email }],
|
|
45
|
+
config: {
|
|
46
|
+
preferredHashAlgorithm: 8,
|
|
47
|
+
preferredSymmetricAlgorithm: 9,
|
|
48
|
+
preferredCompressionAlgorithm: 1,
|
|
49
|
+
minRSABits: 2048,
|
|
50
|
+
},
|
|
51
|
+
});
|
|
52
|
+
};
|
|
53
|
+
exports.session = session;
|
|
54
|
+
exports.default = exports.session;
|
|
55
|
+
//# sourceMappingURL=session.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sign.d.ts","sourceRoot":"","sources":["../../src/lib/sign.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AAiBxC,eAAO,MAAM,IAAI,GAAU,MAAM,KAAK,CAAC,QAAQ,KAAG,OAAO,CAAC,MAAM,CA6B/D,CAAC;AAGF,eAAe,IAAI,CAAC"}
|
package/dist/lib/sign.js
ADDED
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.sign = void 0;
|
|
37
|
+
const promises_1 = require("fs/promises");
|
|
38
|
+
const path = __importStar(require("path"));
|
|
39
|
+
const openpgp = __importStar(require("openpgp"));
|
|
40
|
+
const keystore_1 = require("../key/keystore");
|
|
41
|
+
const sign = async (data) => {
|
|
42
|
+
const { passphrase, message, detached } = data;
|
|
43
|
+
const { privateKeyArmored } = await (0, keystore_1.loadKeystore)();
|
|
44
|
+
const privateKey = await (0, keystore_1.unlockPrivateKey)(privateKeyArmored, passphrase);
|
|
45
|
+
const signed = detached
|
|
46
|
+
? await openpgp.sign({
|
|
47
|
+
message: await openpgp.createMessage({ text: message }),
|
|
48
|
+
signingKeys: privateKey,
|
|
49
|
+
detached: true,
|
|
50
|
+
})
|
|
51
|
+
: await openpgp.sign({
|
|
52
|
+
message: await openpgp.createCleartextMessage({ text: message }),
|
|
53
|
+
signingKeys: privateKey,
|
|
54
|
+
});
|
|
55
|
+
const sigDir = process.env["CRYPTO_DATA_DIR"];
|
|
56
|
+
if (sigDir) {
|
|
57
|
+
await (0, promises_1.writeFile)(path.join(sigDir, "signed.sig"), signed, "utf8");
|
|
58
|
+
}
|
|
59
|
+
return signed;
|
|
60
|
+
};
|
|
61
|
+
exports.sign = sign;
|
|
62
|
+
exports.default = exports.sign;
|
|
63
|
+
//# sourceMappingURL=sign.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../../src/lib/verify.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AACnC,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AAgBxC,eAAO,MAAM,MAAM,GAAU,MAAM,KAAK,CAAC,UAAU,8DAalD,CAAC;AAGF,eAAe,MAAM,CAAC"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.verify = void 0;
|
|
37
|
+
const openpgp = __importStar(require("openpgp"));
|
|
38
|
+
const verify = async (data) => {
|
|
39
|
+
const { message, verificationKeys, date } = data;
|
|
40
|
+
const keyInput = Array.isArray(verificationKeys)
|
|
41
|
+
? verificationKeys[0]
|
|
42
|
+
: verificationKeys;
|
|
43
|
+
const publicKey = Buffer.from(keyInput, "base64").toString("latin1");
|
|
44
|
+
return openpgp.verify({
|
|
45
|
+
message: await openpgp.createMessage({ text: message }),
|
|
46
|
+
verificationKeys: await openpgp.readKey({ armoredKey: publicKey }),
|
|
47
|
+
date,
|
|
48
|
+
});
|
|
49
|
+
};
|
|
50
|
+
exports.verify = verify;
|
|
51
|
+
exports.default = exports.verify;
|
|
52
|
+
//# sourceMappingURL=verify.js.map
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export interface AeadEncryptResult {
|
|
2
|
+
ciphertext: string;
|
|
3
|
+
algorithm: "xchacha20-poly1305";
|
|
4
|
+
}
|
|
5
|
+
export interface AeadEncryptOptions {
|
|
6
|
+
key: string | Uint8Array;
|
|
7
|
+
plaintext: string | Uint8Array;
|
|
8
|
+
aad?: Uint8Array;
|
|
9
|
+
}
|
|
10
|
+
export interface AeadDecryptOptions {
|
|
11
|
+
key: string | Uint8Array;
|
|
12
|
+
ciphertext: string;
|
|
13
|
+
aad?: Uint8Array;
|
|
14
|
+
}
|
|
15
|
+
export declare function aeadEncrypt(options: AeadEncryptOptions): AeadEncryptResult;
|
|
16
|
+
export declare function aeadDecrypt(options: AeadDecryptOptions): Uint8Array;
|
|
17
|
+
//# sourceMappingURL=aead.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aead.d.ts","sourceRoot":"","sources":["../../src/modern/aead.ts"],"names":[],"mappings":"AAmBA,MAAM,WAAW,iBAAiB;IAEhC,UAAU,EAAE,MAAM,CAAC;IAEnB,SAAS,EAAE,oBAAoB,CAAC;CACjC;AAGD,MAAM,WAAW,kBAAkB;IAEjC,GAAG,EAAE,MAAM,GAAG,UAAU,CAAC;IAEzB,SAAS,EAAE,MAAM,GAAG,UAAU,CAAC;IAE/B,GAAG,CAAC,EAAE,UAAU,CAAC;CAClB;AAGD,MAAM,WAAW,kBAAkB;IAEjC,GAAG,EAAE,MAAM,GAAG,UAAU,CAAC;IAEzB,UAAU,EAAE,MAAM,CAAC;IAEnB,GAAG,CAAC,EAAE,UAAU,CAAC;CAClB;AA4BD,wBAAgB,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,iBAAiB,CAqB1E;AAOD,wBAAgB,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,UAAU,CAgBnE"}
|