{"_id":"@electron-labs/keccak-circom","_rev":"2-1a8bbd36e8a530e139304fb0d05e43cf","name":"@electron-labs/keccak-circom","dist-tags":{"latest":"0.0.3"},"versions":{"0.0.1":{"name":"@electron-labs/keccak-circom","version":"0.0.1","description":"Keccak256 hash ethereum compatible implementation in Circom","main":"index.js","directories":{"test":"test"},"scripts":{"test":"mocha --max-old-space-size=4000","clean":"rm -rf node_modules && make clean && npm i","publish-npm":"npm publish --access public --ignore-scripts --@OWNER:registry='https://registry.npmjs.org'","publish-github":"npm publish --access public --ignore-scripts --@electron-labs:registry='https://npm.pkg.github.com'"},"repository":{"type":"git","url":"git+https://github.com/Electron-Labs/keccak-circom.git"},"author":{"name":"Vocdoni, rahulghangas"},"license":"GPL-3.0","devDependencies":{"circomlib":"^2.0.1","chai":"^4.3.4","circom_tester":"0.0.9","mocha":"^9.1.2","keccak256":"1.0.3"},"gitHead":"5d4a8a63e4e3209426dadfb8e6238ab77450ac9e","bugs":{"url":"https://github.com/Electron-Labs/keccak-circom/issues"},"homepage":"https://github.com/Electron-Labs/keccak-circom#readme","_id":"@electron-labs/keccak-circom@0.0.1","_nodeVersion":"16.13.1","_npmVersion":"8.1.2","dist":{"integrity":"sha512-nVUIaVgRfeGuU4NdWJuT9gut/SEZtPpvhB10n0P3T8KuwAh9cm5hHP7OwKdVGf4yIHsrl/ZtXrEpwRigiCpBEA==","shasum":"f9160724bd09f2bfb6c8f29c167be160e89fbea6","tarball":"https://registry.npmjs.org/@electron-labs/keccak-circom/-/keccak-circom-0.0.1.tgz","fileCount":7,"unpackedSize":64078,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCVDJma8hi51ZS9Sfdp3OJdVf2TVcbK/qFc/+xcpTXxrgIhAMFy4+BwLcaAh9OgmWP2k2tkSPqPA8j5losQcREIsRxm"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiTrpPACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoMoQ/+Pd+3wJZ/8B4h1v/lr9sd6l8U4mxx0LSkVyPLg4gCIYvbbMYf\r\ne+RtvaCk3q7UemJ1eGsAS6S8xvsuz49RL1T7cFmHp5D8iaGT8zNVUKBcLCaB\r\nRidkxXXphMbwTnVQDR7615JtEyb6p/D71Pl+s2TP3Zg5X1AVt1eP/VclK6tu\r\njdedGHbj+7gWrnZt8ZAfJ8U4Tn3vex+14qdD1Jkd08u5H8m3ufw28Hm2WWaQ\r\nJV9B3s3VYVSiTKOLUdoBJagwNnOBHbWy23rAHYm/MTkaT/vNDhCwaMkmL5/o\r\n4UFKJpEvscMspstPhwDmdkS4I/mzFUGUhKmtGaLGIw/FcMxGj1p7xCXefp7m\r\nggEsemrQZQbx9cC/OLlthYi0l+nzyhs/KJkdiWp1YQ+J2cEgFR/hNAMiAso9\r\nvob5lMALMS0ekiBYpgdG+Pa6xafbMvLQn2z/hGyMvoB3V1S9ijPRL1zKV3Ei\r\n7G6r5r1x9gogvjHOw4UdBOOXLP8THxPaZxeTsoILE8bWet7sATCrxp65OEZj\r\ncXTe98qGz0YMEy/LHU0GTq/2R7SICG9fnhJPtMfm53XVUjrgSTv61jTFl1mI\r\nnDt4hkPVJXr54rm7VnBEJTw1uvXdRdPfA+i3iC981s4oxYCQgm/JNnjWcwIX\r\nPJ1OWTIVsbbM7OERFgvHZXL7uQBaeDp+0+Q=\r\n=8MWP\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"electron-labs","email":"rahul@atomlabs.one"},"maintainers":[{"name":"electron-labs","email":"rahul@atomlabs.one"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/keccak-circom_0.0.1_1649326671647_0.007029827980636227"},"_hasShrinkwrap":false},"0.0.2":{"name":"@electron-labs/keccak-circom","version":"0.0.2","description":"Keccak256 hash ethereum compatible implementation in Circom","main":"index.js","directories":{"test":"test"},"scripts":{"test":"mocha --max-old-space-size=4000","clean":"rm -rf node_modules && make clean && npm i","publish-npm":"npm publish --access public --ignore-scripts --@OWNER:registry='https://registry.npmjs.org'","publish-github":"npm publish --access public --ignore-scripts --@electron-labs:registry='https://npm.pkg.github.com'"},"repository":{"type":"git","url":"git+https://github.com/Electron-Labs/keccak256-circom.git"},"author":{"name":"Vocdoni, rahulghangas"},"license":"GPL-3.0","devDependencies":{"circomlib":"^2.0.1","chai":"^4.3.4","circom_tester":"0.0.9","mocha":"^9.1.2","keccak256":"1.0.3"},"gitHead":"ee76d5f4cbcea7011aff76e90905601f3c234baf","bugs":{"url":"https://github.com/Electron-Labs/keccak256-circom/issues"},"homepage":"https://github.com/Electron-Labs/keccak256-circom#readme","_id":"@electron-labs/keccak-circom@0.0.2","_nodeVersion":"16.13.1","_npmVersion":"8.1.2","dist":{"integrity":"sha512-+exCOausekfBJZMzCh6SkZDKk1tu79N5TjLlJHqiuoM/pWq2QFcQt1KGWqJ9UzosGq/Ey92ShQsKKloZFV+/2Q==","shasum":"59e62c63cdeb515e4c37eba4d35e541f93804b4d","tarball":"https://registry.npmjs.org/@electron-labs/keccak-circom/-/keccak-circom-0.0.2.tgz","fileCount":7,"unpackedSize":64081,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDWRhYjN91UJM9Oisr7MJF1XVn9sIx1T1emkQpYbMMrYgIgethX9++QACgqnpc2OJJXp6oBcgaWGYNu2wVP6M8bDOc="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiTr6eACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmoq4Q//Tx+ri2PViWUlbMAvx0umk//9lDYyzxEkkQZAr/bXOfKHIV9J\r\ntiordJvB5XBlL9aB0ZoKA87OLE1n8HMTncpwr9H9T5Te5aUIQioW0cRU+bY1\r\njUsnnBnz620cIDj2UWo5q5Qw+9rcAkypr4oLloMbdRxxlqJaDtYqbROatIfR\r\nkKnxGmhH8KNYlfqCUWCAbiPgwybjvphz8o6nj8Hd+9LPWL13v1CmuzsV18u4\r\nQihVvYd+fYbZJW0mvynJSENYy0LMDK/FLtIqr/171FjIVOAnjT/FHX7ixNYf\r\n0SDLmGZH/RgIMEHLjE0K+rOugeTTCsAs44/NI+dLjMM2HT5J66r3mAu+13u/\r\n9X1kz0sFCsYc6Fvf1tl9V/3eO9fbgS9/pIYgvIk/5DS5Bu8PMp7c0QNP0fp9\r\njUdlovq7zIGXudfFdi0kenj61nhSGtb6DKCAgA2bxJKC/vT7qEilS224xFYp\r\nfeGSIV/lUfc5GAshCGEPV/axpwKZ2/SJ+aqWUAqZLjStdk4ZvHLZ7OVGRRp9\r\neLHoGjRTd8jyqnIN+PfwRWsKc71epYzvT0TJ3BQfp1Z/XyxFRWFAWtRUCbrb\r\nqrBOjXJ5IYhvheniE0gUjtt1KFJ583CBKs9IqbK2wmTVZM5obCgzCz+qaOV7\r\nWUhOGnvePQYYroQCZSriPkDAgoUMLEIihwI=\r\n=cXCM\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"electron-labs","email":"rahul@atomlabs.one"},"maintainers":[{"name":"electron-labs","email":"rahul@atomlabs.one"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/keccak-circom_0.0.2_1649327774617_0.6450765214611756"},"_hasShrinkwrap":false},"0.0.3":{"name":"@electron-labs/keccak-circom","version":"0.0.3","description":"Keccak256 hash ethereum compatible implementation in Circom","main":"index.js","directories":{"test":"test"},"scripts":{"test":"mocha --max-old-space-size=4000","clean":"rm -rf node_modules && make clean && npm i","publish-npm":"npm publish --access public --ignore-scripts --@OWNER:registry='https://registry.npmjs.org'","publish-github":"npm publish --access public --ignore-scripts --@electron-labs:registry='https://npm.pkg.github.com'"},"repository":{"type":"git","url":"git+https://github.com/Electron-Labs/keccak-circom.git"},"author":{"name":"Vocdoni, rahulghangas"},"license":"GPL-3.0","devDependencies":{"circomlib":"^2.0.1","chai":"^4.3.4","circom_tester":"0.0.9","mocha":"^9.1.2","keccak256":"1.0.3"},"gitHead":"5f65355a7b520f18caa27e7aaee73b0f66a25d3e","bugs":{"url":"https://github.com/Electron-Labs/keccak-circom/issues"},"homepage":"https://github.com/Electron-Labs/keccak-circom#readme","_id":"@electron-labs/keccak-circom@0.0.3","_nodeVersion":"16.13.1","_npmVersion":"8.1.2","dist":{"integrity":"sha512-rEG7jhmcpkdJN2LWE5a3DW557ma+R1Gv3i9uzeeYDYk/nUuC0UXxCXZy4TPheJ978ni7XyqIWX3R++WbZKbDwA==","shasum":"5e7d499759c2599485561d2e27cfec1863b36ff8","tarball":"https://registry.npmjs.org/@electron-labs/keccak-circom/-/keccak-circom-0.0.3.tgz","fileCount":7,"unpackedSize":64078,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBEz+rL2sd+FZmrIegFK5W1y1tgnQXwQXft5Hz9ANeQMAiBlUU11Qs/4uEe1zGPvnW909wF7L/Gz0JGgzdS6yZGqzg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiVD2qACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrPpQ//Rd8kf0f8jGJScHGW63xYkDTeIx30NqFxRZCMKPHBLm9UdmbC\r\nso8HpvL19DulJNS+bSXw4kcNBDYxG3/YqUVcmPvw6gcJ/YleTz8qdrnlOPkT\r\nT5MZvxWkIkUmDS71ck36CDlNoPKq/Nradsxq9+Bw4IB2rjnvd+VlNI+beEWI\r\ngpsWK9y9SXa8+64JLdZa5HL3W5/MaE7vY4NAH2QVDQDJK68KvjIK8O2TCmhd\r\nMg9pjWL9E7iTwa5b+0Ia7xjaIb+aRK++d2O8fb5QmgcEX9Dr7HGoCT0PxOxp\r\ncXQI0FYU8oumXEKD+Tf3DyTczZ8c3qaVsEhjWx6HuZOvuDQDp4afvP+b0XmO\r\n98Q4AwniTwWXE9ChW7Ic+yQnbftzkZrr0KwVaSR9vVRJ7ZkmC5v7d4Q0k/a/\r\nZBssbPPV3HPLidL1DKch2iL/qVSlQhNcQHbm7l4nS54IRlD0iPfx47YJHetD\r\nQ139PVkIJ4/fqsMEVrji+KcSSk0b4FU1pSMBsGcxCXp6NjdFYeXWhUIIcA8e\r\nr/X2XIzrxhqGUhilzWXY9PGZugG4xTUSewqto6v8P8Q4vC8GDjyYgtFyRm3N\r\npDA8UmGpD/CQ6owuhfyPVZYtlS5ODssG7vSDY8mlyCsmFNGuN6DIq3h+SQ8a\r\nzx116ZABWOhImLvgjWlPas9XV+QVA2LlFGo=\r\n=fEUe\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"electron-labs","email":"rahul@atomlabs.one"},"maintainers":[{"name":"electron-labs","email":"rahul@atomlabs.one"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/keccak-circom_0.0.3_1649687977907_0.09394989592552805"},"_hasShrinkwrap":false}},"time":{"created":"2022-04-07T10:17:51.599Z","0.0.1":"2022-04-07T10:17:51.825Z","modified":"2022-04-11T14:39:38.234Z","0.0.2":"2022-04-07T10:36:14.744Z","0.0.3":"2022-04-11T14:39:38.178Z"},"maintainers":[{"name":"electron-labs","email":"rahul@atomlabs.one"}],"description":"Keccak256 hash ethereum compatible implementation in Circom","homepage":"https://github.com/Electron-Labs/keccak-circom#readme","repository":{"type":"git","url":"git+https://github.com/Electron-Labs/keccak-circom.git"},"author":{"name":"Vocdoni, rahulghangas"},"bugs":{"url":"https://github.com/Electron-Labs/keccak-circom/issues"},"license":"GPL-3.0","readme":"# keccak256-circom [![Test](https://github.com/vocdoni/keccak256-circom/workflows/Test/badge.svg)](https://github.com/vocdoni/keccak256-circom/actions?query=workflow%3ATest)\n\nKeccak256 hash function (ethereum version) implemented in [circom](https://github.com/iden3/circom). Spec: https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.202.pdf\n\n**Warning**: WIP, this is an experimental repo.\n\n## Status\nInitial version works, compatible with Ethereum version of Keccak256.\n\n## Usage\n```\n// make sure to include from your copy of circomlib\ninclude \"circomlib/circuits/gates.circom\";\ninclude \"circomlib/circuits/sha256/xor3.circom\";\ninclude \"circomlib/circuits/sha256/shift.circom\";\n\nvar INPUT_BITS = 1024; // number of bits of the input message as a multiple of 8 (one byte)\ncomponent keccak = Keccak(INPUT_BITS, 256);\nfor (var i = 0; i < INPUT_BITS; i++) {\n    keccak.in[i] <== msg[i];\n}\nfor (var i = 0; i < 512; i++) {\n    out[i] <== keccak.out[i];\n}\n```\n\nIt needs around `150848` (`151k`) constraints. \n> For context: [Rapidsnark](https://github.com/iden3/rapidsnark) proof generation time:\n> - 1.1M constraints -> 7 seconds (8 CPU)\n> - 128M constraints -> <2min (64 CPU)\n","readmeFilename":"README.md"}