{"_id":"@authereum/starkware-crypto","_rev":"19-5ac2a31ad82710911a5415fc19f44a4e","name":"@authereum/starkware-crypto","dist-tags":{"beta":"1.9.7-beta.2","latest":"1.9.7-beta.7","next":"1.10.0-beta.9"},"versions":{"1.9.7-beta.0":{"name":"@authereum/starkware-crypto","description":"Starkware Crypto Library","version":"1.9.7-beta.0","author":{"name":"Pedro Gomes","email":"github.com/pedrouid"},"license":"Apache-2.0","keywords":["stark","starkware","crypto","elliptic","curve","cryptography"],"main":"dist/cjs/index.js","types":"dist/cjs/index.d.ts","unpkg":"dist/umd/index.min.js","homepage":"https://github.com/pedrouid/starkware-crypto","repository":{"type":"git","url":"git+https://github.com/pedrouid/starkware-crypto.git"},"bugs":{"url":"https://github.com/pedrouid/starkware-crypto/issues"},"scripts":{"start":"tsdx watch","clean":"rm -rf dist","build:cjs":"tsc -p tsconfig.cjs.json","build:umd":"webpack","build":"yarn clean && yarn build:cjs && yarn build:umd","test":"tsdx test ./test","lint":"tsdx lint src test","prepare":"yarn lint && yarn build","publish:beta":"npm publish --tag beta --access public"},"dependencies":{"bip39":"^3.0.2","bn.js":"^5.1.2","elliptic":"^6.5.3","enc-utils":"^2.2.2","ethereumjs-wallet":"^1.0.0","hash.js":"^1.1.7","js-sha3":"^0.8.0","keccak256":"^1.0.1","rsv-signature":"^1.1.0","starkware-types":"^1.1.0","web3-utils":"^1.3.0"},"devDependencies":{"@types/elliptic":"6.4.12","@types/jest":"25.1.1","@types/node":"13.7.0","husky":"4.2.5","tsdx":"0.13.2","tslib":"1.10.0","typescript":"3.7.5","webpack":"4.41.6","webpack-cli":"3.3.12"},"husky":{"hooks":{"pre-commit":"yarn lint"}},"prettier":{"printWidth":80,"semi":true,"singleQuote":true,"trailingComma":"es5"},"_id":"@authereum/starkware-crypto@1.9.7-beta.0","_nodeVersion":"11.15.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-FY/p/p6WDbT9fO6aifa/wKfylK+fzps2QvL6TwagxYGrCRB4BSfcrG8ioqepV1SGMZjQdrkAcNLD4co1MHot1A==","shasum":"b706313160ea061e42b648909b6538fe1a2cc5d6","tarball":"https://registry.npmjs.org/@authereum/starkware-crypto/-/starkware-crypto-1.9.7-beta.0.tgz","fileCount":21,"unpackedSize":1729675,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfmaOWCRA9TVsSAnZWagAAymMP+wY278I8BcsJFwjH+2Y6\nWlALPSevutCOE/whLdIVKvbhyuOjZ4X6tvxyeO+Jz+WEBx9fVljirPgzSnOM\nC3ikYzM4AsSDL20ApC6kbKNBYanw4S/Z0B5M0F5hmsAimtGNRjPAXsUh61Z0\nk2wjsVgZsOsneUzbIeMHF/zKPbWTSqpcOY2ahWL4Af/cOsQq0WbarVJjRNqc\nSJ6KSXUMo7cJKZyTC0ODN6cnYh75iUQp7xESq5s2Sen6Cn7X3T8kk9xo+6p0\nErtM3LMOA14X1LwtVZH9q5OreWZLVfby7IUChJWzhgmZs1JKtVu5DkOnmDjG\n3+Fx6cphyrAqCNLPydox0gTbFhodNHQZh2fLBDttxHlnYwRkE/jbxZUxzGN/\n8CJPE7taEIIrEyU0KX8z1kGM83RfSBJHKY2x49A7L96MbHhdD3ON+FhHyjWU\nwstl+DpKLLhpjA+zbQ5A3eZNNyDrjia6Lr4Ns17YhyAuE8xKrCOpEvYclI9o\n7CApXpOETIFpG5TVM/hBkspdDhc/ZXypeMWNdevUG3BH1XUIDMZxZ2IHd1hP\n7jAJJixDiCmY3C3xHwCFlBEwsk6GjCAGPEgWcNkID4ovSJ/ow35KZJXlNry4\nvznshV8EWNhOc9BoUaicVc1Bb3wvGsuPoDCxr3/OiRbuVtnUIUA7l3TgRnTc\nqyQn\r\n=7Kyg\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC5Ovaf9Y09fPRbQbaMvQKoaepkgfidZyaQbUsTS7veAQIgW/4s+qfGL7MoYsqcsI2qboeYijdKyWPEKtCqBq3Dulo="}]},"maintainers":[{"name":"cwhinfrey","email":"cwhinfrey@gmail.com"},{"name":"shanefontaine","email":"shane6fontaine@gmail.com"},{"name":"miguelmota","email":"hello@miguelmota.com"}],"_npmUser":{"name":"miguelmota","email":"hello@miguelmota.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/starkware-crypto_1.9.7-beta.0_1603904405562_0.7638296516417669"},"_hasShrinkwrap":false},"1.9.7-beta.1":{"name":"@authereum/starkware-crypto","description":"Starkware Crypto Library","version":"1.9.7-beta.1","author":{"name":"Pedro Gomes","email":"github.com/pedrouid"},"license":"Apache-2.0","keywords":["stark","starkware","crypto","elliptic","curve","cryptography"],"main":"dist/cjs/index.js","types":"dist/cjs/index.d.ts","unpkg":"dist/umd/index.min.js","homepage":"https://github.com/pedrouid/starkware-crypto","repository":{"type":"git","url":"git+https://github.com/pedrouid/starkware-crypto.git"},"bugs":{"url":"https://github.com/pedrouid/starkware-crypto/issues"},"scripts":{"start":"tsdx watch","clean":"rm -rf dist","build:cjs":"tsc -p tsconfig.cjs.json","build:umd":"webpack","build":"yarn clean && yarn build:cjs && yarn build:umd","test":"tsdx test ./test","lint":"prettier-standard --format","prepare":"yarn lint && yarn build","publish:beta":"npm publish --tag beta --access public"},"dependencies":{"bip39":"^3.0.2","bn.js":"^5.1.2","elliptic":"^6.5.3","enc-utils":"^2.2.2","ethereumjs-wallet":"^1.0.0","hash.js":"^1.1.7","js-sha3":"^0.8.0","keccak256":"^1.0.2","rsv-signature":"^1.1.0","starkware-types":"^1.1.0","web3-utils":"^1.3.0"},"devDependencies":{"@types/elliptic":"6.4.12","@types/jest":"25.1.1","@types/node":"13.7.0","husky":"4.2.5","prettier-standard":"^16.4.1","tsdx":"0.13.2","tslib":"1.10.0","typescript":"3.7.5","webpack":"4.41.6","webpack-cli":"3.3.12"},"husky":{"hooks":{"pre-commit":"yarn lint"}},"prettier":{"printWidth":80,"semi":false,"singleQuote":true,"trailingComma":"es5"},"readme":"# starkware-crypto [![npm version](https://badge.fury.io/js/starkware-crypto.svg)](https://badge.fury.io/js/starkware-crypto)\n\nStarkware Crypto Library\n\n## Description\n\nThis library is a port from [starkex-resources/\\*\\*/signature.js](https://github.com/starkware-libs/starkex-resources/blob/master/crypto/starkware/crypto/signature/signature.js).\n\n## Example\n\n```typescript\nimport * as starkwareCrypto from 'starkware-crypto'\n\nconst mnemonic = ''\n\nconst path = getAccountPath(\n  'starkex',\n  'starkexdvf',\n  '0x0000000000000000000000000000000000000000',\n  '0'\n)\n\nconst keyPair = starkwareCrypto.getKeyPairFromPath(mnemonic, path)\n\nconst publicKey = starkwareCrypto.getPublic(keyPair)\n\nconst starkPublicKey = starkwareCrypto.getStarkPublicKey(publicKey)\n\nconst msgParams = {\n  amount: '2154549703648910716',\n  nonce: '1',\n  senderVaultId: '34',\n  token: {\n    type: 'ETH' as starkwareCrypto.TokenTypes,\n    data: {\n      quantum: '1',\n      tokenAddress: '0x89b94e8C299235c00F97E6B0D7368E82d640E848',\n    },\n  },\n  receiverVaultId: '21',\n  receiverPublicKey:\n    '0x5fa3383597691ea9d827a79e1a4f0f7949435ced18ca9619de8ab97e661020',\n  expirationTimestamp: '438953',\n}\n\nconst message = starkwareCrypto.getTransferMsgHash(\n  msgParams.amount,\n  msgParams.nonce,\n  msgParams.senderVaultId,\n  msgParams.token,\n  msgParams.receiverVaultId,\n  msgParams.receiverPublicKey,\n  msgParams.expirationTimestamp\n)\n\nconst signature = starkwareCrypto.sign(keyPair, message)\n\nconst verified = starkwareCrypto.verify(keyPair, message, signature)\n```\n\n## API\n\n```typescript\ninterface StarkwareCrypto {\n  getAccountPath(\n    layer: string,\n    application: string,\n    ethereumAddress: string,\n    index: string\n  ): string\n\n  getKeyPairFromPath(mnemonic: string, path: string): KeyPair\n\n  getKeyPair(privateKey: string): KeyPair\n\n  getKeyPairFromPublicKey(publicKey: string): KeyPair\n\n  getPrivate(keyPair: KeyPair): string\n\n  getPublic(keyPair: KeyPair, compressed: bolean): string\n\n  getStarkPublicKey(keyPair: KeyPair): string\n\n  getXCoordinate(publicKey: string): string\n\n  getYCoordinate(publicKey: string): string\n\n  hashMessage(w1: string, w2: string, w3: string)\n\n  deserializeMessage(serialized: string): MessageParams\n\n  serializeMessage(\n    instructionTypeBn: BN,\n    vault0Bn: BN,\n    vault1Bn: BN,\n    amount0Bn: BN,\n    amount1Bn: BN,\n    nonceBn: BN,\n    expirationTimestampBn: BN\n  ): string\n\n  formatMessage(\n    instruction: 'transfer' | 'order',\n    vault0: string,\n    vault1: string,\n    amount0: string,\n    amount1: string,\n    nonce: string,\n    expirationTimestamp: string\n  ): string\n\n  getLimitOrderMsgHash(\n    vaultSell: string,\n    vaultBuy: string,\n    amountSell: string,\n    amountBuy: string,\n    tokenSell: Token,\n    tokenBuy: Token,\n    nonce: string,\n    expirationTimestamp: string\n  ): string\n\n  getTransferMsgHash(\n    amount: string,\n    nonce: string,\n    senderVaultId: string,\n    token: Token,\n    receiverVaultId: string,\n    receiverPublicKey: string,\n    expirationTimestamp: string\n  ): string\n\n  sign(keyPair: KeyPair, msg: string): Signature\n\n  verify(keyPair: KeyPair, msg: string, sig: SignatureInput): boolean\n\n  verifyStarkPublicKey(\n    starkPublicKey: string,\n    msg: string,\n    sig: SignatureInput\n  ): boolean\n\n  compress(publicKey: string): string\n\n  decompress(publicKey: string): string\n\n  exportRecoveryParam(recoveryParam: number | null): string\n\n  importRecoveryParam(v: string): number\n\n  serializeSignature(sig: Signature): string\n\n  deserializeSignature(sig: string): SignatureOptions\n}\n```\n\n## Typings\n\n```typescript\ntype KeyPair = elliptic.ec.KeyPair\n\ntype MessageParams = {\n  instructionTypeBn: BN\n  vault0Bn: BN\n  vault1Bn: BN\n  amount0Bn: BN\n  amount1Bn: BN\n  nonceBn: BN\n  expirationTimestampBn: BN\n}\n\nclass Signature {\n  r: BN\n  s: BN\n  recoveryParam: number | null\n\n  constructor (options: SignatureInput, enc?: string)\n\n  toDER (enc?: string | null): any\n}\n\ninterface SignatureOptions {\n  r: BNInput\n  s: BNInput\n  recoveryParam?: number\n}\n\ntype BNInput =\n  | string\n  | BN\n  | number\n  | Buffer\n  | Uint8Array\n  | ReadonlyArray<number>\n\ntype SignatureInput =\n  | Signature\n  | SignatureOptions\n  | Uint8Array\n  | ReadonlyArray<number>\n  | string\n```\n\n## License\n\n[Apache License 2.0](LICENSE.md)\n","readmeFilename":"README.md","_id":"@authereum/starkware-crypto@1.9.7-beta.1","_nodeVersion":"11.15.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-ukB8CcCH9UBpPi/vgYEissIX6yXJvnkGy0gwzuqEgS3HJA9zCQpuyEUFsXfmFKM2HXnHy7reFrS1W4Jn7Xg4Kg==","shasum":"351a0db745af3d070499f6c7191b1afa51899787","tarball":"https://registry.npmjs.org/@authereum/starkware-crypto/-/starkware-crypto-1.9.7-beta.1.tgz","fileCount":21,"unpackedSize":1730897,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfoEsiCRA9TVsSAnZWagAAIuMP/0rKOkPjZ4yPdJUdAZQc\n1B6JKmfGr7Srf01gRR63KBC91OttmGCnzAb8zDjDJhbhlvKR4Ionm8DSe6NV\ngk/SVZ5PsiwMGAUpyOO1/aVMvbOs8N8w641udIFULViEZiI4p7025W1NcpEv\nsAwwhByjhtSSBKnl6y4qLlUb0D1bGzxbt+BFStSLGqSvyPJd6ZV1yU0wRODm\nGAYy5gN1EHTEFd91K0w40aWeGznNhPB4mhpaV+7XJY0XPRfwavpru/I8JJzF\nBofORREWWsxaQ2wOXVAZ71eQbVs7qz1tNx65zv918MxquEOUsDmTfkJtzpPo\nRQyUVT8hQGyEp7g1NFYyPYq8cMYKltCzcIQ+ZOW1PrruQi4VxOFWpgaOkKcQ\nFy69UH0zukEfgWBJpjUFK+EAMESAtQzEKbT8bOf2PbnG9wQBMGB4wx1rQTm8\n+B7VtfrF5d9uEjLrBKt9LYK2Br6KZGXgtdWgDhFLahvavBcuJ1PLxufPPiQ3\npoanQs6NZsUlo/AxDsSWZCYa68szSSzB9Xs2VVM36ZGf+c2Kzjz5GWODNekR\nOtiwGnFEb237Gv1dFbiyeVKolCPnc1PS0U1GLhPK75KXe746skMDnMRzgcO4\neoJqgwT4lO0rWGYCjQr7+QG/QBWO3dNRNnoBTMXkwbYUKdSuANjWHK6TSqe3\nYNcv\r\n=QgAL\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDkjq8rUYws0HI5892ILQiW2g1lItAkQs2HxF8GamaKgwIgOaQOBRY7Y0YMm+DGEFcW+d5nQbOmfB0L9kzfaNrgbM4="}]},"maintainers":[{"name":"cwhinfrey","email":"cwhinfrey@gmail.com"},{"name":"shanefontaine","email":"shane6fontaine@gmail.com"},{"name":"miguelmota","email":"hello@miguelmota.com"}],"_npmUser":{"name":"miguelmota","email":"hello@miguelmota.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/starkware-crypto_1.9.7-beta.1_1604340514149_0.048295413283653055"},"_hasShrinkwrap":false},"1.9.7-beta.2":{"name":"@authereum/starkware-crypto","description":"Starkware Crypto Library","version":"1.9.7-beta.2","author":{"name":"Pedro Gomes","email":"github.com/pedrouid"},"license":"Apache-2.0","keywords":["stark","starkware","crypto","elliptic","curve","cryptography"],"main":"dist/cjs/index.js","types":"dist/cjs/index.d.ts","unpkg":"dist/umd/index.min.js","homepage":"https://github.com/pedrouid/starkware-crypto","repository":{"type":"git","url":"git+https://github.com/pedrouid/starkware-crypto.git"},"bugs":{"url":"https://github.com/pedrouid/starkware-crypto/issues"},"scripts":{"start":"tsdx watch","clean":"rm -rf dist","build:cjs":"tsc -p tsconfig.cjs.json","build:umd":"webpack","build":"yarn clean && yarn build:cjs && yarn build:umd","test":"tsdx test ./test","lint":"prettier-standard --format","prepare":"yarn lint && yarn build","publish:beta":"npm publish --tag beta --access public","publish:latest":"npm publish --tag beta --access public"},"dependencies":{"bip39":"^3.0.2","bn.js":"^5.1.2","elliptic":"^6.5.3","enc-utils":"^2.2.2","ethereumjs-wallet":"^1.0.0","hash.js":"^1.1.7","js-sha3":"^0.8.0","keccak256":"^1.0.2","rsv-signature":"^1.1.0","@authereum/starkware-types":"1.2.0-beta.1","web3-utils":"^1.3.0"},"devDependencies":{"@types/elliptic":"6.4.12","@types/jest":"25.1.1","@types/node":"13.7.0","husky":"4.2.5","prettier-standard":"^16.4.1","tsdx":"0.13.2","tslib":"1.10.0","typescript":"3.7.5","webpack":"4.41.6","webpack-cli":"3.3.12"},"husky":{"hooks":{"pre-commit":"yarn lint"}},"prettier":{"printWidth":80,"semi":false,"singleQuote":true,"trailingComma":"es5"},"readme":"# starkware-crypto [![npm version](https://badge.fury.io/js/starkware-crypto.svg)](https://badge.fury.io/js/starkware-crypto)\n\nStarkware Crypto Library\n\n## Description\n\nThis library is a port from [starkex-resources/\\*\\*/signature.js](https://github.com/starkware-libs/starkex-resources/blob/master/crypto/starkware/crypto/signature/signature.js).\n\n## Example\n\n```typescript\nimport * as starkwareCrypto from 'starkware-crypto'\n\nconst mnemonic = ''\n\nconst path = getAccountPath(\n  'starkex',\n  'starkexdvf',\n  '0x0000000000000000000000000000000000000000',\n  '0'\n)\n\nconst keyPair = starkwareCrypto.getKeyPairFromPath(mnemonic, path)\n\nconst publicKey = starkwareCrypto.getPublic(keyPair)\n\nconst starkPublicKey = starkwareCrypto.getStarkPublicKey(publicKey)\n\nconst msgParams = {\n  amount: '2154549703648910716',\n  nonce: '1',\n  senderVaultId: '34',\n  token: {\n    type: 'ETH' as starkwareCrypto.TokenTypes,\n    data: {\n      quantum: '1',\n      tokenAddress: '0x89b94e8C299235c00F97E6B0D7368E82d640E848',\n    },\n  },\n  receiverVaultId: '21',\n  receiverPublicKey:\n    '0x5fa3383597691ea9d827a79e1a4f0f7949435ced18ca9619de8ab97e661020',\n  expirationTimestamp: '438953',\n}\n\nconst message = starkwareCrypto.getTransferMsgHash(\n  msgParams.amount,\n  msgParams.nonce,\n  msgParams.senderVaultId,\n  msgParams.token,\n  msgParams.receiverVaultId,\n  msgParams.receiverPublicKey,\n  msgParams.expirationTimestamp\n)\n\nconst signature = starkwareCrypto.sign(keyPair, message)\n\nconst verified = starkwareCrypto.verify(keyPair, message, signature)\n```\n\n## API\n\n```typescript\ninterface StarkwareCrypto {\n  getAccountPath(\n    layer: string,\n    application: string,\n    ethereumAddress: string,\n    index: string\n  ): string\n\n  getKeyPairFromPath(mnemonic: string, path: string): KeyPair\n\n  getKeyPair(privateKey: string): KeyPair\n\n  getKeyPairFromPublicKey(publicKey: string): KeyPair\n\n  getPrivate(keyPair: KeyPair): string\n\n  getPublic(keyPair: KeyPair, compressed: bolean): string\n\n  getStarkPublicKey(keyPair: KeyPair): string\n\n  getXCoordinate(publicKey: string): string\n\n  getYCoordinate(publicKey: string): string\n\n  hashMessage(w1: string, w2: string, w3: string)\n\n  deserializeMessage(serialized: string): MessageParams\n\n  serializeMessage(\n    instructionTypeBn: BN,\n    vault0Bn: BN,\n    vault1Bn: BN,\n    amount0Bn: BN,\n    amount1Bn: BN,\n    nonceBn: BN,\n    expirationTimestampBn: BN\n  ): string\n\n  formatMessage(\n    instruction: 'transfer' | 'order',\n    vault0: string,\n    vault1: string,\n    amount0: string,\n    amount1: string,\n    nonce: string,\n    expirationTimestamp: string\n  ): string\n\n  getLimitOrderMsgHash(\n    vaultSell: string,\n    vaultBuy: string,\n    amountSell: string,\n    amountBuy: string,\n    tokenSell: Token,\n    tokenBuy: Token,\n    nonce: string,\n    expirationTimestamp: string\n  ): string\n\n  getTransferMsgHash(\n    amount: string,\n    nonce: string,\n    senderVaultId: string,\n    token: Token,\n    receiverVaultId: string,\n    receiverPublicKey: string,\n    expirationTimestamp: string\n  ): string\n\n  sign(keyPair: KeyPair, msg: string): Signature\n\n  verify(keyPair: KeyPair, msg: string, sig: SignatureInput): boolean\n\n  verifyStarkPublicKey(\n    starkPublicKey: string,\n    msg: string,\n    sig: SignatureInput\n  ): boolean\n\n  compress(publicKey: string): string\n\n  decompress(publicKey: string): string\n\n  exportRecoveryParam(recoveryParam: number | null): string\n\n  importRecoveryParam(v: string): number\n\n  serializeSignature(sig: Signature): string\n\n  deserializeSignature(sig: string): SignatureOptions\n}\n```\n\n## Typings\n\n```typescript\ntype KeyPair = elliptic.ec.KeyPair\n\ntype MessageParams = {\n  instructionTypeBn: BN\n  vault0Bn: BN\n  vault1Bn: BN\n  amount0Bn: BN\n  amount1Bn: BN\n  nonceBn: BN\n  expirationTimestampBn: BN\n}\n\nclass Signature {\n  r: BN\n  s: BN\n  recoveryParam: number | null\n\n  constructor (options: SignatureInput, enc?: string)\n\n  toDER (enc?: string | null): any\n}\n\ninterface SignatureOptions {\n  r: BNInput\n  s: BNInput\n  recoveryParam?: number\n}\n\ntype BNInput =\n  | string\n  | BN\n  | number\n  | Buffer\n  | Uint8Array\n  | ReadonlyArray<number>\n\ntype SignatureInput =\n  | Signature\n  | SignatureOptions\n  | Uint8Array\n  | ReadonlyArray<number>\n  | string\n```\n\n## License\n\n[Apache License 2.0](LICENSE.md)\n","readmeFilename":"README.md","_id":"@authereum/starkware-crypto@1.9.7-beta.2","_nodeVersion":"11.15.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-MOhClXRd+oBNKMEIFoUUVFEbiMnCzg4BhJZR6EFDm1O7j4pCAO5HGADGvONZbIoRg9mMvqBTMtfDd/AY0ty/Aw==","shasum":"9edbe2dd4587f3984a7132f20a22b763d2e4c786","tarball":"https://registry.npmjs.org/@authereum/starkware-crypto/-/starkware-crypto-1.9.7-beta.2.tgz","fileCount":21,"unpackedSize":1730978,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfoE0VCRA9TVsSAnZWagAAiGgP/3quuFiAj/qTdcT1WhCR\nCrKmLYH/eC+T08B8OfoEtR4URHcO/P5z7LtYF+3C5V7RnioEXv/K4rhSjaFf\nagS15vyOgfqSilqKR3zonPQf/cAr4qDMyITzxsswqOjZTLJFc7icA0F2ib3e\n9FufIGmff2LaDIl0zAVvcZiyMQ18gMqmbAJAPWLKrnrWlqPRWy28jFTyEUML\nkk62qb6NJcpHQjkv6neYXL1Gx/4Cybsx3NfY5s9b/SXu2bNSQGrLsMDnJAFM\nl+ZBQAwjd4lsrnEagNG8RTCjXSfnrfiZ1RXrYNy2kRafpQHkAqExV2aSTPiz\nMRgoiWuThO3FBiGSULMyI5ol2/MhUGhGpH8/yV9/i0JwwjymXUFikpQ0dCB7\nfFoeITOfsJAehbXRS8ALnhhnB8/Qu6dBp9+0CxuHSCtuTlastEZ+WkuWjliY\nA5FWC4SWRRycaUjGDm5j/+bmZZVnlCj2q3OnafjNUeFHoaMHmm04nZRqoI0E\n+pXGlHCIOP8oIOTAJmHsV3v8Ef03B8rvzXYQbBRZlgmYty/jaNQ12xAct8UH\ngpGrIVJMU3SpYYFcjB+mLbDT9xPIJil5gRoRqlGeSqb70Vn9Fn9kQpdglVHS\nVh+TLEaJlZjQLArKJv70ndHLPfKmdruBKqhsqtpzD4FjkRcuFFgIB/bWZfUB\neP3S\r\n=4gfK\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICdo/OzQLk2+nIW4bX+B8YQpI1/T7112UtqKBQf1c2S1AiBal9ImjDfz1LvrhwR1nkQOMSwQn52FiRs5nNh5bshkkg=="}]},"maintainers":[{"name":"cwhinfrey","email":"cwhinfrey@gmail.com"},{"name":"shanefontaine","email":"shane6fontaine@gmail.com"},{"name":"miguelmota","email":"hello@miguelmota.com"}],"_npmUser":{"name":"miguelmota","email":"hello@miguelmota.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/starkware-crypto_1.9.7-beta.2_1604341013494_0.11933917025652963"},"_hasShrinkwrap":false},"1.9.7-beta.3":{"name":"@authereum/starkware-crypto","description":"Starkware Crypto Library","version":"1.9.7-beta.3","author":{"name":"Pedro Gomes","email":"github.com/pedrouid"},"license":"Apache-2.0","keywords":["stark","starkware","crypto","elliptic","curve","cryptography"],"main":"dist/cjs/index.js","types":"dist/cjs/index.d.ts","unpkg":"dist/umd/index.min.js","homepage":"https://github.com/pedrouid/starkware-crypto","repository":{"type":"git","url":"git+https://github.com/pedrouid/starkware-crypto.git"},"bugs":{"url":"https://github.com/pedrouid/starkware-crypto/issues"},"scripts":{"start":"tsdx watch","clean":"rm -rf dist","build:cjs":"tsc -p tsconfig.cjs.json","build:umd":"webpack","build":"yarn clean && yarn build:cjs && yarn build:umd","test":"tsdx test ./test","lint":"prettier-standard --format","prepare":"yarn lint && yarn build","publish:beta":"npm publish --tag beta --access public","publish:latest":"npm publish --tag latest --access public"},"dependencies":{"bip39":"^3.0.2","bn.js":"^5.1.2","elliptic":"^6.5.3","enc-utils":"^2.2.2","ethereumjs-wallet":"^1.0.0","hash.js":"^1.1.7","js-sha3":"^0.8.0","keccak256":"^1.0.2","rsv-signature":"^1.1.0","@authereum/starkware-types":"1.2.0-beta.1","web3-utils":"^1.3.0"},"devDependencies":{"@types/elliptic":"6.4.12","@types/jest":"25.1.1","@types/node":"13.7.0","husky":"4.2.5","prettier-standard":"^16.4.1","tsdx":"0.13.2","tslib":"1.10.0","typescript":"3.7.5","webpack":"4.41.6","webpack-cli":"3.3.12"},"husky":{"hooks":{"pre-commit":"yarn lint"}},"prettier":{"printWidth":80,"semi":false,"singleQuote":true,"trailingComma":"es5"},"_id":"@authereum/starkware-crypto@1.9.7-beta.3","_nodeVersion":"11.15.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-dBUsAVr3IcmUKh2De+yYo/bbCwWr70d2v0jfjWWKR0do0IEI0bqVc7Xk6/R7rzNbKfu1Lmag9JC+XFh/ZzT4GQ==","shasum":"25674d97d75bbd29e68055308d0a691e765760b2","tarball":"https://registry.npmjs.org/@authereum/starkware-crypto/-/starkware-crypto-1.9.7-beta.3.tgz","fileCount":25,"unpackedSize":1734428,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfoSJSCRA9TVsSAnZWagAACNIP/1DLuAKarG5DMKJj5PZy\nIqFmH/1FyV76u2vwoGA1dqu45eMDi3OfMpAvyIx48fTqGTDb62UeCko8l6BG\n0Vx7z6fT+sy7YVOEzgk3tU6Af3WSp6cIOiv1J+N5jAAcCEjFqHuwaFobEjlt\nnANqQdU1qxUgXCavUUnWEjBcixVlRXtmhaZWx3tCIEtw+RD1Ney9aE4uCTna\nOSn63Aej6FEOn1NYRHgER6C042lTkTTqvNvNt0jBtVKWTCmtx2426V9FfJn+\nXpzem9iD9o8wXT7Dk79N2OtkQAC3hc679Cvv37KP1RTP+LQiUHeZk1PJ/nUd\nGrPjsc2w62/6Z36QRWzdu3vFZ69MRk0BahW5/NipB4M3AT+ALNZCA3MmWAf0\n14We2VOAo4Dn6faPFKbdzD1qri6yu0J9e+A7Bf1MIRhRIRgnYEE/jNb3Y88n\n8cOnfWxIWTIYJIYEGHU65ql2WMYfTrwFGuhus17cbLnNCvdzBC3oyBYvcU75\nSqcfINE65Q0b8Olz1QU1S7Hh0lqQ9KYfuh+cZuhXJ0+vBafsC3XvPU6WvYNx\ndvGOb63wE4FhDGhxAYzNX3DebdFzNFD6dbiFlj6eH52/qWvJxaHFyh6x7AxX\nlLuWoZxmzNjJgBx+jr5chBQ6Pn4L/0Ij2PhIDghBdS0neCf3symnyIzo1UxG\nAlo4\r\n=gkpB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCMHnGO6j/jIbFi4lpJvJwGvfA7wvUHXzNzKkLT0PJSdQIgJ2qU0jwE1dQOj/CU0ZV/oLR/6kW/PyOFOI0EOKV/KZk="}]},"maintainers":[{"name":"cwhinfrey","email":"cwhinfrey@gmail.com"},{"name":"shanefontaine","email":"shane6fontaine@gmail.com"},{"name":"miguelmota","email":"hello@miguelmota.com"}],"_npmUser":{"name":"miguelmota","email":"hello@miguelmota.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/starkware-crypto_1.9.7-beta.3_1604395602019_0.8253547983177663"},"_hasShrinkwrap":false},"1.9.7-beta.4":{"name":"@authereum/starkware-crypto","description":"Starkware Crypto Library","version":"1.9.7-beta.4","author":"","license":"Apache-2.0","keywords":["stark","starkware","crypto","elliptic","curve","cryptography"],"contributors":[{"name":"Pedro Gomes","email":"github.com/pedrouid"},{"name":"Miguel Mota","email":"github.com/miguelmota"}],"main":"dist/cjs/index.js","types":"dist/cjs/index.d.ts","unpkg":"dist/umd/index.min.js","homepage":"http://github.com/authereum/starkware-monorepo/tree/master/packages/starkware-crypto","repository":{"type":"git","url":"git+https://github.com/authereum/starkware-monorepo.git"},"bugs":{"url":"https://github.com/authereum/starkware-monorepo/issues"},"scripts":{"start":"tsdx watch","clean":"rm -rf dist","build:cjs":"tsc -p tsconfig.cjs.json","build:umd":"webpack","build":"yarn clean && yarn build:cjs && yarn build:umd","test":"tsdx test ./test","lint":"prettier-standard --format","prepare":"yarn lint && yarn build","publish:beta":"npm publish --tag beta --access public","publish:latest":"npm publish --tag latest --access public"},"dependencies":{"bip39":"^3.0.2","bn.js":"^5.1.2","elliptic":"^6.5.3","enc-utils":"^2.2.2","ethereumjs-wallet":"^1.0.0","hash.js":"^1.1.7","js-sha3":"^0.8.0","keccak256":"^1.0.2","rsv-signature":"^1.1.0","@authereum/starkware-types":"1.2.0-beta.1","web3-utils":"^1.3.0"},"devDependencies":{"@types/elliptic":"6.4.12","@types/jest":"25.1.1","@types/node":"13.7.0","husky":"4.2.5","prettier-standard":"^16.4.1","tsdx":"0.13.2","tslib":"1.10.0","typescript":"3.7.5","webpack":"4.41.6","webpack-cli":"3.3.12"},"husky":{"hooks":{"pre-commit":"yarn lint"}},"prettier":{"printWidth":80,"semi":false,"singleQuote":true,"trailingComma":"es5"},"_id":"@authereum/starkware-crypto@1.9.7-beta.4","_nodeVersion":"11.15.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-+G7lFxr2hbkIos/tHB2WJixmuaEU4XlF3QLT2Kls9yREyVszLmOz3ibHeyW4IsXL2aNYFP/5lozjmZB3Y9GDUQ==","shasum":"19e0c070ff96a781e3a60fc2737c56a748671b1b","tarball":"https://registry.npmjs.org/@authereum/starkware-crypto/-/starkware-crypto-1.9.7-beta.4.tgz","fileCount":25,"unpackedSize":1735189,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfocSNCRA9TVsSAnZWagAA2JIP/2FwNglQ2qIqNNSa4z9I\ngxVdas/csHdsxLW1O92DES78wMM4rXfYkI91Jq7XKp50Ja1npu5jHCFYVyLG\n19kCaf1Dp+LmS5t2xXmjBcYQTyQzGI//mc5yNA8548Hn+iqfciLW/5mYbjrY\nZ+kDHqgxWhi6u9Vwe5tiG/gL974hOrLEDwfJFvQxzq4nmJSYGu1S2NXmPJlq\nr9/84v2xBL/WO0cU5yp3pZUbPT8Bp7OU/SCUAO32wvOUV79ziDicl3vCr5cV\nryUR5ve4JPe6KjLjXVmCi83uqbOIqFhGjd0jZWBqfy7S4pGA98lqFhLaWV+D\noD18dOLsqdYwx7I1xC2r9uUPfq4s/WlaniWxAmnVc/fs+XWdZsjxzuBXqi/a\nkwLGA13AtdbK7q/ESJxTE8nqv7Iw4EiFqdxiN18s/kDJQzN2I0N7+pXzIXmS\nlmTW8B0qYIV3SxFJ5eX+csRykVgbKHoqHGMno7NXBkRXg7CcldieWeUnjDEX\nour5hVpDLrc1e0cmPA3B5hjyZvlIeFq+gVCYVrWRLfQiT+xAFILveR/XpKrN\nd7zlYfPA2Ryn8FcrCIbcVuAkzzILKT+zkeIGZPXiEA1lnDtvUE2IbGZvDIGq\n9GS80Iw+87v5H5KEKPB/UwHfg2tRiVFW0DNaGO0tkrjPZaBHwN094XjpJKNx\nNqb2\r\n=XDOM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDrrgoa4HxQbKZBZjPWMsuMOojN+5fTSvroTTCui924TQIhAIUb2D39n0zoDH6MTxmbLobTiaT9gWi9OEUpzFuneniY"}]},"_npmUser":{"name":"miguelmota","email":"hello@miguelmota.com"},"directories":{},"maintainers":[{"name":"cwhinfrey","email":"cwhinfrey@gmail.com"},{"name":"shanefontaine","email":"shane6fontaine@gmail.com"},{"name":"miguelmota","email":"hello@miguelmota.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/starkware-crypto_1.9.7-beta.4_1604437132955_0.5788259598962919"},"_hasShrinkwrap":false},"1.9.7-beta.5":{"name":"@authereum/starkware-crypto","description":"Starkware Crypto Library","version":"1.9.7-beta.5","author":"","license":"Apache-2.0","keywords":["stark","starkware","crypto","elliptic","curve","cryptography"],"contributors":[{"name":"Pedro Gomes","email":"github.com/pedrouid"},{"name":"Miguel Mota","email":"github.com/miguelmota"}],"main":"dist/cjs/index.js","types":"dist/cjs/index.d.ts","unpkg":"dist/umd/index.min.js","homepage":"http://github.com/authereum/starkware-monorepo/tree/master/packages/starkware-crypto","repository":{"type":"git","url":"git+https://github.com/authereum/starkware-monorepo.git"},"bugs":{"url":"https://github.com/authereum/starkware-monorepo/issues"},"scripts":{"start":"tsdx watch","clean":"rm -rf dist","build:cjs":"tsc -p tsconfig.cjs.json","build:umd":"webpack","build":"yarn clean && yarn build:cjs && yarn build:umd","test":"tsdx test ./test","lint":"prettier-standard --format","prepare":"yarn lint && yarn build","publish:beta":"npm publish --tag beta --access public","publish:latest":"npm publish --tag latest --access public"},"dependencies":{"bip39":"^3.0.2","bn.js":"^5.1.2","elliptic":"^6.5.3","enc-utils":"^2.2.2","ethereumjs-wallet":"^1.0.0","hash.js":"^1.1.7","js-sha3":"^0.8.0","keccak256":"^1.0.2","rsv-signature":"^1.1.0","@authereum/starkware-types":"1.2.0-beta.1","web3-utils":"^1.3.0"},"devDependencies":{"@types/elliptic":"6.4.12","@types/jest":"25.1.1","@types/node":"13.7.0","husky":"4.2.5","prettier-standard":"^16.4.1","tsdx":"0.13.2","tslib":"1.10.0","typescript":"3.7.5","webpack":"4.41.6","webpack-cli":"3.3.12"},"husky":{"hooks":{"pre-commit":"yarn lint"}},"prettier":{"printWidth":80,"semi":false,"singleQuote":true,"trailingComma":"es5"},"_id":"@authereum/starkware-crypto@1.9.7-beta.5","_nodeVersion":"11.15.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-ei/QKzkPkcs7od5cmvph99A6KJvS6OxYtr3hntlx6zPmaGDr9v0q+IWQwiPXfQInz1dQIjlYJKPU6veKptE42g==","shasum":"7d7fa6b0499d29fe7fe3aee4bbcff968cb9b167b","tarball":"https://registry.npmjs.org/@authereum/starkware-crypto/-/starkware-crypto-1.9.7-beta.5.tgz","fileCount":25,"unpackedSize":1735257,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfocxuCRA9TVsSAnZWagAAKnoP/0mSMtQh4vhtULiz7svq\nB8iGvAuIVwjuy8HQKHKrauiId+trwmkvILg1lYdMLm7tmj2yRCcF4CSu+rBm\nG4089WYH7mWOpBnDaSvaCOplN8uzOE77jLaM3plGu6M73Clr39+UQRJSAXq6\n+NYGV5DeeOYYh1V+4j0XXgKktuSVsTunB+iLxWCQ2zziePULF2OKUJbxPDjj\n7+AcO0PJY0Kpa8rjE1a9RaJh/g8FjMiJ5q4SMn7YKVrcPWqjChboLj7WwfMt\nwSn7SDmXxumvBzfALe63hpvStkeH58BR1a+mOc5GIvJENMfokxB7b/ELRToG\nH9HQkfEMOKx6C/5ZKE4Ycg9kqJ3NVXxff9T3jFQZYZdrrz08vwysY2koBDyY\nrU4dzla0VGJbY7JSqIm0cIiM3ockfDne2SnDdm67Lr4UnI3yChSWktU86j+f\n+d4nklgtk+1M84Je7Ar1IC4UTl7IzNouWSZG+rdAcOG09swwh1B+MrwE91xm\nBFyjqDFFvO+dMRm9OcShw0Oca1Ov2R7sG3Vw6GfI1teS3l1VEILcidN3eV+P\nleyU2mdUo7gMMx6fbyam88ov1aq/JA5Gsww8jMhNSg2VcG/loR13mtlqibaE\nRQf9EdE0t3WS6Bz2fb/z+B7cXB0Wlw7Ggx6LhfaGAUbSDBfUkWe+K6w3KdGE\nrDPh\r\n=aKAl\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBx0gQR1hHnYc+cdUIRRikWKGrD31ZnpUUcYb/Uee6TfAiBKW1B5Cy5A8jY8/b+T72csOJXQ5YPlAB7Oah3DWLhZCw=="}]},"_npmUser":{"name":"miguelmota","email":"hello@miguelmota.com"},"directories":{},"maintainers":[{"name":"cwhinfrey","email":"cwhinfrey@gmail.com"},{"name":"shanefontaine","email":"shane6fontaine@gmail.com"},{"name":"miguelmota","email":"hello@miguelmota.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/starkware-crypto_1.9.7-beta.5_1604439150152_0.5787015284781274"},"_hasShrinkwrap":false},"1.9.7-beta.6":{"name":"@authereum/starkware-crypto","description":"Starkware Crypto Library","version":"1.9.7-beta.6","author":"","license":"Apache-2.0","keywords":["stark","starkware","crypto","elliptic","curve","cryptography"],"contributors":[{"name":"Pedro Gomes","email":"github.com/pedrouid"},{"name":"Miguel Mota","email":"github.com/miguelmota"}],"main":"dist/cjs/index.js","types":"dist/cjs/index.d.ts","unpkg":"dist/umd/index.min.js","homepage":"https://github.com/authereum/starkware-monorepo/tree/master/packages/starkware-crypto","repository":{"type":"git","url":"git+https://github.com/authereum/starkware-monorepo.git"},"bugs":{"url":"https://github.com/authereum/starkware-monorepo/issues"},"scripts":{"start":"tsdx watch","clean":"rm -rf dist","build:cjs":"tsc -p tsconfig.cjs.json","build:umd":"webpack","build":"yarn clean && yarn build:cjs && yarn build:umd","test":"tsdx test ./test","lint":"prettier-standard --format","prepare":"yarn lint && yarn build","publish:beta":"npm publish --tag beta --access public","publish:latest":"npm publish --tag latest --access public"},"dependencies":{"bip39":"^3.0.2","bn.js":"^5.1.2","elliptic":"^6.5.3","enc-utils":"^2.2.2","ethereumjs-wallet":"^1.0.0","hash.js":"^1.1.7","js-sha3":"^0.8.0","keccak256":"^1.0.2","rsv-signature":"^1.1.0","@authereum/starkware-types":"1.2.0-beta.1","web3-utils":"^1.3.0"},"devDependencies":{"@types/elliptic":"6.4.12","@types/jest":"25.1.1","@types/node":"13.7.0","husky":"4.2.5","prettier-standard":"^16.4.1","tsdx":"0.13.2","tslib":"1.10.0","typescript":"3.7.5","webpack":"4.41.6","webpack-cli":"3.3.12"},"husky":{"hooks":{"pre-commit":"yarn lint"}},"prettier":{"printWidth":80,"semi":false,"singleQuote":true,"trailingComma":"es5"},"_id":"@authereum/starkware-crypto@1.9.7-beta.6","_nodeVersion":"11.15.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-QeCDSqSw1Py51tpRUo4FSrHEWgqXDiQYBoQgdRcwsSOjhS+75+YtmMl8gcpFrcDtkYsi0Wu/Z1IyOtzji4T9Tw==","shasum":"1cfacc97bbc9673964c16edecabb0aa4e33a1ca0","tarball":"https://registry.npmjs.org/@authereum/starkware-crypto/-/starkware-crypto-1.9.7-beta.6.tgz","fileCount":29,"unpackedSize":1747103,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfo4e+CRA9TVsSAnZWagAAX8wP/1jDJF1A16Ls/7fEDHZw\naObFrd63++skI97rxz+NVRpEoUdkQWb2hOaV6TNb9bmr2XdXujuAowlRaGdP\nmVu4hAOYhz4WNnyFtcsLK4aSYolKnwqK91i5jb7O+0kexbtHpQ3MT38AeshD\nJMU6CKDtNpa5t+IzqGzlMMq9XerpTpR5h5LZMoEenUguxqaMHPVzy4Vc5m0/\n+2LOyZZGLd48xC5P/3OjKMVdRe3OTm4kby7A95hJpr+8HYh+r3Mq0SuAV5dD\nB08jS1Lgv/YQ9Td0Ff/78FtgpMzjFjYE8Sjo62hMWZAAP4o1kuVNxLf3Hyl5\neHMDiBa234JJMzENE2SnXXBgAL6a/D3YK2QPdwqCTS9JiasX+sUZt+ge02iv\nd01f2Q8D3DSFOHYEFT0naQRvbrFl0sDBRp/iiUwujenRLuGojz4EUAWt9JMi\nRZtZcujzsl/sqOzkgciQdBv3NsGrDYQdLLvnKTX4L7G9BWOvubCzzYXc1x3z\nyqPUH1aYs66scAMSnhSQbtreaKfES/rbZXLl2WBbxyhophaYdXKvgLYgatLw\ntpGuOp8JbZdPZuaoJZMiWDMVVE2lKmYTB7mlCzE6XJ98HlcWRkZ14i4t5o7x\n8JV5d4NdIAU55C29gvm9RYG33V9smaiHHySTYNMceHVhftxfyAQbs90gAx+0\nVmFv\r\n=2KMY\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDkBHPZLn/AUjVsRuPZfBQSXUbuKE/D8YXXI0Yv5VuIggIhAMIL5Y1U6gzxYtSctBXmYme9yZPXdJDojZ08Urjj46Tp"}]},"_npmUser":{"name":"miguelmota","email":"hello@miguelmota.com"},"directories":{},"maintainers":[{"name":"cwhinfrey","email":"cwhinfrey@gmail.com"},{"name":"shanefontaine","email":"shane6fontaine@gmail.com"},{"name":"miguelmota","email":"hello@miguelmota.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/starkware-crypto_1.9.7-beta.6_1604552637565_0.0485099520748391"},"_hasShrinkwrap":false},"1.9.7-beta.7":{"name":"@authereum/starkware-crypto","description":"Starkware Crypto Library","version":"1.9.7-beta.7","author":"","license":"Apache-2.0","keywords":["stark","starkware","crypto","elliptic","curve","cryptography"],"contributors":[{"name":"Pedro Gomes","email":"github.com/pedrouid"},{"name":"Miguel Mota","email":"github.com/miguelmota"}],"main":"dist/cjs/index.js","types":"dist/cjs/index.d.ts","unpkg":"dist/umd/index.min.js","homepage":"https://github.com/authereum/starkware-monorepo/tree/master/packages/starkware-crypto","repository":{"type":"git","url":"git+https://github.com/authereum/starkware-monorepo.git"},"bugs":{"url":"https://github.com/authereum/starkware-monorepo/issues"},"scripts":{"start":"tsdx watch","clean":"rm -rf dist","build:cjs":"tsc -p tsconfig.cjs.json","build:umd":"webpack","build":"yarn clean && yarn build:cjs && yarn build:umd","test":"tsdx test ./test","lint":"prettier-standard --format","prepare":"yarn lint && yarn build","publish:beta":"npm publish --tag beta --access public","publish:latest":"npm publish --tag latest --access public"},"dependencies":{"bip39":"^3.0.2","bn.js":"^5.1.2","elliptic":"^6.5.3","enc-utils":"^2.2.2","ethereumjs-wallet":"^1.0.0","hash.js":"^1.1.7","js-sha3":"^0.8.0","keccak256":"^1.0.2","rsv-signature":"^1.1.0","@authereum/starkware-types":"1.2.0-beta.1","web3-utils":"^1.3.0"},"devDependencies":{"@types/elliptic":"6.4.12","@types/jest":"25.1.1","@types/node":"13.7.0","husky":"4.2.5","prettier-standard":"^16.4.1","tsdx":"0.13.2","tslib":"1.10.0","typescript":"3.7.5","webpack":"4.41.6","webpack-cli":"3.3.12"},"husky":{"hooks":{"pre-commit":"yarn lint"}},"prettier":{"printWidth":80,"semi":false,"singleQuote":true,"trailingComma":"es5"},"_id":"@authereum/starkware-crypto@1.9.7-beta.7","_nodeVersion":"11.15.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-1jEP6oLCTi1vRdnuTeCm2YA7g0WUSmQq4fvC3h6PhFPLPRZAYtnO13TPli+w3KAYYWrC5DfhGH161Quv3VVgQg==","shasum":"f5cd4161cfef9295a6808eb876c19fe9e38276d9","tarball":"https://registry.npmjs.org/@authereum/starkware-crypto/-/starkware-crypto-1.9.7-beta.7.tgz","fileCount":29,"unpackedSize":1747121,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfpQ6RCRA9TVsSAnZWagAAi3AP/A5k0NY+YkZbmjvWFI8/\nHEzpDdMwGuNg6s7VbY1LP35Ye04ci6wkFYjuc35HT20ZkqnlW6xNpTq25mMm\n2sQlWNpfHq9xGO8fmQRAcKDDp3y9GsZXdRh7p8GEphaEZBgwgjvcAvTqda0J\nX5WtNDk2Pdviz3D5V4c01lWSwQYSFyXqfQFMOWjjsC2e8HqKj7urh8/Iu0R5\nlXXmBYdt44lifaBUnTyVraBYZrh+hUX+ZVXIZ73wALpUEJzQgxae0G3n+OWS\npu58Cyyzmm3hjlZCZ5uZE4dEalKJrZWmedoM7loFWidnCbzafINLedHw4u93\n9TrDLb+K0fsaJPpNCbe9CKpetSXY1P+uppQ1ZilCIC6rCxLAqIXwJXlB6T+B\ni7otM4mf92TY1tGIlW3mY+GiuKquCA7E/be44gTKl9iuXfU+BLaSm6Zl885/\nRQiPjw6KhZAe+hdHO5Psjul3l7O2gR9UGdm4GCrUW0VEtDhv7edPhb/mLWX6\n0qxQ4M95UwCh6YipnuaDDBAQiyYJtSOCzouYt8oGppSc4WF8iZS+oQ6qBvG8\nG3uRZw6Rk08C2gIaOtAPR/DBagsgf94JLcVag9Lh6ZoG2weomqyVU9amfyCC\nta83Ir8iT/nyarU7kBhNMu09hwaIbyUeB6XJxc97XmuLG18qG2NVnLWAZFES\n44R8\r\n=wB8i\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBo62BPHF89l3cfv4NqlJCq89DOHZt/DgJtt1SoQfN6EAiEAvdXEPNXAs1gRlPEQRipblfplfs5souHjr5UMm26kUwM="}]},"_npmUser":{"name":"miguelmota","email":"hello@miguelmota.com"},"directories":{},"maintainers":[{"name":"cwhinfrey","email":"cwhinfrey@gmail.com"},{"name":"shanefontaine","email":"shane6fontaine@gmail.com"},{"name":"miguelmota","email":"hello@miguelmota.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/starkware-crypto_1.9.7-beta.7_1604652688544_0.289050959771304"},"_hasShrinkwrap":false},"1.10.0-beta.0":{"name":"@authereum/starkware-crypto","description":"Starkware Crypto Library","version":"1.10.0-beta.0","author":"","license":"Apache-2.0","keywords":["stark","starkware","crypto","elliptic","curve","cryptography"],"contributors":[{"name":"Pedro Gomes","email":"github.com/pedrouid"},{"name":"Miguel Mota","email":"github.com/miguelmota"}],"main":"dist/cjs/index.js","types":"dist/cjs/index.d.ts","unpkg":"dist/umd/index.min.js","homepage":"https://github.com/authereum/starkware-monorepo/tree/master/packages/starkware-crypto","repository":{"type":"git","url":"git+https://github.com/authereum/starkware-monorepo.git"},"bugs":{"url":"https://github.com/authereum/starkware-monorepo/issues"},"scripts":{"start":"tsdx watch","clean":"rm -rf dist","build:cjs":"tsc -p tsconfig.cjs.json","build:umd":"webpack","build":"yarn clean && yarn build:cjs && yarn build:umd","test":"tsdx test ./test","lint":"prettier-standard --format","prepare":"yarn lint && yarn build","publish:beta":"npm publish --tag beta --access public","publish:next":"npm publish --tag next --access public","publish:latest":"npm publish --tag latest --access public"},"dependencies":{"bip39":"^3.0.2","bn.js":"^5.1.2","elliptic":"^6.5.3","enc-utils":"3.0.0","ethereumjs-wallet":"^1.0.0","hash.js":"^1.1.7","js-sha3":"^0.8.0","keccak256":"^1.0.2","rsv-signature":"^1.1.0","web3-utils":"^1.3.0"},"devDependencies":{"@types/elliptic":"6.4.12","@types/jest":"25.1.1","@types/node":"13.7.0","husky":"4.2.5","prettier-standard":"^16.4.1","tsdx":"0.13.2","tslib":"1.10.0","typescript":"3.7.5","webpack":"4.41.6","webpack-cli":"3.3.12"},"husky":{"hooks":{"pre-commit":"yarn lint"}},"prettier":{"printWidth":80,"semi":false,"singleQuote":true,"trailingComma":"es5"},"readme":"# starkware-crypto [![npm version](https://badge.fury.io/js/starkware-crypto.svg)](https://badge.fury.io/js/starkware-crypto)\n\n> Starkware Crypto Library\n\n## Description\n\nThis library is a port from [starkex-resources/\\*\\*/signature.js](https://github.com/starkware-libs/starkex-resources/blob/master/crypto/starkware/crypto/signature/signature.js).\n\n## Getting started\n\n```js\nimport * as starkwareCrypto from '@authereum/starkware-crypto'\n\nconst mnemonic =\n  'puzzle number lab sense puzzle escape glove faith strike poem acoustic picture grit struggle know tuna soul indoor thumb dune fit job timber motor'\nconst layer = 'starkex'\nconst application = 'starkexdvf'\nconst zeroAddress = '0x0000000000000000000000000000000000000000'\nconst index = '0'\n\nconst path = starkwareCrypto.getAccountPath(\n  layer,\n  application,\n  zeroAddress,\n  index\n)\n\nconst keyPair = starkwareCrypto.getKeyPairFromPath(mnemonic, path)\n```\n\n## Examples\n\nDerive key pair:\n\n```js\nconst keyPair = getKeyPairFromPath(mnemonic, path)\n```\n\nPublic key:\n\n```js\nconst compressed = true\nconst pubKey = getPublic(keyPair, compressed)\n```\n\nPublic key X coordinate:\n\n```js\nconst x = getXCoordinate(pubKey)\n```\n\nPublic key Y coordinate:\n\n```js\nconst y = getYCoordinate(pubKey)\n```\n\nTransfer message hash:\n\n```js\nconst msgHash = getTransferMsgHash(\n  amount, // (uint63 decimal str)\n  nonce, // (uint31)\n  senderVaultId, // (uint31)\n  token, // (hex str with 0x prefix < prime)\n  targetVaultId, // (uint31)\n  targetPublicKey, // (hex str with 0x prefix < prime)\n  expirationTimestamp, // (uint22)\n  condition // (hex str with 0x prefix < prime)\n)\n```\n\nVerify signature:\n\n```js\nconst msgSignature = starkwareCrypto.sign(keyPair, msgHash)\nassert(starkwareCrypto.verify(publicKey, msgHash, msgSignature))\n```\n\nETH asset type:\n\n```js\nconst asset = {\n  type: 'ETH',\n  data: {\n    quantum: '1',\n  },\n}\nconsole.log(getAssetType(asset)) // '0x01142460171646987f20c714eda4b92812b22b811f56f27130937c267e29bd9e'\n```\n\nERC20 asset type:\n\n```js\nconst asset = {\n  type: 'ERC20',\n  data: {\n    quantum: '10000',\n    tokenAddress: '0xdAC17F958D2ee523a2206206994597C13D831ec7',\n  },\n}\nconsole.log(getAssetType(asset)) // '0x0352386d5b7c781d47ecd404765307d74edc4d43b0490b8e03c71ac7a7429653'\n```\n\nERC721 asset type:\n\n```js\nconst asset = {\n  type: 'ERC721',\n  data: {\n    tokenId: '4100',\n    tokenAddress: '0xB18ed4768F87b0fFAb83408014f1caF066b91380',\n  },\n}\nconsole.log(getAssetType(asset)) // '0x020c0e279ea2e027258d3056f34eca6e47ad9aaa995b896cafcb68d5a65b115b'\n```\n\nETH asset ID:\n\n```js\nconst quantum = '1'\nconsole.log(getEthAssetId(quantum)) // '0x01142460171646987f20c714eda4b92812b22b811f56f27130937c267e29bd9e'\n```\n\nERC20 asset ID:\n\n```js\nconst tokenAddress = '0xdAC17F958D2ee523a2206206994597C13D831ec7'\nconst quantum = '10000'\nconsole.log(getErc20AssetId(tokenAddress, quantum)) // '0x0352386d5b7c781d47ecd404765307d74edc4d43b0490b8e03c71ac7a7429653'\n```\n\nERC721 asset ID:\n\n```js\nconst tokenAddress = '0xB18ed4768F87b0fFAb83408014f1caF066b91380'\nconst tokenId = '4100'\nconsole.log(getErc721AssetId(tokenAddress, tokenId)) // '0x02b0ff0c09505bc40f9d1659becf16855a7b2298b010f8a54f4b05325885b40c'\n```\n\nQuantize amount:\n\n```js\nconst amount = '420000'\nconst quantum = '1000'\nconst quantizedAmount = starkwareCrypto.quantizeAmount(amount, quantum)\nconsole.log(quantizedAmount) // '420'\n```\n\n## License\n\n[Apache License 2.0](LICENSE.md)\n","readmeFilename":"README.md","_id":"@authereum/starkware-crypto@1.10.0-beta.0","_nodeVersion":"11.15.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-VQqV8X1saz02+a6CR9d5EGQfyKvmZRtyushJTxJa5nBQWTyYD0d9nWaSpQ1mkE0icPd5jiP9LpJYm/67W5gedA==","shasum":"e03d87ea8ab8679f621cd6ce044e9ebdfb4b135a","tarball":"https://registry.npmjs.org/@authereum/starkware-crypto/-/starkware-crypto-1.10.0-beta.0.tgz","fileCount":33,"unpackedSize":1780864,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf4S7XCRA9TVsSAnZWagAAIB8P/2tSHoQNNyXVuRf2lf5F\nt7Xf0DKgYgPpif6SS1RCVhvc0IcE4G3LK+UtFXUQ9tL23O6mzfu+sYnOvhk0\nPWMOSbwAzH68Azesn2HVCq4wQLlpKRPzfjteMe/AJTLMS8RvUcAGmTIYTnXw\ncmf6sDtfB8Fa5egYK6uZPyWGKSEh34cQL2f9ZRE5sL10HSNFhQQdORAY177A\nOm42S+ZPEmgypJX6q2n2DIkn7Ts8Sy6BrFaJF9x6gxWYVtFWo2g9i4Ksf/ut\nGedUSx+D9C6fLO/1R62JdHzEScFiKIaqU7drKBO/IP3oKfHw/TvTQX1rzhlF\nspngiNn+21pQdnMsAVI467PJnVHs5n7bAHt24N9ou/MOJ3gIy2QzWnZIiMLk\n9OF4vm4RimLoT2HlslBlz7enwc9BBYc7gU2YJDAqMZRl26f1Dv3n/8izCoR+\nfLGuvzjoCRnxkE6RRTtLf737DacJzqP/py3hCdq1cilP++W0N0wh99DccXNp\nEM0nM8suQ5ptyuTgnfolB1NNhpEzGufKt7TuCgnGwgxhs2wReL+6CptOKzkP\nNm0rC+hw4mJ5OwZhVXctMKW3SUHAcrGI7hRdLuNwVpK4ODGlNtY/uS4jYHfV\nuaIMRVPhcSs4N/jqDgBAXTSgPrunBSjvsTTf37kFHQF76TgfPgyREBaf12fW\ne0F4\r\n=QMEA\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCBCQIQkSqZ/c+NdNETMOqc2DfwKWQKZ5FE9q7OaszDdQIgInhgMlYDzgAw1DJtbDAFQsp24rC5Wzaw2os7r2dtGBs="}]},"_npmUser":{"name":"miguelmota","email":"hello@miguelmota.com"},"directories":{},"maintainers":[{"name":"miguelmota","email":"hello@miguelmota.com"},{"name":"shanefontaine","email":"shane6fontaine@gmail.com"},{"name":"cwhinfrey","email":"cwhinfrey@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/starkware-crypto_1.10.0-beta.0_1608593110857_0.5816727625768365"},"_hasShrinkwrap":false},"1.10.0-beta.1":{"name":"@authereum/starkware-crypto","description":"Starkware Crypto Library","version":"1.10.0-beta.1","author":"","license":"Apache-2.0","keywords":["stark","starkware","crypto","elliptic","curve","cryptography"],"contributors":[{"name":"Pedro Gomes","email":"github.com/pedrouid"},{"name":"Miguel Mota","email":"github.com/miguelmota"}],"main":"dist/cjs/index.js","types":"dist/cjs/index.d.ts","unpkg":"dist/umd/index.min.js","homepage":"https://github.com/authereum/starkware-monorepo/tree/master/packages/starkware-crypto","repository":{"type":"git","url":"git+https://github.com/authereum/starkware-monorepo.git"},"bugs":{"url":"https://github.com/authereum/starkware-monorepo/issues"},"scripts":{"start":"tsdx watch","clean":"rm -rf dist","build:cjs":"tsc -p tsconfig.cjs.json","build:umd":"webpack","build":"yarn clean && yarn build:cjs && yarn build:umd","test":"tsdx test ./test","lint":"prettier-standard --format","prepare":"yarn lint && yarn build","publish:beta":"npm publish --tag beta --access public","publish:next":"npm publish --tag next --access public","publish:latest":"npm publish --tag latest --access public"},"dependencies":{"bip39":"^3.0.2","bn.js":"^5.1.2","elliptic":"^6.5.3","enc-utils":"3.0.0","ethereumjs-wallet":"^1.0.0","hash.js":"^1.1.7","js-sha3":"^0.8.0","keccak256":"^1.0.2","rsv-signature":"^1.1.0","web3-utils":"^1.3.0","@types/elliptic":"6.4.12","@types/node":"13.7.0"},"devDependencies":{"@types/jest":"25.1.1","husky":"4.2.5","prettier-standard":"^16.4.1","tsdx":"0.13.2","tslib":"1.10.0","typescript":"3.7.5","webpack":"4.41.6","webpack-cli":"3.3.12"},"husky":{"hooks":{"pre-commit":"yarn lint"}},"prettier":{"printWidth":80,"semi":false,"singleQuote":true,"trailingComma":"es5"},"readme":"# starkware-crypto [![npm version](https://badge.fury.io/js/starkware-crypto.svg)](https://badge.fury.io/js/starkware-crypto)\n\n> Starkware Crypto Library\n\n## Description\n\nThis library is a port from [starkex-resources/\\*\\*/signature.js](https://github.com/starkware-libs/starkex-resources/blob/master/crypto/starkware/crypto/signature/signature.js).\n\n## Getting started\n\n```js\nimport * as starkwareCrypto from '@authereum/starkware-crypto'\n\nconst mnemonic =\n  'puzzle number lab sense puzzle escape glove faith strike poem acoustic picture grit struggle know tuna soul indoor thumb dune fit job timber motor'\nconst layer = 'starkex'\nconst application = 'starkexdvf'\nconst zeroAddress = '0x0000000000000000000000000000000000000000'\nconst index = '0'\n\nconst path = starkwareCrypto.getAccountPath(\n  layer,\n  application,\n  zeroAddress,\n  index\n)\n\nconst keyPair = starkwareCrypto.getKeyPairFromPath(mnemonic, path)\n```\n\n## Examples\n\nDerive key pair:\n\n```js\nconst keyPair = getKeyPairFromPath(mnemonic, path)\n```\n\nPublic key:\n\n```js\nconst compressed = true\nconst pubKey = getPublic(keyPair, compressed)\n```\n\nPublic key X coordinate:\n\n```js\nconst x = getXCoordinate(pubKey)\n```\n\nPublic key Y coordinate:\n\n```js\nconst y = getYCoordinate(pubKey)\n```\n\nTransfer message hash:\n\n```js\nconst msgHash = getTransferMsgHash(\n  amount, // (uint63 decimal str)\n  nonce, // (uint31)\n  senderVaultId, // (uint31)\n  token, // (hex str with 0x prefix < prime)\n  targetVaultId, // (uint31)\n  targetPublicKey, // (hex str with 0x prefix < prime)\n  expirationTimestamp, // (uint22)\n  condition // (hex str with 0x prefix < prime)\n)\n```\n\nVerify signature:\n\n```js\nconst msgSignature = starkwareCrypto.sign(keyPair, msgHash)\nassert(starkwareCrypto.verify(publicKey, msgHash, msgSignature))\n```\n\nETH asset type:\n\n```js\nconst asset = {\n  type: 'ETH',\n  data: {\n    quantum: '1',\n  },\n}\nconsole.log(getAssetType(asset)) // '0x01142460171646987f20c714eda4b92812b22b811f56f27130937c267e29bd9e'\n```\n\nERC20 asset type:\n\n```js\nconst asset = {\n  type: 'ERC20',\n  data: {\n    quantum: '10000',\n    tokenAddress: '0xdAC17F958D2ee523a2206206994597C13D831ec7',\n  },\n}\nconsole.log(getAssetType(asset)) // '0x0352386d5b7c781d47ecd404765307d74edc4d43b0490b8e03c71ac7a7429653'\n```\n\nERC721 asset type:\n\n```js\nconst asset = {\n  type: 'ERC721',\n  data: {\n    tokenId: '4100',\n    tokenAddress: '0xB18ed4768F87b0fFAb83408014f1caF066b91380',\n  },\n}\nconsole.log(getAssetType(asset)) // '0x020c0e279ea2e027258d3056f34eca6e47ad9aaa995b896cafcb68d5a65b115b'\n```\n\nETH asset ID:\n\n```js\nconst quantum = '1'\nconsole.log(getEthAssetId(quantum)) // '0x01142460171646987f20c714eda4b92812b22b811f56f27130937c267e29bd9e'\n```\n\nERC20 asset ID:\n\n```js\nconst tokenAddress = '0xdAC17F958D2ee523a2206206994597C13D831ec7'\nconst quantum = '10000'\nconsole.log(getErc20AssetId(tokenAddress, quantum)) // '0x0352386d5b7c781d47ecd404765307d74edc4d43b0490b8e03c71ac7a7429653'\n```\n\nERC721 asset ID:\n\n```js\nconst tokenAddress = '0xB18ed4768F87b0fFAb83408014f1caF066b91380'\nconst tokenId = '4100'\nconsole.log(getErc721AssetId(tokenAddress, tokenId)) // '0x02b0ff0c09505bc40f9d1659becf16855a7b2298b010f8a54f4b05325885b40c'\n```\n\nQuantize amount:\n\n```js\nconst amount = '420000'\nconst quantum = '1000'\nconst quantizedAmount = starkwareCrypto.quantizeAmount(amount, quantum)\nconsole.log(quantizedAmount) // '420'\n```\n\n## License\n\n[Apache License 2.0](LICENSE.md)\n","readmeFilename":"README.md","_id":"@authereum/starkware-crypto@1.10.0-beta.1","_nodeVersion":"11.15.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-G4rWj8BpjAyDTbIEgwD3GNvF/+Jc0RYqNDPNQtj+VoHUnhXFfvUv+4xx7ToYcOzb6V52Qq+lo5BcDlP4UNCs0A==","shasum":"a5ed2b4d6569864cfd04aa3bd02ced6fbe17080f","tarball":"https://registry.npmjs.org/@authereum/starkware-crypto/-/starkware-crypto-1.10.0-beta.1.tgz","fileCount":33,"unpackedSize":1780864,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf4/9JCRA9TVsSAnZWagAA3xUP/jP8VgiYXPjaGur9LBvM\nXZEIEgKyMYjagdLGC7aZIpAphxzcNxt/msbWchTi2dKQoy3G3EUgaZ3yxiRK\n3/F+h3Bn/qvafuA6E644zZj3U5/xxvkOY6HCxlbWmHQAVG3X97c3/wxTIXxJ\n0onhZv+DTGTfyMtOFidVUdjp7EQgKMUJQs4cbPqYv7dX+O7mVYlUSta5VsFi\nq89KBuPAhHTLA8AIvRbTJ5RWUzxIx/gpWF49FWSot8lzVM3VYz7hBfNZUdB+\nHjFNVjFmrqIqkATsJuRfwVtlC0Gth3DDZb0LMsEvhXJ8Z6Myp3Cs1cfixUWZ\nD9OCKSpGLAWeKoaU2LGUiFyM8K0mC1X2uPZ1Jr6wSx3CHRlHImA/x7iTxdur\nLmaxK7oEPiC3L/nyORGlog3vXoYK8tlNAdUFpRE/14iqgW1dT/0jq+X4I+xH\nmb5TaHcRLF3jbvq0PIBJ3v/aGdchm8aZAbxxTl9kD8JKytcHEKlhIK90sfjc\nOBXyE9UL+NLDXKLncJQSdr95qTbkK4EuEKzC9m4WhIBwfKUJ0cuQuyw3zuMw\nWgrZKk915WXC7i3xG3HPxnBEpSEvgPYz1m+EUgcoQlYfE7V1VMMaRWwPZqcR\n6ygzZZbvvrz5Ju73mTm3IwgpsInlxGLAO2lslHNXNUHykh31W61bmZgl4fcL\nwSZd\r\n=KaRQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGBdaCcr4TwzkVodWCcM4XDwjHL5u2d0UmbYnJRGC8ZpAiEA7Hwu37E+Mr5ho2b2dHCqC277+JDelssmGVonGVbalok="}]},"_npmUser":{"name":"miguelmota","email":"hello@miguelmota.com"},"directories":{},"maintainers":[{"name":"miguelmota","email":"hello@miguelmota.com"},{"name":"shanefontaine","email":"shane6fontaine@gmail.com"},{"name":"cwhinfrey","email":"cwhinfrey@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/starkware-crypto_1.10.0-beta.1_1608777544858_0.3990500186773194"},"_hasShrinkwrap":false},"1.10.0-beta.2":{"name":"@authereum/starkware-crypto","description":"Starkware Crypto Library","version":"1.10.0-beta.2","author":"","license":"Apache-2.0","keywords":["stark","starkware","crypto","elliptic","curve","cryptography"],"contributors":[{"name":"Pedro Gomes","email":"github.com/pedrouid"},{"name":"Miguel Mota","email":"github.com/miguelmota"}],"main":"dist/cjs/index.js","types":"dist/cjs/index.d.ts","unpkg":"dist/umd/index.min.js","homepage":"https://github.com/authereum/starkware-monorepo/tree/master/packages/starkware-crypto","repository":{"type":"git","url":"git+https://github.com/authereum/starkware-monorepo.git"},"bugs":{"url":"https://github.com/authereum/starkware-monorepo/issues"},"scripts":{"start":"tsdx watch","clean":"rm -rf dist","build:cjs":"tsc -p tsconfig.cjs.json","build:umd":"webpack","build":"yarn clean && yarn build:cjs && yarn build:umd","test":"tsdx test ./test","lint":"prettier-standard --format","prepare":"yarn lint && yarn build","publish:beta":"npm publish --tag beta --access public","publish:next":"npm publish --tag next --access public","publish:latest":"npm publish --tag latest --access public"},"dependencies":{"bip39":"^3.0.2","bn.js":"^5.1.2","elliptic":"^6.5.3","enc-utils":"3.0.0","ethereumjs-wallet":"^1.0.0","hash.js":"^1.1.7","js-sha3":"^0.8.0","keccak256":"^1.0.2","rsv-signature":"^1.1.0","web3-utils":"^1.3.0","@types/elliptic":"6.4.12","@types/node":"13.7.0"},"devDependencies":{"@types/jest":"25.1.1","husky":"4.2.5","prettier-standard":"^16.4.1","tsdx":"0.13.2","tslib":"1.10.0","typescript":"3.7.5","webpack":"4.41.6","webpack-cli":"3.3.12"},"husky":{"hooks":{"pre-commit":"yarn lint"}},"prettier":{"printWidth":80,"semi":false,"singleQuote":true,"trailingComma":"es5"},"readme":"# starkware-crypto [![npm version](https://badge.fury.io/js/starkware-crypto.svg)](https://badge.fury.io/js/starkware-crypto)\n\n> Starkware Crypto Library\n\n## Description\n\nThis library is a port from [starkex-resources/\\*\\*/signature.js](https://github.com/starkware-libs/starkex-resources/blob/master/crypto/starkware/crypto/signature/signature.js).\n\n## Getting started\n\n```js\nimport * as starkwareCrypto from '@authereum/starkware-crypto'\n\nconst mnemonic =\n  'puzzle number lab sense puzzle escape glove faith strike poem acoustic picture grit struggle know tuna soul indoor thumb dune fit job timber motor'\nconst layer = 'starkex'\nconst application = 'starkexdvf'\nconst zeroAddress = '0x0000000000000000000000000000000000000000'\nconst index = '0'\n\nconst path = starkwareCrypto.getAccountPath(\n  layer,\n  application,\n  zeroAddress,\n  index\n)\n\nconst keyPair = starkwareCrypto.getKeyPairFromPath(mnemonic, path)\n```\n\n## Examples\n\nDerive key pair:\n\n```js\nconst keyPair = getKeyPairFromPath(mnemonic, path)\n```\n\nPublic key:\n\n```js\nconst compressed = true\nconst pubKey = getPublic(keyPair, compressed)\n```\n\nPublic key X coordinate:\n\n```js\nconst x = getXCoordinate(pubKey)\n```\n\nPublic key Y coordinate:\n\n```js\nconst y = getYCoordinate(pubKey)\n```\n\nTransfer message hash:\n\n```js\nconst msgHash = getTransferMsgHash(\n  amount, // (uint63 decimal str)\n  nonce, // (uint31)\n  senderVaultId, // (uint31)\n  token, // (hex str with 0x prefix < prime)\n  targetVaultId, // (uint31)\n  targetPublicKey, // (hex str with 0x prefix < prime)\n  expirationTimestamp, // (uint22)\n  condition // (hex str with 0x prefix < prime)\n)\n```\n\nVerify signature:\n\n```js\nconst msgSignature = starkwareCrypto.sign(keyPair, msgHash)\nassert(starkwareCrypto.verify(publicKey, msgHash, msgSignature))\n```\n\nETH asset type:\n\n```js\nconst asset = {\n  type: 'ETH',\n  data: {\n    quantum: '1',\n  },\n}\nconsole.log(getAssetType(asset)) // '0x01142460171646987f20c714eda4b92812b22b811f56f27130937c267e29bd9e'\n```\n\nERC20 asset type:\n\n```js\nconst asset = {\n  type: 'ERC20',\n  data: {\n    quantum: '10000',\n    tokenAddress: '0xdAC17F958D2ee523a2206206994597C13D831ec7',\n  },\n}\nconsole.log(getAssetType(asset)) // '0x0352386d5b7c781d47ecd404765307d74edc4d43b0490b8e03c71ac7a7429653'\n```\n\nERC721 asset type:\n\n```js\nconst asset = {\n  type: 'ERC721',\n  data: {\n    tokenId: '4100',\n    tokenAddress: '0xB18ed4768F87b0fFAb83408014f1caF066b91380',\n  },\n}\nconsole.log(getAssetType(asset)) // '0x020c0e279ea2e027258d3056f34eca6e47ad9aaa995b896cafcb68d5a65b115b'\n```\n\nETH asset ID:\n\n```js\nconst quantum = '1'\nconsole.log(getEthAssetId(quantum)) // '0x01142460171646987f20c714eda4b92812b22b811f56f27130937c267e29bd9e'\n```\n\nERC20 asset ID:\n\n```js\nconst tokenAddress = '0xdAC17F958D2ee523a2206206994597C13D831ec7'\nconst quantum = '10000'\nconsole.log(getErc20AssetId(tokenAddress, quantum)) // '0x0352386d5b7c781d47ecd404765307d74edc4d43b0490b8e03c71ac7a7429653'\n```\n\nERC721 asset ID:\n\n```js\nconst tokenAddress = '0xB18ed4768F87b0fFAb83408014f1caF066b91380'\nconst tokenId = '4100'\nconsole.log(getErc721AssetId(tokenAddress, tokenId)) // '0x02b0ff0c09505bc40f9d1659becf16855a7b2298b010f8a54f4b05325885b40c'\n```\n\nQuantize amount:\n\n```js\nconst amount = '420000'\nconst quantum = '1000'\nconst quantizedAmount = starkwareCrypto.quantizeAmount(amount, quantum)\nconsole.log(quantizedAmount) // '420'\n```\n\n## License\n\n[Apache License 2.0](LICENSE.md)\n","readmeFilename":"README.md","_id":"@authereum/starkware-crypto@1.10.0-beta.2","_nodeVersion":"11.15.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-nZCpm9JM9ZNHFfApU+R3YZfrsd2j2K/nHA6Fct09vFyGnDzsElZLkLdsex2PoF/Dfg0PHn04Zh7zA0/1irCpXw==","shasum":"0893dace39f4090c36c50bc0ea332fe4f7eea30f","tarball":"https://registry.npmjs.org/@authereum/starkware-crypto/-/starkware-crypto-1.10.0-beta.2.tgz","fileCount":33,"unpackedSize":1780623,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf+4h8CRA9TVsSAnZWagAAAiUQAKUKOtBltkNuXJSD+3Jb\n1+1aB8oaBouWvkhqgbXIQ08HHLjdlIV4fRw978MWw/qQ1bmXrEdTEwA8fC8z\nT5GL4lyOd6AVDiHTUFLqcjY34HWfO19SX9x2fpThXRnp4Ezf94gU5jLPaJhY\n7gG6r3lXXJwF75cwEt0b/hcRF9nsq+d7UfuG1JrlV+qcgu149M2L8lWR6QGQ\ntm3qWlG1TR1VUvaZFJYtZBBUxjqak5kzMasKqv01C1s+ZzuT4E+O4dVGjT+4\n5r9bQmZz0Qeg+DKvZGdty5PWm8YlsIx8NfwogIeFnc4hKx6gCPNUaSMygWBN\nXEX+0heXkeWaqy3FzBTz6JEhb2tyl83o0V9lBvTTtyP4U9xO7roZ3ePBH/Mp\nACLI363Ydv2tltlOtGAQT0pjaJR5xzleqCDkSQrUwX2eiW8p8WPo6sNDllfG\nn1/149D73xUc0SOGRARqEAT2jjrSnCDlZxdVpa+E8GU7oH6eFbXMypAk6CQr\n/7ZowTL/HCLYS6TW45KZCPS2HstVy/p2vxFuUWI1G0bJzHeYmHQe2XJPNL6H\n/YVyQEniI36NN6dGWmwAGS2dg1WT1d3S3ATWcJyr7K+dfYa/MhSMeRz9M6QL\n6bDuqta142t34gB6BvSex2XadndxFxWl0SlsDvM1g6R72cemERcd8qp+Ov5s\nYiMZ\r\n=k9tA\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCr8ZRTlqhvIEECi6Zj4E5ngpiNSthHHrZsRLjhQfu+eAIgN8T+zZzLGs+hLqDb0CPV5mpWAbkm7cFfxJSgJYbdCvQ="}]},"_npmUser":{"name":"miguelmota","email":"hello@miguelmota.com"},"directories":{},"maintainers":[{"name":"miguelmota","email":"hello@miguelmota.com"},{"name":"shanefontaine","email":"shane6fontaine@gmail.com"},{"name":"cwhinfrey","email":"cwhinfrey@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/starkware-crypto_1.10.0-beta.2_1610319996098_0.11249662265151317"},"_hasShrinkwrap":false},"1.10.0-beta.3":{"name":"@authereum/starkware-crypto","description":"Starkware Crypto Library","version":"1.10.0-beta.3","author":"","license":"Apache-2.0","keywords":["stark","starkware","crypto","elliptic","curve","cryptography"],"contributors":[{"name":"Pedro Gomes","email":"github.com/pedrouid"},{"name":"Miguel Mota","email":"github.com/miguelmota"}],"main":"dist/cjs/index.js","types":"dist/cjs/index.d.ts","unpkg":"dist/umd/index.min.js","homepage":"https://github.com/authereum/starkware-monorepo/tree/master/packages/starkware-crypto","repository":{"type":"git","url":"git+https://github.com/authereum/starkware-monorepo.git"},"bugs":{"url":"https://github.com/authereum/starkware-monorepo/issues"},"scripts":{"start":"tsdx watch","clean":"rm -rf dist","build:cjs":"tsc -p tsconfig.cjs.json","build:umd":"webpack","build":"yarn clean && yarn build:cjs && yarn build:umd","test":"tsdx test ./test","lint":"prettier-standard --format","prepare":"yarn lint && yarn build","publish:beta":"npm publish --tag beta --access public","publish:next":"npm publish --tag next --access public","publish:latest":"npm publish --tag latest --access public"},"dependencies":{"bip39":"^3.0.2","bn.js":"^5.1.2","elliptic":"^6.5.3","enc-utils":"3.0.0","ethereumjs-wallet":"^1.0.0","hash.js":"^1.1.7","js-sha3":"^0.8.0","keccak256":"^1.0.2","rsv-signature":"^1.1.0","web3-utils":"^1.3.0","@types/elliptic":"6.4.12","@types/node":"13.7.0"},"devDependencies":{"@types/jest":"25.1.1","husky":"4.2.5","prettier-standard":"^16.4.1","tsdx":"0.13.2","tslib":"1.10.0","typescript":"3.7.5","webpack":"4.41.6","webpack-cli":"3.3.12"},"husky":{"hooks":{"pre-commit":"yarn lint"}},"prettier":{"printWidth":80,"semi":false,"singleQuote":true,"trailingComma":"es5"},"readme":"# starkware-crypto [![npm version](https://badge.fury.io/js/starkware-crypto.svg)](https://badge.fury.io/js/starkware-crypto)\n\n> Starkware Crypto Library\n\n## Description\n\nThis library is a port from [starkex-resources/\\*\\*/signature.js](https://github.com/starkware-libs/starkex-resources/blob/master/crypto/starkware/crypto/signature/signature.js).\n\n## Getting started\n\n```js\nimport * as starkwareCrypto from '@authereum/starkware-crypto'\n\nconst mnemonic =\n  'puzzle number lab sense puzzle escape glove faith strike poem acoustic picture grit struggle know tuna soul indoor thumb dune fit job timber motor'\nconst layer = 'starkex'\nconst application = 'starkexdvf'\nconst zeroAddress = '0x0000000000000000000000000000000000000000'\nconst index = '0'\n\nconst path = starkwareCrypto.getAccountPath(\n  layer,\n  application,\n  zeroAddress,\n  index\n)\n\nconst keyPair = starkwareCrypto.getKeyPairFromPath(mnemonic, path)\n```\n\n## Examples\n\nDerive key pair:\n\n```js\nconst keyPair = getKeyPairFromPath(mnemonic, path)\n```\n\nPublic key:\n\n```js\nconst compressed = true\nconst pubKey = getPublic(keyPair, compressed)\n```\n\nPublic key X coordinate:\n\n```js\nconst x = getXCoordinate(pubKey)\n```\n\nPublic key Y coordinate:\n\n```js\nconst y = getYCoordinate(pubKey)\n```\n\nTransfer message hash:\n\n```js\nconst msgHash = getTransferMsgHash(\n  amount, // (uint63 decimal str)\n  nonce, // (uint31)\n  senderVaultId, // (uint31)\n  token, // (hex str with 0x prefix < prime)\n  targetVaultId, // (uint31)\n  targetPublicKey, // (hex str with 0x prefix < prime)\n  expirationTimestamp, // (uint22)\n  condition // (hex str with 0x prefix < prime)\n)\n```\n\nVerify signature:\n\n```js\nconst msgSignature = starkwareCrypto.sign(keyPair, msgHash)\nassert(starkwareCrypto.verify(publicKey, msgHash, msgSignature))\n```\n\nETH asset type:\n\n```js\nconst asset = {\n  type: 'ETH',\n  data: {\n    quantum: '1',\n  },\n}\nconsole.log(getAssetType(asset)) // '0x01142460171646987f20c714eda4b92812b22b811f56f27130937c267e29bd9e'\n```\n\nERC20 asset type:\n\n```js\nconst asset = {\n  type: 'ERC20',\n  data: {\n    quantum: '10000',\n    tokenAddress: '0xdAC17F958D2ee523a2206206994597C13D831ec7',\n  },\n}\nconsole.log(getAssetType(asset)) // '0x0352386d5b7c781d47ecd404765307d74edc4d43b0490b8e03c71ac7a7429653'\n```\n\nERC721 asset type:\n\n```js\nconst asset = {\n  type: 'ERC721',\n  data: {\n    tokenId: '4100',\n    tokenAddress: '0xB18ed4768F87b0fFAb83408014f1caF066b91380',\n  },\n}\nconsole.log(getAssetType(asset)) // '0x020c0e279ea2e027258d3056f34eca6e47ad9aaa995b896cafcb68d5a65b115b'\n```\n\nETH asset ID:\n\n```js\nconst quantum = '1'\nconsole.log(getEthAssetId(quantum)) // '0x01142460171646987f20c714eda4b92812b22b811f56f27130937c267e29bd9e'\n```\n\nERC20 asset ID:\n\n```js\nconst tokenAddress = '0xdAC17F958D2ee523a2206206994597C13D831ec7'\nconst quantum = '10000'\nconsole.log(getErc20AssetId(tokenAddress, quantum)) // '0x0352386d5b7c781d47ecd404765307d74edc4d43b0490b8e03c71ac7a7429653'\n```\n\nERC721 asset ID:\n\n```js\nconst tokenAddress = '0xB18ed4768F87b0fFAb83408014f1caF066b91380'\nconst tokenId = '4100'\nconsole.log(getErc721AssetId(tokenAddress, tokenId)) // '0x02b0ff0c09505bc40f9d1659becf16855a7b2298b010f8a54f4b05325885b40c'\n```\n\nQuantize amount:\n\n```js\nconst amount = '420000'\nconst quantum = '1000'\nconst quantizedAmount = starkwareCrypto.quantizeAmount(amount, quantum)\nconsole.log(quantizedAmount) // '420'\n```\n\n## License\n\n[Apache License 2.0](LICENSE.md)\n","readmeFilename":"README.md","_id":"@authereum/starkware-crypto@1.10.0-beta.3","_nodeVersion":"11.15.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-qfGI5mS6oZ+77V0KQ1zpWzU8/7Ozosj2SPcsICNPHrK57uer1U4xRUq5u6vb5jFBh2+nAa9z+i0irsTXZHgdfQ==","shasum":"96aa07a002eb5fda6247e512a0003ded88a6dd32","tarball":"https://registry.npmjs.org/@authereum/starkware-crypto/-/starkware-crypto-1.10.0-beta.3.tgz","fileCount":33,"unpackedSize":1780623,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf+4z2CRA9TVsSAnZWagAAFuEP/RedQTv1pVUt1xUhB06T\nXZtyH6EVRp9Ax+nptEf5ikMASHMW5pJ8PDgpq7BE3ZU761WmqKg6PnFBSbTk\nKO0DcfoTMTbR+nyLitnCi2dwBx3FUznx0oYU6fvNnrtleH44v+PjiMXT6gqO\nBSNvucjOd/0xk/gUTcW3Zkhjt2jzQwTFrJCLPSMX7m3kh3tnYi3alGEnp9/3\n26jDLaa1wyNL7hS5jt3NajbV4EEUQu/FemQ22AH8zrt+UyACaRdhz66fbPR5\nhIJZf+EIGKq4HM+BfAfmTpGENoV8bpDjKCDhZSHjPI9L3prYJh3HG/HCrls7\nEzTPEI9bmZ+STIxjfrMmmoLiJV0dH+yjzbJr3GJL+aPD3w4dWDW22ptWDvCQ\n+cM2BRqW4Vplr1rny1LFf7wUK/NIwEZA/Ft+uCmkQ38I5Qp6Cl5Ia7QrIuEC\nT8QilYuxPQY43vx68mS9ulH0D450dwahResWrNIGMrAVCkbuB6JUcywGga8c\nZlbpoUcH0wWRrXPBRmAWEnsg8Wa5tFetuMWkrwB4yQt8+o42CgmKdTSUDXP0\na2Qf5Ki3WwZ8MQB4xxm4rIV5Dj130BjVMSuhiWAboFtpWNgfm+/RQoBfn5dB\nDbYyfKcNGD12pFc5yrYKuKUBD2hfdobC/CKajEJ4Nqn4Bl5Ldar31zJxzlD4\n7hid\r\n=hpro\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCYPpQxqLjejA2RrxJgl8OfSINfCjVV/hDkr0hMy2jAtQIgANc/jwT6uZNHKww12cVFqELjJjgeVcoSY3fJ/+K/mm0="}]},"_npmUser":{"name":"miguelmota","email":"hello@miguelmota.com"},"directories":{},"maintainers":[{"name":"miguelmota","email":"hello@miguelmota.com"},{"name":"shanefontaine","email":"shane6fontaine@gmail.com"},{"name":"cwhinfrey","email":"cwhinfrey@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/starkware-crypto_1.10.0-beta.3_1610321141732_0.7503424313024101"},"_hasShrinkwrap":false},"1.10.0-beta.4":{"name":"@authereum/starkware-crypto","description":"Starkware Crypto Library","version":"1.10.0-beta.4","author":"","license":"Apache-2.0","keywords":["stark","starkware","crypto","elliptic","curve","cryptography"],"contributors":[{"name":"Pedro Gomes","email":"github.com/pedrouid"},{"name":"Miguel Mota","email":"github.com/miguelmota"}],"main":"dist/cjs/index.js","types":"dist/cjs/index.d.ts","unpkg":"dist/umd/index.min.js","homepage":"https://github.com/authereum/starkware-monorepo/tree/master/packages/starkware-crypto","repository":{"type":"git","url":"git+https://github.com/authereum/starkware-monorepo.git"},"bugs":{"url":"https://github.com/authereum/starkware-monorepo/issues"},"scripts":{"start":"tsdx watch","clean":"rm -rf dist","build:cjs":"tsc -p tsconfig.cjs.json","build:umd":"webpack","build":"yarn clean && yarn build:cjs && yarn build:umd","test":"tsdx test ./test","lint":"prettier-standard --format","prepare":"yarn lint && yarn build","publish:beta":"npm publish --tag beta --access public","publish:next":"npm publish --tag next --access public","publish:latest":"npm publish --tag latest --access public"},"dependencies":{"bip39":"^3.0.2","bn.js":"^5.1.2","elliptic":"^6.5.3","enc-utils":"3.0.0","ethereumjs-wallet":"^1.0.0","hash.js":"^1.1.7","js-sha3":"^0.8.0","keccak256":"^1.0.2","rsv-signature":"^1.1.0","web3-utils":"^1.3.0","@types/elliptic":"6.4.12","@types/node":"13.7.0"},"devDependencies":{"@types/jest":"25.1.1","husky":"4.2.5","prettier-standard":"^16.4.1","tsdx":"0.13.2","tslib":"1.10.0","typescript":"3.7.5","webpack":"4.41.6","webpack-cli":"3.3.12"},"husky":{"hooks":{"pre-commit":"yarn lint"}},"prettier":{"printWidth":80,"semi":false,"singleQuote":true,"trailingComma":"es5"},"readme":"# starkware-crypto [![npm version](https://badge.fury.io/js/starkware-crypto.svg)](https://badge.fury.io/js/starkware-crypto)\n\n> Starkware Crypto Library\n\n## Description\n\nThis library is a port from [starkex-resources/\\*\\*/signature.js](https://github.com/starkware-libs/starkex-resources/blob/master/crypto/starkware/crypto/signature/signature.js).\n\n## Getting started\n\n```js\nimport * as starkwareCrypto from '@authereum/starkware-crypto'\n\nconst mnemonic =\n  'puzzle number lab sense puzzle escape glove faith strike poem acoustic picture grit struggle know tuna soul indoor thumb dune fit job timber motor'\nconst layer = 'starkex'\nconst application = 'starkexdvf'\nconst zeroAddress = '0x0000000000000000000000000000000000000000'\nconst index = '0'\n\nconst path = starkwareCrypto.getAccountPath(\n  layer,\n  application,\n  zeroAddress,\n  index\n)\n\nconst keyPair = starkwareCrypto.getKeyPairFromPath(mnemonic, path)\n```\n\n## Examples\n\nDerive key pair:\n\n```js\nconst keyPair = getKeyPairFromPath(mnemonic, path)\n```\n\nPublic key:\n\n```js\nconst compressed = true\nconst pubKey = getPublic(keyPair, compressed)\n```\n\nPublic key X coordinate:\n\n```js\nconst x = getXCoordinate(pubKey)\n```\n\nPublic key Y coordinate:\n\n```js\nconst y = getYCoordinate(pubKey)\n```\n\nTransfer message hash:\n\n```js\nconst msgHash = getTransferMsgHash(\n  amount, // (uint63 decimal str)\n  nonce, // (uint31)\n  senderVaultId, // (uint31)\n  token, // (hex str with 0x prefix < prime)\n  targetVaultId, // (uint31)\n  targetPublicKey, // (hex str with 0x prefix < prime)\n  expirationTimestamp, // (uint22)\n  condition // (hex str with 0x prefix < prime)\n)\n```\n\nVerify signature:\n\n```js\nconst msgSignature = starkwareCrypto.sign(keyPair, msgHash)\nassert(starkwareCrypto.verify(publicKey, msgHash, msgSignature))\n```\n\nETH asset type:\n\n```js\nconst asset = {\n  type: 'ETH',\n  data: {\n    quantum: '1',\n  },\n}\nconsole.log(getAssetType(asset)) // '0x01142460171646987f20c714eda4b92812b22b811f56f27130937c267e29bd9e'\n```\n\nERC20 asset type:\n\n```js\nconst asset = {\n  type: 'ERC20',\n  data: {\n    quantum: '10000',\n    tokenAddress: '0xdAC17F958D2ee523a2206206994597C13D831ec7',\n  },\n}\nconsole.log(getAssetType(asset)) // '0x0352386d5b7c781d47ecd404765307d74edc4d43b0490b8e03c71ac7a7429653'\n```\n\nERC721 asset type:\n\n```js\nconst asset = {\n  type: 'ERC721',\n  data: {\n    tokenId: '4100',\n    tokenAddress: '0xB18ed4768F87b0fFAb83408014f1caF066b91380',\n  },\n}\nconsole.log(getAssetType(asset)) // '0x020c0e279ea2e027258d3056f34eca6e47ad9aaa995b896cafcb68d5a65b115b'\n```\n\nETH asset ID:\n\n```js\nconst quantum = '1'\nconsole.log(getEthAssetId(quantum)) // '0x01142460171646987f20c714eda4b92812b22b811f56f27130937c267e29bd9e'\n```\n\nERC20 asset ID:\n\n```js\nconst tokenAddress = '0xdAC17F958D2ee523a2206206994597C13D831ec7'\nconst quantum = '10000'\nconsole.log(getErc20AssetId(tokenAddress, quantum)) // '0x0352386d5b7c781d47ecd404765307d74edc4d43b0490b8e03c71ac7a7429653'\n```\n\nERC721 asset ID:\n\n```js\nconst tokenAddress = '0xB18ed4768F87b0fFAb83408014f1caF066b91380'\nconst tokenId = '4100'\nconsole.log(getErc721AssetId(tokenAddress, tokenId)) // '0x02b0ff0c09505bc40f9d1659becf16855a7b2298b010f8a54f4b05325885b40c'\n```\n\nQuantize amount:\n\n```js\nconst amount = '420000'\nconst quantum = '1000'\nconst quantizedAmount = starkwareCrypto.quantizeAmount(amount, quantum)\nconsole.log(quantizedAmount) // '420'\n```\n\n## License\n\n[Apache License 2.0](LICENSE.md)\n","readmeFilename":"README.md","_id":"@authereum/starkware-crypto@1.10.0-beta.4","_nodeVersion":"11.15.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-Xj7yb378VXQAJtImIQS0aDFOcSlvaHzVpYTuBvtT/Yn2nXhd+4K7hnrUJCjzVPjSv4HMGA3smfeAfpTsJOM4Ew==","shasum":"6473ecba5bd15e9f486df1ca457f89944b57f384","tarball":"https://registry.npmjs.org/@authereum/starkware-crypto/-/starkware-crypto-1.10.0-beta.4.tgz","fileCount":33,"unpackedSize":1780732,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf/e2WCRA9TVsSAnZWagAAilIP/jeOpytWcpCxZz7CDva6\nKrbs/AuOZ848HSTooNH6Q/Ag2+D/sMrZe0XpiDCDrArkEuia7eVb7wiUgsJs\nMnqFNRzvxZELQFrMQbaqGbRE4sVNIl720bP/ADb+9COIvSmlpOcbp6fhPuoP\n/3VN1dx7ykHuyrgmyqtQ1LM8BP3RJshcnMg0JbICe882Zoh6q6jIjBP+WnYI\n7hQsxPXTPu/LY6a4LGF2/I2GwTUxi973lC5xXu/ucd+yFSMGl2ZLsdemnC5k\n5luv+4BEABqOnwE5bvwlRtA9aqJLsjR1xaZVBzdnk4TbPO+JnRWQv1FPLtVC\no/STw8NWIot80MngSOuw8Sl6OkcVxJTlAyQX48n5Qxbb/hB2D9vOViQpFHJs\nOeRMQ+vhvFb/pB7S6qRm8LbfMa73ASdLSb+uohpxYFsZgIFRJhluvP+dk7C2\nGKKgtzHFv8oXBna4tNVW94SqFSIzN+F/35gWvalgfshqyUjiTchSUUpnnoZ8\nEgypdiTeGdlhPjO1Lbb2xpStAOPiAlFhy0XJFKZgtFel3b2wSnxSPRYbxYgI\naUgFmr1nuiNNWWvhne0JF66N/MmUf/D/UZP5DryZTfvnTJXKpGUqN69YolKz\nn5sePflN3EixtgzA9S8DCIIkoKC9mM+bUE56Bx9Lsuo2yj0qxt3g5Klyti3M\nM6tk\r\n=yaPG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDNqkqB6F1RIbiv5i31keHncm0n6bOBwjnrmFyK5ieEZAiB6Bew8/jc2CzQtTba+zrfumq8IFeHW2mLMrKpFhDxkgw=="}]},"_npmUser":{"name":"miguelmota","email":"hello@miguelmota.com"},"directories":{},"maintainers":[{"name":"miguelmota","email":"hello@miguelmota.com"},{"name":"shanefontaine","email":"shane6fontaine@gmail.com"},{"name":"cwhinfrey","email":"cwhinfrey@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/starkware-crypto_1.10.0-beta.4_1610476949708_0.3077995738797512"},"_hasShrinkwrap":false},"1.10.0-beta.5":{"name":"@authereum/starkware-crypto","description":"Starkware Crypto Library","version":"1.10.0-beta.5","author":"","license":"Apache-2.0","keywords":["stark","starkware","crypto","elliptic","curve","cryptography"],"contributors":[{"name":"Pedro Gomes","email":"github.com/pedrouid"},{"name":"Miguel Mota","email":"github.com/miguelmota"}],"main":"dist/cjs/index.js","types":"dist/cjs/index.d.ts","unpkg":"dist/umd/index.min.js","homepage":"https://github.com/authereum/starkware-monorepo/tree/master/packages/starkware-crypto","repository":{"type":"git","url":"git+https://github.com/authereum/starkware-monorepo.git"},"bugs":{"url":"https://github.com/authereum/starkware-monorepo/issues"},"scripts":{"start":"tsdx watch","clean":"rm -rf dist","build:cjs":"tsc -p tsconfig.cjs.json","build:umd":"webpack","build":"yarn clean && yarn build:cjs && yarn build:umd","test":"tsdx test ./test","lint":"prettier-standard --format","prepare":"yarn lint && yarn build","publish:beta":"npm publish --tag beta --access public","publish:next":"npm publish --tag next --access public","publish:latest":"npm publish --tag latest --access public","sync":"lerna-sync-version"},"dependencies":{"bip39":"^3.0.2","bn.js":"^5.1.2","elliptic":"^6.5.3","enc-utils":"3.0.0","ethereumjs-wallet":"^1.0.0","hash.js":"^1.1.7","js-sha3":"^0.8.0","keccak256":"^1.0.2","rsv-signature":"^1.1.0","web3-utils":"^1.3.0","@types/elliptic":"6.4.12","@types/node":"13.7.0"},"devDependencies":{"@types/jest":"25.1.1","husky":"4.2.5","prettier-standard":"^16.4.1","tsdx":"0.13.2","tslib":"1.10.0","typescript":"3.7.5","webpack":"4.41.6","webpack-cli":"3.3.12"},"husky":{"hooks":{"pre-commit":"yarn lint"}},"prettier":{"printWidth":80,"semi":false,"singleQuote":true,"trailingComma":"es5"},"readme":"# starkware-crypto [![npm version](https://badge.fury.io/js/starkware-crypto.svg)](https://badge.fury.io/js/starkware-crypto)\n\n> Starkware Crypto Library\n\n## Description\n\nThis library is a port from [starkex-resources/\\*\\*/signature.js](https://github.com/starkware-libs/starkex-resources/blob/master/crypto/starkware/crypto/signature/signature.js).\n\n## Getting started\n\n```js\nimport * as starkwareCrypto from '@authereum/starkware-crypto'\n\nconst mnemonic =\n  'puzzle number lab sense puzzle escape glove faith strike poem acoustic picture grit struggle know tuna soul indoor thumb dune fit job timber motor'\nconst layer = 'starkex'\nconst application = 'starkexdvf'\nconst zeroAddress = '0x0000000000000000000000000000000000000000'\nconst index = '0'\n\nconst path = starkwareCrypto.getAccountPath(\n  layer,\n  application,\n  zeroAddress,\n  index\n)\n\nconst keyPair = starkwareCrypto.getKeyPairFromPath(mnemonic, path)\n```\n\n## Examples\n\nDerive key pair:\n\n```js\nconst keyPair = getKeyPairFromPath(mnemonic, path)\n```\n\nPublic key:\n\n```js\nconst compressed = true\nconst pubKey = getPublic(keyPair, compressed)\n```\n\nPublic key X coordinate:\n\n```js\nconst x = getXCoordinate(pubKey)\n```\n\nPublic key Y coordinate:\n\n```js\nconst y = getYCoordinate(pubKey)\n```\n\nTransfer message hash:\n\n```js\nconst msgHash = getTransferMsgHash(\n  amount, // (uint63 decimal str)\n  nonce, // (uint31)\n  senderVaultId, // (uint31)\n  token, // (hex str with 0x prefix < prime)\n  targetVaultId, // (uint31)\n  targetPublicKey, // (hex str with 0x prefix < prime)\n  expirationTimestamp, // (uint22)\n  condition // (hex str with 0x prefix < prime)\n)\n```\n\nVerify signature:\n\n```js\nconst msgSignature = starkwareCrypto.sign(keyPair, msgHash)\nassert(starkwareCrypto.verify(publicKey, msgHash, msgSignature))\n```\n\nETH asset type:\n\n```js\nconst asset = {\n  type: 'ETH',\n  data: {\n    quantum: '1',\n  },\n}\nconsole.log(getAssetType(asset)) // '0x01142460171646987f20c714eda4b92812b22b811f56f27130937c267e29bd9e'\n```\n\nERC20 asset type:\n\n```js\nconst asset = {\n  type: 'ERC20',\n  data: {\n    quantum: '10000',\n    tokenAddress: '0xdAC17F958D2ee523a2206206994597C13D831ec7',\n  },\n}\nconsole.log(getAssetType(asset)) // '0x0352386d5b7c781d47ecd404765307d74edc4d43b0490b8e03c71ac7a7429653'\n```\n\nERC721 asset type:\n\n```js\nconst asset = {\n  type: 'ERC721',\n  data: {\n    tokenId: '4100',\n    tokenAddress: '0xB18ed4768F87b0fFAb83408014f1caF066b91380',\n  },\n}\nconsole.log(getAssetType(asset)) // '0x020c0e279ea2e027258d3056f34eca6e47ad9aaa995b896cafcb68d5a65b115b'\n```\n\nETH asset ID:\n\n```js\nconst quantum = '1'\nconsole.log(getEthAssetId(quantum)) // '0x01142460171646987f20c714eda4b92812b22b811f56f27130937c267e29bd9e'\n```\n\nERC20 asset ID:\n\n```js\nconst tokenAddress = '0xdAC17F958D2ee523a2206206994597C13D831ec7'\nconst quantum = '10000'\nconsole.log(getErc20AssetId(tokenAddress, quantum)) // '0x0352386d5b7c781d47ecd404765307d74edc4d43b0490b8e03c71ac7a7429653'\n```\n\nERC721 asset ID:\n\n```js\nconst tokenAddress = '0xB18ed4768F87b0fFAb83408014f1caF066b91380'\nconst tokenId = '4100'\nconsole.log(getErc721AssetId(tokenAddress, tokenId)) // '0x02b0ff0c09505bc40f9d1659becf16855a7b2298b010f8a54f4b05325885b40c'\n```\n\nQuantize amount:\n\n```js\nconst amount = '420000'\nconst quantum = '1000'\nconst quantizedAmount = starkwareCrypto.quantizeAmount(amount, quantum)\nconsole.log(quantizedAmount) // '420'\n```\n\n## License\n\n[Apache License 2.0](LICENSE.md)\n","readmeFilename":"README.md","_id":"@authereum/starkware-crypto@1.10.0-beta.5","_nodeVersion":"11.15.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-JFi00g3HJT94h8b+J+4wzyBPK2I9mbdy6pBDQh51jBoJU0L4xn+/Z2+ADrAH/B4i2LLXG54Wx1zkAj08wnp3xQ==","shasum":"44b301a9282d7effa340b27fc12cf777b700e7c9","tarball":"https://registry.npmjs.org/@authereum/starkware-crypto/-/starkware-crypto-1.10.0-beta.5.tgz","fileCount":33,"unpackedSize":1781242,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf/5YNCRA9TVsSAnZWagAAaXsP+wU3MqXQ3RNPkZjF9PE7\nDCUwh3tiulBVuoZEmjy7fSEyWFDjsqNzqWgKTmyP1XZoLgZRjGKQLxOy98F0\n8LZbXBgUAbRJnVKuJ8kaiexf8XyhKUw69YbMJq4Ycq+ttkKMGvJXFn8ya+qL\nSCsxrhATVzz0jkdV8QCaOHl7jGIe+N0WRmmUiNbtIIttUDi+mjE6zl9aHt6W\nmf5MXBSVjlZDUtzS1xVfv+TFxBDEVsQ4C/313ZphuMBI3Fh4UPJ5Kvc7mC1j\nbATEF/UoiPb9ywMt1heZz9FmJ4B7m/hgJhiOlAtuqf4pR2+Alqo0Xhs72uRh\nv0iDqgeH46+/g83TKhyZaDUWFHrKILdvohWx1qydc0bHQaE2I5YYHxygSyE+\n6YrgDiKOdwHSgRl766qgFdkq8/rVFhjhL10ygKqTpA49I29ZFBAC+3KAKJI7\nuJjlidJMQOB4rWRxow5zwdJatMvJTtOEItMtpORDGX9U4iIS9jyMFEniXuld\nsVykOwo1F9HH9ZDdTUwJWW8XUGxarwjrn46Wytmjvy9u9AGaao6HOn085cS8\naoV2V/moKDsO4P+BjZj9/PrOQT/kXpmo7Q3dWOn6Y0fGlfpe1Dk9t+MLUz3o\n/t3IaT/ala7D/nFDA4zIywV9YHa4OxN58hzKXa63OIe2YcwWRWrq4FtQTxkW\n67TD\r\n=0Wfp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCdqiXmb1sh+CJAHKSLoEjcEX8sPm0p1XXKwLwcWRARcgIgME9/iH/h2WanIaioxfvBI1xAUgxpgI2eWYJh0FvbDAE="}]},"_npmUser":{"name":"miguelmota","email":"hello@miguelmota.com"},"directories":{},"maintainers":[{"name":"miguelmota","email":"hello@miguelmota.com"},{"name":"shanefontaine","email":"shane6fontaine@gmail.com"},{"name":"cwhinfrey","email":"cwhinfrey@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/starkware-crypto_1.10.0-beta.5_1610585612520_0.3652083786685987"},"_hasShrinkwrap":false},"1.10.0-beta.6":{"name":"@authereum/starkware-crypto","description":"Starkware Crypto Library","version":"1.10.0-beta.6","author":"","license":"Apache-2.0","keywords":["stark","starkware","crypto","elliptic","curve","cryptography"],"contributors":[{"name":"Pedro Gomes","email":"github.com/pedrouid"},{"name":"Miguel Mota","email":"github.com/miguelmota"}],"main":"dist/cjs/index.js","types":"dist/cjs/index.d.ts","unpkg":"dist/umd/index.min.js","homepage":"https://github.com/authereum/starkware-monorepo/tree/master/packages/starkware-crypto","repository":{"type":"git","url":"git+https://github.com/authereum/starkware-monorepo.git"},"bugs":{"url":"https://github.com/authereum/starkware-monorepo/issues"},"scripts":{"start":"tsdx watch","clean":"rm -rf dist","build:cjs":"tsc -p tsconfig.cjs.json","build:umd":"webpack","build":"yarn clean && yarn build:cjs && yarn build:umd","test":"tsdx test ./test","lint":"prettier-standard --format","prepare":"yarn lint && yarn build","publish:beta":"npm publish --tag beta --access public","publish:next":"npm publish --tag next --access public","publish:latest":"npm publish --tag latest --access public","sync":"lerna-sync-version"},"dependencies":{"bip39":"^3.0.2","bn.js":"^5.1.2","elliptic":"^6.5.3","enc-utils":"3.0.0","ethereumjs-wallet":"^1.0.0","hash.js":"^1.1.7","js-sha3":"^0.8.0","keccak256":"^1.0.2","rsv-signature":"^1.1.0","web3-utils":"^1.3.0","@types/elliptic":"6.4.12","@types/node":"13.7.0"},"devDependencies":{"@types/jest":"25.1.1","husky":"4.2.5","prettier-standard":"^16.4.1","tsdx":"0.13.2","tslib":"1.10.0","typescript":"3.7.5","webpack":"4.41.6","webpack-cli":"3.3.12"},"husky":{"hooks":{"pre-commit":"yarn lint"}},"prettier":{"printWidth":80,"semi":false,"singleQuote":true,"trailingComma":"es5"},"readme":"# starkware-crypto [![npm version](https://badge.fury.io/js/starkware-crypto.svg)](https://badge.fury.io/js/starkware-crypto)\n\n> Starkware Crypto Library\n\n## Description\n\nThis library is a port from [starkex-resources/\\*\\*/signature.js](https://github.com/starkware-libs/starkex-resources/blob/master/crypto/starkware/crypto/signature/signature.js).\n\n## Getting started\n\n```js\nimport * as starkwareCrypto from '@authereum/starkware-crypto'\n\nconst mnemonic =\n  'puzzle number lab sense puzzle escape glove faith strike poem acoustic picture grit struggle know tuna soul indoor thumb dune fit job timber motor'\nconst layer = 'starkex'\nconst application = 'starkexdvf'\nconst zeroAddress = '0x0000000000000000000000000000000000000000'\nconst index = '0'\n\nconst path = starkwareCrypto.getAccountPath(\n  layer,\n  application,\n  zeroAddress,\n  index\n)\n\nconst keyPair = starkwareCrypto.getKeyPairFromPath(mnemonic, path)\n```\n\n## Examples\n\nDerive key pair:\n\n```js\nconst keyPair = getKeyPairFromPath(mnemonic, path)\n```\n\nPublic key:\n\n```js\nconst compressed = true\nconst pubKey = getPublic(keyPair, compressed)\n```\n\nPublic key X coordinate:\n\n```js\nconst x = getXCoordinate(pubKey)\n```\n\nPublic key Y coordinate:\n\n```js\nconst y = getYCoordinate(pubKey)\n```\n\nTransfer message hash:\n\n```js\nconst msgHash = getTransferMsgHash(\n  amount, // (uint63 decimal str)\n  nonce, // (uint31)\n  senderVaultId, // (uint31)\n  token, // (hex str with 0x prefix < prime)\n  targetVaultId, // (uint31)\n  targetPublicKey, // (hex str with 0x prefix < prime)\n  expirationTimestamp, // (uint22)\n  condition // (hex str with 0x prefix < prime)\n)\n```\n\nVerify signature:\n\n```js\nconst msgSignature = starkwareCrypto.sign(keyPair, msgHash)\nassert(starkwareCrypto.verify(publicKey, msgHash, msgSignature))\n```\n\nETH asset type:\n\n```js\nconst asset = {\n  type: 'ETH',\n  data: {\n    quantum: '1',\n  },\n}\nconsole.log(getAssetType(asset)) // '0x01142460171646987f20c714eda4b92812b22b811f56f27130937c267e29bd9e'\n```\n\nERC20 asset type:\n\n```js\nconst asset = {\n  type: 'ERC20',\n  data: {\n    quantum: '10000',\n    tokenAddress: '0xdAC17F958D2ee523a2206206994597C13D831ec7',\n  },\n}\nconsole.log(getAssetType(asset)) // '0x0352386d5b7c781d47ecd404765307d74edc4d43b0490b8e03c71ac7a7429653'\n```\n\nERC721 asset type:\n\n```js\nconst asset = {\n  type: 'ERC721',\n  data: {\n    tokenId: '4100',\n    tokenAddress: '0xB18ed4768F87b0fFAb83408014f1caF066b91380',\n  },\n}\nconsole.log(getAssetType(asset)) // '0x020c0e279ea2e027258d3056f34eca6e47ad9aaa995b896cafcb68d5a65b115b'\n```\n\nETH asset ID:\n\n```js\nconst quantum = '1'\nconsole.log(getEthAssetId(quantum)) // '0x01142460171646987f20c714eda4b92812b22b811f56f27130937c267e29bd9e'\n```\n\nERC20 asset ID:\n\n```js\nconst tokenAddress = '0xdAC17F958D2ee523a2206206994597C13D831ec7'\nconst quantum = '10000'\nconsole.log(getErc20AssetId(tokenAddress, quantum)) // '0x0352386d5b7c781d47ecd404765307d74edc4d43b0490b8e03c71ac7a7429653'\n```\n\nERC721 asset ID:\n\n```js\nconst tokenAddress = '0xB18ed4768F87b0fFAb83408014f1caF066b91380'\nconst tokenId = '4100'\nconsole.log(getErc721AssetId(tokenAddress, tokenId)) // '0x02b0ff0c09505bc40f9d1659becf16855a7b2298b010f8a54f4b05325885b40c'\n```\n\nQuantize amount:\n\n```js\nconst amount = '420000'\nconst quantum = '1000'\nconst quantizedAmount = starkwareCrypto.quantizeAmount(amount, quantum)\nconsole.log(quantizedAmount) // '420'\n```\n\n## License\n\n[Apache License 2.0](LICENSE.md)\n","readmeFilename":"README.md","_id":"@authereum/starkware-crypto@1.10.0-beta.6","_nodeVersion":"11.15.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-o7jY2gMgjj3x3eRZIi6GPkPL5o8iN7CsGBPtOpPunmca+E4VJHV54nEKkug+lv8YZ1bxPeBQ8tfSmvBHnHfoKw==","shasum":"41cdfef6d3ce26fbd2f3582a25bfd2f7b6587b8e","tarball":"https://registry.npmjs.org/@authereum/starkware-crypto/-/starkware-crypto-1.10.0-beta.6.tgz","fileCount":33,"unpackedSize":1785625,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgJFuhCRA9TVsSAnZWagAA3hoP/0l8wN1Ka94c8J6x3cjk\nnXSolg67nqr08BJ8QdPmbvAJcDxDCOfoorP40EhjkvJCD2GgHyNX+WwK5i1h\nB6BJyFLw0P7igXqS8euCnCCx/gAp4tawuXpfPerXLxehKL6b/jghzs4eXF3z\n6GM+1zDYToOaT+Ep5s/1YN1mCddh1ncXfT0fMHlwc3x0GSWqo9WVUWjvgl8g\no/UB7RUx1WcdZdi0jWFYeSi8Itpir58XPLzkcGDp+Ul4QqBLBI618/fyZuCW\nGd3qUq8QOKPCq0wE1TENf+RMimaXuZTjFpxpKHUTeQi8Yab/ll9OuVLZG9+k\nAhmpIccqVQkGY4OKMe1CKpiYX2WiEQFRIjSUP0o+JNohQC+yezCLGeZShOIj\nSR4unq+U4tMHVAl665Ui5zty9xWIr4py/DRodwHzsdH5a+st9uO0FOpnjjph\nnpHLfHvztXdJPx1F8yrlcyv07yW1nooxKSc6cHZ8B9NKkdOlP3mgC3W8N8fp\nOWd0168kj2nCNqycbw6XbRa+WcJ/1WHScNbC2vJZxVP/R+iwEzno8x+2U2LL\nzKri8m3Cthy6GsSjlVctiYwLCJIMgrdywcH/KntYdzs3zgqP7fyKlPlO+dZd\n+GLJsirJyXP9TdvMlv5m3nCTqrYM0nlOgOVWK0C7s6x72INpxJ6BgzR7RgeN\nmYqF\r\n=970Z\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCE67hjQ7mdh2uYo5aJiXFa1Zh8pB2e+9gXcGnLutsx5wIgeYVW51eABZQMdrUSxTG7mc3zb9rpuaiHSbgSPnNmfv0="}]},"_npmUser":{"name":"miguelmota","email":"hello@miguelmota.com"},"directories":{},"maintainers":[{"name":"miguelmota","email":"hello@miguelmota.com"},{"name":"shanefontaine","email":"shane6fontaine@gmail.com"},{"name":"cwhinfrey","email":"cwhinfrey@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/starkware-crypto_1.10.0-beta.6_1612995488854_0.8082922973931894"},"_hasShrinkwrap":false},"1.10.0-beta.7":{"name":"@authereum/starkware-crypto","description":"Starkware Crypto Library","version":"1.10.0-beta.7","author":"","license":"Apache-2.0","keywords":["stark","starkware","crypto","elliptic","curve","cryptography"],"contributors":[{"name":"Pedro Gomes","email":"github.com/pedrouid"},{"name":"Miguel Mota","email":"github.com/miguelmota"}],"main":"dist/cjs/index.js","types":"dist/cjs/index.d.ts","unpkg":"dist/umd/index.min.js","homepage":"https://github.com/authereum/starkware-monorepo/tree/master/packages/starkware-crypto","repository":{"type":"git","url":"git+https://github.com/authereum/starkware-monorepo.git"},"bugs":{"url":"https://github.com/authereum/starkware-monorepo/issues"},"scripts":{"start":"tsdx watch","clean":"rm -rf dist","build:cjs":"tsc -p tsconfig.cjs.json","build:umd":"webpack","build":"yarn clean && yarn build:cjs && yarn build:umd","test":"tsdx test ./test","lint":"prettier-standard --format","prepare":"yarn lint && yarn build","publish:beta":"npm publish --tag beta --access public","publish:next":"npm publish --tag next --access public","publish:latest":"npm publish --tag latest --access public","sync":"lerna-sync-version"},"dependencies":{"bip39":"^3.0.2","bn.js":"^5.1.2","elliptic":"^6.5.3","enc-utils":"3.0.0","ethereumjs-wallet":"^1.0.0","hash.js":"^1.1.7","js-sha3":"^0.8.0","keccak256":"^1.0.2","rsv-signature":"^1.1.0","web3-utils":"^1.3.0","@types/elliptic":"6.4.12","@types/node":"13.7.0"},"devDependencies":{"@types/jest":"25.1.1","husky":"4.2.5","prettier-standard":"^16.4.1","tsdx":"0.13.2","tslib":"1.10.0","typescript":"3.7.5","webpack":"4.41.6","webpack-cli":"3.3.12"},"husky":{"hooks":{"pre-commit":"yarn lint"}},"prettier":{"printWidth":80,"semi":false,"singleQuote":true,"trailingComma":"es5"},"readme":"# starkware-crypto [![npm version](https://badge.fury.io/js/starkware-crypto.svg)](https://badge.fury.io/js/starkware-crypto)\n\n> Starkware Crypto Library\n\n## Description\n\nThis library is a port from [starkex-resources/\\*\\*/signature.js](https://github.com/starkware-libs/starkex-resources/blob/master/crypto/starkware/crypto/signature/signature.js).\n\n## Getting started\n\n```js\nimport * as starkwareCrypto from '@authereum/starkware-crypto'\n\nconst mnemonic =\n  'puzzle number lab sense puzzle escape glove faith strike poem acoustic picture grit struggle know tuna soul indoor thumb dune fit job timber motor'\nconst layer = 'starkex'\nconst application = 'starkexdvf'\nconst zeroAddress = '0x0000000000000000000000000000000000000000'\nconst index = '0'\n\nconst path = starkwareCrypto.getAccountPath(\n  layer,\n  application,\n  zeroAddress,\n  index\n)\n\nconst keyPair = starkwareCrypto.getKeyPairFromPath(mnemonic, path)\n```\n\n## Examples\n\nDerive key pair:\n\n```js\nconst keyPair = getKeyPairFromPath(mnemonic, path)\n```\n\nPublic key:\n\n```js\nconst compressed = true\nconst pubKey = getPublic(keyPair, compressed)\n```\n\nPublic key X coordinate:\n\n```js\nconst x = getXCoordinate(pubKey)\n```\n\nPublic key Y coordinate:\n\n```js\nconst y = getYCoordinate(pubKey)\n```\n\nTransfer message hash:\n\n```js\nconst msgHash = getTransferMsgHash(\n  amount, // (uint63 decimal str)\n  nonce, // (uint31)\n  senderVaultId, // (uint31)\n  token, // (hex str with 0x prefix < prime)\n  targetVaultId, // (uint31)\n  targetPublicKey, // (hex str with 0x prefix < prime)\n  expirationTimestamp, // (uint22)\n  condition // (hex str with 0x prefix < prime)\n)\n```\n\nVerify signature:\n\n```js\nconst msgSignature = starkwareCrypto.sign(keyPair, msgHash)\nassert(starkwareCrypto.verify(publicKey, msgHash, msgSignature))\n```\n\nETH asset type:\n\n```js\nconst asset = {\n  type: 'ETH',\n  data: {\n    quantum: '1',\n  },\n}\nconsole.log(getAssetType(asset)) // '0x01142460171646987f20c714eda4b92812b22b811f56f27130937c267e29bd9e'\n```\n\nERC20 asset type:\n\n```js\nconst asset = {\n  type: 'ERC20',\n  data: {\n    quantum: '10000',\n    tokenAddress: '0xdAC17F958D2ee523a2206206994597C13D831ec7',\n  },\n}\nconsole.log(getAssetType(asset)) // '0x0352386d5b7c781d47ecd404765307d74edc4d43b0490b8e03c71ac7a7429653'\n```\n\nERC721 asset type:\n\n```js\nconst asset = {\n  type: 'ERC721',\n  data: {\n    tokenId: '4100',\n    tokenAddress: '0xB18ed4768F87b0fFAb83408014f1caF066b91380',\n  },\n}\nconsole.log(getAssetType(asset)) // '0x020c0e279ea2e027258d3056f34eca6e47ad9aaa995b896cafcb68d5a65b115b'\n```\n\nETH asset ID:\n\n```js\nconst quantum = '1'\nconsole.log(getEthAssetId(quantum)) // '0x01142460171646987f20c714eda4b92812b22b811f56f27130937c267e29bd9e'\n```\n\nERC20 asset ID:\n\n```js\nconst tokenAddress = '0xdAC17F958D2ee523a2206206994597C13D831ec7'\nconst quantum = '10000'\nconsole.log(getErc20AssetId(tokenAddress, quantum)) // '0x0352386d5b7c781d47ecd404765307d74edc4d43b0490b8e03c71ac7a7429653'\n```\n\nERC721 asset ID:\n\n```js\nconst tokenAddress = '0xB18ed4768F87b0fFAb83408014f1caF066b91380'\nconst tokenId = '4100'\nconsole.log(getErc721AssetId(tokenAddress, tokenId)) // '0x02b0ff0c09505bc40f9d1659becf16855a7b2298b010f8a54f4b05325885b40c'\n```\n\nQuantize amount:\n\n```js\nconst amount = '420000'\nconst quantum = '1000'\nconst quantizedAmount = starkwareCrypto.quantizeAmount(amount, quantum)\nconsole.log(quantizedAmount) // '420'\n```\n\n## License\n\n[Apache License 2.0](LICENSE.md)\n","readmeFilename":"README.md","_id":"@authereum/starkware-crypto@1.10.0-beta.7","_nodeVersion":"11.15.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-3cKM9M5RhbHvIs+cKRJMzoKgv+W4ELwv+Vbz0wCxu68eY3P5VpA9ynUl2MKO9L4xuoZQAaJaZMltPKSxFz/+Lw==","shasum":"6ecf8afc9bc52c2da961d230be119afd15d1f725","tarball":"https://registry.npmjs.org/@authereum/starkware-crypto/-/starkware-crypto-1.10.0-beta.7.tgz","fileCount":33,"unpackedSize":1785592,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgOK+UCRA9TVsSAnZWagAADyYQAJBJJC5ONeF5kVNUWGSp\nboZz0x6rO9+ru8XIJ7qbM7B5d0Ktqg5ctyQeTbKnobXADW+eErMJzbEscNcI\ndVdsG4n89BMDWQzD5IPZ1o7XB8aYx6ElMgoTcgL3C2aADAT9va1b16QJ1Zbm\nUx3/MjcyaDQhzYh3H/erRSGOcpN3PGVRtjy9Eu3xzwWObX/Z46Vr4//MAnPF\neYPyCYBNi7yWQ6gmrF9cDb9E7xaHS5hc8td7u0lmGPmsXh7xRMchKWKwd737\nqJ64kjB+W0ydx2hHBDSLOxde7nf0PSJXSvzvIvhhK2qyeFJhHw/GfOjAoTs2\n/pEQ86zZFAlDaO1knMy4qukc6L5LjWNEiGC/iZTebQISUd4VZ3Ln3FqA4sUW\nC4uwtkZ591NRvLSSPj5ekGH3km40Z05ZnG7H51pxsl6s/o4QKcBSWvzmdbj9\nSKB1laFfxrO5XcXUcZ1+3q1U7rEjbRiTZvmpeHNRhyjwy7bJM+jVysXe1Mhe\n4MsrbpucpMynCDlMGn7byJc68kNygyH1vVB79dxgfFgKDOiO9RClkL++SfDJ\nHLuMpZ/EzjAF5JZ1W5lxLOf6IwuCnyrPKNVhPkMvd8og4yME8HWs6meSQ4Zt\nMHpLlF1hcEtpqaJg/r7bzlbKQfZwWqyxxrecQ6+uTiQgZi6/jPLk2UX0moN0\nky4Y\r\n=T9vL\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIE7HqUu/ikB+lAigKJoQq9yv7Z9yIOxYQEgBtT+MWaAwAiBChNqHzA5bv0tZBataF8ZYmFZ8P9ULHXIBPEYfFBWZBA=="}]},"_npmUser":{"name":"miguelmota","email":"hello@miguelmota.com"},"directories":{},"maintainers":[{"name":"miguelmota","email":"hello@miguelmota.com"},{"name":"shanefontaine","email":"shane6fontaine@gmail.com"},{"name":"cwhinfrey","email":"cwhinfrey@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/starkware-crypto_1.10.0-beta.7_1614327699449_0.6942175165934064"},"_hasShrinkwrap":false},"1.10.0-beta.8":{"name":"@authereum/starkware-crypto","description":"Starkware Crypto Library","version":"1.10.0-beta.8","author":"","license":"Apache-2.0","keywords":["stark","starkware","crypto","elliptic","curve","cryptography"],"contributors":[{"name":"Pedro Gomes","email":"github.com/pedrouid"},{"name":"Miguel Mota","email":"github.com/miguelmota"}],"main":"dist/cjs/index.js","types":"dist/cjs/index.d.ts","unpkg":"dist/umd/index.min.js","homepage":"https://github.com/authereum/starkware-monorepo/tree/master/packages/starkware-crypto","repository":{"type":"git","url":"git+https://github.com/authereum/starkware-monorepo.git"},"bugs":{"url":"https://github.com/authereum/starkware-monorepo/issues"},"scripts":{"start":"tsdx watch","clean":"rm -rf dist","build:cjs":"tsc -p tsconfig.cjs.json","build:umd":"webpack","build":"yarn clean && yarn build:cjs && yarn build:umd","test":"tsdx test ./test","lint":"prettier-standard --format","prepare":"yarn lint && yarn build","publish:beta":"npm publish --tag beta --access public","publish:next":"npm publish --tag next --access public","publish:latest":"npm publish --tag latest --access public","sync":"lerna-sync-version"},"dependencies":{"bip39":"^3.0.2","bn.js":"^5.1.2","elliptic":"^6.5.3","enc-utils":"3.0.0","ethereumjs-wallet":"^1.0.0","hash.js":"^1.1.7","js-sha3":"^0.8.0","keccak256":"^1.0.2","rsv-signature":"^1.1.0","web3-utils":"^1.3.0","@types/elliptic":"6.4.12","@types/node":"13.7.0"},"devDependencies":{"@types/jest":"25.1.1","husky":"4.2.5","prettier-standard":"^16.4.1","tsdx":"0.13.2","tslib":"1.10.0","typescript":"3.7.5","webpack":"4.41.6","webpack-cli":"3.3.12"},"husky":{"hooks":{"pre-commit":"yarn lint"}},"prettier":{"printWidth":80,"semi":false,"singleQuote":true,"trailingComma":"es5"},"readme":"# starkware-crypto [![npm version](https://badge.fury.io/js/starkware-crypto.svg)](https://badge.fury.io/js/starkware-crypto)\n\n> Starkware Crypto Library\n\n## Description\n\nThis library is a port from [starkex-resources/\\*\\*/signature.js](https://github.com/starkware-libs/starkex-resources/blob/master/crypto/starkware/crypto/signature/signature.js).\n\n## Getting started\n\n```js\nimport * as starkwareCrypto from '@authereum/starkware-crypto'\n\nconst mnemonic =\n  'puzzle number lab sense puzzle escape glove faith strike poem acoustic picture grit struggle know tuna soul indoor thumb dune fit job timber motor'\nconst layer = 'starkex'\nconst application = 'starkexdvf'\nconst zeroAddress = '0x0000000000000000000000000000000000000000'\nconst index = '0'\n\nconst path = starkwareCrypto.getAccountPath(\n  layer,\n  application,\n  zeroAddress,\n  index\n)\n\nconst keyPair = starkwareCrypto.getKeyPairFromPath(mnemonic, path)\n```\n\n## Examples\n\nDerive key pair:\n\n```js\nconst keyPair = getKeyPairFromPath(mnemonic, path)\n```\n\nPublic key:\n\n```js\nconst compressed = true\nconst pubKey = getPublic(keyPair, compressed)\n```\n\nPublic key X coordinate:\n\n```js\nconst x = getXCoordinate(pubKey)\n```\n\nPublic key Y coordinate:\n\n```js\nconst y = getYCoordinate(pubKey)\n```\n\nTransfer message hash:\n\n```js\nconst msgHash = getTransferMsgHash(\n  amount, // (uint63 decimal str)\n  nonce, // (uint31)\n  senderVaultId, // (uint31)\n  token, // (hex str with 0x prefix < prime)\n  targetVaultId, // (uint31)\n  targetPublicKey, // (hex str with 0x prefix < prime)\n  expirationTimestamp, // (uint22)\n  condition // (hex str with 0x prefix < prime)\n)\n```\n\nVerify signature:\n\n```js\nconst msgSignature = starkwareCrypto.sign(keyPair, msgHash)\nassert(starkwareCrypto.verify(publicKey, msgHash, msgSignature))\n```\n\nETH asset type:\n\n```js\nconst asset = {\n  type: 'ETH',\n  data: {\n    quantum: '1',\n  },\n}\nconsole.log(getAssetType(asset)) // '0x01142460171646987f20c714eda4b92812b22b811f56f27130937c267e29bd9e'\n```\n\nERC20 asset type:\n\n```js\nconst asset = {\n  type: 'ERC20',\n  data: {\n    quantum: '10000',\n    tokenAddress: '0xdAC17F958D2ee523a2206206994597C13D831ec7',\n  },\n}\nconsole.log(getAssetType(asset)) // '0x0352386d5b7c781d47ecd404765307d74edc4d43b0490b8e03c71ac7a7429653'\n```\n\nERC721 asset type:\n\n```js\nconst asset = {\n  type: 'ERC721',\n  data: {\n    tokenId: '4100',\n    tokenAddress: '0xB18ed4768F87b0fFAb83408014f1caF066b91380',\n  },\n}\nconsole.log(getAssetType(asset)) // '0x020c0e279ea2e027258d3056f34eca6e47ad9aaa995b896cafcb68d5a65b115b'\n```\n\nETH asset ID:\n\n```js\nconst quantum = '1'\nconsole.log(getEthAssetId(quantum)) // '0x01142460171646987f20c714eda4b92812b22b811f56f27130937c267e29bd9e'\n```\n\nERC20 asset ID:\n\n```js\nconst tokenAddress = '0xdAC17F958D2ee523a2206206994597C13D831ec7'\nconst quantum = '10000'\nconsole.log(getErc20AssetId(tokenAddress, quantum)) // '0x0352386d5b7c781d47ecd404765307d74edc4d43b0490b8e03c71ac7a7429653'\n```\n\nERC721 asset ID:\n\n```js\nconst tokenAddress = '0xB18ed4768F87b0fFAb83408014f1caF066b91380'\nconst tokenId = '4100'\nconsole.log(getErc721AssetId(tokenAddress, tokenId)) // '0x02b0ff0c09505bc40f9d1659becf16855a7b2298b010f8a54f4b05325885b40c'\n```\n\nQuantize amount:\n\n```js\nconst amount = '420000'\nconst quantum = '1000'\nconst quantizedAmount = starkwareCrypto.quantizeAmount(amount, quantum)\nconsole.log(quantizedAmount) // '420'\n```\n\n## License\n\n[Apache License 2.0](LICENSE.md)\n","readmeFilename":"README.md","_id":"@authereum/starkware-crypto@1.10.0-beta.8","_nodeVersion":"11.15.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-tpady3SxTTuAnMM0kx4dlzIsZD2G1XTcJRFkgTPhKBMJ6dgKfr0TapyRDf2nKHGTKSgOn5/DVoW0JXtMyL5SjA==","shasum":"2c46e9d5cbd229165b98f2d1aa760ac884518d7e","tarball":"https://registry.npmjs.org/@authereum/starkware-crypto/-/starkware-crypto-1.10.0-beta.8.tgz","fileCount":33,"unpackedSize":1785562,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgPaBtCRA9TVsSAnZWagAA7PAP/3glfcFxbDkfq6oLcknW\nobgg6q14fFMIHNyeXd5q4bWWVrXas8w0xsvwzgzV6qKtAAr43ZyHR8RtE/yD\nDjrSEPnFDwCuIqds95z85oUQOuK9P7JGfg9Uwcd84dzQ1mVXwz0XJo4GHGRZ\ntajDlEj5k9qaZs0EiAMA82fjxM4fQf3vABSwUNGNGjGNVqhEAEIeW/DEuKoi\nwa2iE4I2oQDPveTn4JTSKKwcXdjfNNDURT6eMuyvbRgCY+CoIXcP8Mqjh1XR\nGGKp4B6YDD25Q7zIhvIP1Uw0S9mBWysfjzel55bY/7/lZJf/Ao+Xb6CgGQEL\nIprKwZptTswVWQ33DE6oB2frYmLazvIbgObpTl8K7YTDODp0ssGgZqS6TNMz\nAlMhCpJq8Ux+I3W1RpPY2Co5YaJAFsD2l8P/WY/Dl7JYi2zS4N9RQcxw41U3\nhIpd8U75/dnXSds7mCZ+JmrcCnVpas7eqmXSOhvuEe53LSscw6wKRZabsPC4\nUJa+KplVeDAbUDSSktw6XZqmO7HrrkvfHEGBTSA/xLs0fSP/L9rHe+HbBHXp\n68Ra8+9g04KJGkovjwdKC6qz/XtcE+yHFUcZqmIqf63sumImU55krkCxZLIF\ndVVz5/msiAtj7sPbUw8PJwxjLlqztHi3G+4nm9IwDQzxMdy5mMn+SOKDddlZ\nfNre\r\n=u1Rl\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDDHbpOn5p0nsycPz/xhuWBd1Yp9uTZVYmodg/T5wNkxgIhANiusfRKWKEGl2d8xzIwm8j8uyz+xz98l5JJD0DtG3oA"}]},"_npmUser":{"name":"miguelmota","email":"hello@miguelmota.com"},"directories":{},"maintainers":[{"name":"miguelmota","email":"hello@miguelmota.com"},{"name":"shanefontaine","email":"shane6fontaine@gmail.com"},{"name":"cwhinfrey","email":"cwhinfrey@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/starkware-crypto_1.10.0-beta.8_1614651500918_0.8462946640977771"},"_hasShrinkwrap":false},"1.10.0-beta.9":{"name":"@authereum/starkware-crypto","description":"Starkware Crypto Library","version":"1.10.0-beta.9","author":"","license":"Apache-2.0","keywords":["stark","starkware","crypto","elliptic","curve","cryptography"],"contributors":[{"name":"Pedro Gomes","email":"github.com/pedrouid"},{"name":"Miguel Mota","email":"github.com/miguelmota"}],"main":"dist/cjs/index.js","types":"dist/cjs/index.d.ts","unpkg":"dist/umd/index.min.js","homepage":"https://github.com/authereum/starkware-monorepo/tree/master/packages/starkware-crypto","repository":{"type":"git","url":"git+https://github.com/authereum/starkware-monorepo.git"},"bugs":{"url":"https://github.com/authereum/starkware-monorepo/issues"},"scripts":{"start":"tsdx watch","clean":"rm -rf dist","build:cjs":"tsc -p tsconfig.cjs.json","build:umd":"webpack","build":"yarn clean && yarn build:cjs && yarn build:umd","test":"tsdx test ./test","lint":"prettier-standard --format","prepare":"yarn lint && yarn build","publish:beta":"npm publish --tag beta --access public","publish:next":"npm publish --tag next --access public","publish:latest":"npm publish --tag latest --access public","sync":"lerna-sync-version"},"dependencies":{"bip39":"^3.0.2","bn.js":"^5.1.2","elliptic":"^6.5.3","enc-utils":"3.0.0","ethereumjs-wallet":"^1.0.0","hash.js":"^1.1.7","js-sha3":"^0.8.0","keccak256":"^1.0.2","rsv-signature":"^1.1.0","web3-utils":"^1.3.0","@types/elliptic":"6.4.12","@types/node":"13.7.0"},"devDependencies":{"@types/jest":"25.1.1","husky":"4.2.5","prettier-standard":"^16.4.1","tsdx":"0.13.2","tslib":"1.10.0","typescript":"3.7.5","webpack":"4.41.6","webpack-cli":"3.3.12"},"husky":{"hooks":{"pre-commit":"yarn lint"}},"prettier":{"printWidth":80,"semi":false,"singleQuote":true,"trailingComma":"es5"},"readme":"# starkware-crypto [![npm version](https://badge.fury.io/js/starkware-crypto.svg)](https://badge.fury.io/js/starkware-crypto)\n\n> Starkware Crypto Library\n\n## Description\n\nThis library is a port from [starkex-resources/\\*\\*/signature.js](https://github.com/starkware-libs/starkex-resources/blob/master/crypto/starkware/crypto/signature/signature.js).\n\n## Getting started\n\n```js\nimport * as starkwareCrypto from '@authereum/starkware-crypto'\n\nconst mnemonic =\n  'puzzle number lab sense puzzle escape glove faith strike poem acoustic picture grit struggle know tuna soul indoor thumb dune fit job timber motor'\nconst layer = 'starkex'\nconst application = 'starkexdvf'\nconst zeroAddress = '0x0000000000000000000000000000000000000000'\nconst index = '0'\n\nconst path = starkwareCrypto.getAccountPath(\n  layer,\n  application,\n  zeroAddress,\n  index\n)\n\nconst keyPair = starkwareCrypto.getKeyPairFromPath(mnemonic, path)\n```\n\n## Examples\n\nDerive key pair:\n\n```js\nconst keyPair = getKeyPairFromPath(mnemonic, path)\n```\n\nPublic key:\n\n```js\nconst compressed = true\nconst pubKey = getPublic(keyPair, compressed)\n```\n\nPublic key X coordinate:\n\n```js\nconst x = getXCoordinate(pubKey)\n```\n\nPublic key Y coordinate:\n\n```js\nconst y = getYCoordinate(pubKey)\n```\n\nTransfer message hash:\n\n```js\nconst msgHash = getTransferMsgHash(\n  amount, // (uint63 decimal str)\n  nonce, // (uint31)\n  senderVaultId, // (uint31)\n  token, // (hex str with 0x prefix < prime)\n  targetVaultId, // (uint31)\n  targetPublicKey, // (hex str with 0x prefix < prime)\n  expirationTimestamp, // (uint22)\n  condition // (hex str with 0x prefix < prime)\n)\n```\n\nVerify signature:\n\n```js\nconst msgSignature = starkwareCrypto.sign(keyPair, msgHash)\nassert(starkwareCrypto.verify(publicKey, msgHash, msgSignature))\n```\n\nETH asset type:\n\n```js\nconst asset = {\n  type: 'ETH',\n  data: {\n    quantum: '1',\n  },\n}\nconsole.log(getAssetType(asset)) // '0x01142460171646987f20c714eda4b92812b22b811f56f27130937c267e29bd9e'\n```\n\nERC20 asset type:\n\n```js\nconst asset = {\n  type: 'ERC20',\n  data: {\n    quantum: '10000',\n    tokenAddress: '0xdAC17F958D2ee523a2206206994597C13D831ec7',\n  },\n}\nconsole.log(getAssetType(asset)) // '0x0352386d5b7c781d47ecd404765307d74edc4d43b0490b8e03c71ac7a7429653'\n```\n\nERC721 asset type:\n\n```js\nconst asset = {\n  type: 'ERC721',\n  data: {\n    tokenId: '4100',\n    tokenAddress: '0xB18ed4768F87b0fFAb83408014f1caF066b91380',\n  },\n}\nconsole.log(getAssetType(asset)) // '0x020c0e279ea2e027258d3056f34eca6e47ad9aaa995b896cafcb68d5a65b115b'\n```\n\nETH asset ID:\n\n```js\nconst quantum = '1'\nconsole.log(getEthAssetId(quantum)) // '0x01142460171646987f20c714eda4b92812b22b811f56f27130937c267e29bd9e'\n```\n\nERC20 asset ID:\n\n```js\nconst tokenAddress = '0xdAC17F958D2ee523a2206206994597C13D831ec7'\nconst quantum = '10000'\nconsole.log(getErc20AssetId(tokenAddress, quantum)) // '0x0352386d5b7c781d47ecd404765307d74edc4d43b0490b8e03c71ac7a7429653'\n```\n\nERC721 asset ID:\n\n```js\nconst tokenAddress = '0xB18ed4768F87b0fFAb83408014f1caF066b91380'\nconst tokenId = '4100'\nconsole.log(getErc721AssetId(tokenAddress, tokenId)) // '0x02b0ff0c09505bc40f9d1659becf16855a7b2298b010f8a54f4b05325885b40c'\n```\n\nQuantize amount:\n\n```js\nconst amount = '420000'\nconst quantum = '1000'\nconst quantizedAmount = starkwareCrypto.quantizeAmount(amount, quantum)\nconsole.log(quantizedAmount) // '420'\n```\n\n## License\n\n[Apache License 2.0](LICENSE.md)\n","readmeFilename":"README.md","_id":"@authereum/starkware-crypto@1.10.0-beta.9","_nodeVersion":"11.15.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-mtxKiyUQbvmYOPvN4Jjbp7u+hUpXTick4PCLSLr9J+ujsauyjxV0xKnfMGlxKQOy2pMvXMHUtw0UQMveBMdhLQ==","shasum":"7e4112f72d35c3b18db7028f1e16f8a70a4070d7","tarball":"https://registry.npmjs.org/@authereum/starkware-crypto/-/starkware-crypto-1.10.0-beta.9.tgz","fileCount":33,"unpackedSize":1785565,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgRxvZCRA9TVsSAnZWagAAi2UP/3eimfienHDfGcGYwGLe\nm4S8Ns8/WF0dTO2rYcuaYtjdxJA//41pLmdZw4+b6lvN2XLc/NH9yq/lGE2q\nsnR441HbpHc0K6RT99z2REbrADDtrDhWGI3ozImkjc8D6Eb9uE3R6vR0NyDJ\n7wUn5fE/RJ0Cas9Ir9EDIe6/ShwXGMf1PyqTIPWwL/H7k7l9h4ex7WaMCwRB\nhclqSwwFR+bn68BeKvgM4iWJnfUg4RTzoS11cJICAwJGMNn0tjJt9hzPhfXy\nnlD3k2HdduDpP6O8ucjYUpAjp7vEG1g1Hux0WWJmKWvWaul+rikVWd61EOyk\n2qrl9deGbgX4sfFkNQwRBRgy4n0dI1eapGHId/p1Nw9iB1KGSapVnUm9weff\nxCkJSYEcnPK2j8elt2wH5tGX2l5niMqPwCelrIDa/8DdTBDVb6e7JyfqsvT2\npI8mct0Bq1Pj6xw2lHXokREyGKyAcNqwMd5QIQDkrtap6UASp93mRI11lsPi\nd88pCShQOgmRbPmyFJdRNiaJ0x2i3hP9ORxSa43XnSVTjWiD/mqt4Nw3Z6ov\npeBuZKVvMa2pzIEWewEuDO+Z234Jp5cnpNCsJBMWXrH7UIUwaHZvZfpIUiTc\nElANYuOIMAX4wecy4M0ZPycDH72hTlSah5tnbW0tGSL5zVSaPEUQaBm8uzt7\n+FGj\r\n=YCWi\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDbYjfd/FoXE1/V8Ms6O7LKOdO3wJ/w/d+5YmHY8O/vlAiB6vYgJ0IZn0dgY/jFix5VcTH5/WYZK+qCTWW4ReU0low=="}]},"_npmUser":{"name":"miguelmota","email":"hello@miguelmota.com"},"directories":{},"maintainers":[{"name":"miguelmota","email":"hello@miguelmota.com"},{"name":"shanefontaine","email":"shane6fontaine@gmail.com"},{"name":"cwhinfrey","email":"cwhinfrey@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/starkware-crypto_1.10.0-beta.9_1615272921351_0.890649742888036"},"_hasShrinkwrap":false}},"time":{"created":"2020-10-28T17:00:05.226Z","1.9.7-beta.0":"2020-10-28T17:00:05.799Z","modified":"2022-04-04T16:31:42.707Z","1.9.7-beta.1":"2020-11-02T18:08:34.308Z","1.9.7-beta.2":"2020-11-02T18:16:53.747Z","1.9.7-beta.3":"2020-11-03T09:26:42.218Z","1.9.7-beta.4":"2020-11-03T20:58:53.154Z","1.9.7-beta.5":"2020-11-03T21:32:30.322Z","1.9.7-beta.6":"2020-11-05T05:03:57.802Z","1.9.7-beta.7":"2020-11-06T08:51:28.856Z","1.10.0-beta.0":"2020-12-21T23:25:11.043Z","1.10.0-beta.1":"2020-12-24T02:39:05.009Z","1.10.0-beta.2":"2021-01-10T23:06:36.273Z","1.10.0-beta.3":"2021-01-10T23:25:41.904Z","1.10.0-beta.4":"2021-01-12T18:42:29.923Z","1.10.0-beta.5":"2021-01-14T00:53:32.702Z","1.10.0-beta.6":"2021-02-10T22:18:09.053Z","1.10.0-beta.7":"2021-02-26T08:21:39.684Z","1.10.0-beta.8":"2021-03-02T02:18:21.388Z","1.10.0-beta.9":"2021-03-09T06:55:21.524Z"},"maintainers":[{"name":"miguelmota","email":"hello@miguelmota.com"},{"name":"shanefontaine","email":"shane6fontaine@gmail.com"},{"name":"cwhinfrey","email":"cwhinfrey@gmail.com"}],"description":"Starkware Crypto Library","homepage":"https://github.com/authereum/starkware-monorepo/tree/master/packages/starkware-crypto","keywords":["stark","starkware","crypto","elliptic","curve","cryptography"],"repository":{"type":"git","url":"git+https://github.com/authereum/starkware-monorepo.git"},"bugs":{"url":"https://github.com/authereum/starkware-monorepo/issues"},"license":"Apache-2.0","readme":"","readmeFilename":"","contributors":[{"name":"Pedro Gomes","email":"github.com/pedrouid"},{"name":"Miguel Mota","email":"github.com/miguelmota"}]}