@taquito/signer 12.0.0 → 12.0.3
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/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.0.
|
|
6
|
+
"commitHash": "02ebaa8ef1920e8b6a81f0d0978f28cff0a2d256",
|
|
7
|
+
"version": "12.0.3"
|
|
8
8
|
};
|
|
9
9
|
//# sourceMappingURL=version.js.map
|
|
@@ -266,8 +266,8 @@ 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.0.
|
|
269
|
+
"commitHash": "02ebaa8ef1920e8b6a81f0d0978f28cff0a2d256",
|
|
270
|
+
"version": "12.0.3"
|
|
271
271
|
};
|
|
272
272
|
|
|
273
273
|
/**
|
|
@@ -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\": \"222db56e9550fff784a819406d8bdc1110787440\",\n \"version\": \"12.0.0\"\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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA;;;MAGa,GAAG;;;;;;;IAWd,YAAoB,GAAW,EAAE,SAAkB,EAAE,OAAwB;QAAzD,QAAG,GAAH,GAAG,CAAQ;QAC7B,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QACnD,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE;YAC7B,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;SAChD;QAED,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAC7D,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAEtC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;SACzC;QAED,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;KAC3B;IAEa,IAAI;;YAChB,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,EAAE,EAAE;gBAC3B,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,uBAAuB,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBACpF,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;gBAC5B,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;aACvB;YACD,OAAO,IAAI,CAAC;SACb;KAAA;;;;;;IAOK,IAAI,CAAC,KAAa,EAAE,SAAqB;;YAC7C,MAAM,IAAI,CAAC,MAAM,CAAC;YAClB,MAAM,SAAS,GAAG,IAAI,CACpB,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EACzB,IAAI,UAAU,CAAC,SAAS,CAAC,CAC1B,CAAC;YACF,MAAM,eAAe,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;YAC5C,MAAM,MAAM,GAAG,KAAK,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;YAEhD,OAAO;gBACL,KAAK;gBACL,GAAG,EAAE,UAAU,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC;gBACtC,SAAS,EAAE,UAAU,CAAC,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC;gBAC9C,MAAM;aACP,CAAC;SACH;KAAA;;;;IAKK,SAAS;;YACb,MAAM,IAAI,CAAC,MAAM,CAAC;YAClB,OAAO,UAAU,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;SACpD;KAAA;;;;IAKK,aAAa;;YACjB,MAAM,IAAI,CAAC,MAAM,CAAC;YAClB,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;SAC1E;KAAA;;;;IAKK,SAAS;;YACb,MAAM,IAAI,CAAC,MAAM,CAAC;YAClB,IAAI,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC;YACpB,MAAM,EAAE,SAAS,EAAE,GAAG,uBAAuB,CAC3C,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CACjC,CAAC;YACF,GAAG,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;YAE1B,OAAO,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;SACxC;KAAA;;;ACzFH,MAAM,IAAI,GAAG;IACX,IAAI,EAAE;QACJ,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC;QAClB,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC;QAClB,GAAG,EAAE,MAAM,CAAC,GAAG;QACf,GAAG,EAAE,MAAM,CAAC,KAAK;KAClB;IACD,SAAS,EAAE;QACT,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC;QAClB,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC;QAClB,GAAG,EAAE,MAAM,CAAC,GAAG;QACf,GAAG,EAAE,MAAM,CAAC,KAAK;KAClB;CACF,CAAC;AAEF;;;MAGa,KAAK;;;;;;;;IAWhB,YACU,KAA2B,EAC3B,GAAW,EACnB,SAAkB,EAClB,OAAwB;QAHhB,UAAK,GAAL,KAAK,CAAsB;QAC3B,QAAG,GAAH,GAAG,CAAQ;QAInB,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QACnD,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE;YAC7B,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;SAChD;QAED,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAC7D,MAAM,OAAO,GAAG,IAAI,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtE,MAAM,QAAQ,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;QACtD,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,GAAG,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;QACvF,MAAM,IAAI,GAAG,UAAU,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACpC,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClC,IAAI,CAAC,UAAU,GAAG,QAAQ,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;KACH;;;;;;IAOK,IAAI,CAAC,KAAa,EAAE,SAAqB;;YAC7C,MAAM,GAAG,GAAG,IAAI,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClE,MAAM,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACrD,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;YAExE,MAAM,MAAM,GAAG,KAAK,GAAG,SAAS,CAAC;YACjC,OAAO;gBACL,KAAK;gBACL,GAAG,EAAE,UAAU,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC;gBACtC,SAAS,EAAE,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC;gBACtD,MAAM;aACP,CAAC;SACH;KAAA;;;;IAKK,SAAS;;YACb,OAAO,UAAU,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;SACzD;KAAA;;;;IAKK,aAAa;;YACjB,OAAO,UAAU,CACf,IAAI,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC,EACzC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CACrB,CAAC;SACH;KAAA;;;;IAKK,SAAS;;YACb,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC;YAEtB,OAAO,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;SAC7C;KAAA;CACF;AAED;;;AAGO,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AAE5C;;;AAGO,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC;;AC9GhD;;;;;SAQgB,kBAAkB,CAAC,QAAgB,EAAE,QAAgB;IACnE,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAC;IAChE,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IAClE,OAAO,MAAM,CAAC,UAAU,CAAC,cAAc,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC;AAC3E,CAAC;AAED,SAAS,SAAS,CAAC,GAAW;IAC5B,OAAO,CAAC,GAAG,IAAI,EAAE,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;AACvC,CAAC;AACD,SAAS,IAAI,CAAC,QAAgB;IAC5B,OAAO,UAAU,IAAI,QAAQ,IAAI,EAAE,CAAC,CAAC;AACvC;;AChBA;;;;;;;;;;SAUsB,SAAS,CAC7B,OAAqB,EACrB,iBAAyB,EACzB,UAAmB,EACnB,QAAiB,EACjB,MAAe;;QAEf,IAAI,iBAAiB,IAAI,UAAU,IAAI,QAAQ,IAAI,MAAM,EAAE;YACzD,MAAM,MAAM,GAAG,cAAc,CAAC,cAAc,CAAC,iBAAiB,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;YACtF,OAAO,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAChC,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,aAAa,EAAE,CAAC;YACzC,IAAI,EAAE,CAAC;YACP,IAAI;gBACF,EAAE,GAAG,MAAM,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;aAC7C;YAAC,OAAO,EAAO,EAAE;gBAChB,MAAM,wBAAwB,GAAG,EAAE,IAAI,EAAE,CAAC,IAAI,IAAI,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;gBACrF,IAAI,CAAC,wBAAwB,EAAE;oBAC7B,MAAM,EAAE,CAAC;iBACV;aACF;YACD,IAAI,EAAE,EAAE;gBACN,MAAM,EAAE,CAAC,YAAY,EAAE,CAAC;aACzB;SACF;aAAM;;YAEL,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,aAAa,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;YACjF,OAAO,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;SACjC;KACF;;;ACxCD;MACa,OAAO,GAAG;IACnB,YAAY,EAAE,0CAA0C;IACxD,SAAS,EAAE,QAAQ;;;ACYvB;;;;;;MAMa,cAAc;;;;;;;IAmBzB,YAAY,GAAW,EAAE,UAAmB;QAC1C,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC;QAE9C,IAAI,OAAO,GAAG,CAAC,CAAM,KAAK,CAAC,CAAC;QAE5B,IAAI,SAAS,EAAE;YACb,IAAI,CAAC,UAAU,EAAE;gBACf,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;aACjE;YAED,OAAO,GAAG,CAAC,cAA0B;gBACnC,MAAM,IAAI,GAAG,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBAClD,MAAM,WAAW,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC5C,MAAM,aAAa,GAAG,MAAM,CAAC,UAAU,CAAC,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC;gBAE/E,OAAO,aAAa,CAClB,IAAI,UAAU,CAAC,aAAa,CAAC,EAC7B,IAAI,UAAU,CAAC,EAAE,CAAC,EAClB,IAAI,UAAU,CAAC,WAAW,CAAC,CAC5B,CAAC;aACH,CAAC;SACH;QAED,QAAQ,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;YACtB,KAAK,MAAM,CAAC;YACZ,KAAK,MAAM;gBACT,IAAI,CAAC,IAAI,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;gBAC7C,MAAM;YACR,KAAK,MAAM,CAAC;YACZ,KAAK,MAAM;gBACT,IAAI,CAAC,IAAI,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;gBAC7C,MAAM;YACR,KAAK,MAAM,CAAC;YACZ,KAAK,MAAM;gBACT,IAAI,CAAC,IAAI,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;gBAC7C,MAAM;YACR;gBACE,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;SAC3C;KACF;IAvDD,OAAO,cAAc,CAAC,KAAa,EAAE,QAAgB,EAAE,QAAgB;QACrE,MAAM,IAAI,GAAG,kBAAkB,CAAC,QAAQ,EAAE,GAAG,KAAK,GAAG,QAAQ,EAAE,CAAC,CAAC;QACjE,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QACxD,OAAO,IAAI,cAAc,CAAC,GAAG,CAAC,CAAC;KAChC;IAED,OAAa,aAAa,CAAC,GAAW,EAAE,UAAmB;;YACzD,OAAO,IAAI,cAAc,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;SAC5C;KAAA;;;;;;IAsDK,IAAI,CAAC,KAAa,EAAE,SAAsB;;YAC9C,IAAI,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;YACxB,IAAI,OAAO,SAAS,KAAK,WAAW,EAAE;gBACpC,EAAE,GAAG,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;aAC9B;YAED,MAAM,SAAS,GAAG,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;YAE/B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;SACzC;KAAA;;;;IAKK,SAAS;;YACb,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;SAC9B;KAAA;;;;IAKK,aAAa;;YACjB,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;SAClC;KAAA;;;;IAKK,SAAS;;YACb,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;SAC9B;KAAA;;;;;"}
|
|
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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"}
|
|
@@ -270,8 +270,8 @@
|
|
|
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.0.
|
|
273
|
+
"commitHash": "02ebaa8ef1920e8b6a81f0d0978f28cff0a2d256",
|
|
274
|
+
"version": "12.0.3"
|
|
275
275
|
};
|
|
276
276
|
|
|
277
277
|
/**
|
|
@@ -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\": \"222db56e9550fff784a819406d8bdc1110787440\",\n \"version\": \"12.0.0\"\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":"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"}
|
|
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":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@taquito/signer",
|
|
3
|
-
"version": "12.0.
|
|
3
|
+
"version": "12.0.3",
|
|
4
4
|
"description": "Provide signing functionality to be with taquito",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"tezos",
|
|
@@ -69,9 +69,9 @@
|
|
|
69
69
|
"dependencies": {
|
|
70
70
|
"@stablelib/blake2b": "^1.0.1",
|
|
71
71
|
"@stablelib/ed25519": "^1.0.2",
|
|
72
|
-
"@stablelib/nacl": "^1.0.
|
|
73
|
-
"@taquito/taquito": "^12.0.
|
|
74
|
-
"@taquito/utils": "^12.0.
|
|
72
|
+
"@stablelib/nacl": "^1.0.3",
|
|
73
|
+
"@taquito/taquito": "^12.0.3",
|
|
74
|
+
"@taquito/utils": "^12.0.3",
|
|
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": "b8cd241cd9e19a15c487ab56a149e92ac3713ee9"
|
|
111
111
|
}
|