@taquito/signer 12.0.3 → 12.1.1
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/dist/lib/ec-key.js +1 -1
- package/dist/lib/ec-key.js.map +1 -1
- package/dist/lib/ed-key.js +2 -2
- package/dist/lib/ed-key.js.map +1 -1
- package/dist/lib/taquito-signer.js +15 -3
- package/dist/lib/taquito-signer.js.map +1 -1
- package/dist/lib/version.js +2 -2
- package/dist/taquito-signer.es6.js +20 -9
- package/dist/taquito-signer.es6.js.map +1 -1
- package/dist/taquito-signer.umd.js +19 -7
- package/dist/taquito-signer.umd.js.map +1 -1
- package/dist/types/taquito-signer.d.ts +9 -0
- package/package.json +4 -4
package/dist/lib/ec-key.js
CHANGED
|
@@ -44,7 +44,7 @@ class ECKey {
|
|
|
44
44
|
this.key = key;
|
|
45
45
|
const keyPrefix = key.substr(0, encrypted ? 5 : 4);
|
|
46
46
|
if (!utils_1.isValidPrefix(keyPrefix)) {
|
|
47
|
-
throw new
|
|
47
|
+
throw new utils_1.InvalidKeyError(key, 'Key contains invalid prefix');
|
|
48
48
|
}
|
|
49
49
|
this._key = decrypt(utils_1.b58cdecode(this.key, utils_1.prefix[keyPrefix]));
|
|
50
50
|
const keyPair = new elliptic_1.default.ec(this.curve).keyFromPrivate(this._key);
|
package/dist/lib/ec-key.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ec-key.js","sourceRoot":"","sources":["../../src/ec-key.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,gDAA0C;AAC1C,
|
|
1
|
+
{"version":3,"file":"ec-key.js","sourceRoot":"","sources":["../../src/ec-key.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/ed-key.js
CHANGED
|
@@ -28,12 +28,12 @@ class Tz1 {
|
|
|
28
28
|
this.key = key;
|
|
29
29
|
const keyPrefix = key.substr(0, encrypted ? 5 : 4);
|
|
30
30
|
if (!utils_1.isValidPrefix(keyPrefix)) {
|
|
31
|
-
throw new
|
|
31
|
+
throw new utils_1.InvalidKeyError(key, 'Key contains invalid prefix');
|
|
32
32
|
}
|
|
33
33
|
this._key = decrypt(utils_1.b58cdecode(this.key, utils_1.prefix[keyPrefix]));
|
|
34
34
|
this._publicKey = this._key.slice(32);
|
|
35
35
|
if (!this._key) {
|
|
36
|
-
throw new
|
|
36
|
+
throw new utils_1.InvalidKeyError(key, 'Unable to decode');
|
|
37
37
|
}
|
|
38
38
|
this.isInit = this.init();
|
|
39
39
|
}
|
package/dist/lib/ed-key.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ed-key.js","sourceRoot":"","sources":["../../src/ed-key.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,gDAA0C;AAC1C,gDAAmE;AACnE,
|
|
1
|
+
{"version":3,"file":"ed-key.js","sourceRoot":"","sources":["../../src/ed-key.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,7 +19,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
19
19
|
});
|
|
20
20
|
};
|
|
21
21
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
-
exports.InMemorySigner = exports.VERSION = void 0;
|
|
22
|
+
exports.InMemorySigner = exports.InvalidPassphraseError = exports.VERSION = void 0;
|
|
23
23
|
/**
|
|
24
24
|
* @packageDocumentation
|
|
25
25
|
* @module @taquito/signer
|
|
@@ -35,6 +35,18 @@ const mnemonicToSeedSync_1 = require("./mnemonicToSeedSync");
|
|
|
35
35
|
__exportStar(require("./import-key"), exports);
|
|
36
36
|
var version_1 = require("./version");
|
|
37
37
|
Object.defineProperty(exports, "VERSION", { enumerable: true, get: function () { return version_1.VERSION; } });
|
|
38
|
+
/**
|
|
39
|
+
* @category Error
|
|
40
|
+
* @description Error that indicates an invalid passphrase being passed or used
|
|
41
|
+
*/
|
|
42
|
+
class InvalidPassphraseError extends Error {
|
|
43
|
+
constructor(message) {
|
|
44
|
+
super(message);
|
|
45
|
+
this.message = message;
|
|
46
|
+
this.name = 'InvalidPassphraseError';
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
exports.InvalidPassphraseError = InvalidPassphraseError;
|
|
38
50
|
/**
|
|
39
51
|
* @description A local implementation of the signer. Will represent a Tezos account and be able to produce signature in its behalf
|
|
40
52
|
*
|
|
@@ -53,7 +65,7 @@ class InMemorySigner {
|
|
|
53
65
|
let decrypt = (k) => k;
|
|
54
66
|
if (encrypted) {
|
|
55
67
|
if (!passphrase) {
|
|
56
|
-
throw new
|
|
68
|
+
throw new InvalidPassphraseError('Encrypted key provided without a passphrase.');
|
|
57
69
|
}
|
|
58
70
|
decrypt = (constructedKey) => {
|
|
59
71
|
const salt = typedarray_to_buffer_1.default(constructedKey.slice(0, 8));
|
|
@@ -76,7 +88,7 @@ class InMemorySigner {
|
|
|
76
88
|
this._key = new ec_key_1.Tz3(key, encrypted, decrypt);
|
|
77
89
|
break;
|
|
78
90
|
default:
|
|
79
|
-
throw new
|
|
91
|
+
throw new utils_1.InvalidKeyError(key, 'Unsupported key type');
|
|
80
92
|
}
|
|
81
93
|
}
|
|
82
94
|
static fromFundraiser(email, password, mnemonic) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taquito-signer.js","sourceRoot":"","sources":["../../src/taquito-signer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA;;;GAGG;AACH,0CAAgD;AAChD,gDAA0C;AAC1C,
|
|
1
|
+
{"version":3,"file":"taquito-signer.js","sourceRoot":"","sources":["../../src/taquito-signer.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/version.js
CHANGED
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.VERSION = void 0;
|
|
4
4
|
// IMPORTANT: THIS FILE IS AUTO GENERATED! DO NOT MANUALLY EDIT OR CHECKIN!
|
|
5
5
|
exports.VERSION = {
|
|
6
|
-
"commitHash": "
|
|
7
|
-
"version": "12.
|
|
6
|
+
"commitHash": "38da814ec2bb4e81c7ad5a45b6b183a4d0b8dc25",
|
|
7
|
+
"version": "12.1.1"
|
|
8
8
|
};
|
|
9
9
|
//# sourceMappingURL=version.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { openSecretBox } from '@stablelib/nacl';
|
|
2
2
|
import { hash } from '@stablelib/blake2b';
|
|
3
|
-
import { isValidPrefix, b58cdecode, prefix, buf2hex, b58cencode, hex2buf, mergebuf } from '@taquito/utils';
|
|
3
|
+
import { isValidPrefix, InvalidKeyError, b58cdecode, prefix, buf2hex, b58cencode, hex2buf, mergebuf } from '@taquito/utils';
|
|
4
4
|
import toBuffer from 'typedarray-to-buffer';
|
|
5
5
|
import { generateKeyPairFromSeed, sign } from '@stablelib/ed25519';
|
|
6
6
|
import elliptic from 'elliptic';
|
|
@@ -45,12 +45,12 @@ class Tz1 {
|
|
|
45
45
|
this.key = key;
|
|
46
46
|
const keyPrefix = key.substr(0, encrypted ? 5 : 4);
|
|
47
47
|
if (!isValidPrefix(keyPrefix)) {
|
|
48
|
-
throw new
|
|
48
|
+
throw new InvalidKeyError(key, 'Key contains invalid prefix');
|
|
49
49
|
}
|
|
50
50
|
this._key = decrypt(b58cdecode(this.key, prefix[keyPrefix]));
|
|
51
51
|
this._publicKey = this._key.slice(32);
|
|
52
52
|
if (!this._key) {
|
|
53
|
-
throw new
|
|
53
|
+
throw new InvalidKeyError(key, 'Unable to decode');
|
|
54
54
|
}
|
|
55
55
|
this.isInit = this.init();
|
|
56
56
|
}
|
|
@@ -145,7 +145,7 @@ class ECKey {
|
|
|
145
145
|
this.key = key;
|
|
146
146
|
const keyPrefix = key.substr(0, encrypted ? 5 : 4);
|
|
147
147
|
if (!isValidPrefix(keyPrefix)) {
|
|
148
|
-
throw new
|
|
148
|
+
throw new InvalidKeyError(key, 'Key contains invalid prefix');
|
|
149
149
|
}
|
|
150
150
|
this._key = decrypt(b58cdecode(this.key, prefix[keyPrefix]));
|
|
151
151
|
const keyPair = new elliptic.ec(this.curve).keyFromPrivate(this._key);
|
|
@@ -266,10 +266,21 @@ function importKey(toolkit, privateKeyOrEmail, passphrase, mnemonic, secret) {
|
|
|
266
266
|
|
|
267
267
|
// IMPORTANT: THIS FILE IS AUTO GENERATED! DO NOT MANUALLY EDIT OR CHECKIN!
|
|
268
268
|
const VERSION = {
|
|
269
|
-
"commitHash": "
|
|
270
|
-
"version": "12.
|
|
269
|
+
"commitHash": "38da814ec2bb4e81c7ad5a45b6b183a4d0b8dc25",
|
|
270
|
+
"version": "12.1.1"
|
|
271
271
|
};
|
|
272
272
|
|
|
273
|
+
/**
|
|
274
|
+
* @category Error
|
|
275
|
+
* @description Error that indicates an invalid passphrase being passed or used
|
|
276
|
+
*/
|
|
277
|
+
class InvalidPassphraseError extends Error {
|
|
278
|
+
constructor(message) {
|
|
279
|
+
super(message);
|
|
280
|
+
this.message = message;
|
|
281
|
+
this.name = 'InvalidPassphraseError';
|
|
282
|
+
}
|
|
283
|
+
}
|
|
273
284
|
/**
|
|
274
285
|
* @description A local implementation of the signer. Will represent a Tezos account and be able to produce signature in its behalf
|
|
275
286
|
*
|
|
@@ -288,7 +299,7 @@ class InMemorySigner {
|
|
|
288
299
|
let decrypt = (k) => k;
|
|
289
300
|
if (encrypted) {
|
|
290
301
|
if (!passphrase) {
|
|
291
|
-
throw new
|
|
302
|
+
throw new InvalidPassphraseError('Encrypted key provided without a passphrase.');
|
|
292
303
|
}
|
|
293
304
|
decrypt = (constructedKey) => {
|
|
294
305
|
const salt = toBuffer(constructedKey.slice(0, 8));
|
|
@@ -311,7 +322,7 @@ class InMemorySigner {
|
|
|
311
322
|
this._key = new Tz3(key, encrypted, decrypt);
|
|
312
323
|
break;
|
|
313
324
|
default:
|
|
314
|
-
throw new
|
|
325
|
+
throw new InvalidKeyError(key, 'Unsupported key type');
|
|
315
326
|
}
|
|
316
327
|
}
|
|
317
328
|
static fromFundraiser(email, password, mnemonic) {
|
|
@@ -365,5 +376,5 @@ class InMemorySigner {
|
|
|
365
376
|
}
|
|
366
377
|
}
|
|
367
378
|
|
|
368
|
-
export { InMemorySigner, VERSION, importKey };
|
|
379
|
+
export { InMemorySigner, InvalidPassphraseError, VERSION, importKey };
|
|
369
380
|
//# sourceMappingURL=taquito-signer.es6.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taquito-signer.es6.js","sources":["../src/ed-key.ts","../src/ec-key.ts","../src/mnemonicToSeedSync.ts","../src/import-key.ts","../src/version.ts","../src/taquito-signer.ts"],"sourcesContent":["import { hash } from '@stablelib/blake2b';\nimport { generateKeyPairFromSeed, sign } from '@stablelib/ed25519';\nimport { b58cencode, b58cdecode, prefix, buf2hex, isValidPrefix } from '@taquito/utils';\nimport toBuffer from 'typedarray-to-buffer';\n\n/**\n * @description Provide signing logic for ed25519 curve based key (tz1)\n */\nexport class Tz1 {\n private _key: Uint8Array;\n private _publicKey: Uint8Array;\n private isInit: Promise<boolean>;\n\n /**\n *\n * @param key Encoded private key\n * @param encrypted Is the private key encrypted\n * @param decrypt Decrypt function\n */\n constructor(private key: string, encrypted: boolean, decrypt: (k: any) => any) {\n const keyPrefix = key.substr(0, encrypted ? 5 : 4);\n if (!isValidPrefix(keyPrefix)) {\n throw new Error('key contains invalid prefix');\n }\n\n this._key = decrypt(b58cdecode(this.key, prefix[keyPrefix]));\n this._publicKey = this._key.slice(32);\n\n if (!this._key) {\n throw new Error('Unable to decode key');\n }\n\n this.isInit = this.init();\n }\n\n private async init() {\n if (this._key.length !== 64) {\n const { publicKey, secretKey } = generateKeyPairFromSeed(new Uint8Array(this._key));\n this._publicKey = publicKey;\n this._key = secretKey;\n }\n return true;\n }\n\n /**\n *\n * @param bytes Bytes to sign\n * @param bytesHash Blake2b hash of the bytes to sign\n */\n async sign(bytes: string, bytesHash: Uint8Array) {\n await this.isInit;\n const signature = sign(\n new Uint8Array(this._key), \n new Uint8Array(bytesHash)\n );\n const signatureBuffer = toBuffer(signature);\n const sbytes = bytes + buf2hex(signatureBuffer);\n\n return {\n bytes,\n sig: b58cencode(signature, prefix.sig),\n prefixSig: b58cencode(signature, prefix.edsig),\n sbytes,\n };\n }\n\n /**\n * @returns Encoded public key\n */\n async publicKey(): Promise<string> {\n await this.isInit;\n return b58cencode(this._publicKey, prefix['edpk']);\n }\n\n /**\n * @returns Encoded public key hash\n */\n async publicKeyHash(): Promise<string> {\n await this.isInit;\n return b58cencode(hash(new Uint8Array(this._publicKey), 20), prefix.tz1);\n }\n\n /**\n * @returns Encoded private key\n */\n async secretKey(): Promise<string> {\n await this.isInit;\n let key = this._key;\n const { secretKey } = generateKeyPairFromSeed(\n new Uint8Array(key).slice(0, 32)\n );\n key = toBuffer(secretKey);\n\n return b58cencode(key, prefix[`edsk`]);\n }\n}\n","import { hash } from '@stablelib/blake2b';\nimport { b58cencode, b58cdecode, prefix, isValidPrefix } from '@taquito/utils';\nimport toBuffer from 'typedarray-to-buffer';\nimport elliptic from 'elliptic';\n\nconst pref = {\n p256: {\n pk: prefix['p2pk'],\n sk: prefix['p2sk'],\n pkh: prefix.tz3,\n sig: prefix.p2sig,\n },\n secp256k1: {\n pk: prefix['sppk'],\n sk: prefix['spsk'],\n pkh: prefix.tz2,\n sig: prefix.spsig,\n },\n};\n\n/**\n * @description Provide signing logic for elliptic curve based key (tz2, tz3)\n */\nexport class ECKey {\n private _key: Uint8Array;\n private _publicKey: Uint8Array;\n\n /**\n *\n * @param curve Curve to use with the key\n * @param key Encoded private key\n * @param encrypted Is the private key encrypted\n * @param decrypt Decrypt function\n */\n constructor(\n private curve: 'p256' | 'secp256k1',\n private key: string,\n encrypted: boolean,\n decrypt: (k: any) => any\n ) {\n const keyPrefix = key.substr(0, encrypted ? 5 : 4);\n if (!isValidPrefix(keyPrefix)) {\n throw new Error('key contains invalid prefix');\n }\n\n this._key = decrypt(b58cdecode(this.key, prefix[keyPrefix]));\n const keyPair = new elliptic.ec(this.curve).keyFromPrivate(this._key);\n const keyPairY = keyPair.getPublic().getY().toArray();\n const parityByte = keyPairY.length < 32 ? keyPairY[keyPairY.length - 1] : keyPairY[31];\n const pref = parityByte % 2 ? 3 : 2;\n const pad = new Array(32).fill(0);\n this._publicKey = toBuffer(\n new Uint8Array([pref].concat(pad.concat(keyPair.getPublic().getX().toArray()).slice(-32)))\n );\n }\n\n /**\n *\n * @param bytes Bytes to sign\n * @param bytesHash Blake2b hash of the bytes to sign\n */\n async sign(bytes: string, bytesHash: Uint8Array) {\n const key = new elliptic.ec(this.curve).keyFromPrivate(this._key);\n const sig = key.sign(bytesHash, { canonical: true });\n const signature = sig.r.toString('hex', 64) + sig.s.toString('hex', 64);\n\n const sbytes = bytes + signature;\n return {\n bytes,\n sig: b58cencode(signature, prefix.sig),\n prefixSig: b58cencode(signature, pref[this.curve].sig),\n sbytes,\n };\n }\n\n /**\n * @returns Encoded public key\n */\n async publicKey(): Promise<string> {\n return b58cencode(this._publicKey, pref[this.curve].pk);\n }\n\n /**\n * @returns Encoded public key hash\n */\n async publicKeyHash(): Promise<string> {\n return b58cencode(\n hash(new Uint8Array(this._publicKey), 20), \n pref[this.curve].pkh\n );\n }\n\n /**\n * @returns Encoded private key\n */\n async secretKey(): Promise<string> {\n const key = this._key;\n\n return b58cencode(key, pref[this.curve].sk);\n }\n}\n\n/**\n * @description Tz3 key class using the p256 curve\n */\nexport const Tz3 = ECKey.bind(null, 'p256');\n\n/**\n * @description Tz3 key class using the secp256k1 curve\n */\nexport const Tz2 = ECKey.bind(null, 'secp256k1');\n","/* Copyright (c) 2014, Wei Lu <luwei.here@gmail.com> and Daniel Cousens <email@dcousens.com>\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted, provided that the above\ncopyright notice and this permission notice appear in all copies. */\n\nimport pbkdf2 from 'pbkdf2';\n\nexport function mnemonicToSeedSync(mnemonic: string, password: string) {\n const mnemonicBuffer = Buffer.from(normalize(mnemonic), 'utf8');\n const saltBuffer = Buffer.from(salt(normalize(password)), 'utf8');\n return pbkdf2.pbkdf2Sync(mnemonicBuffer, saltBuffer, 2048, 64, 'sha512');\n}\n\nfunction normalize(str: string) {\n return (str || '').normalize('NFKD');\n}\nfunction salt(password: string) {\n return 'mnemonic' + (password || '');\n}\n","import { InMemorySigner } from './taquito-signer';\nimport { TezosToolkit } from '@taquito/taquito';\n\n/**\n *\n * @description Import a key to sign operation with the side-effect of setting the Tezos instance to use the InMemorySigner provider\n *\n * @param toolkit The toolkit instance to attach a signer\n * @param privateKeyOrEmail Key to load in memory\n * @param passphrase If the key is encrypted passphrase to decrypt it\n * @param mnemonic Faucet mnemonic\n * @param secret Faucet secret\n */\nexport async function importKey(\n toolkit: TezosToolkit,\n privateKeyOrEmail: string,\n passphrase?: string,\n mnemonic?: string,\n secret?: string\n) {\n if (privateKeyOrEmail && passphrase && mnemonic && secret) {\n const signer = InMemorySigner.fromFundraiser(privateKeyOrEmail, passphrase, mnemonic);\n toolkit.setProvider({ signer });\n const pkh = await signer.publicKeyHash();\n let op;\n try {\n op = await toolkit.tz.activate(pkh, secret);\n } catch (ex: any) {\n const isInvalidActivationError = ex && ex.body && /Invalid activation/.test(ex.body);\n if (!isInvalidActivationError) {\n throw ex;\n }\n }\n if (op) {\n await op.confirmation();\n }\n } else {\n // Fallback to regular import\n const signer = await InMemorySigner.fromSecretKey(privateKeyOrEmail, passphrase);\n toolkit.setProvider({ signer });\n }\n}\n","\n// IMPORTANT: THIS FILE IS AUTO GENERATED! DO NOT MANUALLY EDIT OR CHECKIN!\nexport const VERSION = {\n \"commitHash\": \"02ebaa8ef1920e8b6a81f0d0978f28cff0a2d256\",\n \"version\": \"12.0.3\"\n};\n","/**\n * @packageDocumentation\n * @module @taquito/signer\n */\nimport { openSecretBox } from '@stablelib/nacl';\nimport { hash } from '@stablelib/blake2b';\nimport { hex2buf, mergebuf, b58cencode, prefix } from '@taquito/utils';\nimport toBuffer from 'typedarray-to-buffer';\nimport { Tz1 } from './ed-key';\nimport { Tz2, ECKey, Tz3 } from './ec-key';\nimport pbkdf2 from 'pbkdf2';\nimport { mnemonicToSeedSync } from './mnemonicToSeedSync';\n\nexport * from './import-key';\nexport { VERSION } from './version';\n\n/**\n * @description A local implementation of the signer. Will represent a Tezos account and be able to produce signature in its behalf\n *\n * @warn If running in production and dealing with tokens that have real value, it is strongly recommended to use a HSM backed signer so that private key material is not stored in memory or on disk\n *\n */\nexport class InMemorySigner {\n private _key!: Tz1 | ECKey;\n\n static fromFundraiser(email: string, password: string, mnemonic: string) {\n const seed = mnemonicToSeedSync(mnemonic, `${email}${password}`);\n const key = b58cencode(seed.slice(0, 32), prefix.edsk2);\n return new InMemorySigner(key);\n }\n\n static async fromSecretKey(key: string, passphrase?: string) {\n return new InMemorySigner(key, passphrase);\n }\n\n /**\n *\n * @param key Encoded private key\n * @param passphrase Passphrase to decrypt the private key if it is encrypted\n *\n */\n constructor(key: string, passphrase?: string) {\n const encrypted = key.substring(2, 3) === 'e';\n\n let decrypt = (k: any) => k;\n\n if (encrypted) {\n if (!passphrase) {\n throw new Error('Encrypted key provided without a passphrase.');\n }\n\n decrypt = (constructedKey: Uint8Array) => {\n const salt = toBuffer(constructedKey.slice(0, 8));\n const encryptedSk = constructedKey.slice(8);\n const encryptionKey = pbkdf2.pbkdf2Sync(passphrase, salt, 32768, 32, 'sha512');\n\n return openSecretBox(\n new Uint8Array(encryptionKey), \n new Uint8Array(24), \n new Uint8Array(encryptedSk)\n );\n };\n }\n\n switch (key.substr(0, 4)) {\n case 'edes':\n case 'edsk':\n this._key = new Tz1(key, encrypted, decrypt);\n break;\n case 'spsk':\n case 'spes':\n this._key = new Tz2(key, encrypted, decrypt);\n break;\n case 'p2sk':\n case 'p2es':\n this._key = new Tz3(key, encrypted, decrypt);\n break;\n default:\n throw new Error('Unsupported key type');\n }\n }\n\n /**\n *\n * @param bytes Bytes to sign\n * @param watermark Watermark to append to the bytes\n */\n async sign(bytes: string, watermark?: Uint8Array) {\n let bb = hex2buf(bytes);\n if (typeof watermark !== 'undefined') {\n bb = mergebuf(watermark, bb);\n }\n\n const bytesHash = hash(bb, 32);\n\n return this._key.sign(bytes, bytesHash);\n }\n\n /**\n * @returns Encoded public key\n */\n async publicKey(): Promise<string> {\n return this._key.publicKey();\n }\n\n /**\n * @returns Encoded public key hash\n */\n async publicKeyHash(): Promise<string> {\n return this._key.publicKeyHash();\n }\n\n /**\n * @returns Encoded private key\n */\n async secretKey(): Promise<string> {\n return this._key.secretKey();\n }\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"taquito-signer.es6.js","sources":["../src/ed-key.ts","../src/ec-key.ts","../src/mnemonicToSeedSync.ts","../src/import-key.ts","../src/version.ts","../src/taquito-signer.ts"],"sourcesContent":["import { hash } from '@stablelib/blake2b';\nimport { generateKeyPairFromSeed, sign } from '@stablelib/ed25519';\nimport {\n b58cencode,\n b58cdecode,\n prefix,\n buf2hex,\n isValidPrefix,\n InvalidKeyError,\n} from '@taquito/utils';\nimport toBuffer from 'typedarray-to-buffer';\n\n/**\n * @description Provide signing logic for ed25519 curve based key (tz1)\n */\nexport class Tz1 {\n private _key: Uint8Array;\n private _publicKey: Uint8Array;\n private isInit: Promise<boolean>;\n\n /**\n *\n * @param key Encoded private key\n * @param encrypted Is the private key encrypted\n * @param decrypt Decrypt function\n */\n constructor(private key: string, encrypted: boolean, decrypt: (k: any) => any) {\n const keyPrefix = key.substr(0, encrypted ? 5 : 4);\n if (!isValidPrefix(keyPrefix)) {\n throw new InvalidKeyError(key, 'Key contains invalid prefix');\n }\n\n this._key = decrypt(b58cdecode(this.key, prefix[keyPrefix]));\n this._publicKey = this._key.slice(32);\n\n if (!this._key) {\n throw new InvalidKeyError(key, 'Unable to decode');\n }\n\n this.isInit = this.init();\n }\n\n private async init() {\n if (this._key.length !== 64) {\n const { publicKey, secretKey } = generateKeyPairFromSeed(new Uint8Array(this._key));\n this._publicKey = publicKey;\n this._key = secretKey;\n }\n return true;\n }\n\n /**\n *\n * @param bytes Bytes to sign\n * @param bytesHash Blake2b hash of the bytes to sign\n */\n async sign(bytes: string, bytesHash: Uint8Array) {\n await this.isInit;\n const signature = sign(new Uint8Array(this._key), new Uint8Array(bytesHash));\n const signatureBuffer = toBuffer(signature);\n const sbytes = bytes + buf2hex(signatureBuffer);\n\n return {\n bytes,\n sig: b58cencode(signature, prefix.sig),\n prefixSig: b58cencode(signature, prefix.edsig),\n sbytes,\n };\n }\n\n /**\n * @returns Encoded public key\n */\n async publicKey(): Promise<string> {\n await this.isInit;\n return b58cencode(this._publicKey, prefix['edpk']);\n }\n\n /**\n * @returns Encoded public key hash\n */\n async publicKeyHash(): Promise<string> {\n await this.isInit;\n return b58cencode(hash(new Uint8Array(this._publicKey), 20), prefix.tz1);\n }\n\n /**\n * @returns Encoded private key\n */\n async secretKey(): Promise<string> {\n await this.isInit;\n let key = this._key;\n const { secretKey } = generateKeyPairFromSeed(new Uint8Array(key).slice(0, 32));\n key = toBuffer(secretKey);\n\n return b58cencode(key, prefix[`edsk`]);\n }\n}\n","import { hash } from '@stablelib/blake2b';\nimport { b58cencode, b58cdecode, prefix, isValidPrefix, InvalidKeyError } from '@taquito/utils';\nimport toBuffer from 'typedarray-to-buffer';\nimport elliptic from 'elliptic';\n\nconst pref = {\n p256: {\n pk: prefix['p2pk'],\n sk: prefix['p2sk'],\n pkh: prefix.tz3,\n sig: prefix.p2sig,\n },\n secp256k1: {\n pk: prefix['sppk'],\n sk: prefix['spsk'],\n pkh: prefix.tz2,\n sig: prefix.spsig,\n },\n};\n\n/**\n * @description Provide signing logic for elliptic curve based key (tz2, tz3)\n */\nexport class ECKey {\n private _key: Uint8Array;\n private _publicKey: Uint8Array;\n\n /**\n *\n * @param curve Curve to use with the key\n * @param key Encoded private key\n * @param encrypted Is the private key encrypted\n * @param decrypt Decrypt function\n */\n constructor(\n private curve: 'p256' | 'secp256k1',\n private key: string,\n encrypted: boolean,\n decrypt: (k: any) => any\n ) {\n const keyPrefix = key.substr(0, encrypted ? 5 : 4);\n if (!isValidPrefix(keyPrefix)) {\n throw new InvalidKeyError(key, 'Key contains invalid prefix');\n }\n\n this._key = decrypt(b58cdecode(this.key, prefix[keyPrefix]));\n const keyPair = new elliptic.ec(this.curve).keyFromPrivate(this._key);\n const keyPairY = keyPair.getPublic().getY().toArray();\n const parityByte = keyPairY.length < 32 ? keyPairY[keyPairY.length - 1] : keyPairY[31];\n const pref = parityByte % 2 ? 3 : 2;\n const pad = new Array(32).fill(0);\n this._publicKey = toBuffer(\n new Uint8Array([pref].concat(pad.concat(keyPair.getPublic().getX().toArray()).slice(-32)))\n );\n }\n\n /**\n *\n * @param bytes Bytes to sign\n * @param bytesHash Blake2b hash of the bytes to sign\n */\n async sign(bytes: string, bytesHash: Uint8Array) {\n const key = new elliptic.ec(this.curve).keyFromPrivate(this._key);\n const sig = key.sign(bytesHash, { canonical: true });\n const signature = sig.r.toString('hex', 64) + sig.s.toString('hex', 64);\n\n const sbytes = bytes + signature;\n return {\n bytes,\n sig: b58cencode(signature, prefix.sig),\n prefixSig: b58cencode(signature, pref[this.curve].sig),\n sbytes,\n };\n }\n\n /**\n * @returns Encoded public key\n */\n async publicKey(): Promise<string> {\n return b58cencode(this._publicKey, pref[this.curve].pk);\n }\n\n /**\n * @returns Encoded public key hash\n */\n async publicKeyHash(): Promise<string> {\n return b58cencode(hash(new Uint8Array(this._publicKey), 20), pref[this.curve].pkh);\n }\n\n /**\n * @returns Encoded private key\n */\n async secretKey(): Promise<string> {\n const key = this._key;\n\n return b58cencode(key, pref[this.curve].sk);\n }\n}\n\n/**\n * @description Tz3 key class using the p256 curve\n */\nexport const Tz3 = ECKey.bind(null, 'p256');\n\n/**\n * @description Tz3 key class using the secp256k1 curve\n */\nexport const Tz2 = ECKey.bind(null, 'secp256k1');\n","/* Copyright (c) 2014, Wei Lu <luwei.here@gmail.com> and Daniel Cousens <email@dcousens.com>\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted, provided that the above\ncopyright notice and this permission notice appear in all copies. */\n\nimport pbkdf2 from 'pbkdf2';\n\nexport function mnemonicToSeedSync(mnemonic: string, password: string) {\n const mnemonicBuffer = Buffer.from(normalize(mnemonic), 'utf8');\n const saltBuffer = Buffer.from(salt(normalize(password)), 'utf8');\n return pbkdf2.pbkdf2Sync(mnemonicBuffer, saltBuffer, 2048, 64, 'sha512');\n}\n\nfunction normalize(str: string) {\n return (str || '').normalize('NFKD');\n}\nfunction salt(password: string) {\n return 'mnemonic' + (password || '');\n}\n","import { InMemorySigner } from './taquito-signer';\nimport { TezosToolkit } from '@taquito/taquito';\n\n/**\n *\n * @description Import a key to sign operation with the side-effect of setting the Tezos instance to use the InMemorySigner provider\n *\n * @param toolkit The toolkit instance to attach a signer\n * @param privateKeyOrEmail Key to load in memory\n * @param passphrase If the key is encrypted passphrase to decrypt it\n * @param mnemonic Faucet mnemonic\n * @param secret Faucet secret\n */\nexport async function importKey(\n toolkit: TezosToolkit,\n privateKeyOrEmail: string,\n passphrase?: string,\n mnemonic?: string,\n secret?: string\n) {\n if (privateKeyOrEmail && passphrase && mnemonic && secret) {\n const signer = InMemorySigner.fromFundraiser(privateKeyOrEmail, passphrase, mnemonic);\n toolkit.setProvider({ signer });\n const pkh = await signer.publicKeyHash();\n let op;\n try {\n op = await toolkit.tz.activate(pkh, secret);\n } catch (ex: any) {\n const isInvalidActivationError = ex && ex.body && /Invalid activation/.test(ex.body);\n if (!isInvalidActivationError) {\n throw ex;\n }\n }\n if (op) {\n await op.confirmation();\n }\n } else {\n // Fallback to regular import\n const signer = await InMemorySigner.fromSecretKey(privateKeyOrEmail, passphrase);\n toolkit.setProvider({ signer });\n }\n}\n","\n// IMPORTANT: THIS FILE IS AUTO GENERATED! DO NOT MANUALLY EDIT OR CHECKIN!\nexport const VERSION = {\n \"commitHash\": \"38da814ec2bb4e81c7ad5a45b6b183a4d0b8dc25\",\n \"version\": \"12.1.1\"\n};\n","/**\n * @packageDocumentation\n * @module @taquito/signer\n */\nimport { openSecretBox } from '@stablelib/nacl';\nimport { hash } from '@stablelib/blake2b';\nimport { hex2buf, mergebuf, b58cencode, prefix, InvalidKeyError } from '@taquito/utils';\nimport toBuffer from 'typedarray-to-buffer';\nimport { Tz1 } from './ed-key';\nimport { Tz2, ECKey, Tz3 } from './ec-key';\nimport pbkdf2 from 'pbkdf2';\nimport { mnemonicToSeedSync } from './mnemonicToSeedSync';\n\nexport * from './import-key';\nexport { VERSION } from './version';\n\n/**\n * @category Error\n * @description Error that indicates an invalid passphrase being passed or used\n */\nexport class InvalidPassphraseError extends Error {\n public name = 'InvalidPassphraseError';\n constructor(public message: string) {\n super(message);\n }\n}\n\n/**\n * @description A local implementation of the signer. Will represent a Tezos account and be able to produce signature in its behalf\n *\n * @warn If running in production and dealing with tokens that have real value, it is strongly recommended to use a HSM backed signer so that private key material is not stored in memory or on disk\n *\n */\nexport class InMemorySigner {\n private _key!: Tz1 | ECKey;\n\n static fromFundraiser(email: string, password: string, mnemonic: string) {\n const seed = mnemonicToSeedSync(mnemonic, `${email}${password}`);\n const key = b58cencode(seed.slice(0, 32), prefix.edsk2);\n return new InMemorySigner(key);\n }\n\n static async fromSecretKey(key: string, passphrase?: string) {\n return new InMemorySigner(key, passphrase);\n }\n\n /**\n *\n * @param key Encoded private key\n * @param passphrase Passphrase to decrypt the private key if it is encrypted\n *\n */\n constructor(key: string, passphrase?: string) {\n const encrypted = key.substring(2, 3) === 'e';\n\n let decrypt = (k: any) => k;\n\n if (encrypted) {\n if (!passphrase) {\n throw new InvalidPassphraseError('Encrypted key provided without a passphrase.');\n }\n\n decrypt = (constructedKey: Uint8Array) => {\n const salt = toBuffer(constructedKey.slice(0, 8));\n const encryptedSk = constructedKey.slice(8);\n const encryptionKey = pbkdf2.pbkdf2Sync(passphrase, salt, 32768, 32, 'sha512');\n\n return openSecretBox(\n new Uint8Array(encryptionKey),\n new Uint8Array(24),\n new Uint8Array(encryptedSk)\n );\n };\n }\n\n switch (key.substr(0, 4)) {\n case 'edes':\n case 'edsk':\n this._key = new Tz1(key, encrypted, decrypt);\n break;\n case 'spsk':\n case 'spes':\n this._key = new Tz2(key, encrypted, decrypt);\n break;\n case 'p2sk':\n case 'p2es':\n this._key = new Tz3(key, encrypted, decrypt);\n break;\n default:\n throw new InvalidKeyError(key, 'Unsupported key type');\n }\n }\n\n /**\n *\n * @param bytes Bytes to sign\n * @param watermark Watermark to append to the bytes\n */\n async sign(bytes: string, watermark?: Uint8Array) {\n let bb = hex2buf(bytes);\n if (typeof watermark !== 'undefined') {\n bb = mergebuf(watermark, bb);\n }\n\n const bytesHash = hash(bb, 32);\n\n return this._key.sign(bytes, bytesHash);\n }\n\n /**\n * @returns Encoded public key\n */\n async publicKey(): Promise<string> {\n return this._key.publicKey();\n }\n\n /**\n * @returns Encoded public key hash\n */\n async publicKeyHash(): Promise<string> {\n return this._key.publicKeyHash();\n }\n\n /**\n * @returns Encoded private key\n */\n async secretKey(): Promise<string> {\n return this._key.secretKey();\n }\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -49,12 +49,12 @@
|
|
|
49
49
|
this.key = key;
|
|
50
50
|
const keyPrefix = key.substr(0, encrypted ? 5 : 4);
|
|
51
51
|
if (!utils.isValidPrefix(keyPrefix)) {
|
|
52
|
-
throw new
|
|
52
|
+
throw new utils.InvalidKeyError(key, 'Key contains invalid prefix');
|
|
53
53
|
}
|
|
54
54
|
this._key = decrypt(utils.b58cdecode(this.key, utils.prefix[keyPrefix]));
|
|
55
55
|
this._publicKey = this._key.slice(32);
|
|
56
56
|
if (!this._key) {
|
|
57
|
-
throw new
|
|
57
|
+
throw new utils.InvalidKeyError(key, 'Unable to decode');
|
|
58
58
|
}
|
|
59
59
|
this.isInit = this.init();
|
|
60
60
|
}
|
|
@@ -149,7 +149,7 @@
|
|
|
149
149
|
this.key = key;
|
|
150
150
|
const keyPrefix = key.substr(0, encrypted ? 5 : 4);
|
|
151
151
|
if (!utils.isValidPrefix(keyPrefix)) {
|
|
152
|
-
throw new
|
|
152
|
+
throw new utils.InvalidKeyError(key, 'Key contains invalid prefix');
|
|
153
153
|
}
|
|
154
154
|
this._key = decrypt(utils.b58cdecode(this.key, utils.prefix[keyPrefix]));
|
|
155
155
|
const keyPair = new elliptic__default["default"].ec(this.curve).keyFromPrivate(this._key);
|
|
@@ -270,10 +270,21 @@
|
|
|
270
270
|
|
|
271
271
|
// IMPORTANT: THIS FILE IS AUTO GENERATED! DO NOT MANUALLY EDIT OR CHECKIN!
|
|
272
272
|
const VERSION = {
|
|
273
|
-
"commitHash": "
|
|
274
|
-
"version": "12.
|
|
273
|
+
"commitHash": "38da814ec2bb4e81c7ad5a45b6b183a4d0b8dc25",
|
|
274
|
+
"version": "12.1.1"
|
|
275
275
|
};
|
|
276
276
|
|
|
277
|
+
/**
|
|
278
|
+
* @category Error
|
|
279
|
+
* @description Error that indicates an invalid passphrase being passed or used
|
|
280
|
+
*/
|
|
281
|
+
class InvalidPassphraseError extends Error {
|
|
282
|
+
constructor(message) {
|
|
283
|
+
super(message);
|
|
284
|
+
this.message = message;
|
|
285
|
+
this.name = 'InvalidPassphraseError';
|
|
286
|
+
}
|
|
287
|
+
}
|
|
277
288
|
/**
|
|
278
289
|
* @description A local implementation of the signer. Will represent a Tezos account and be able to produce signature in its behalf
|
|
279
290
|
*
|
|
@@ -292,7 +303,7 @@
|
|
|
292
303
|
let decrypt = (k) => k;
|
|
293
304
|
if (encrypted) {
|
|
294
305
|
if (!passphrase) {
|
|
295
|
-
throw new
|
|
306
|
+
throw new InvalidPassphraseError('Encrypted key provided without a passphrase.');
|
|
296
307
|
}
|
|
297
308
|
decrypt = (constructedKey) => {
|
|
298
309
|
const salt = toBuffer__default["default"](constructedKey.slice(0, 8));
|
|
@@ -315,7 +326,7 @@
|
|
|
315
326
|
this._key = new Tz3(key, encrypted, decrypt);
|
|
316
327
|
break;
|
|
317
328
|
default:
|
|
318
|
-
throw new
|
|
329
|
+
throw new utils.InvalidKeyError(key, 'Unsupported key type');
|
|
319
330
|
}
|
|
320
331
|
}
|
|
321
332
|
static fromFundraiser(email, password, mnemonic) {
|
|
@@ -370,6 +381,7 @@
|
|
|
370
381
|
}
|
|
371
382
|
|
|
372
383
|
exports.InMemorySigner = InMemorySigner;
|
|
384
|
+
exports.InvalidPassphraseError = InvalidPassphraseError;
|
|
373
385
|
exports.VERSION = VERSION;
|
|
374
386
|
exports.importKey = importKey;
|
|
375
387
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taquito-signer.umd.js","sources":["../src/ed-key.ts","../src/ec-key.ts","../src/mnemonicToSeedSync.ts","../src/import-key.ts","../src/version.ts","../src/taquito-signer.ts"],"sourcesContent":["import { hash } from '@stablelib/blake2b';\nimport { generateKeyPairFromSeed, sign } from '@stablelib/ed25519';\nimport { b58cencode, b58cdecode, prefix, buf2hex, isValidPrefix } from '@taquito/utils';\nimport toBuffer from 'typedarray-to-buffer';\n\n/**\n * @description Provide signing logic for ed25519 curve based key (tz1)\n */\nexport class Tz1 {\n private _key: Uint8Array;\n private _publicKey: Uint8Array;\n private isInit: Promise<boolean>;\n\n /**\n *\n * @param key Encoded private key\n * @param encrypted Is the private key encrypted\n * @param decrypt Decrypt function\n */\n constructor(private key: string, encrypted: boolean, decrypt: (k: any) => any) {\n const keyPrefix = key.substr(0, encrypted ? 5 : 4);\n if (!isValidPrefix(keyPrefix)) {\n throw new Error('key contains invalid prefix');\n }\n\n this._key = decrypt(b58cdecode(this.key, prefix[keyPrefix]));\n this._publicKey = this._key.slice(32);\n\n if (!this._key) {\n throw new Error('Unable to decode key');\n }\n\n this.isInit = this.init();\n }\n\n private async init() {\n if (this._key.length !== 64) {\n const { publicKey, secretKey } = generateKeyPairFromSeed(new Uint8Array(this._key));\n this._publicKey = publicKey;\n this._key = secretKey;\n }\n return true;\n }\n\n /**\n *\n * @param bytes Bytes to sign\n * @param bytesHash Blake2b hash of the bytes to sign\n */\n async sign(bytes: string, bytesHash: Uint8Array) {\n await this.isInit;\n const signature = sign(\n new Uint8Array(this._key), \n new Uint8Array(bytesHash)\n );\n const signatureBuffer = toBuffer(signature);\n const sbytes = bytes + buf2hex(signatureBuffer);\n\n return {\n bytes,\n sig: b58cencode(signature, prefix.sig),\n prefixSig: b58cencode(signature, prefix.edsig),\n sbytes,\n };\n }\n\n /**\n * @returns Encoded public key\n */\n async publicKey(): Promise<string> {\n await this.isInit;\n return b58cencode(this._publicKey, prefix['edpk']);\n }\n\n /**\n * @returns Encoded public key hash\n */\n async publicKeyHash(): Promise<string> {\n await this.isInit;\n return b58cencode(hash(new Uint8Array(this._publicKey), 20), prefix.tz1);\n }\n\n /**\n * @returns Encoded private key\n */\n async secretKey(): Promise<string> {\n await this.isInit;\n let key = this._key;\n const { secretKey } = generateKeyPairFromSeed(\n new Uint8Array(key).slice(0, 32)\n );\n key = toBuffer(secretKey);\n\n return b58cencode(key, prefix[`edsk`]);\n }\n}\n","import { hash } from '@stablelib/blake2b';\nimport { b58cencode, b58cdecode, prefix, isValidPrefix } from '@taquito/utils';\nimport toBuffer from 'typedarray-to-buffer';\nimport elliptic from 'elliptic';\n\nconst pref = {\n p256: {\n pk: prefix['p2pk'],\n sk: prefix['p2sk'],\n pkh: prefix.tz3,\n sig: prefix.p2sig,\n },\n secp256k1: {\n pk: prefix['sppk'],\n sk: prefix['spsk'],\n pkh: prefix.tz2,\n sig: prefix.spsig,\n },\n};\n\n/**\n * @description Provide signing logic for elliptic curve based key (tz2, tz3)\n */\nexport class ECKey {\n private _key: Uint8Array;\n private _publicKey: Uint8Array;\n\n /**\n *\n * @param curve Curve to use with the key\n * @param key Encoded private key\n * @param encrypted Is the private key encrypted\n * @param decrypt Decrypt function\n */\n constructor(\n private curve: 'p256' | 'secp256k1',\n private key: string,\n encrypted: boolean,\n decrypt: (k: any) => any\n ) {\n const keyPrefix = key.substr(0, encrypted ? 5 : 4);\n if (!isValidPrefix(keyPrefix)) {\n throw new Error('key contains invalid prefix');\n }\n\n this._key = decrypt(b58cdecode(this.key, prefix[keyPrefix]));\n const keyPair = new elliptic.ec(this.curve).keyFromPrivate(this._key);\n const keyPairY = keyPair.getPublic().getY().toArray();\n const parityByte = keyPairY.length < 32 ? keyPairY[keyPairY.length - 1] : keyPairY[31];\n const pref = parityByte % 2 ? 3 : 2;\n const pad = new Array(32).fill(0);\n this._publicKey = toBuffer(\n new Uint8Array([pref].concat(pad.concat(keyPair.getPublic().getX().toArray()).slice(-32)))\n );\n }\n\n /**\n *\n * @param bytes Bytes to sign\n * @param bytesHash Blake2b hash of the bytes to sign\n */\n async sign(bytes: string, bytesHash: Uint8Array) {\n const key = new elliptic.ec(this.curve).keyFromPrivate(this._key);\n const sig = key.sign(bytesHash, { canonical: true });\n const signature = sig.r.toString('hex', 64) + sig.s.toString('hex', 64);\n\n const sbytes = bytes + signature;\n return {\n bytes,\n sig: b58cencode(signature, prefix.sig),\n prefixSig: b58cencode(signature, pref[this.curve].sig),\n sbytes,\n };\n }\n\n /**\n * @returns Encoded public key\n */\n async publicKey(): Promise<string> {\n return b58cencode(this._publicKey, pref[this.curve].pk);\n }\n\n /**\n * @returns Encoded public key hash\n */\n async publicKeyHash(): Promise<string> {\n return b58cencode(\n hash(new Uint8Array(this._publicKey), 20), \n pref[this.curve].pkh\n );\n }\n\n /**\n * @returns Encoded private key\n */\n async secretKey(): Promise<string> {\n const key = this._key;\n\n return b58cencode(key, pref[this.curve].sk);\n }\n}\n\n/**\n * @description Tz3 key class using the p256 curve\n */\nexport const Tz3 = ECKey.bind(null, 'p256');\n\n/**\n * @description Tz3 key class using the secp256k1 curve\n */\nexport const Tz2 = ECKey.bind(null, 'secp256k1');\n","/* Copyright (c) 2014, Wei Lu <luwei.here@gmail.com> and Daniel Cousens <email@dcousens.com>\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted, provided that the above\ncopyright notice and this permission notice appear in all copies. */\n\nimport pbkdf2 from 'pbkdf2';\n\nexport function mnemonicToSeedSync(mnemonic: string, password: string) {\n const mnemonicBuffer = Buffer.from(normalize(mnemonic), 'utf8');\n const saltBuffer = Buffer.from(salt(normalize(password)), 'utf8');\n return pbkdf2.pbkdf2Sync(mnemonicBuffer, saltBuffer, 2048, 64, 'sha512');\n}\n\nfunction normalize(str: string) {\n return (str || '').normalize('NFKD');\n}\nfunction salt(password: string) {\n return 'mnemonic' + (password || '');\n}\n","import { InMemorySigner } from './taquito-signer';\nimport { TezosToolkit } from '@taquito/taquito';\n\n/**\n *\n * @description Import a key to sign operation with the side-effect of setting the Tezos instance to use the InMemorySigner provider\n *\n * @param toolkit The toolkit instance to attach a signer\n * @param privateKeyOrEmail Key to load in memory\n * @param passphrase If the key is encrypted passphrase to decrypt it\n * @param mnemonic Faucet mnemonic\n * @param secret Faucet secret\n */\nexport async function importKey(\n toolkit: TezosToolkit,\n privateKeyOrEmail: string,\n passphrase?: string,\n mnemonic?: string,\n secret?: string\n) {\n if (privateKeyOrEmail && passphrase && mnemonic && secret) {\n const signer = InMemorySigner.fromFundraiser(privateKeyOrEmail, passphrase, mnemonic);\n toolkit.setProvider({ signer });\n const pkh = await signer.publicKeyHash();\n let op;\n try {\n op = await toolkit.tz.activate(pkh, secret);\n } catch (ex: any) {\n const isInvalidActivationError = ex && ex.body && /Invalid activation/.test(ex.body);\n if (!isInvalidActivationError) {\n throw ex;\n }\n }\n if (op) {\n await op.confirmation();\n }\n } else {\n // Fallback to regular import\n const signer = await InMemorySigner.fromSecretKey(privateKeyOrEmail, passphrase);\n toolkit.setProvider({ signer });\n }\n}\n","\n// IMPORTANT: THIS FILE IS AUTO GENERATED! DO NOT MANUALLY EDIT OR CHECKIN!\nexport const VERSION = {\n \"commitHash\": \"02ebaa8ef1920e8b6a81f0d0978f28cff0a2d256\",\n \"version\": \"12.0.3\"\n};\n","/**\n * @packageDocumentation\n * @module @taquito/signer\n */\nimport { openSecretBox } from '@stablelib/nacl';\nimport { hash } from '@stablelib/blake2b';\nimport { hex2buf, mergebuf, b58cencode, prefix } from '@taquito/utils';\nimport toBuffer from 'typedarray-to-buffer';\nimport { Tz1 } from './ed-key';\nimport { Tz2, ECKey, Tz3 } from './ec-key';\nimport pbkdf2 from 'pbkdf2';\nimport { mnemonicToSeedSync } from './mnemonicToSeedSync';\n\nexport * from './import-key';\nexport { VERSION } from './version';\n\n/**\n * @description A local implementation of the signer. Will represent a Tezos account and be able to produce signature in its behalf\n *\n * @warn If running in production and dealing with tokens that have real value, it is strongly recommended to use a HSM backed signer so that private key material is not stored in memory or on disk\n *\n */\nexport class InMemorySigner {\n private _key!: Tz1 | ECKey;\n\n static fromFundraiser(email: string, password: string, mnemonic: string) {\n const seed = mnemonicToSeedSync(mnemonic, `${email}${password}`);\n const key = b58cencode(seed.slice(0, 32), prefix.edsk2);\n return new InMemorySigner(key);\n }\n\n static async fromSecretKey(key: string, passphrase?: string) {\n return new InMemorySigner(key, passphrase);\n }\n\n /**\n *\n * @param key Encoded private key\n * @param passphrase Passphrase to decrypt the private key if it is encrypted\n *\n */\n constructor(key: string, passphrase?: string) {\n const encrypted = key.substring(2, 3) === 'e';\n\n let decrypt = (k: any) => k;\n\n if (encrypted) {\n if (!passphrase) {\n throw new Error('Encrypted key provided without a passphrase.');\n }\n\n decrypt = (constructedKey: Uint8Array) => {\n const salt = toBuffer(constructedKey.slice(0, 8));\n const encryptedSk = constructedKey.slice(8);\n const encryptionKey = pbkdf2.pbkdf2Sync(passphrase, salt, 32768, 32, 'sha512');\n\n return openSecretBox(\n new Uint8Array(encryptionKey), \n new Uint8Array(24), \n new Uint8Array(encryptedSk)\n );\n };\n }\n\n switch (key.substr(0, 4)) {\n case 'edes':\n case 'edsk':\n this._key = new Tz1(key, encrypted, decrypt);\n break;\n case 'spsk':\n case 'spes':\n this._key = new Tz2(key, encrypted, decrypt);\n break;\n case 'p2sk':\n case 'p2es':\n this._key = new Tz3(key, encrypted, decrypt);\n break;\n default:\n throw new Error('Unsupported key type');\n }\n }\n\n /**\n *\n * @param bytes Bytes to sign\n * @param watermark Watermark to append to the bytes\n */\n async sign(bytes: string, watermark?: Uint8Array) {\n let bb = hex2buf(bytes);\n if (typeof watermark !== 'undefined') {\n bb = mergebuf(watermark, bb);\n }\n\n const bytesHash = hash(bb, 32);\n\n return this._key.sign(bytes, bytesHash);\n }\n\n /**\n * @returns Encoded public key\n */\n async publicKey(): Promise<string> {\n return this._key.publicKey();\n }\n\n /**\n * @returns Encoded public key hash\n */\n async publicKeyHash(): Promise<string> {\n return this._key.publicKeyHash();\n }\n\n /**\n * @returns Encoded private key\n */\n async secretKey(): Promise<string> {\n return this._key.secretKey();\n }\n}\n"],"names":["isValidPrefix","b58cdecode","prefix","generateKeyPairFromSeed","sign","toBuffer","buf2hex","b58cencode","hash","elliptic","pbkdf2","openSecretBox","hex2buf","mergebuf"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAKA;;;UAGa,GAAG;;;;;;;QAWd,YAAoB,GAAW,EAAE,SAAkB,EAAE,OAAwB;YAAzD,QAAG,GAAH,GAAG,CAAQ;YAC7B,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;YACnD,IAAI,CAACA,mBAAa,CAAC,SAAS,CAAC,EAAE;gBAC7B,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;aAChD;YAED,IAAI,CAAC,IAAI,GAAG,OAAO,CAACC,gBAAU,CAAC,IAAI,CAAC,GAAG,EAAEC,YAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YAC7D,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAEtC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;gBACd,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;aACzC;YAED,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;SAC3B;QAEa,IAAI;;gBAChB,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,EAAE,EAAE;oBAC3B,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,GAAGC,+BAAuB,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;oBACpF,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;oBAC5B,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;iBACvB;gBACD,OAAO,IAAI,CAAC;aACb;SAAA;;;;;;QAOK,IAAI,CAAC,KAAa,EAAE,SAAqB;;gBAC7C,MAAM,IAAI,CAAC,MAAM,CAAC;gBAClB,MAAM,SAAS,GAAGC,YAAI,CACpB,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EACzB,IAAI,UAAU,CAAC,SAAS,CAAC,CAC1B,CAAC;gBACF,MAAM,eAAe,GAAGC,4BAAQ,CAAC,SAAS,CAAC,CAAC;gBAC5C,MAAM,MAAM,GAAG,KAAK,GAAGC,aAAO,CAAC,eAAe,CAAC,CAAC;gBAEhD,OAAO;oBACL,KAAK;oBACL,GAAG,EAAEC,gBAAU,CAAC,SAAS,EAAEL,YAAM,CAAC,GAAG,CAAC;oBACtC,SAAS,EAAEK,gBAAU,CAAC,SAAS,EAAEL,YAAM,CAAC,KAAK,CAAC;oBAC9C,MAAM;iBACP,CAAC;aACH;SAAA;;;;QAKK,SAAS;;gBACb,MAAM,IAAI,CAAC,MAAM,CAAC;gBAClB,OAAOK,gBAAU,CAAC,IAAI,CAAC,UAAU,EAAEL,YAAM,CAAC,MAAM,CAAC,CAAC,CAAC;aACpD;SAAA;;;;QAKK,aAAa;;gBACjB,MAAM,IAAI,CAAC,MAAM,CAAC;gBAClB,OAAOK,gBAAU,CAACC,YAAI,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC,EAAEN,YAAM,CAAC,GAAG,CAAC,CAAC;aAC1E;SAAA;;;;QAKK,SAAS;;gBACb,MAAM,IAAI,CAAC,MAAM,CAAC;gBAClB,IAAI,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC;gBACpB,MAAM,EAAE,SAAS,EAAE,GAAGC,+BAAuB,CAC3C,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CACjC,CAAC;gBACF,GAAG,GAAGE,4BAAQ,CAAC,SAAS,CAAC,CAAC;gBAE1B,OAAOE,gBAAU,CAAC,GAAG,EAAEL,YAAM,CAAC,MAAM,CAAC,CAAC,CAAC;aACxC;SAAA;;;ICzFH,MAAM,IAAI,GAAG;QACX,IAAI,EAAE;YACJ,EAAE,EAAEA,YAAM,CAAC,MAAM,CAAC;YAClB,EAAE,EAAEA,YAAM,CAAC,MAAM,CAAC;YAClB,GAAG,EAAEA,YAAM,CAAC,GAAG;YACf,GAAG,EAAEA,YAAM,CAAC,KAAK;SAClB;QACD,SAAS,EAAE;YACT,EAAE,EAAEA,YAAM,CAAC,MAAM,CAAC;YAClB,EAAE,EAAEA,YAAM,CAAC,MAAM,CAAC;YAClB,GAAG,EAAEA,YAAM,CAAC,GAAG;YACf,GAAG,EAAEA,YAAM,CAAC,KAAK;SAClB;KACF,CAAC;IAEF;;;UAGa,KAAK;;;;;;;;QAWhB,YACU,KAA2B,EAC3B,GAAW,EACnB,SAAkB,EAClB,OAAwB;YAHhB,UAAK,GAAL,KAAK,CAAsB;YAC3B,QAAG,GAAH,GAAG,CAAQ;YAInB,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;YACnD,IAAI,CAACF,mBAAa,CAAC,SAAS,CAAC,EAAE;gBAC7B,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;aAChD;YAED,IAAI,CAAC,IAAI,GAAG,OAAO,CAACC,gBAAU,CAAC,IAAI,CAAC,GAAG,EAAEC,YAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YAC7D,MAAM,OAAO,GAAG,IAAIO,4BAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACtE,MAAM,QAAQ,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;YACtD,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,GAAG,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;YACvF,MAAM,IAAI,GAAG,UAAU,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACpC,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClC,IAAI,CAAC,UAAU,GAAGJ,4BAAQ,CACxB,IAAI,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAC3F,CAAC;SACH;;;;;;QAOK,IAAI,CAAC,KAAa,EAAE,SAAqB;;gBAC7C,MAAM,GAAG,GAAG,IAAII,4BAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAClE,MAAM,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gBACrD,MAAM,SAAS,GAAG,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBAExE,MAAM,MAAM,GAAG,KAAK,GAAG,SAAS,CAAC;gBACjC,OAAO;oBACL,KAAK;oBACL,GAAG,EAAEF,gBAAU,CAAC,SAAS,EAAEL,YAAM,CAAC,GAAG,CAAC;oBACtC,SAAS,EAAEK,gBAAU,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC;oBACtD,MAAM;iBACP,CAAC;aACH;SAAA;;;;QAKK,SAAS;;gBACb,OAAOA,gBAAU,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;aACzD;SAAA;;;;QAKK,aAAa;;gBACjB,OAAOA,gBAAU,CACfC,YAAI,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC,EACzC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CACrB,CAAC;aACH;SAAA;;;;QAKK,SAAS;;gBACb,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC;gBAEtB,OAAOD,gBAAU,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;aAC7C;SAAA;KACF;IAED;;;IAGO,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAE5C;;;IAGO,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC;;IC9GhD;;;;;aAQgB,kBAAkB,CAAC,QAAgB,EAAE,QAAgB;QACnE,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAC;QAChE,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QAClE,OAAOG,0BAAM,CAAC,UAAU,CAAC,cAAc,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC;IAC3E,CAAC;IAED,SAAS,SAAS,CAAC,GAAW;QAC5B,OAAO,CAAC,GAAG,IAAI,EAAE,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IACvC,CAAC;IACD,SAAS,IAAI,CAAC,QAAgB;QAC5B,OAAO,UAAU,IAAI,QAAQ,IAAI,EAAE,CAAC,CAAC;IACvC;;IChBA;;;;;;;;;;aAUsB,SAAS,CAC7B,OAAqB,EACrB,iBAAyB,EACzB,UAAmB,EACnB,QAAiB,EACjB,MAAe;;YAEf,IAAI,iBAAiB,IAAI,UAAU,IAAI,QAAQ,IAAI,MAAM,EAAE;gBACzD,MAAM,MAAM,GAAG,cAAc,CAAC,cAAc,CAAC,iBAAiB,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;gBACtF,OAAO,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;gBAChC,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,aAAa,EAAE,CAAC;gBACzC,IAAI,EAAE,CAAC;gBACP,IAAI;oBACF,EAAE,GAAG,MAAM,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;iBAC7C;gBAAC,OAAO,EAAO,EAAE;oBAChB,MAAM,wBAAwB,GAAG,EAAE,IAAI,EAAE,CAAC,IAAI,IAAI,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;oBACrF,IAAI,CAAC,wBAAwB,EAAE;wBAC7B,MAAM,EAAE,CAAC;qBACV;iBACF;gBACD,IAAI,EAAE,EAAE;oBACN,MAAM,EAAE,CAAC,YAAY,EAAE,CAAC;iBACzB;aACF;iBAAM;;gBAEL,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,aAAa,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;gBACjF,OAAO,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;aACjC;SACF;;;ICxCD;UACa,OAAO,GAAG;QACnB,YAAY,EAAE,0CAA0C;QACxD,SAAS,EAAE,QAAQ;;;ICYvB;;;;;;UAMa,cAAc;;;;;;;QAmBzB,YAAY,GAAW,EAAE,UAAmB;YAC1C,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC;YAE9C,IAAI,OAAO,GAAG,CAAC,CAAM,KAAK,CAAC,CAAC;YAE5B,IAAI,SAAS,EAAE;gBACb,IAAI,CAAC,UAAU,EAAE;oBACf,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;iBACjE;gBAED,OAAO,GAAG,CAAC,cAA0B;oBACnC,MAAM,IAAI,GAAGL,4BAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;oBAClD,MAAM,WAAW,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;oBAC5C,MAAM,aAAa,GAAGK,0BAAM,CAAC,UAAU,CAAC,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC;oBAE/E,OAAOC,kBAAa,CAClB,IAAI,UAAU,CAAC,aAAa,CAAC,EAC7B,IAAI,UAAU,CAAC,EAAE,CAAC,EAClB,IAAI,UAAU,CAAC,WAAW,CAAC,CAC5B,CAAC;iBACH,CAAC;aACH;YAED,QAAQ,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;gBACtB,KAAK,MAAM,CAAC;gBACZ,KAAK,MAAM;oBACT,IAAI,CAAC,IAAI,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;oBAC7C,MAAM;gBACR,KAAK,MAAM,CAAC;gBACZ,KAAK,MAAM;oBACT,IAAI,CAAC,IAAI,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;oBAC7C,MAAM;gBACR,KAAK,MAAM,CAAC;gBACZ,KAAK,MAAM;oBACT,IAAI,CAAC,IAAI,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;oBAC7C,MAAM;gBACR;oBACE,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;aAC3C;SACF;QAvDD,OAAO,cAAc,CAAC,KAAa,EAAE,QAAgB,EAAE,QAAgB;YACrE,MAAM,IAAI,GAAG,kBAAkB,CAAC,QAAQ,EAAE,GAAG,KAAK,GAAG,QAAQ,EAAE,CAAC,CAAC;YACjE,MAAM,GAAG,GAAGJ,gBAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAEL,YAAM,CAAC,KAAK,CAAC,CAAC;YACxD,OAAO,IAAI,cAAc,CAAC,GAAG,CAAC,CAAC;SAChC;QAED,OAAa,aAAa,CAAC,GAAW,EAAE,UAAmB;;gBACzD,OAAO,IAAI,cAAc,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;aAC5C;SAAA;;;;;;QAsDK,IAAI,CAAC,KAAa,EAAE,SAAsB;;gBAC9C,IAAI,EAAE,GAAGU,aAAO,CAAC,KAAK,CAAC,CAAC;gBACxB,IAAI,OAAO,SAAS,KAAK,WAAW,EAAE;oBACpC,EAAE,GAAGC,cAAQ,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;iBAC9B;gBAED,MAAM,SAAS,GAAGL,YAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;gBAE/B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;aACzC;SAAA;;;;QAKK,SAAS;;gBACb,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;aAC9B;SAAA;;;;QAKK,aAAa;;gBACjB,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;aAClC;SAAA;;;;QAKK,SAAS;;gBACb,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;aAC9B;SAAA;;;;;;;;;;;;;"}
|
|
1
|
+
{"version":3,"file":"taquito-signer.umd.js","sources":["../src/ed-key.ts","../src/ec-key.ts","../src/mnemonicToSeedSync.ts","../src/import-key.ts","../src/version.ts","../src/taquito-signer.ts"],"sourcesContent":["import { hash } from '@stablelib/blake2b';\nimport { generateKeyPairFromSeed, sign } from '@stablelib/ed25519';\nimport {\n b58cencode,\n b58cdecode,\n prefix,\n buf2hex,\n isValidPrefix,\n InvalidKeyError,\n} from '@taquito/utils';\nimport toBuffer from 'typedarray-to-buffer';\n\n/**\n * @description Provide signing logic for ed25519 curve based key (tz1)\n */\nexport class Tz1 {\n private _key: Uint8Array;\n private _publicKey: Uint8Array;\n private isInit: Promise<boolean>;\n\n /**\n *\n * @param key Encoded private key\n * @param encrypted Is the private key encrypted\n * @param decrypt Decrypt function\n */\n constructor(private key: string, encrypted: boolean, decrypt: (k: any) => any) {\n const keyPrefix = key.substr(0, encrypted ? 5 : 4);\n if (!isValidPrefix(keyPrefix)) {\n throw new InvalidKeyError(key, 'Key contains invalid prefix');\n }\n\n this._key = decrypt(b58cdecode(this.key, prefix[keyPrefix]));\n this._publicKey = this._key.slice(32);\n\n if (!this._key) {\n throw new InvalidKeyError(key, 'Unable to decode');\n }\n\n this.isInit = this.init();\n }\n\n private async init() {\n if (this._key.length !== 64) {\n const { publicKey, secretKey } = generateKeyPairFromSeed(new Uint8Array(this._key));\n this._publicKey = publicKey;\n this._key = secretKey;\n }\n return true;\n }\n\n /**\n *\n * @param bytes Bytes to sign\n * @param bytesHash Blake2b hash of the bytes to sign\n */\n async sign(bytes: string, bytesHash: Uint8Array) {\n await this.isInit;\n const signature = sign(new Uint8Array(this._key), new Uint8Array(bytesHash));\n const signatureBuffer = toBuffer(signature);\n const sbytes = bytes + buf2hex(signatureBuffer);\n\n return {\n bytes,\n sig: b58cencode(signature, prefix.sig),\n prefixSig: b58cencode(signature, prefix.edsig),\n sbytes,\n };\n }\n\n /**\n * @returns Encoded public key\n */\n async publicKey(): Promise<string> {\n await this.isInit;\n return b58cencode(this._publicKey, prefix['edpk']);\n }\n\n /**\n * @returns Encoded public key hash\n */\n async publicKeyHash(): Promise<string> {\n await this.isInit;\n return b58cencode(hash(new Uint8Array(this._publicKey), 20), prefix.tz1);\n }\n\n /**\n * @returns Encoded private key\n */\n async secretKey(): Promise<string> {\n await this.isInit;\n let key = this._key;\n const { secretKey } = generateKeyPairFromSeed(new Uint8Array(key).slice(0, 32));\n key = toBuffer(secretKey);\n\n return b58cencode(key, prefix[`edsk`]);\n }\n}\n","import { hash } from '@stablelib/blake2b';\nimport { b58cencode, b58cdecode, prefix, isValidPrefix, InvalidKeyError } from '@taquito/utils';\nimport toBuffer from 'typedarray-to-buffer';\nimport elliptic from 'elliptic';\n\nconst pref = {\n p256: {\n pk: prefix['p2pk'],\n sk: prefix['p2sk'],\n pkh: prefix.tz3,\n sig: prefix.p2sig,\n },\n secp256k1: {\n pk: prefix['sppk'],\n sk: prefix['spsk'],\n pkh: prefix.tz2,\n sig: prefix.spsig,\n },\n};\n\n/**\n * @description Provide signing logic for elliptic curve based key (tz2, tz3)\n */\nexport class ECKey {\n private _key: Uint8Array;\n private _publicKey: Uint8Array;\n\n /**\n *\n * @param curve Curve to use with the key\n * @param key Encoded private key\n * @param encrypted Is the private key encrypted\n * @param decrypt Decrypt function\n */\n constructor(\n private curve: 'p256' | 'secp256k1',\n private key: string,\n encrypted: boolean,\n decrypt: (k: any) => any\n ) {\n const keyPrefix = key.substr(0, encrypted ? 5 : 4);\n if (!isValidPrefix(keyPrefix)) {\n throw new InvalidKeyError(key, 'Key contains invalid prefix');\n }\n\n this._key = decrypt(b58cdecode(this.key, prefix[keyPrefix]));\n const keyPair = new elliptic.ec(this.curve).keyFromPrivate(this._key);\n const keyPairY = keyPair.getPublic().getY().toArray();\n const parityByte = keyPairY.length < 32 ? keyPairY[keyPairY.length - 1] : keyPairY[31];\n const pref = parityByte % 2 ? 3 : 2;\n const pad = new Array(32).fill(0);\n this._publicKey = toBuffer(\n new Uint8Array([pref].concat(pad.concat(keyPair.getPublic().getX().toArray()).slice(-32)))\n );\n }\n\n /**\n *\n * @param bytes Bytes to sign\n * @param bytesHash Blake2b hash of the bytes to sign\n */\n async sign(bytes: string, bytesHash: Uint8Array) {\n const key = new elliptic.ec(this.curve).keyFromPrivate(this._key);\n const sig = key.sign(bytesHash, { canonical: true });\n const signature = sig.r.toString('hex', 64) + sig.s.toString('hex', 64);\n\n const sbytes = bytes + signature;\n return {\n bytes,\n sig: b58cencode(signature, prefix.sig),\n prefixSig: b58cencode(signature, pref[this.curve].sig),\n sbytes,\n };\n }\n\n /**\n * @returns Encoded public key\n */\n async publicKey(): Promise<string> {\n return b58cencode(this._publicKey, pref[this.curve].pk);\n }\n\n /**\n * @returns Encoded public key hash\n */\n async publicKeyHash(): Promise<string> {\n return b58cencode(hash(new Uint8Array(this._publicKey), 20), pref[this.curve].pkh);\n }\n\n /**\n * @returns Encoded private key\n */\n async secretKey(): Promise<string> {\n const key = this._key;\n\n return b58cencode(key, pref[this.curve].sk);\n }\n}\n\n/**\n * @description Tz3 key class using the p256 curve\n */\nexport const Tz3 = ECKey.bind(null, 'p256');\n\n/**\n * @description Tz3 key class using the secp256k1 curve\n */\nexport const Tz2 = ECKey.bind(null, 'secp256k1');\n","/* Copyright (c) 2014, Wei Lu <luwei.here@gmail.com> and Daniel Cousens <email@dcousens.com>\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted, provided that the above\ncopyright notice and this permission notice appear in all copies. */\n\nimport pbkdf2 from 'pbkdf2';\n\nexport function mnemonicToSeedSync(mnemonic: string, password: string) {\n const mnemonicBuffer = Buffer.from(normalize(mnemonic), 'utf8');\n const saltBuffer = Buffer.from(salt(normalize(password)), 'utf8');\n return pbkdf2.pbkdf2Sync(mnemonicBuffer, saltBuffer, 2048, 64, 'sha512');\n}\n\nfunction normalize(str: string) {\n return (str || '').normalize('NFKD');\n}\nfunction salt(password: string) {\n return 'mnemonic' + (password || '');\n}\n","import { InMemorySigner } from './taquito-signer';\nimport { TezosToolkit } from '@taquito/taquito';\n\n/**\n *\n * @description Import a key to sign operation with the side-effect of setting the Tezos instance to use the InMemorySigner provider\n *\n * @param toolkit The toolkit instance to attach a signer\n * @param privateKeyOrEmail Key to load in memory\n * @param passphrase If the key is encrypted passphrase to decrypt it\n * @param mnemonic Faucet mnemonic\n * @param secret Faucet secret\n */\nexport async function importKey(\n toolkit: TezosToolkit,\n privateKeyOrEmail: string,\n passphrase?: string,\n mnemonic?: string,\n secret?: string\n) {\n if (privateKeyOrEmail && passphrase && mnemonic && secret) {\n const signer = InMemorySigner.fromFundraiser(privateKeyOrEmail, passphrase, mnemonic);\n toolkit.setProvider({ signer });\n const pkh = await signer.publicKeyHash();\n let op;\n try {\n op = await toolkit.tz.activate(pkh, secret);\n } catch (ex: any) {\n const isInvalidActivationError = ex && ex.body && /Invalid activation/.test(ex.body);\n if (!isInvalidActivationError) {\n throw ex;\n }\n }\n if (op) {\n await op.confirmation();\n }\n } else {\n // Fallback to regular import\n const signer = await InMemorySigner.fromSecretKey(privateKeyOrEmail, passphrase);\n toolkit.setProvider({ signer });\n }\n}\n","\n// IMPORTANT: THIS FILE IS AUTO GENERATED! DO NOT MANUALLY EDIT OR CHECKIN!\nexport const VERSION = {\n \"commitHash\": \"38da814ec2bb4e81c7ad5a45b6b183a4d0b8dc25\",\n \"version\": \"12.1.1\"\n};\n","/**\n * @packageDocumentation\n * @module @taquito/signer\n */\nimport { openSecretBox } from '@stablelib/nacl';\nimport { hash } from '@stablelib/blake2b';\nimport { hex2buf, mergebuf, b58cencode, prefix, InvalidKeyError } from '@taquito/utils';\nimport toBuffer from 'typedarray-to-buffer';\nimport { Tz1 } from './ed-key';\nimport { Tz2, ECKey, Tz3 } from './ec-key';\nimport pbkdf2 from 'pbkdf2';\nimport { mnemonicToSeedSync } from './mnemonicToSeedSync';\n\nexport * from './import-key';\nexport { VERSION } from './version';\n\n/**\n * @category Error\n * @description Error that indicates an invalid passphrase being passed or used\n */\nexport class InvalidPassphraseError extends Error {\n public name = 'InvalidPassphraseError';\n constructor(public message: string) {\n super(message);\n }\n}\n\n/**\n * @description A local implementation of the signer. Will represent a Tezos account and be able to produce signature in its behalf\n *\n * @warn If running in production and dealing with tokens that have real value, it is strongly recommended to use a HSM backed signer so that private key material is not stored in memory or on disk\n *\n */\nexport class InMemorySigner {\n private _key!: Tz1 | ECKey;\n\n static fromFundraiser(email: string, password: string, mnemonic: string) {\n const seed = mnemonicToSeedSync(mnemonic, `${email}${password}`);\n const key = b58cencode(seed.slice(0, 32), prefix.edsk2);\n return new InMemorySigner(key);\n }\n\n static async fromSecretKey(key: string, passphrase?: string) {\n return new InMemorySigner(key, passphrase);\n }\n\n /**\n *\n * @param key Encoded private key\n * @param passphrase Passphrase to decrypt the private key if it is encrypted\n *\n */\n constructor(key: string, passphrase?: string) {\n const encrypted = key.substring(2, 3) === 'e';\n\n let decrypt = (k: any) => k;\n\n if (encrypted) {\n if (!passphrase) {\n throw new InvalidPassphraseError('Encrypted key provided without a passphrase.');\n }\n\n decrypt = (constructedKey: Uint8Array) => {\n const salt = toBuffer(constructedKey.slice(0, 8));\n const encryptedSk = constructedKey.slice(8);\n const encryptionKey = pbkdf2.pbkdf2Sync(passphrase, salt, 32768, 32, 'sha512');\n\n return openSecretBox(\n new Uint8Array(encryptionKey),\n new Uint8Array(24),\n new Uint8Array(encryptedSk)\n );\n };\n }\n\n switch (key.substr(0, 4)) {\n case 'edes':\n case 'edsk':\n this._key = new Tz1(key, encrypted, decrypt);\n break;\n case 'spsk':\n case 'spes':\n this._key = new Tz2(key, encrypted, decrypt);\n break;\n case 'p2sk':\n case 'p2es':\n this._key = new Tz3(key, encrypted, decrypt);\n break;\n default:\n throw new InvalidKeyError(key, 'Unsupported key type');\n }\n }\n\n /**\n *\n * @param bytes Bytes to sign\n * @param watermark Watermark to append to the bytes\n */\n async sign(bytes: string, watermark?: Uint8Array) {\n let bb = hex2buf(bytes);\n if (typeof watermark !== 'undefined') {\n bb = mergebuf(watermark, bb);\n }\n\n const bytesHash = hash(bb, 32);\n\n return this._key.sign(bytes, bytesHash);\n }\n\n /**\n * @returns Encoded public key\n */\n async publicKey(): Promise<string> {\n return this._key.publicKey();\n }\n\n /**\n * @returns Encoded public key hash\n */\n async publicKeyHash(): Promise<string> {\n return this._key.publicKeyHash();\n }\n\n /**\n * @returns Encoded private key\n */\n async secretKey(): Promise<string> {\n return this._key.secretKey();\n }\n}\n"],"names":["isValidPrefix","InvalidKeyError","b58cdecode","prefix","generateKeyPairFromSeed","sign","toBuffer","buf2hex","b58cencode","hash","elliptic","pbkdf2","openSecretBox","hex2buf","mergebuf"],"mappings":"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"}
|
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
export * from './import-key';
|
|
2
2
|
export { VERSION } from './version';
|
|
3
|
+
/**
|
|
4
|
+
* @category Error
|
|
5
|
+
* @description Error that indicates an invalid passphrase being passed or used
|
|
6
|
+
*/
|
|
7
|
+
export declare class InvalidPassphraseError extends Error {
|
|
8
|
+
message: string;
|
|
9
|
+
name: string;
|
|
10
|
+
constructor(message: string);
|
|
11
|
+
}
|
|
3
12
|
/**
|
|
4
13
|
* @description A local implementation of the signer. Will represent a Tezos account and be able to produce signature in its behalf
|
|
5
14
|
*
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@taquito/signer",
|
|
3
|
-
"version": "12.
|
|
3
|
+
"version": "12.1.1",
|
|
4
4
|
"description": "Provide signing functionality to be with taquito",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"tezos",
|
|
@@ -70,8 +70,8 @@
|
|
|
70
70
|
"@stablelib/blake2b": "^1.0.1",
|
|
71
71
|
"@stablelib/ed25519": "^1.0.2",
|
|
72
72
|
"@stablelib/nacl": "^1.0.3",
|
|
73
|
-
"@taquito/taquito": "^12.
|
|
74
|
-
"@taquito/utils": "^12.
|
|
73
|
+
"@taquito/taquito": "^12.1.1",
|
|
74
|
+
"@taquito/utils": "^12.1.1",
|
|
75
75
|
"elliptic": "^6.5.4",
|
|
76
76
|
"pbkdf2": "^3.1.2",
|
|
77
77
|
"typedarray-to-buffer": "^4.0.0"
|
|
@@ -107,5 +107,5 @@
|
|
|
107
107
|
"typedoc": "^0.20.36",
|
|
108
108
|
"typescript": "~4.1.5"
|
|
109
109
|
},
|
|
110
|
-
"gitHead": "
|
|
110
|
+
"gitHead": "e97d6f77d990f91b4e407f4e7b7f8f3785edb2ba"
|
|
111
111
|
}
|