{"_id":"redjubjub-js","_rev":"18-add3e4cf984509cc4bb19155a40c4096","name":"redjubjub-js","dist-tags":{"latest":"1.2.1"},"versions":{"1.0.1":{"name":"redjubjub-js","version":"1.0.1","license":"MIT OR Apache-2.0","_id":"redjubjub-js@1.0.1","maintainers":[{"name":"hamlinli","email":"sclihuiming@163.com"}],"homepage":"https://github.com/tronprotocol/redjubjub-js#readme","bugs":{"url":"https://github.com/tronprotocol/redjubjub-js/issues"},"dist":{"shasum":"d31a4be5eeca0a93cb1903cb46b3380c10cd79c6","tarball":"https://registry.npmjs.org/redjubjub-js/-/redjubjub-js-1.0.1.tgz","fileCount":5,"integrity":"sha512-3OZ9tn/6dFnOoq8VUYHcPsaUHOr92l1avDQC18du8bfhH4ydTurzYhsjOeQUyo40gg4Hzr2aNWBdvXHsJ9HFjQ==","signatures":[{"sig":"MEQCICX3wl9lLm4Nh5okvyeZm+7QzvSw28fCcvLlXkV6uw1yAiAd0K2I5CdKi+ftIPQBzpX1YK4W2oG6Ii46N9azyUEgdQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":202115,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJftL6ZCRA9TVsSAnZWagAA+2EP/RAqJfroJEOe2IuQ2ibI\n/bHk4o8XWmJc/6mi4t3T+QVDstGyXPu0zVBZPXqg+mmtxQgARXTPCCmkPwAK\n3XwWEJwD63reyHCiIZJdPqvnGFIR7GS40RvY7Z8zK8gmGj47qtbGkSCQvajv\ny6kq6mbE45+xsCJgimp/Tmo7dBCDlNAah5QCIcVxEkDW8oQQ7rwRgn4mKb96\nakfIb3FQeb566b1W5TGfRoxMlxzMd1pmHtYh1l1vpNlMffehY7ITXwAmFWaz\naKeHYJeI+gprgXfkBP6etc9YARu75W2yvRSrN/tSCeLNZzY+MJ61ScLDM1et\nu/mExB0i+28Y3CXWQeue9UgCwTEZ5ExumoxsrNpUzv6HDEJDKZ6nfEzikWJh\nZQ7VCNG3x1TVyX+Kan3cDkf3FKGJZAEQW6YRPAnragPljDcmylB6sb5jJVeS\ndut3npzlde71o2IaontIE8siTbz8SHeVR8LArYDWMVIZZoygKLClwCt0pGyy\no/y5jmHov2m4jFe3GOpDbuNKZHtDru9z1VMCAk5Ubh/clw2kSLPmj8OXpI5Y\nCCBh8UkkIS+DMLABWQLi1yLtQEINLSEXAfrh1oj19uqM/ypDvwk6jozy8fja\nLbfzjpZp3WfXURmW0MLyZzVQRgGFR1EFSiYhBwY8fV56r2aXyPq91WfOiCj6\n9QxZ\r\n=rtHO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"redjubjub_js.js","types":"redjubjub_js.d.ts","_npmUser":{"name":"hamlinli","email":"sclihuiming@163.com"},"repository":{"url":"git+https://github.com/tronprotocol/redjubjub-js.git","type":"git"},"_npmVersion":"6.14.8","description":"A mostly-standalone implementation of the RedJubjub signature scheme and keys.","directories":{},"_nodeVersion":"12.19.0","collaborators":["Henry de Valence <hdevalence@hdevalence.ca>"],"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/redjubjub-js_1.0.1_1605680793217_0.27668736905191516","host":"s3://npm-registry-packages"}},"1.1.0":{"name":"redjubjub-js","version":"1.1.0","license":"MIT OR Apache-2.0","_id":"redjubjub-js@1.1.0","maintainers":[{"name":"cathytan","email":"huijuant58@163.com"},{"name":"xulei_tron","email":"gray.xu@tron.network"},{"name":"beita","email":"lxlsoft@126.com"},{"name":"hamlinli","email":"sclihuiming@163.com"}],"homepage":"https://github.com/tronprotocol/redjubjub-js#readme","bugs":{"url":"https://github.com/tronprotocol/redjubjub-js/issues"},"dist":{"shasum":"4654548110812d92e3fd5f8e4296eb0d1e2df48a","tarball":"https://registry.npmjs.org/redjubjub-js/-/redjubjub-js-1.1.0.tgz","fileCount":24,"integrity":"sha512-e22m1Pnv4Fzg4ONFhPErDEy+p0KdotB3bK98HoNpB8g/8r1VtN2sYdYPfzlb7BtwDTXdjbO7DvQTnrbLViziHA==","signatures":[{"sig":"MEYCIQD6tV8VbeLPC52zQkT/4UK73PEkqz9P7sejcOa/Es80sQIhAN+WzzKLUUdL+c4l/BEH5f3tnNd2FaJu2d/iV2O0zojK","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":679243,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgWZMrCRA9TVsSAnZWagAA6f0QAJXAPUjaRkDi93TtAUof\nNyKZ6BvrQw1KtTKKLyO1qpCtaEpVVdIOxj9NPunwYKrAmoPhNCMP9/ufsENE\nZNUmdBAZeyD4mBPx/X3Ik/ZyqlLtRtS+qO085ZHDTunJW6mYskk7cc9sfGjS\na0pRop7YGhOp483cm7t82DXJXGoGtVt6GHMvRe7/MBCJ4iZzEzC35MBCzsSY\nzBOgTxYJ70olBDW0JMwOjg3FTEz3EaW29wlIhNEsg+Hf4Od2J6DS6qh6CSy4\non0TAxWCSNESi+eS0ACaVkWPnnznsJANPvKkM9lT6Fa12RGWnWQbSozBjyeg\nj55y6OL4pOO78DZSam9PHAaLft6iyPDkN78L//vZg77Q4V99j+WpsUftOXd/\nWm+6K4e0fpUiuXYVZh6HMHP7Y/gd/OwN909GByPHKJzdrtTSIlnGxrNY/UDj\nIPDncuEjrUQwtlvOhnC6Y2SuQspRxaFLiBKseBr0tytEVSOIqT5mFE4ZgyEo\npWcfnP53fW+opJnTaa7HWPoC1WCxueQVONg46yLNXgwo9WRhao55m3HKFdlG\nUDQU+BbVDOxUTtYjfFcYSFBexSTAyyGGLqqQXP8omo1l2xIw0XZM2wxz2Uvm\nLP2Hvy+AX5qk8qlZj7xl+nncAVACNYWk0Z3V+LzgwIkSpsyfRBKwCg+HPP2E\n7xeq\r\n=dXHJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./redjubjub-node-js/redjubjub_js.js","types":"redjubjub_js.d.ts","browser":"./redjubjub-bundler-js/redjubjub_js.js","gitHead":"e2ddb6376fa84a095d04b42805a51822002f6842","_npmUser":{"name":"cathytan","email":"huijuant58@163.com"},"repository":{"url":"git+https://github.com/tronprotocol/redjubjub-js.git","type":"git"},"_npmVersion":"6.14.4","description":"A mostly-standalone implementation of the RedJubjub signature scheme and keys.","directories":{},"_nodeVersion":"12.16.3","collaborators":["Henry de Valence <hdevalence@hdevalence.ca>"],"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/redjubjub-js_1.1.0_1616483114993_0.2600000654658754","host":"s3://npm-registry-packages"}},"1.2.0":{"name":"redjubjub-js","version":"1.2.0","license":"MIT OR Apache-2.0","_id":"redjubjub-js@1.2.0","maintainers":[{"name":"cathytan","email":"huijuant58@163.com"},{"name":"xulei_tron","email":"gray.xu@tron.network"},{"name":"beita","email":"lxlsoft@126.com"},{"name":"hamlinli","email":"sclihuiming@163.com"}],"homepage":"https://github.com/tronprotocol/redjubjub-js#readme","bugs":{"url":"https://github.com/tronprotocol/redjubjub-js/issues"},"dist":{"shasum":"29d0c7cc02f12adac2adc3e43013f37fc47c1de5","tarball":"https://registry.npmjs.org/redjubjub-js/-/redjubjub-js-1.2.0.tgz","fileCount":23,"integrity":"sha512-zr8ePsXMuGElONxkbxRW6FVOPRZu8OoLVrA1kfPLoYk0oSEYyziRnQA7UHtpKy1LkAGKHH9Whi6gS5r5KVL0nA==","signatures":[{"sig":"MEQCICzxmSC4UBJisItfQHO8ek/89DqV6RYEmqxCiWsF2aDzAiB+9IdAccqPm+9fki7aNh182xigaNz/sCHqpYObeusNUw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":648589,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgYt5SCRA9TVsSAnZWagAAWjEP/iS97aD1Wajzkv/Br5gu\nXGZm8vYdGe5sdARak7m36Qig8NSd6hsbhjXu5Z3Fk30Y+Eh/9akLlA0z3ixn\neGKn6m24m0OZ/FhdhS6irZo+Q24JuWvOva+eYDzhPUdjRd+Dr6hUkLxhqap2\nhK3OKdWoxfGZq0xifpVvlVYci/QOi6BexzKT+TVW4KI343j76q0UdgYwJzng\njCD6IBL4m3LW1EZG4AriV9hnmXPurjiG2Uqg7YCkcjDJhd5YUfLywdKcojpr\nIx1I88uAWUV+FEOB0HP5so+8kJ45wLVCHgZnbinWTTDNKGAVDL7B9YHrTgkl\nfYow7u9QNhIS0nPRo1hbbZGDlqJl4UKdd9oNRXjJlUx3YdBEDNAFeBVEKn1K\n9C9uDfzinFnIyTZHlc3wiCqmWkmf0PapM1khnTYWTGhTuJF1Jp8xTZNxxEh/\nAMeu0Ti8Nftnu4HwpE2FEAkMGdOYOW1oqLszCOEnz3XwQoNxhPHKmEiVO57E\nudZg465TGPk0GZmh3DIv/L/G/EsPTed1IBy6yuy1YEtvMi4crm5+yE1PY+gv\nspdk5VqmmLP625LGbsO1E0+E/0fFH6+OuMPeoS+a13AUUCY6gLTOfvXiQali\nO16jvSuwJqGSwUoESEIZ05UE5mpj3lZ/xSHGR3urCnbKVDblXvK5kt5wb28q\nEwqe\r\n=uKhY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./redjubjub-node-js/redjubjub_js.js","types":"redjubjub_js.d.ts","browser":"./redjubjub-bundler-js/redjubjub_js.js","gitHead":"f8026ba256b17a88178d8ca7f3d00432a6f95c1a","_npmUser":{"name":"cathytan","email":"huijuant58@163.com"},"repository":{"url":"git+https://github.com/tronprotocol/redjubjub-js.git","type":"git"},"_npmVersion":"6.14.4","description":"A mostly-standalone implementation of the RedJubjub signature scheme and keys.","directories":{},"_nodeVersion":"12.16.3","collaborators":["Henry de Valence <hdevalence@hdevalence.ca>"],"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/redjubjub-js_1.2.0_1617092177605_0.8191637086258459","host":"s3://npm-registry-packages"}},"1.2.1":{"name":"redjubjub-js","version":"1.2.1","license":"MIT OR Apache-2.0","_id":"redjubjub-js@1.2.1","maintainers":[{"name":"cathytan","email":"huijuant58@163.com"},{"name":"xulei_tron","email":"gray.xu@tron.network"},{"name":"beita","email":"lxlsoft@126.com"},{"name":"hamlinli","email":"sclihuiming@163.com"}],"homepage":"https://github.com/tronprotocol/redjubjub-js#readme","bugs":{"url":"https://github.com/tronprotocol/redjubjub-js/issues"},"dist":{"shasum":"491586d29ec820f82d292f9f26317bcda106a922","tarball":"https://registry.npmjs.org/redjubjub-js/-/redjubjub-js-1.2.1.tgz","fileCount":24,"integrity":"sha512-C3wEvJyZlPKpaEpGEjSe5PBcKar879Hkd7o7h1km6mAzMaThIFLO24GH0GZEo87Uq5ZW+CJFKsbjsuSHp2FwAg==","signatures":[{"sig":"MEUCIAufeP98pwTxOQ5Mki2CHP48rNoEWyvKiz+MxseiZDcSAiEAomaUkSsK4GzuU2kxGXMQxaHpHgKAOyTBG+0WJvP8s2Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":657957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgYuUvCRA9TVsSAnZWagAAScAP/1pdNXNNC+zLWn+sNGvI\n7eQzbOzNlTMkSmHotmMHQF+uKc9CMZ8zeHL2cG1IWkorm5VJxyZzVZKe/6Wr\ni5QB/mR4ustfKgxyqMaBrYspM3rKbrTBzBwUT4vZCFi2EwU55J2pw7brbgzj\n6CqA8fhpGiRcgH1H1sa+tG1Cj/UaSO4/SnQ49uOTWIYoAKGF9vt7K5xoGSR+\n8e8/+sBCbKUyddClYXepOfr7nThNssxa015XMJ/6LMypAX2dZH/zldDmOZs1\nzLXz//UfKF9TFpdZ+PZ+CwPT/4LXRdU3X7bIe6dudzrtt29IFcct05PDulo1\nFFJR8XeSGUiy7luLpY5c7BKv+QhacG5VO+YkzAyf0AksEKjZLOmxSqrSBsr0\nHwrnatw9OOop1dmOFHJznrD7oKhNYW7V8nDU0OWHw4g4zIHdX/8jjHOgGQNQ\njUVCj7s/btR/h7+9ncBbzNijTYzdd9vPToRjOiogfA61tK0joOPMubxpUAau\nJvCM79vVHc60PtPKqIS68QQdprIItDMIY3jIMe0zOwfm0e7rZ2XZw7LF6Zdd\n+25RfPU/o+NgOfoIq5u6Vig40S4Q7AgkmRyXm7T6mK+ZDwrUBBNU80FbJZii\nVDOAX2X2WOOS0hGPiU/6flJDjSwd5MVVGHf0Wk6G2CsbJ9urIcJhw8iVuNUZ\ng8SU\r\n=gIsu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./redjubjub-node-js/redjubjub_js.js","types":"redjubjub_js.d.ts","browser":"./redjubjub-bundler-js/redjubjub_js.js","gitHead":"f8026ba256b17a88178d8ca7f3d00432a6f95c1a","_npmUser":{"name":"cathytan","email":"huijuant58@163.com"},"repository":{"url":"git+https://github.com/tronprotocol/redjubjub-js.git","type":"git"},"_npmVersion":"6.14.4","description":"A mostly-standalone implementation of the RedJubjub signature scheme and keys.","directories":{},"_nodeVersion":"12.16.3","collaborators":["Henry de Valence <hdevalence@hdevalence.ca>"],"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/redjubjub-js_1.2.1_1617093935016_0.18724157334248992","host":"s3://npm-registry-packages"}}},"time":{"created":"2020-11-18T06:26:33.216Z","modified":"2025-01-14T08:13:40.473Z","1.0.0":"2020-11-17T06:00:18.812Z","1.0.1":"2020-11-18T06:26:33.482Z","1.1.0":"2021-03-23T07:05:15.340Z","1.2.0":"2021-03-30T08:16:17.835Z","1.2.1":"2021-03-30T08:45:35.248Z"},"bugs":{"url":"https://github.com/tronprotocol/redjubjub-js/issues"},"license":"MIT OR Apache-2.0","homepage":"https://github.com/tronprotocol/redjubjub-js#readme","repository":{"url":"git+https://github.com/tronprotocol/redjubjub-js.git","type":"git"},"description":"A mostly-standalone implementation of the RedJubjub signature scheme and keys.","maintainers":[{"email":"tronweb3@tron.network","name":"troncore"},{"email":"dev@tronweb.network","name":"tronweb.dev"}],"readme":"A minimal RedJubjub implementation for keys and signature.\n# Build\n\n## Prerequisites \n1. Install rust\n\nRun the following code in your terminal to download Rustup and install Rust.\n```\n# curl https://sh.rustup.rs -sSf | sh\n```\nAfter installation, run:\n```\n# source $HOME/.cargo/env\n```\n\n2. Install wasm-pack\nTo build our library, we use `wasm-pack` to pack.\n\n```\n$ cargo install wasm-pack\n```\n\n3. Install Node with npm. In MacOS, you can run\n```\n# brew install node\n```\nIn other OS, you can do as Nodejs site.\n\n## Pack\n\n1. Obtain the source code of project.\n\n2. In the root directory of this project, run\n\n```\nwasm-pack build --target nodejs --out-dir redjubjub-js\n```\nIf you use this library in browser, run\n```\nwasm-pack build --target browser --out-dir redjubjub-js\n```\n`redjubjub-js` will be generated in root directory.\n\n3. In `redjubjub-js` directory, run\n\n```\n# npm pack\n```\n`redjubjub-js-1.0.0.tgz` will be generated in current directory. \n\nYou can install `redjubjub-js-1.0.0.tgz` with npm.\n\n# How to use\n\n## Generate keys\n\n### generate_keys\n\nThis method is used for geneating keys and payment address randomly.\n\n```console\n> var m = require('redjubjub-js')\n> m.generate_keys()\n{ sk:\n   'c8a6bd72038d62794c551cb4c38b5d586c7df975fb7df819f9adbd571cc5228f',\n  ask:\n   '58998c6373aa1c2ee724ab16d7a34df2d39bc9c07d68b060b1fffe119167ab00',\n  nsk:\n   'b3789542ef606d435e654962abc320fa4aad0a424c45b918187ca33052772403',\n  ovk:\n   '398d3d1889d2f2020ea4c3e76b2ab8711a301a57af1cd09768599d8368cfcaa6',\n  ak:\n   'd77a6d56ded895d81f7bed8919081124a7e2e28728f4459ba64cf568f54524b7',\n  nk:\n   '723951fd2d5a29a90d46137d0a5d502fb03524d5ceceefdc97797bbbb8df52eb',\n  ivk:\n   'd1cc0bf81ead15c55c5cfe4b0b8ec4a735889c11b7d4d281734b42498fa9ce05',\n  d: 'c64c97cdcf1e88ab4e5040',\n  pk_d:\n   'baa02b718197e56f70625452cc9f05c4325b5ba59577d5b8ccf4afc8907a77b2',\n  payment_address:\n   'ztron1cexf0nw0r6y2knjsgza2q2m3sxt72mmsvf299nylqhzryk6m5k2h04dcen62ljys0fmmyq2x49f' }\n\n```\n\n### generate_keys_by_sk\n\nGenerate keys and payment address by `sk`, and `d` is generated randomly.\n\n```console\n> m.generate_keys_by_sk('b94113ad57a8808e67edc05e8d3a5bc5aaccf837b83bfa7602a30a14e50c2f95')\n{ sk:\n   'b94113ad57a8808e67edc05e8d3a5bc5aaccf837b83bfa7602a30a14e50c2f95',\n  ask:\n   '38c7850745daba75720261b2543cd2d1f316c1f5d4e712c21d4c893d67c38408',\n  nsk:\n   '399ff8d7d660ca4b8cdf3f2e0ce839f35f6fde80a3d094637699b478405e7507',\n  ovk:\n   '3a82fe7e4487dd839429874befa09a9f78741ba0de83d08950f776708c9e74e4',\n  ak:\n   'db0cc9cc4deffd21c4025ae78b55444fa040f244ff7097b35cad4ec96631bb9b',\n  nk:\n   '532323a356f2ffecf7abd01ad6860f0eea4bf9e7516dd355d0963874e45b7233',\n  ivk:\n   '48e83b9b5210a8f1a44ad0b5c87203a0a358c34f2511d01e4db743710cebda07',\n  d: 'e8f0394a1f6e823901b40a',\n  pk_d:\n   '017d3fb3a63e03079586dcf24a260bd5c02e18265947ffdf4935bd34a8076a53',\n  payment_address:\n   'ztron1arcrjjsld6prjqd5pgqh60an5clqxpu4smw0yj3xp02uqtscyev50l7lfy6m6d9gqa49xrmly5e' }\n\n```\n\n### generate_keys_by_sk_d\n\nGenerate keys and payment address by `sk`, and `d`.\n\n```console\n> m.generate_keys_by_sk_d('b94113ad57a8808e67edc05e8d3a5bc5aaccf837b83bfa7602a30a14e50c2f95','e8f0394a1f6e823901b40a')\n{ sk:\n   'b94113ad57a8808e67edc05e8d3a5bc5aaccf837b83bfa7602a30a14e50c2f95',\n  ask:\n   '38c7850745daba75720261b2543cd2d1f316c1f5d4e712c21d4c893d67c38408',\n  nsk:\n   '399ff8d7d660ca4b8cdf3f2e0ce839f35f6fde80a3d094637699b478405e7507',\n  ovk:\n   '3a82fe7e4487dd839429874befa09a9f78741ba0de83d08950f776708c9e74e4',\n  ak:\n   'db0cc9cc4deffd21c4025ae78b55444fa040f244ff7097b35cad4ec96631bb9b',\n  nk:\n   '532323a356f2ffecf7abd01ad6860f0eea4bf9e7516dd355d0963874e45b7233',\n  ivk:\n   '48e83b9b5210a8f1a44ad0b5c87203a0a358c34f2511d01e4db743710cebda07',\n  d: 'e8f0394a1f6e823901b40a',\n  pk_d:\n   '017d3fb3a63e03079586dcf24a260bd5c02e18265947ffdf4935bd34a8076a53',\n  payment_address:\n   'ztron1arcrjjsld6prjqd5pgqh60an5clqxpu4smw0yj3xp02uqtscyev50l7lfy6m6d9gqa49xrmly5e' }\n\n```\n\n\n## Signature\nWe also provide methods to sign and verify signature for spend authority signature.\n\n### spend authority signature\n\n#### generate_rk_by_ask\n\nGenerate public key `rk` by `ask` and  `alpha`.\n\n```JavaScript\nfunction generate_rk_by_ask(ask, alpha)\n```\n\n```console\n> m.generate_rk_by_ask('e3ebcba1531f6d9158d9c162660c5d7c04dadf77d85d7436a9c98b291ff69a09','2608999c3a97d005a879ecdaa16fd29ae434fb67b177c5e875b0c829e6a1db04')\n'10c702d6dff1509502ee5acc0b01d4b4531b2ff53b0dd54488aea6031b5e6d16'\n``` \n\n#### generate_spend_auth_sig\n\nGenerate spend authority signature.\n\n```JavaScript\nfunction generate_spend_auth_sig(ask, alpha, message_hash)\n```\n\n```console\n> m.generate_spend_auth_sig('e3ebcba1531f6d9158d9c162660c5d7c04dadf77d85d7436a9c98b291ff69a09','2608999c3a97d005a879ecdaa16fd29ae434fb67b177c5e875b0c829e6a1db04','3b78fee6e956f915ffe082284c5f18640edca9c57a5f227e5f7d7eb65ad61502')\n'40386915d075844a6ea1bd80fd0b6c74bb4556ac0273cb2dd47b7b81eacfb83f3a69ac95cf63b98ad7e3120754cb1033656ce0b0eae9a1f0ace829c14005610a'\n```\n\n#### verify_spend_auth_sig\n\nVerify spend authority signature.\n\n```JavaScript\nfunction verify_spend_auth_sig(rk, message_hash, signature)\n```\n\n```console\n> m.verify_spend_auth_sig('10c702d6dff1509502ee5acc0b01d4b4531b2ff53b0dd54488aea6031b5e6d16', '3b78fee6e956f915ffe082284c5f18640edca9c57a5f227e5f7d7eb65ad61502','40386915d075844a6ea1bd80fd0b6c74bb4556ac0273cb2dd47b7b81eacfb83f3a69ac95cf63b98ad7e3120754cb1033656ce0b0eae9a1f0ace829c14005610a')\ntrue\n```\n\n[comment]: <> (### binding signature)\n\n[comment]: <> (#### generate_pk_by_sk)\n\n[comment]: <> (Generate public key `pk` from private key `sk`.)\n\n[comment]: <> (```JavaScript)\n\n[comment]: <> (function  generate_pk_by_sk&#40;sk&#41;)\n\n[comment]: <> (```)\n\n[comment]: <> (```console)\n\n[comment]: <> (> m.generate_pk_by_sk&#40;'e3ebcba1531f6d9158d9c162660c5d7c04dadf77d85d7436a9c98b291ff69a09'&#41;)\n\n[comment]: <> ('61a7134af4a6194592735dcda46c3119bdf547bc1e58bd60852cc88ba75f44a3')\n\n[comment]: <> (```)\n\n[comment]: <> (### generate_binding_sig)\n\n[comment]: <> (Generate binding signature)\n\n[comment]: <> (```JavaScript)\n\n[comment]: <> (function  generate_binding_sig&#40;sk, message_hash&#41;)\n\n[comment]: <> (```)\n\n[comment]: <> (```console)\n\n[comment]: <> (> m.generate_binding_sig&#40;'e3ebcba1531f6d9158d9c162660c5d7c04dadf77d85d7436a9c98b291ff69a09','3b78fee6e956f915ffe082284c5f18640edca9c57a5f227e5f7d7eb65ad61502'&#41;)\n\n[comment]: <> ('fea301d1f8c0ca3032cdfad36e64aaa27631419fdc84453d994beaa287408adf78e0478b8293eda3b3ba76f5c7efa302116fc577d18f354a5ff42ed25a655001')\n\n[comment]: <> (```)\n\n[comment]: <> (#### verify_binding_sig)\n\n[comment]: <> (```JavaScript)\n\n[comment]: <> (function  verify_binding_sig&#40;pk, message_hash, signature&#41;)\n\n[comment]: <> (```)\n\n[comment]: <> (```console)\n\n[comment]: <> (> m.verify_binding_sig&#40;'61a7134af4a6194592735dcda46c3119bdf547bc1e58bd60852cc88ba75f44a3','3b78fee6e956f915ffe082284c5f18640edca9c57a5f227e5f7d7eb65ad61502','fea301d1f8c0ca3032cdfad36e64aaa27631419fdc84453d994beaa287408adf78e0478b8293eda3b3ba76f5c7efa302116fc577d18f354a5ff42ed25a655001'&#41;)\n\n[comment]: <> (true)\n\n[comment]: <> (```)\n\n","readmeFilename":"README.md"}