{"_id":"sodium-universal","_rev":"23-7ff554e44caee190df7500a5fb2d5469","name":"sodium-universal","dist-tags":{"latest":"5.0.1"},"versions":{"0.0.0":{"name":"sodium-universal","version":"0.0.0","keywords":["libsodium","sodium","sodium-native","sodium-javascript","browserify"],"author":{"name":"Emil Bay","email":"github@tixz.dk"},"license":"MIT","_id":"sodium-universal@0.0.0","maintainers":[{"name":"emilbayes","email":"github@tixz.dk"}],"homepage":"https://github.com/sodium-friends/sodium-universal#readme","bugs":{"url":"https://github.com/sodium-friends/sodium-universal/issues"},"dist":{"shasum":"b6880d76ef88298a76d6dfb2e6b27d25e01c5c34","tarball":"https://registry.npmjs.org/sodium-universal/-/sodium-universal-0.0.0.tgz","integrity":"sha512-pWI7gXLd8wJpgHwpn+O3JfoSGTdyW+Fybm2DqwDZHJZyXhmyBrsgbCXrcEtdX2+zyi76e3WQHh7AjZR9HPAj1w==","signatures":[{"sig":"MEQCIHkX24fBuOGPLZtHodJ515jeGDWi/+06ihXYvX9ds4t2AiBZcrUmVD2f9MpLI6TXiC9ni7MpxoQRHii+YeVAR9tSrA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"b6880d76ef88298a76d6dfb2e6b27d25e01c5c34","browser":{"sodium-native":"sodium-javascript"},"gitHead":"43a2e8004170a5a3dffa2c48b8d9e1d6435e08e6","scripts":{},"_npmUser":{"name":"emilbayes","email":"github@tixz.dk"},"repository":{"url":"git+https://github.com/sodium-friends/sodium-universal.git","type":"git"},"_npmVersion":"3.10.10","description":"Universal wrapper for sodium-javascript and sodium-native working in Node.js and the Browser","directories":{},"_nodeVersion":"6.9.5","dependencies":{"sodium-native":"^1.8.0","sodium-javascript":"0.0.1"},"_npmOperationalInternal":{"tmp":"tmp/sodium-universal-0.0.0.tgz_1491481502889_0.905596302356571","host":"packages-18-east.internal.npmjs.com"}},"1.0.0":{"name":"sodium-universal","version":"1.0.0","keywords":["libsodium","sodium","sodium-native","sodium-javascript","browserify"],"author":{"name":"Emil Bay","email":"github@tixz.dk"},"license":"MIT","_id":"sodium-universal@1.0.0","maintainers":[{"name":"emilbayes","email":"github@tixz.dk"},{"name":"mafintosh","email":"mathiasbuus@gmail.com"}],"homepage":"https://github.com/sodium-friends/sodium-universal#readme","bugs":{"url":"https://github.com/sodium-friends/sodium-universal/issues"},"dist":{"shasum":"08c7414ee9615336b522609a5c04a09ee0e3fffc","tarball":"https://registry.npmjs.org/sodium-universal/-/sodium-universal-1.0.0.tgz","integrity":"sha512-/eGySFGZbfOKd98VVYSqXhRxTedxyZ40YW3+Qoqbvco/iCBOrXZA2SRemOxt/2JlpYTqrUu9UsFxcd91Sd0J0w==","signatures":[{"sig":"MEYCIQC8G3hindwKnnlSHN/CaBKUHK4VhAoo9Uani5AX6BUjcAIhALm625F/NHDOKkdbQMNG24BIyARa58lSm4Le2Z+RAf4C","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"08c7414ee9615336b522609a5c04a09ee0e3fffc","browser":{"sodium-native":"sodium-javascript"},"gitHead":"a7372680e452facc89dd34b7be2381aced40fe73","scripts":{},"_npmUser":{"name":"emilbayes","email":"github@tixz.dk"},"repository":{"url":"git+https://github.com/sodium-friends/sodium-universal.git","type":"git"},"_npmVersion":"3.10.10","description":"Universal wrapper for sodium-javascript and sodium-native working in Node.js and the Browser","directories":{},"_nodeVersion":"6.9.5","dependencies":{"sodium-native":"^1.8.0","sodium-javascript":"0.0.1"},"_npmOperationalInternal":{"tmp":"tmp/sodium-universal-1.0.0.tgz_1491486168504_0.6832927912473679","host":"packages-18-east.internal.npmjs.com"}},"1.1.0":{"name":"sodium-universal","version":"1.1.0","keywords":["libsodium","sodium","sodium-native","sodium-javascript","browserify"],"author":{"name":"Emil Bay","email":"github@tixz.dk"},"license":"MIT","_id":"sodium-universal@1.1.0","maintainers":[{"name":"mafintosh","email":"mathiasbuus@gmail.com"},{"name":"emilbayes","email":"github@tixz.dk"}],"homepage":"https://github.com/sodium-friends/sodium-universal#readme","bugs":{"url":"https://github.com/sodium-friends/sodium-universal/issues"},"dist":{"shasum":"f825494b75345dcdfb6cbbec1d3e13ffc957af23","tarball":"https://registry.npmjs.org/sodium-universal/-/sodium-universal-1.1.0.tgz","integrity":"sha512-ncZl8zpbUs/oJkkZMhjq8exLc0+WHkIk0spauS3hl4Lt1yDhcpQJOLCIvc/jlotPj5ob+yIRqZNhzqLZ3RbCLA==","signatures":[{"sig":"MEQCIHJ0fgMmD+jkn2KOzGo2pRK++ydCL5rSMEsJluwEH106AiBAffPplgfmL1j6RXRDBxNANaO4HHEMPq3BlZEFb/f5uQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"f825494b75345dcdfb6cbbec1d3e13ffc957af23","browser":{"sodium-native":"sodium-javascript"},"gitHead":"5fddc042f0a28e99c57e4558939a43024d33d10b","scripts":{},"_npmUser":{"name":"emilbayes","email":"github@tixz.dk"},"repository":{"url":"git+https://github.com/sodium-friends/sodium-universal.git","type":"git"},"_npmVersion":"3.10.10","description":"Universal wrapper for sodium-javascript and sodium-native working in Node.js and the Browser","directories":{},"_nodeVersion":"6.9.5","dependencies":{"sodium-native":"^1.8.0","sodium-javascript":"~0.2.0"},"_npmOperationalInternal":{"tmp":"tmp/sodium-universal-1.1.0.tgz_1496912468422_0.00932711292989552","host":"s3://npm-registry-packages"}},"1.2.0":{"name":"sodium-universal","version":"1.2.0","keywords":["libsodium","sodium","sodium-native","sodium-javascript","browserify"],"author":{"name":"Emil Bay","email":"github@tixz.dk"},"license":"MIT","_id":"sodium-universal@1.2.0","maintainers":[{"name":"mafintosh","email":"mathiasbuus@gmail.com"},{"name":"emilbayes","email":"github@tixz.dk"}],"homepage":"https://github.com/sodium-friends/sodium-universal#readme","bugs":{"url":"https://github.com/sodium-friends/sodium-universal/issues"},"dist":{"shasum":"8025ba18aee0d229aea191924ee121c82d3fce65","tarball":"https://registry.npmjs.org/sodium-universal/-/sodium-universal-1.2.0.tgz","integrity":"sha512-v6nxuxtjJEaofjkYF5O2AZu2wikrGEX/hWAERUen5auZdR9QsTlEgsuypQDwkVe/R4uhT6hNm0yZDwXUOiVKBw==","signatures":[{"sig":"MEYCIQCP63dngrN0WLNN/2AJr9QxSs9RG2ifYI3Fu/GUasfkAgIhAKNJRJjktg+Mr2lxHqdkVBaSt8qgYtOf9/C9jdMHWqHx","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","browser":{"sodium-native":"sodium-javascript"},"gitHead":"055eb0642859150fed3236f8d23742e27a22e892","scripts":{},"_npmUser":{"name":"mafintosh","email":"mathiasbuus@gmail.com"},"repository":{"url":"git+https://github.com/sodium-friends/sodium-universal.git","type":"git"},"_npmVersion":"5.0.3","description":"Universal wrapper for sodium-javascript and sodium-native working in Node.js and the Browser","directories":{},"_nodeVersion":"8.1.0","dependencies":{"sodium-native":"^1.8.0","sodium-javascript":"~0.3.0"},"_npmOperationalInternal":{"tmp":"tmp/sodium-universal-1.2.0.tgz_1497255654640_0.9548985774163157","host":"s3://npm-registry-packages"}},"1.3.0":{"name":"sodium-universal","version":"1.3.0","keywords":["libsodium","sodium","sodium-native","sodium-javascript","browserify"],"author":{"name":"Emil Bay","email":"github@tixz.dk"},"license":"MIT","_id":"sodium-universal@1.3.0","maintainers":[{"name":"mafintosh","email":"mathiasbuus@gmail.com"},{"name":"emilbayes","email":"github@tixz.dk"}],"homepage":"https://github.com/sodium-friends/sodium-universal#readme","bugs":{"url":"https://github.com/sodium-friends/sodium-universal/issues"},"dist":{"shasum":"d335a02882e14458e2a731eec7daf486987e4783","tarball":"https://registry.npmjs.org/sodium-universal/-/sodium-universal-1.3.0.tgz","integrity":"sha512-2tAViTkYTC8rzjdNZ4ZOsgyR3lCQGOMmTicMmvsjDDhW35Gt8pk84pZ9KPQj0y/5zvthYBThsow8Jp1JhEIVyQ==","signatures":[{"sig":"MEYCIQD9caoyGfwczgmcDeGHlgCwlGfzdFaG6ubF19I2zLXYxAIhAPMzkdiIJPZ1jTCRP+3IUMyWyDSsmpoiE83pVhKAj1i0","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","browser":{"./index.js":"./browser.js"},"gitHead":"4a51d028823243c6384c6d2b62c2900b8b07f0b4","scripts":{},"_npmUser":{"name":"mafintosh","email":"mathiasbuus@gmail.com"},"repository":{"url":"git+https://github.com/sodium-friends/sodium-universal.git","type":"git"},"_npmVersion":"5.0.3","description":"Universal wrapper for sodium-javascript and sodium-native working in Node.js and the Browser","directories":{},"_nodeVersion":"8.1.1","dependencies":{"sodium-native":"^1.8.0","sodium-javascript":"~0.3.0"},"optionalDependencies":{"sodium-native":"^1.8.0"},"_npmOperationalInternal":{"tmp":"tmp/sodium-universal-1.3.0.tgz_1498036067462_0.030267110792919993","host":"s3://npm-registry-packages"}},"1.4.0":{"name":"sodium-universal","version":"1.4.0","keywords":["libsodium","sodium","sodium-native","sodium-javascript","browserify"],"author":{"name":"Emil Bay","email":"github@tixz.dk"},"license":"MIT","_id":"sodium-universal@1.4.0","maintainers":[{"name":"mafintosh","email":"mathiasbuus@gmail.com"},{"name":"emilbayes","email":"github@tixz.dk"}],"homepage":"https://github.com/sodium-friends/sodium-universal#readme","bugs":{"url":"https://github.com/sodium-friends/sodium-universal/issues"},"dist":{"shasum":"af6759885004f3aabb70ccd809cf83a9296817a3","tarball":"https://registry.npmjs.org/sodium-universal/-/sodium-universal-1.4.0.tgz","integrity":"sha512-hMQ4uoqoyUES9Q8CAeUFYcc2ODq72cq+riSTO+XsuZZjYDTvKlvFIK+v/wMTbv5woa/omMwFvsxib5gVz0qEXg==","signatures":[{"sig":"MEYCIQDTHmOfK4SgJSXpvDvLvG9JpinHZPJElPp5GQWzDnfzugIhAObPb1dFCZdVldTyAk/UkRDbnFQuQZMFGi5+dP0zynzd","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","browser":"browser.js","gitHead":"ee5653f284e4dced8a795dd76f286e5717bb4fb4","scripts":{},"_npmUser":{"name":"mafintosh","email":"mathiasbuus@gmail.com"},"repository":{"url":"git+https://github.com/sodium-friends/sodium-universal.git","type":"git"},"_npmVersion":"5.0.3","description":"Universal wrapper for sodium-javascript and sodium-native working in Node.js and the Browser","directories":{},"_nodeVersion":"8.1.1","dependencies":{"sodium-native":"^1.8.0","sodium-javascript":"~0.5.0"},"optionalDependencies":{"sodium-native":"^1.8.0"},"_npmOperationalInternal":{"tmp":"tmp/sodium-universal-1.4.0.tgz_1498641641861_0.034383745631203055","host":"s3://npm-registry-packages"}},"2.0.0":{"name":"sodium-universal","version":"2.0.0","keywords":["libsodium","sodium","sodium-native","sodium-javascript","browserify"],"author":{"name":"Emil Bay","email":"github@tixz.dk"},"license":"MIT","_id":"sodium-universal@2.0.0","maintainers":[{"name":"mafintosh","email":"mathiasbuus@gmail.com"},{"name":"emilbayes","email":"github@tixz.dk"}],"homepage":"https://github.com/sodium-friends/sodium-universal#readme","bugs":{"url":"https://github.com/sodium-friends/sodium-universal/issues"},"dist":{"shasum":"cfb4e1a9c4afece4382b2c23c53439b443bd2af3","tarball":"https://registry.npmjs.org/sodium-universal/-/sodium-universal-2.0.0.tgz","integrity":"sha512-csdVyakzHJRyCevY4aZC2Eacda8paf+4nmRGF2N7KxCLKY2Ajn72JsExaQlJQ2BiXJncp44p3T+b80cU+2TTsg==","signatures":[{"sig":"MEUCIGglXneCONSiZ1boRwPTC7X5nRwd5tXUhoQsDu9t2plnAiEArZuhtkl3rhNMgmq+apnX/3Q5/DuM7R6S//XHirBGPIk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","browser":"browser.js","gitHead":"a17c3c1afbf296ddb235cde1c47c58ad42ab590f","scripts":{},"_npmUser":{"name":"mafintosh","email":"mathiasbuus@gmail.com"},"repository":{"url":"git+https://github.com/sodium-friends/sodium-universal.git","type":"git"},"_npmVersion":"5.5.1","description":"Universal wrapper for sodium-javascript and sodium-native working in Node.js and the Browser","directories":{},"_nodeVersion":"8.9.1","dependencies":{"sodium-native":"^2.0.0","sodium-javascript":"~0.5.0"},"optionalDependencies":{"sodium-native":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sodium-universal-2.0.0.tgz_1510608632781_0.1370716355741024","host":"s3://npm-registry-packages"}},"3.0.0":{"name":"sodium-universal","version":"3.0.0","keywords":["libsodium","sodium","sodium-native","sodium-javascript","browserify"],"author":{"name":"Emil Bay","email":"github@tixz.dk"},"license":"MIT","_id":"sodium-universal@3.0.0","maintainers":[{"name":"emilbayes","email":"github@tixz.dk"},{"name":"mafintosh","email":"mathiasbuus@gmail.com"}],"homepage":"https://github.com/sodium-friends/sodium-universal#readme","bugs":{"url":"https://github.com/sodium-friends/sodium-universal/issues"},"dist":{"shasum":"a362823fe604b00c91a5fe772f6a927eb23607b2","tarball":"https://registry.npmjs.org/sodium-universal/-/sodium-universal-3.0.0.tgz","fileCount":25,"integrity":"sha512-soOIjM0qETvz+Zuu2//IbUvX2miHDHbNtqBe9Q1Gu1fWP2J2YEebvxTPl7ESf0cOM/DLt9/JhBq1qELLH+y9Zw==","signatures":[{"sig":"MEQCIETU7qC7wKC8lW/IT/W/h2QCO1dU/wPcspH5ifldAbJ7AiBeq44TkSxsP6bu7/OhtPitm2oYdLwfH0O8/TNfneDo8w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46208,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe8g67CRA9TVsSAnZWagAAaXwQAI3Lc37DwSfKAB2ahQPU\n/O2Fn4rt/w5GgoZUqAfYfOE6P6734dVJDI1Nvq5IaiCD/rpwqWLtDTaOr8fL\nAoHwjxt4HH5MuZ4QYDA54sWOoyS+t2V3YkLb6ADYpR8nAu3QeY6K4YGZoCcR\nc0KG0nEjMstm9Y7e4YHJXgE5AW58uQnSgMwImGFQrQBn49HQhUpnvddYdkpo\nJ3iY+iOJqTrdJS9ZsmT+TflEoCqSzixq8VD74PrupoacoY18q5GHgI+rOLss\nvWN/RATfAYuP8pqnQM4lVLkJi8HYw/QdNSlEetW9u13vcrXOb1POgPK+6BmL\noQnlFWVTCN0bQkz5t4Rehvp3co+v9SIUWprC4otXj0cbDDMjw7twxLcZoN9E\nVkjcrKMZOc+9IqWuec9ERbtBw4i8K7LmoMo4i4vQn51WQykjX9mc+U+Gq5cy\nJJh8KmNGlI7azz8MD8njAOAEBuWA9tAZJp/fT7lTpUcplpGMCKUT0+yrTufb\nxgTEf2XhfUeToPVeRNNKoB26WBSgY+rUBq7+Bj1DuhgNPCFpmzt8k9tyGLak\nZS7UpNj3fB6jZvMzBsHmj9Zez2xaEXTYta5tPCZeg3HK5iNUGR71FSgByv9g\nImeEQZ+rzsA6eye3lbIo203VEzl+hTpWfEXtOL6haZMs8AToafA3eHRK35KP\nWXAE\r\n=+H0Z\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","browser":{"sodium-native":"sodium-javascript"},"gitHead":"9351f497360c06fd726e85638b27881b278013b9","scripts":{"prepublish":"./build-scripts/generate.js"},"_npmUser":{"name":"mafintosh","email":"mathiasbuus@gmail.com"},"browserify":{"transform":["./build-scripts/transform.js"]},"repository":{"url":"git+https://github.com/sodium-friends/sodium-universal.git","type":"git"},"_npmVersion":"6.14.5","description":"Universal wrapper for sodium-javascript and sodium-native working in Node.js and the Browser","directories":{},"_nodeVersion":"14.4.0","dependencies":{"blake2b":"^2.1.1","resolve":"^1.17.0","xsalsa20":"^1.0.0","siphash24":"^1.0.1","nanoassert":"^1.0.0","sha256-wasm":"^1.3.0","sha512-wasm":"^1.2.0","sodium-native":"^3.2.0","sodium-javascript":"~0.6.0","chacha20-universal":"^1.0.4"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/sodium-universal_3.0.0_1592921786957_0.08257591170595524","host":"s3://npm-registry-packages"}},"3.0.1":{"name":"sodium-universal","version":"3.0.1","keywords":["libsodium","sodium","sodium-native","sodium-javascript","browserify"],"author":{"name":"Emil Bay","email":"github@tixz.dk"},"license":"MIT","_id":"sodium-universal@3.0.1","maintainers":[{"name":"emilbayes","email":"github@tixz.dk"},{"name":"mafintosh","email":"mathiasbuus@gmail.com"}],"homepage":"https://github.com/sodium-friends/sodium-universal#readme","bugs":{"url":"https://github.com/sodium-friends/sodium-universal/issues"},"dist":{"shasum":"59a08ecd21e0a3bde201f899da722313b21bc693","tarball":"https://registry.npmjs.org/sodium-universal/-/sodium-universal-3.0.1.tgz","fileCount":26,"integrity":"sha512-cKznP/jLjqXw6xMF+CwJzPLJOGMw5HZ4iLDY0+zwSOWFFxPgb8NgLzWupPeH8e5w+cukkD2Aehfxyr157r2Fuw==","signatures":[{"sig":"MEYCIQDxIvPM21sLjXOwlSoqAGoGuKe9NNPRBov4N5qaYgg9jgIhAOS+rmjGhF11VZPAMSwvUTUsndlVH6vQ4jCjDHmLYyjE","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46471,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe82osCRA9TVsSAnZWagAA+/cP/0rD8SmLAqCizA7cCcLi\nubT2S11tv5/hPb6l5bV4A7kWnMKVDrMnJyo0KETAZeLpvON7YBUxAx4ET9OM\nNLCKWU3hcqJgPMPkVLGhIabuprQQH2aBP1CJ6BZ0mA9jq6F20eDlXRcN/KGQ\nGN0NmPzhzJNTvUnMnvAqY6cyc29zqHRmCqgTUv9YWzmpLkNVdVKphb1IA8Cc\n7ZxKOTe3E2MZGJzkyVq7de9yP15BPZhTL2qfiB/+QU1WnrPGYeYXkbSvbfAL\nAED0owv5HVj0Bu7ohXI8Qg1u6DfMUTuyCftwuLUYnT3XZzOW1UXbxaS1/knu\n2XERm9OYu04YTKWLXUiVnRyUlT7W4DbSXHXPZfK1WUgWLyUKTXMQBlkUp9Wi\nelM4O4Os+DuS1wVPOUm2adcXvglKKDtv+gYRF/u8ZmXwr3YLYIaXGONTW3/Q\nvZQQ4bXNDUfJEHQcrBinycPGyT82qAS5Dgc1qEbCx4jAgRssxO4h0ISmUGVR\nsu836ARi2ywckDVKiU4fWDEyXp7ZXf2aiUZffr5jGmu5Nbear+1eFGwoCv2U\n3aMbNsy6Tdx6n4CmUR5d/OAZjs90HzcrLkTHzg58FVa/YtP0fBAXEZlmsplH\ng6zBt78yhq2898sO15AvbRd+czGGsIxzxfQNNEuvFYQlhH0WoY2FZ/d7Bjih\nNrcb\r\n=Rs24\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","browser":{"sodium-native":"sodium-javascript"},"gitHead":"4ba6d4a28ce73586f7446e81b5b2cae90a170f73","scripts":{"prepublish":"./build-scripts/generate.js"},"_npmUser":{"name":"emilbayes","email":"github@tixz.dk"},"browserify":{"transform":["./build-scripts/transform.js"]},"repository":{"url":"git+https://github.com/sodium-friends/sodium-universal.git","type":"git"},"_npmVersion":"6.14.5","description":"Universal wrapper for sodium-javascript and sodium-native working in Node.js and the Browser","directories":{},"_nodeVersion":"14.4.0","dependencies":{"blake2b":"^2.1.1","resolve":"^1.17.0","xsalsa20":"^1.0.0","siphash24":"^1.0.1","nanoassert":"^2.0.0","sha256-wasm":"^1.3.0","sha512-wasm":"^1.2.0","sodium-native":"^3.2.0","sodium-javascript":"~0.6.1","chacha20-universal":"^1.0.4"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/sodium-universal_3.0.1_1593010732257_0.7481264195591688","host":"s3://npm-registry-packages"}},"3.0.2":{"name":"sodium-universal","version":"3.0.2","keywords":["libsodium","sodium","sodium-native","sodium-javascript","browserify"],"author":{"name":"Emil Bay","email":"github@tixz.dk"},"license":"MIT","_id":"sodium-universal@3.0.2","maintainers":[{"name":"emilbayes","email":"github@tixz.dk"},{"name":"mafintosh","email":"mathiasbuus@gmail.com"}],"homepage":"https://github.com/sodium-friends/sodium-universal#readme","bugs":{"url":"https://github.com/sodium-friends/sodium-universal/issues"},"dist":{"shasum":"56092be97783eb5f0e924593aede1c348f888b50","tarball":"https://registry.npmjs.org/sodium-universal/-/sodium-universal-3.0.2.tgz","fileCount":29,"integrity":"sha512-K/KepORKL1fjAY68z/l9sqgxnEXZ0KCTo+qfMM1m6LkGDnhdEdZiZsf7DcUZYWeZe0/uGOC2fweWusPD7vSj8A==","signatures":[{"sig":"MEQCICn9RdWKkdEE/flzbccaUVOQdB125UO87N+aOAmyugCCAiA+Qd0s29qk1FQfSob/o1rrTSqmiECYmEqXHhN0cimPOg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46607,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfM/HOCRA9TVsSAnZWagAA+NoP/3CRly2tkIE9XfmALgtx\n5MKzBnpPaw5DFd+lyJbSte/VtZwuqPUFB1j/0rdTJ9go4NC2v8S7mSCnMbwy\nEdwC+rVLEUPEy+++ubIV+GF7LOLYJlUv6tehSY7zrq8DjpERuymjzohUzzE8\naHL//O+4hw7KSPOhUhsp94DqSpS1RI+6OuFbkeCvYsUp10ypvUJsYEhUlQhV\ndpYh9jlHzYn7SgW4BrCQavq8suf37FrWdBUTkmGkzLyPuR3vkyT/dQcb1h/f\nHTP0Mp63T6Mizf+zWKXqVAQTnRtFdXOAQ9/HqERgDKJxoAJZCWLTUthJTl5e\njkXk8HA+SBucbxq1XuuwBrZSHMO9b3rQi9SxK6eKnliLDukDUN+EisNAVKN/\nYjc1ztYYajpcJNOuLO6JO7SV5Cv2z+KSX3xkXDp3jHpGaFdJ56wXvSmKwyJv\nPxkwX3Atk4hgEa+WLjTPfluekzTn1Fq2wt/85ikr6/OVSUkc5gLgquDU5Om8\ntjtCYsBJZ3F4hxjuf8sAz4vLsQ2shKWxp/4wzYG2WjEysQh2cQrN91hIeJu0\n+ILownvloBq/MvB+0e2ftUEEkaDbTqcfrx5XR968SGnHyZGQosPPV+fG15ul\ne+zns5/EyFhPRV/zjZqQSmTKB2NDsKfMuYAL3brcUuVuqV71YmhvLxrMgIeS\ntIZw\r\n=YoPV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","browser":{"sodium-native":"sodium-javascript"},"gitHead":"86ef23917c45bdae2c5ba27fd9295ed46f8312fe","scripts":{"prepublish":"./build-scripts/generate.js"},"_npmUser":{"name":"mafintosh","email":"mathiasbuus@gmail.com"},"browserify":{"transform":["./build-scripts/transform.js"]},"repository":{"url":"git+https://github.com/sodium-friends/sodium-universal.git","type":"git"},"_npmVersion":"6.14.5","description":"Universal wrapper for sodium-javascript and sodium-native working in Node.js and the Browser","directories":{},"_nodeVersion":"14.4.0","dependencies":{"blake2b":"^2.1.1","resolve":"^1.17.0","xsalsa20":"^1.0.0","siphash24":"^1.0.1","nanoassert":"^2.0.0","sodium-native":"^3.2.0","sha256-universal":"^1.0.1","sha512-universal":"^1.0.1","sodium-javascript":"~0.6.2","chacha20-universal":"^1.0.4"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/sodium-universal_3.0.2_1597239758176_0.06044995247096874","host":"s3://npm-registry-packages"}},"3.0.3":{"name":"sodium-universal","version":"3.0.3","keywords":["libsodium","sodium","sodium-native","sodium-javascript","browserify"],"author":{"name":"Emil Bay","email":"github@tixz.dk"},"license":"MIT","_id":"sodium-universal@3.0.3","maintainers":[{"name":"mafintosh","email":"mathiasbuus@gmail.com"},{"name":"emilbayes","email":"github@tixz.dk"}],"homepage":"https://github.com/sodium-friends/sodium-universal#readme","bugs":{"url":"https://github.com/sodium-friends/sodium-universal/issues"},"dist":{"shasum":"2a9d6d1626252e4bf719eccee003981d36f4cb63","tarball":"https://registry.npmjs.org/sodium-universal/-/sodium-universal-3.0.3.tgz","fileCount":29,"integrity":"sha512-kSU3K6bN5r/c/hbaMnYpz5GCzj2hsVSoHvYI9TTln99YCfZn61IVxCYFu+ELQPvvks3PY1HcZbOzEogcU/7iRg==","signatures":[{"sig":"MEYCIQDGPp9YZg63dCQL+7LVQaIn8chS5rJ6i/hp2tkY3oFSgwIhAItzhKRTO7XOZFLfGb6N/9qu2J1DrnI7ZOGkULSJm2z1","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46607,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfrqfyCRA9TVsSAnZWagAAaY4QAKCWgX0zjPjTs0yxn/Zm\n/qrJoDWD2pXa4H8dB4IjRvr8224YNg7/UnBKn3BWdjIo0bsQOXTjH9wi8bIu\nUjkFGG+fgGyY6bM3pZnGHDzigmqjAVIOKNewSmuvjWB8NLx3d5ln+32NniHD\nCp1rmq4PS3SIZMlgGBBfWFhGZyTQsTc4xI8yoe6UVhACrI6r27sMwZ97dnYw\n7Lwb9ATH+GjcqucC7LyZPhSwYASTu9vz/WNle2vvnhZTx/Iw8dSnlJrMKewa\nQOts6c5uGqWlpBa0VuzO3LFqeuakhqfLR1tdwhk40eHJwlDC0453VRL4MqnX\njG8yAHX9701nep40W+5ChNrr8j37rd8D/jclemOPK6FD2L4Lp8cRB8V3dfPM\nZj3gAN1ubv8RVKYvXTSOmHLo+q+CLD9FOqeUZgGwwfqj2y57s3Zt7l5FzSJJ\ndOghDPoir5RjbkE9diqITTWNMs8PbHHLuQVGR7KRNQwrljD2mNwEje6eotPA\nb9NskqsIKEJlKppP46yrGVC1BUBctQB+V2vMhQxLquy0X+LNxQpa+Duzm7lp\nLoXNcbTE3516z2Le4WGQuOvl8ZjoB+EZBxPsWqi9h09Pa5crv7myC0QEPSDH\n7oSbw97SS9z3UJAFnxbUHBSxX7hQnKyZbKAbICItd++1pA4345bkkGaLs6GG\nyFtR\r\n=9PaS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","browser":{"sodium-native":"sodium-javascript"},"gitHead":"42fc47255a24107f6434271918c8b47ec243be8f","scripts":{"prepublish":"./build-scripts/generate.js"},"_npmUser":{"name":"mafintosh","email":"mathiasbuus@gmail.com"},"browserify":{"transform":["./build-scripts/transform.js"]},"repository":{"url":"git+https://github.com/sodium-friends/sodium-universal.git","type":"git"},"_npmVersion":"6.14.8","description":"Universal wrapper for sodium-javascript and sodium-native working in Node.js and the Browser","directories":{},"_nodeVersion":"14.15.0","dependencies":{"blake2b":"^2.1.1","resolve":"^1.17.0","xsalsa20":"^1.0.0","siphash24":"^1.0.1","nanoassert":"^2.0.0","sodium-native":"^3.2.0","sha256-universal":"^1.0.1","sha512-universal":"^1.0.1","sodium-javascript":"~0.7.2","chacha20-universal":"^1.0.4"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/sodium-universal_3.0.3_1605281778200_0.8663641331673679","host":"s3://npm-registry-packages"}},"3.0.4":{"name":"sodium-universal","version":"3.0.4","keywords":["libsodium","sodium","sodium-native","sodium-javascript","browserify"],"author":{"name":"Emil Bay","email":"github@tixz.dk"},"license":"MIT","_id":"sodium-universal@3.0.4","maintainers":[{"name":"mafintosh","email":"mathiasbuus@gmail.com"},{"name":"emilbayes","email":"github@tixz.dk"}],"homepage":"https://github.com/sodium-friends/sodium-universal#readme","bugs":{"url":"https://github.com/sodium-friends/sodium-universal/issues"},"dist":{"shasum":"93e08eb9fcef05d26dddd9215bf0c770b6c87b7b","tarball":"https://registry.npmjs.org/sodium-universal/-/sodium-universal-3.0.4.tgz","fileCount":28,"integrity":"sha512-WnBQ0GDo/82shKQHZBZT9h4q4miCtxkbzcwVLsCBPWNq4qbq8BXhKICt9nPwQAsJ43ct/rF61FKu4t0druUBug==","signatures":[{"sig":"MEYCIQDkZT1n+xdrPQGQRNWqMkbD9DVz8ZG2mXMiPfDpZZY00gIhAK0+7Sr7+PXxcUVHS4cWNrXBYr7AOuzZg1WwY0VVGQKv","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46565,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgG87qCRA9TVsSAnZWagAAVOYP/0d749nhq4cWcTWRv60s\nKPhUiJQ0Un6pU06qrTgsRv88cDKHuCUECzTjtSMy6BaB6QGWj+74LLHC8lGB\nWJlDNBWHvMK+/vPvAxKsiHe2lxrD0LCRSIoPqy2hlheL9bSB1Mw7cibcLDP7\npQvCCfzpWAlty7tYdDQuJogdE0wMUgkmvm3X9ZazyyvxP+vYrV1bpPmRonA7\nRdcd+mJMpjA2DKOdOJND+JrQVsHr6zBD98nyUH+QXEkrE1V0JkPKoEoDGJza\nyalNcA3BHOfUFR4/PMMW7E34LpLSjjBdvHiVCC4M58iBVGyyqemfOoOfALfs\nq6SfjX+cwAp1KJtJfkDEdkmXzLnY8/NMKo2jqD2OBwlXpPpyEfGbCu59YhBf\nhdWb6JvF2AlObbzJIN7nk+Uugt78f/X+uEsYlZNdZbnPWRgCqNDjcLjXFn+q\nK9nqoNYApgJ6mBhnrKTfsK0KGkGr+Zsyvh8d9JLxmlGxwipuhha/Z5tkFQDh\nxESellF2//rqtHW9cnCqHv2bOOaOSfKCgNBmys61luZ/9J439bltt2vd4NqF\nNwA/QUZe8FR5cFD21K/gcC08jciiLb2R3Or8k4R+4k9K/5gVufA6NA0uKtdy\nCkA9oJhO7Y0+hxyk8kramrpLI4OwSpzVmHCGOpZMchvmD+Is40+0kAAHsIPO\nxzyK\r\n=O+t2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","browser":{"sodium-native":"sodium-javascript"},"gitHead":"c6879ae0a5e9b3ae4f37822719cb28804ef00a03","scripts":{"prepublish":"./build-scripts/generate.js"},"_npmUser":{"name":"mafintosh","email":"mathiasbuus@gmail.com"},"browserify":{"transform":["./build-scripts/transform.js"]},"repository":{"url":"git+https://github.com/sodium-friends/sodium-universal.git","type":"git"},"_npmVersion":"6.14.11","description":"Universal wrapper for sodium-javascript and sodium-native working in Node.js and the Browser","directories":{},"_nodeVersion":"15.7.0","dependencies":{"blake2b":"^2.1.1","resolve":"^1.17.0","xsalsa20":"^1.0.0","siphash24":"^1.0.1","nanoassert":"^2.0.0","sodium-native":"^3.2.0","sha256-universal":"^1.1.0","sha512-universal":"^1.1.0","sodium-javascript":"~0.7.2","chacha20-universal":"^1.0.4"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/sodium-universal_3.0.4_1612435178008_0.4421493031186532","host":"s3://npm-registry-packages"}},"3.1.0":{"name":"sodium-universal","version":"3.1.0","keywords":["libsodium","sodium","sodium-native","sodium-javascript","browserify"],"author":{"name":"Emil Bay","email":"github@tixz.dk"},"license":"MIT","_id":"sodium-universal@3.1.0","maintainers":[{"name":"mafintosh","email":"mathiasbuus@gmail.com"},{"name":"emilbayes","email":"github@tixz.dk"}],"homepage":"https://github.com/sodium-friends/sodium-universal#readme","bugs":{"url":"https://github.com/sodium-friends/sodium-universal/issues"},"dist":{"shasum":"f2fa0384d16b7cb99b1c8551a39cc05391a3ed41","tarball":"https://registry.npmjs.org/sodium-universal/-/sodium-universal-3.1.0.tgz","fileCount":30,"integrity":"sha512-N2gxk68Kg2qZLSJ4h0NffEhp4BjgWHCHXVlDi1aG1hA3y+ZeWEmHqnpml8Hy47QzfL1xLy5nwr9LcsWAg2Ep0A==","signatures":[{"sig":"MEQCIDrJrNBCJib3ca5CBK/HT21ibeZUOkqbp9+w7in9g1EYAiBbnGkEg2exrV/rHyLdPGIxCbsEcYhuurTe+PYZA05u/g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh+5KDCRA9TVsSAnZWagAAoMQP/iDEWftXXq/FfyjNKF3n\n3fiBmzSbEYLNY8ZZyuprt3SRHDnXRi1o8rmIQepmW8zj9RPd8Cr0yEQazB8y\njqkSIt4cEgN+NNgzkaMQ70vRqlmpEnpj4RJghhS3BzMUr7YwNB4mNrz+8so7\nWSAbSK+7fWr+cxN2lv56S0eFXlENm8vIp4txx0Xj0HBfwIS2Mmke15MNYrYs\n8tWui6s7SRooS2v6KhPKnHaLJVGOtEgGnabysZrnlctADnUQHhGJsBWIuPSi\nE2ZMCLgcCKITDA5tyv0Oc+UP6BOfUCjCanA+fR7IR0ehUWUxoqFfNOjJm6/7\nTFKIvIjge+LNOKi0HmZtqEFFy4FgIeF7qPToZtkmTFl8sHwiB7jjjN5fd7Gf\nIqHjVo1H1ibMTKu42UjWcxToDKAEAFgAE4F+I5vznAd0Wq9zKnDaDUiUNWRr\n1mHT5HTz51pSZRvh6z22AFXz+fDpx+721iLkJ/MIoT4VQOMjNCxt70ZZV25s\nnky3IgnOgDRGTXePySeX103dxmFmrOsyzufKC9ALuTbE4Zh3CWFDpU5NXGIM\nQdNjwV2CRTjkeWF63PP5UUD/pNHfUGt5HN2ruGjntQFW0gGGqFePJfRPDyNw\nMtNxOSuYhoKUO7RLO3kTLrEOeR3kXj6gmpYq4Uq1kpksqMbk8kyddR+T8e0z\niKHb\r\n=6ZLd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","browser":{"sodium-native":"sodium-javascript"},"gitHead":"69753b149513fb1688ad44fcc245cbee9616af06","scripts":{"prepublish":"./build-scripts/generate.js"},"_npmUser":{"name":"mafintosh","email":"mathiasbuus@gmail.com"},"browserify":{"transform":["./build-scripts/transform.js"]},"repository":{"url":"git+https://github.com/sodium-friends/sodium-universal.git","type":"git"},"_npmVersion":"8.1.2","description":"Universal wrapper for sodium-javascript and sodium-native working in Node.js and the Browser","directories":{},"_nodeVersion":"16.13.2","dependencies":{"blake2b":"^2.1.1","resolve":"^1.17.0","xsalsa20":"^1.0.0","siphash24":"^1.0.1","nanoassert":"^2.0.0","sodium-native":"^3.2.0","sha256-universal":"^1.1.0","sha512-universal":"^1.1.0","sodium-javascript":"~0.8.0","chacha20-universal":"^1.0.4"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/sodium-universal_3.1.0_1643876995770_0.8347250455930735","host":"s3://npm-registry-packages"}},"4.0.0":{"name":"sodium-universal","version":"4.0.0","keywords":["libsodium","sodium","sodium-native","sodium-javascript","browserify"],"author":{"name":"Emil Bay","email":"github@tixz.dk"},"license":"MIT","_id":"sodium-universal@4.0.0","maintainers":[{"name":"mafintosh","email":"mathiasbuus@gmail.com"},{"name":"emilbayes","email":"github@tixz.dk"}],"homepage":"https://github.com/sodium-friends/sodium-universal#readme","bugs":{"url":"https://github.com/sodium-friends/sodium-universal/issues"},"dist":{"shasum":"0d7c81aee7a013e8a950f7bea8d8cfff369c2424","tarball":"https://registry.npmjs.org/sodium-universal/-/sodium-universal-4.0.0.tgz","fileCount":30,"integrity":"sha512-iKHl8XnBV96k1c75gwwzANFdephw/MDWSjQAjPmBE+du0y3P23Q8uf7AcdcfFsYAMwLg7WVBfSAIBtV/JvRsjA==","signatures":[{"sig":"MEYCIQDREQQOE0V4WK5viyD+BDGeoDWpta42IoztKpdUr7BmrwIhAIEkmq2gbh+MAbT/rWGj8Tm8yAbEvA1P9sNxvnrQNZof","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46518,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjvSf8ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo62g/8Dp2McbZFn0lVANueCPXzk6pvql3pQOvUTlyswZjWzYYKaaf9\r\n5vICSJZV2vBMk9rxXIIJAHaoXrKEmErePMp9Vhuj/8No50Dvkwtv4ed5UQ52\r\nfHnD00wBqYc6LaKEmRY2eZme6QAbGB/lYD3yjiQkTqD/j9YVoF8VcsFkV6Qs\r\nc57+rfwmHQhTR3x8evAL1JT6Onnb+3JlsYoj+J/any4hLDar+RJ3n8SpkL4/\r\nnBWLP3FIVlsC2cTkf16aAoj4eMjETXhN87Fwa/3h9pqo9T6yKjPz5/asm4eq\r\npoeIWQ3FzRjJZSuBHkitWAjyokX5L+J7L+X3IkwDRyGlO5rqd8esT1nta9HX\r\n8dpIsOxSQVRzCrYNOE6WG1hnaDGsi+kMMwN4uK/r8CC6BLMJH7h8KcOCPitT\r\nosZ31J5oF2bDpGBMZ3KlC9N3m92e8WPay9Fu84jrmMbhIvDKFQ9FmIbgK51A\r\ng8FXIeEd8RlEDH08FotovbkJfwXZa+DUOjxkJppurGy1TOLQErX//mYSChjc\r\n4KcBntRpGUgCZj1RSD6tqHOdB1Hdb+DQf9xXHmc0xEM0xIK6GO5rEGnLizuy\r\nfioAFdaJcdwJkUZVvZCN7dcsfz9x5veHTj4A8PJp9IbFT8zWB8rqUcTS2zup\r\nqfTSIfgGWtJwcLv19paoXRZhhwyFs7+GhZ0=\r\n=uNjJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","browser":{"sodium-native":"sodium-javascript"},"gitHead":"2eaa0f72cb217a0da790207bae8c76f93c7e6e51","scripts":{"prepublish":"./build-scripts/generate.js"},"_npmUser":{"name":"mafintosh","email":"mathiasbuus@gmail.com"},"browserify":{"transform":["./build-scripts/transform.js"]},"repository":{"url":"git+https://github.com/sodium-friends/sodium-universal.git","type":"git"},"_npmVersion":"8.15.0","description":"Universal wrapper for sodium-javascript and sodium-native working in Node.js and the Browser","directories":{},"_nodeVersion":"16.17.0","dependencies":{"blake2b":"^2.1.1","xsalsa20":"^1.0.0","siphash24":"^1.0.1","nanoassert":"^2.0.0","sodium-native":"^4.0.0","sha256-universal":"^1.1.0","sha512-universal":"^1.1.0","sodium-javascript":"~0.8.0","chacha20-universal":"^1.0.4"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/sodium-universal_4.0.0_1673340924471_0.3188137911302529","host":"s3://npm-registry-packages"}},"4.0.1":{"name":"sodium-universal","version":"4.0.1","keywords":["libsodium","sodium","sodium-native","sodium-javascript","browserify"],"author":{"name":"Emil Bay","email":"github@tixz.dk"},"license":"MIT","_id":"sodium-universal@4.0.1","maintainers":[{"name":"mafintosh","email":"mathiasbuus@gmail.com"},{"name":"emilbayes","email":"github@tixz.dk"}],"homepage":"https://github.com/sodium-friends/sodium-universal#readme","bugs":{"url":"https://github.com/sodium-friends/sodium-universal/issues"},"dist":{"shasum":"75146f3b6fb6ab0dcc9278ad468ef5f23a0351e4","tarball":"https://registry.npmjs.org/sodium-universal/-/sodium-universal-4.0.1.tgz","fileCount":30,"integrity":"sha512-sNp13PrxYLaUFHTGoDKkSDFvoEu51bfzE12RwGlqU1fcrkpAOK0NvizaJzOWV0Omtk9me2+Pnbjcf/l0efxuGQ==","signatures":[{"sig":"MEUCIQCYhDN2T6rFLUd4MEwUIR+YA//YKvBsO8mnpwsjkD4RcgIgWQ7n4NdiDNOuamVJ29yNBC5mTPXKYB0PvMPQH+b3q1M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46544},"main":"index.js","browser":{"sodium-native":"sodium-javascript"},"gitHead":"e86550755d3c644dad6846d02f39f27c7afcf25d","scripts":{"prepublish":"./build-scripts/generate.js"},"_npmUser":{"name":"mafintosh","email":"mathiasbuus@gmail.com"},"browserify":{"transform":["./build-scripts/transform.js"]},"repository":{"url":"git+https://github.com/sodium-friends/sodium-universal.git","type":"git"},"_npmVersion":"10.2.4","description":"Universal wrapper for sodium-javascript and sodium-native working in Node.js and the Browser","directories":{},"_nodeVersion":"20.11.1","dependencies":{"sodium-native":"^4.0.0"},"_hasShrinkwrap":false,"peerDependencies":{"sodium-javascript":"~0.8.0"},"peerDependenciesMeta":{"sodium-javascript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sodium-universal_4.0.1_1709682134993_0.7693051976073462","host":"s3://npm-registry-packages"}},"5.0.0":{"name":"sodium-universal","version":"5.0.0","keywords":["libsodium","sodium","sodium-native","sodium-javascript","browserify"],"author":{"name":"Emil Bay","email":"github@tixz.dk"},"license":"MIT","_id":"sodium-universal@5.0.0","maintainers":[{"name":"mafintosh","email":"mathiasbuus@gmail.com"},{"name":"emilbayes","email":"github@tixz.dk"}],"homepage":"https://github.com/sodium-friends/sodium-universal#readme","bugs":{"url":"https://github.com/sodium-friends/sodium-universal/issues"},"dist":{"shasum":"7a656af1ec75d980b464558727496359da8e5933","tarball":"https://registry.npmjs.org/sodium-universal/-/sodium-universal-5.0.0.tgz","fileCount":30,"integrity":"sha512-VpvyKX7v/PI0KDXvfmXNMGwygpyNAI13eZ5GSXqkx4P+ZomW4dtRoXUqSDZ6wGUvrF2nCS5XAlgYRO813luV8Q==","signatures":[{"sig":"MEUCICy19H3GnemVcsMTc3D/4flf/lSS/IcviSpySVzS3uaAAiEA+xPx+WWidiHUXaVelHKj5/LChyyyFZqf5tE+OpCU1ms=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":46544},"main":"index.js","browser":{"sodium-native":"sodium-javascript"},"gitHead":"d98213de97cc70efeb85bfdc57bf2549927c593d","scripts":{"prepublish":"./build-scripts/generate.js"},"_npmUser":{"name":"mafintosh","email":"mathiasbuus@gmail.com"},"browserify":{"transform":["./build-scripts/transform.js"]},"repository":{"url":"git+https://github.com/sodium-friends/sodium-universal.git","type":"git"},"_npmVersion":"10.9.0","description":"Universal wrapper for sodium-javascript and sodium-native working in Node.js and the Browser","directories":{},"_nodeVersion":"22.12.0","dependencies":{"sodium-native":"^5.0.1"},"_hasShrinkwrap":false,"peerDependencies":{"sodium-javascript":"~0.8.0"},"peerDependenciesMeta":{"sodium-javascript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sodium-universal_5.0.0_1743932187696_0.5490786520449877","host":"s3://npm-registry-packages-npm-production"}},"5.0.1":{"name":"sodium-universal","version":"5.0.1","description":"Universal wrapper for sodium-javascript and sodium-native working in Node.js and the Browser","main":"index.js","dependencies":{"sodium-native":"^5.0.1"},"peerDependencies":{"sodium-javascript":"~0.8.0"},"peerDependenciesMeta":{"sodium-javascript":{"optional":true}},"scripts":{"prepublish":"./build-scripts/generate.js"},"browser":{"sodium-native":"sodium-javascript"},"browserify":{"transform":["./build-scripts/transform.js"]},"repository":{"type":"git","url":"git+https://github.com/holepunchto/sodium-universal.git"},"keywords":["libsodium","sodium","sodium-native","sodium-javascript","browserify"],"contributors":[{"name":"Emil Bay","email":"github@tixz.dk","url":"http://bayes.dk"},{"name":"Mathias Buus","email":"mathiasbuus@gmail.com","url":"https://mafinto.sh"},{"name":"Christophe Diederichs","email":"chm-diederichs@hyperdivision.dk"}],"license":"MIT","bugs":{"url":"https://github.com/holepunchto/sodium-universal/issues"},"homepage":"https://github.com/holepunchto/sodium-universal#readme","_id":"sodium-universal@5.0.1","gitHead":"a8aa011f2de3555f46af26253ecff3fe3f9513bc","_nodeVersion":"22.12.0","_npmVersion":"10.9.0","dist":{"integrity":"sha512-rv+aH+tnKB5H0MAc2UadHShLMslpJsc4wjdnHRtiSIEYpOetCgu8MS4ExQRia+GL/MK3uuCyZPeEsi+J3h+Q+Q==","shasum":"b06c0a52256f19d2bf071ea031476f4306831dfd","tarball":"https://registry.npmjs.org/sodium-universal/-/sodium-universal-5.0.1.tgz","fileCount":30,"unpackedSize":46697,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCWVjWU34AoJMABwdabBEd2zhShqt1fM0qK5iV6uiOsMAIgR8lvYQ2lWBrJj1EkkTR0ZklYc6dtvikbs/Xg5XsBsKs="}]},"_npmUser":{"name":"mafintosh","email":"mathiasbuus@gmail.com"},"directories":{},"maintainers":[{"name":"mafintosh","email":"mathiasbuus@gmail.com"},{"name":"emilbayes","email":"github@tixz.dk"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/sodium-universal_5.0.1_1743933310873_0.809331205362972"},"_hasShrinkwrap":false}},"time":{"created":"2017-04-06T12:25:03.444Z","modified":"2025-04-06T09:55:11.224Z","0.0.0":"2017-04-06T12:25:03.444Z","1.0.0":"2017-04-06T13:42:49.042Z","1.1.0":"2017-06-08T09:01:09.352Z","1.2.0":"2017-06-12T08:20:55.580Z","1.3.0":"2017-06-21T09:07:48.402Z","1.4.0":"2017-06-28T09:20:42.694Z","2.0.0":"2017-11-13T21:30:33.689Z","3.0.0":"2020-06-23T14:16:27.091Z","3.0.1":"2020-06-24T14:58:52.502Z","3.0.2":"2020-08-12T13:42:38.303Z","3.0.3":"2020-11-13T15:36:18.376Z","3.0.4":"2021-02-04T10:39:38.173Z","3.1.0":"2022-02-03T08:29:55.894Z","4.0.0":"2023-01-10T08:55:24.614Z","4.0.1":"2024-03-05T23:42:15.157Z","5.0.0":"2025-04-06T09:36:27.873Z","5.0.1":"2025-04-06T09:55:11.053Z"},"bugs":{"url":"https://github.com/holepunchto/sodium-universal/issues"},"license":"MIT","homepage":"https://github.com/holepunchto/sodium-universal#readme","keywords":["libsodium","sodium","sodium-native","sodium-javascript","browserify"],"repository":{"type":"git","url":"git+https://github.com/holepunchto/sodium-universal.git"},"description":"Universal wrapper for sodium-javascript and sodium-native working in Node.js and the Browser","maintainers":[{"name":"mafintosh","email":"mathiasbuus@gmail.com"},{"name":"emilbayes","email":"github@tixz.dk"}],"readme":"# sodium-universal\n\nUniversal wrapper for `sodium-javascript` and `sodium-native` working in Node.js and the Browser\n\n```sh\nnpm install sodium-universal\n```\n\n`sodium-native` ships with prebuilds for macOS, Windows, and Linux.\n\nNote that the module itself is generated on a prepublish hook.\n\n## Usage\n\n```js\nvar sodium = require('sodium-universal')\n\nvar rnd = Buffer.allocUnsafe(12) // Cryptographically random data\nsodium.randombytes_buf(rnd)\n\nconsole.log(rnd.toString('hex'))\n\n```\n\nWorks seamlessly with Node.js:\n\n```sh\n$ node example.js\nc7dbd46a6cc84ff2e0d1285c\n```\n\nAnd the browser:\n\nFirst install the peer dep, `sodium-javascript`.\n\n```sh\nnpm install --save sodium-javascript\n```\n\nAnd then browserify\n\n```sh\nbrowserify example.js > bundle.js\n```\n\n## Introduction\n\n[`libsodium`](https://download.libsodium.org/doc/) is a collection of cryptographic primitives, providing a low-level foundation to build higher-level cryptographic applications and protocols. It is often put in contrast to RSA based cryptography and OpenSSL, even though they all share overlapping algorithms and target slightly different audiences. Sodium is a collection of modern collection of primitives, fulfilling the same cryptographic tasks, but based on simpler and more efficient algorithms.\n\nThis library provides seamless bindings to [`sodium-native`](https://github.com/sodium-friends/sodium-native), which is the original C implementation of `libsodium` exposed as a Node native module. For the browser we expose [`sodium-javascript`](https://github.com/sodium-friends/sodium-javascript), using the `package.json` [`browser`](https://github.com/defunctzombie/package-browser-field-spec) field, which is supported by most bundlers.\n\n## API\n\nPlease refer to [`sodium-native`](https://github.com/sodium-friends/sodium-native#api) and [`sodium-javascript`](https://github.com/sodium-friends/sodium-javascript#api). Note that the two modules do not yet have feature parity, where `sodium-native` is the more featureful of the two.\n\n## Compatibilty\n\n<!-- Generated by build-scripts/symbols.js with\n     sodium-native@3.2.0\n     sodium-javascript@0.6.0 -->\n|                     C Library Symbol                     |   `sodium-native`    | `sodium-javascript`  |\n|:--------------------------------------------------------:|:--------------------:|:--------------------:|\n| `crypto_aead_chacha20poly1305_ietf_ABYTES`               |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_aead_chacha20poly1305_ietf_decrypt`              |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_aead_chacha20poly1305_ietf_decrypt_detached`     |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_aead_chacha20poly1305_ietf_encrypt`              |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_aead_chacha20poly1305_ietf_encrypt_detached`     |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_aead_chacha20poly1305_ietf_KEYBYTES`             |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_aead_chacha20poly1305_ietf_keygen`               |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_aead_chacha20poly1305_ietf_MESSAGEBYTES_MAX`     |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_aead_chacha20poly1305_ietf_NPUBBYTES`            |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_aead_chacha20poly1305_ietf_NSECBYTES`            |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_aead_xchacha20poly1305_ietf_ABYTES`              |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_aead_xchacha20poly1305_ietf_decrypt`             |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_aead_xchacha20poly1305_ietf_decrypt_detached`    |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_aead_xchacha20poly1305_ietf_encrypt`             |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_aead_xchacha20poly1305_ietf_encrypt_detached`    |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_aead_xchacha20poly1305_ietf_KEYBYTES`            |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_aead_xchacha20poly1305_ietf_keygen`              |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_aead_xchacha20poly1305_ietf_MESSAGEBYTES_MAX`    |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_aead_xchacha20poly1305_ietf_NPUBBYTES`           |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_aead_xchacha20poly1305_ietf_NSECBYTES`           |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_auth`                                            |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_auth_BYTES`                                      |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_auth_KEYBYTES`                                   |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_auth_verify`                                     |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_box_BEFORENMBYTES`                               | :small_red_triangle: |  :white_check_mark:  |\n| `crypto_box_BOXZEROBYTES`                                | :small_red_triangle: |  :white_check_mark:  |\n| `crypto_box_detached`                                    |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_box_easy`                                        |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_box_keypair`                                     |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_box_MACBYTES`                                    |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_box_NONCEBYTES`                                  |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_box_open_detached`                               |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_box_open_easy`                                   |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_box_PUBLICKEYBYTES`                              |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_box_seal`                                        |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_box_seal_open`                                   |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_box_SEALBYTES`                                   |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_box_SECRETKEYBYTES`                              |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_box_seed_keypair`                                |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_box_SEEDBYTES`                                   |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_box_ZEROBYTES`                                   | :small_red_triangle: |  :white_check_mark:  |\n| `crypto_core_ed25519_add`                                |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_core_ed25519_BYTES`                              |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_core_ed25519_from_uniform`                       |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_core_ed25519_is_valid_point`                     |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_core_ed25519_NONREDUCEDSCALARBYTES`              |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_core_ed25519_scalar_add`                         |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_core_ed25519_scalar_complement`                  |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_core_ed25519_scalar_invert`                      |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_core_ed25519_scalar_negate`                      |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_core_ed25519_scalar_random`                      |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_core_ed25519_scalar_reduce`                      |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_core_ed25519_scalar_sub`                         |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_core_ed25519_SCALARBYTES`                        |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_core_ed25519_sub`                                |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_core_ed25519_UNIFORMBYTES`                       |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_generichash`                                     |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_generichash_BYTES`                               |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_generichash_BYTES_MAX`                           |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_generichash_BYTES_MIN`                           |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_generichash_final`                               |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_generichash_init`                                |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_generichash_KEYBYTES`                            |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_generichash_KEYBYTES_MAX`                        |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_generichash_KEYBYTES_MIN`                        |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_generichash_keygen`                              |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_generichash_STATEBYTES`                          |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_generichash_update`                              |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_hash`                                            |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_hash_BYTES`                                      |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_hash_sha256`                                     |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_hash_sha256_BYTES`                               |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_hash_sha256_final`                               |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_hash_sha256_init`                                |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_hash_sha256_STATEBYTES`                          |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_hash_sha256_update`                              |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_hash_sha512`                                     |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_hash_sha512_BYTES`                               |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_hash_sha512_final`                               |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_hash_sha512_init`                                |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_hash_sha512_STATEBYTES`                          |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_hash_sha512_update`                              |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_kdf_BYTES_MAX`                                   |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_kdf_BYTES_MIN`                                   |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_kdf_CONTEXTBYTES`                                |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_kdf_derive_from_key`                             |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_kdf_KEYBYTES`                                    |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_kdf_keygen`                                      |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_kx_client_session_keys`                          |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_kx_keypair`                                      |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_kx_PUBLICKEYBYTES`                               |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_kx_SECRETKEYBYTES`                               |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_kx_seed_keypair`                                 |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_kx_SEEDBYTES`                                    |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_kx_server_session_keys`                          |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_kx_SESSIONKEYBYTES`                              |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_onetimeauth`                                     |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_onetimeauth_BYTES`                               |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_onetimeauth_final`                               |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_onetimeauth_init`                                |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_onetimeauth_KEYBYTES`                            |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_onetimeauth_STATEBYTES`                          |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_onetimeauth_update`                              |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_onetimeauth_verify`                              |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_pwhash`                                          |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_pwhash_BYTES_MAX`                                |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_pwhash_BYTES_MIN`                                |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_pwhash_SALTBYTES`                                |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_pwhash_scryptsalsa208sha256`                     |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_pwhash_scryptsalsa208sha256_BYTES_MAX`           |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_pwhash_scryptsalsa208sha256_BYTES_MIN`           |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_pwhash_scryptsalsa208sha256_SALTBYTES`           |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_pwhash_scryptsalsa208sha256_str`                 |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_pwhash_scryptsalsa208sha256_str_needs_rehash`    |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_pwhash_scryptsalsa208sha256_str_verify`          |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_pwhash_scryptsalsa208sha256_STRBYTES`            |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_pwhash_str`                                      |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_pwhash_str_needs_rehash`                         |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_pwhash_str_verify`                               |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_pwhash_STRBYTES`                                 |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_scalarmult`                                      |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_scalarmult_base`                                 |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_scalarmult_BYTES`                                |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_scalarmult_ed25519`                              |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_scalarmult_ed25519_base`                         |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_scalarmult_ed25519_base_noclamp`                 |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_scalarmult_ed25519_BYTES`                        |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_scalarmult_ed25519_noclamp`                      |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_scalarmult_ed25519_SCALARBYTES`                  |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_scalarmult_SCALARBYTES`                          |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_secretbox`                                       | :small_red_triangle: |  :white_check_mark:  |\n| `crypto_secretbox_BOXZEROBYTES`                          | :small_red_triangle: |  :white_check_mark:  |\n| `crypto_secretbox_detached`                              |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_secretbox_easy`                                  |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_secretbox_KEYBYTES`                              |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_secretbox_MACBYTES`                              |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_secretbox_NONCEBYTES`                            |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_secretbox_open`                                  | :small_red_triangle: |  :white_check_mark:  |\n| `crypto_secretbox_open_detached`                         |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_secretbox_open_easy`                             |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_secretbox_ZEROBYTES`                             | :small_red_triangle: |  :white_check_mark:  |\n| `crypto_secretstream_xchacha20poly1305_ABYTES`           |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_secretstream_xchacha20poly1305_HEADERBYTES`      |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_secretstream_xchacha20poly1305_init_pull`        |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_secretstream_xchacha20poly1305_init_push`        |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_secretstream_xchacha20poly1305_KEYBYTES`         |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_secretstream_xchacha20poly1305_keygen`           |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_secretstream_xchacha20poly1305_MESSAGEBYTES_MAX` |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_secretstream_xchacha20poly1305_pull`             |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_secretstream_xchacha20poly1305_push`             |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_secretstream_xchacha20poly1305_rekey`            |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_secretstream_xchacha20poly1305_STATEBYTES`       |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_shorthash`                                       |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_shorthash_BYTES`                                 |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_shorthash_KEYBYTES`                              |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_sign`                                            |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_sign_BYTES`                                      |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_sign_detached`                                   |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_sign_ed25519_pk_to_curve25519`                   |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_sign_ed25519_sk_to_curve25519`                   |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_sign_ed25519_sk_to_pk`                           |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_sign_keypair`                                    |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_sign_open`                                       |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_sign_PUBLICKEYBYTES`                             |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_sign_SECRETKEYBYTES`                             |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_sign_seed_keypair`                               |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_sign_SEEDBYTES`                                  |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_sign_verify_detached`                            |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_stream`                                          |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_stream_chacha20`                                 |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_stream_chacha20_ietf`                            |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_stream_chacha20_ietf_KEYBYTES`                   |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_stream_chacha20_ietf_MESSAGEBYTES_MAX`           |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_stream_chacha20_ietf_NONCEBYTES`                 |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_stream_chacha20_ietf_xor`                        |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_stream_chacha20_ietf_xor_ic`                     |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_stream_chacha20_KEYBYTES`                        |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_stream_chacha20_MESSAGEBYTES_MAX`                |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_stream_chacha20_NONCEBYTES`                      |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_stream_chacha20_xor`                             |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_stream_chacha20_xor_ic`                          |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_stream_KEYBYTES`                                 |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_stream_NONCEBYTES`                               |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_stream_salsa20_KEYBYTES`                         |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_stream_salsa20_MESSAGEBYTES_MAX`                 |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_stream_salsa20_NONCEBYTES`                       |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_stream_salsa20_xor`                              |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_stream_salsa20_xor_ic`                           |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_stream_xchacha20`                                |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_stream_xchacha20_KEYBYTES`                       |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_stream_xchacha20_MESSAGEBYTES_MAX`               |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_stream_xchacha20_NONCEBYTES`                     |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_stream_xchacha20_xor`                            |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_stream_xchacha20_xor_ic`                         |  :white_check_mark:  | :small_red_triangle: |\n| `crypto_stream_xor`                                      |  :white_check_mark:  |  :white_check_mark:  |\n| `crypto_verify_16`                                       | :small_red_triangle: |  :white_check_mark:  |\n| `crypto_verify_32`                                       | :small_red_triangle: |  :white_check_mark:  |\n| `randombytes_buf`                                        |  :white_check_mark:  |  :white_check_mark:  |\n| `randombytes_buf_deterministic`                          |  :white_check_mark:  | :small_red_triangle: |\n| `randombytes_random`                                     |  :white_check_mark:  | :small_red_triangle: |\n| `randombytes_SEEDBYTES`                                  |  :white_check_mark:  | :small_red_triangle: |\n| `randombytes_uniform`                                    |  :white_check_mark:  | :small_red_triangle: |\n| `sodium_add`                                             |  :white_check_mark:  | :small_red_triangle: |\n| `sodium_compare`                                         |  :white_check_mark:  | :small_red_triangle: |\n| `sodium_free`                                            |  :white_check_mark:  | :small_red_triangle: |\n| `sodium_increment`                                       |  :white_check_mark:  | :small_red_triangle: |\n| `sodium_is_zero`                                         |  :white_check_mark:  |  :white_check_mark:  |\n| `sodium_malloc`                                          |  :white_check_mark:  |  :white_check_mark:  |\n| `sodium_memcmp`                                          |  :white_check_mark:  |  :white_check_mark:  |\n| `sodium_memzero`                                         |  :white_check_mark:  |  :white_check_mark:  |\n| `sodium_mlock`                                           |  :white_check_mark:  | :small_red_triangle: |\n| `sodium_mprotect_noaccess`                               |  :white_check_mark:  | :small_red_triangle: |\n| `sodium_mprotect_readonly`                               |  :white_check_mark:  | :small_red_triangle: |\n| `sodium_mprotect_readwrite`                              |  :white_check_mark:  | :small_red_triangle: |\n| `sodium_munlock`                                         |  :white_check_mark:  | :small_red_triangle: |\n| `sodium_pad`                                             |  :white_check_mark:  | :small_red_triangle: |\n| `sodium_sub`                                             |  :white_check_mark:  | :small_red_triangle: |\n| `sodium_unpad`                                           |  :white_check_mark:  | :small_red_triangle: |\n\n### Missing altogether (Ctrl + F friendly)\n\n`crypto_aead_aes256gcm_ABYTES`, `crypto_aead_aes256gcm_beforenm`, `crypto_aead_aes256gcm_decrypt`, `crypto_aead_aes256gcm_decrypt_afternm`, `crypto_aead_aes256gcm_decrypt_detached`, `crypto_aead_aes256gcm_decrypt_detached_afternm`, `crypto_aead_aes256gcm_encrypt`, `crypto_aead_aes256gcm_encrypt_afternm`, `crypto_aead_aes256gcm_encrypt_detached`, `crypto_aead_aes256gcm_encrypt_detached_afternm`, `crypto_aead_aes256gcm_is_available`, `crypto_aead_aes256gcm_KEYBYTES`, `crypto_aead_aes256gcm_keygen`, `crypto_aead_aes256gcm_MESSAGEBYTES_MAX`, `crypto_aead_aes256gcm_NPUBBYTES`, `crypto_aead_aes256gcm_NSECBYTES`, `crypto_aead_aes256gcm_STATEBYTES`, `crypto_aead_chacha20poly1305_ABYTES`, `crypto_aead_chacha20poly1305_decrypt`, `crypto_aead_chacha20poly1305_decrypt_detached`, `crypto_aead_chacha20poly1305_encrypt`, `crypto_aead_chacha20poly1305_encrypt_detached`, `crypto_aead_chacha20poly1305_KEYBYTES`, `crypto_aead_chacha20poly1305_keygen`, `crypto_aead_chacha20poly1305_MESSAGEBYTES_MAX`, `crypto_aead_chacha20poly1305_NPUBBYTES`, `crypto_aead_chacha20poly1305_NSECBYTES`, `crypto_auth_hmacsha256`, `crypto_auth_hmacsha256_BYTES`, `crypto_auth_hmacsha256_final`, `crypto_auth_hmacsha256_init`, `crypto_auth_hmacsha256_KEYBYTES`, `crypto_auth_hmacsha256_keygen`, `crypto_auth_hmacsha256_STATEBYTES`, `crypto_auth_hmacsha256_update`, `crypto_auth_hmacsha256_verify`, `crypto_auth_hmacsha512`, `crypto_auth_hmacsha512256`, `crypto_auth_hmacsha512256_BYTES`, `crypto_auth_hmacsha512256_final`, `crypto_auth_hmacsha512256_init`, `crypto_auth_hmacsha512256_KEYBYTES`, `crypto_auth_hmacsha512256_keygen`, `crypto_auth_hmacsha512256_STATEBYTES`, `crypto_auth_hmacsha512256_update`, `crypto_auth_hmacsha512256_verify`, `crypto_auth_hmacsha512_BYTES`, `crypto_auth_hmacsha512_final`, `crypto_auth_hmacsha512_init`, `crypto_auth_hmacsha512_KEYBYTES`, `crypto_auth_hmacsha512_keygen`, `crypto_auth_hmacsha512_STATEBYTES`, `crypto_auth_hmacsha512_update`, `crypto_auth_hmacsha512_verify`, `crypto_auth_keygen`, `crypto_auth_primitive`, `crypto_box`, `crypto_box_afternm`, `crypto_box_beforenm`, `crypto_box_curve25519xchacha20poly1305_beforenm`, `crypto_box_curve25519xchacha20poly1305_BEFORENMBYTES`, `crypto_box_curve25519xchacha20poly1305_detached`, `crypto_box_curve25519xchacha20poly1305_detached_afternm`, `crypto_box_curve25519xchacha20poly1305_easy`, `crypto_box_curve25519xchacha20poly1305_easy_afternm`, `crypto_box_curve25519xchacha20poly1305_keypair`, `crypto_box_curve25519xchacha20poly1305_MACBYTES`, `crypto_box_curve25519xchacha20poly1305_MESSAGEBYTES_MAX`, `crypto_box_curve25519xchacha20poly1305_NONCEBYTES`, `crypto_box_curve25519xchacha20poly1305_open_detached`, `crypto_box_curve25519xchacha20poly1305_open_detached_afternm`, `crypto_box_curve25519xchacha20poly1305_open_easy`, `crypto_box_curve25519xchacha20poly1305_open_easy_afternm`, `crypto_box_curve25519xchacha20poly1305_PUBLICKEYBYTES`, `crypto_box_curve25519xchacha20poly1305_seal`, `crypto_box_curve25519xchacha20poly1305_seal_open`, `crypto_box_curve25519xchacha20poly1305_SEALBYTES`, `crypto_box_curve25519xchacha20poly1305_SECRETKEYBYTES`, `crypto_box_curve25519xchacha20poly1305_seed_keypair`, `crypto_box_curve25519xchacha20poly1305_SEEDBYTES`, `crypto_box_curve25519xsalsa20poly1305`, `crypto_box_curve25519xsalsa20poly1305_afternm`, `crypto_box_curve25519xsalsa20poly1305_beforenm`, `crypto_box_curve25519xsalsa20poly1305_BEFORENMBYTES`, `crypto_box_curve25519xsalsa20poly1305_BOXZEROBYTES`, `crypto_box_curve25519xsalsa20poly1305_keypair`, `crypto_box_curve25519xsalsa20poly1305_MACBYTES`, `crypto_box_curve25519xsalsa20poly1305_MESSAGEBYTES_MAX`, `crypto_box_curve25519xsalsa20poly1305_NONCEBYTES`, `crypto_box_curve25519xsalsa20poly1305_open`, `crypto_box_curve25519xsalsa20poly1305_open_afternm`, `crypto_box_curve25519xsalsa20poly1305_PUBLICKEYBYTES`, `crypto_box_curve25519xsalsa20poly1305_SECRETKEYBYTES`, `crypto_box_curve25519xsalsa20poly1305_seed_keypair`, `crypto_box_curve25519xsalsa20poly1305_SEEDBYTES`, `crypto_box_curve25519xsalsa20poly1305_ZEROBYTES`, `crypto_box_detached_afternm`, `crypto_box_easy_afternm`, `crypto_box_MESSAGEBYTES_MAX`, `crypto_box_open`, `crypto_box_open_afternm`, `crypto_box_open_detached_afternm`, `crypto_box_open_easy_afternm`, `crypto_box_primitive`, `crypto_core_ed25519_from_hash`, `crypto_core_ed25519_HASHBYTES`, `crypto_core_ed25519_random`, `crypto_core_ed25519_scalar_mul`, `crypto_core_hchacha20`, `crypto_core_hchacha20_CONSTBYTES`, `crypto_core_hchacha20_INPUTBYTES`, `crypto_core_hchacha20_KEYBYTES`, `crypto_core_hchacha20_OUTPUTBYTES`, `crypto_core_hsalsa20`, `crypto_core_hsalsa20_CONSTBYTES`, `crypto_core_hsalsa20_INPUTBYTES`, `crypto_core_hsalsa20_KEYBYTES`, `crypto_core_hsalsa20_OUTPUTBYTES`, `crypto_core_ristretto255_add`, `crypto_core_ristretto255_BYTES`, `crypto_core_ristretto255_from_hash`, `crypto_core_ristretto255_HASHBYTES`, `crypto_core_ristretto255_is_valid_point`, `crypto_core_ristretto255_NONREDUCEDSCALARBYTES`, `crypto_core_ristretto255_random`, `crypto_core_ristretto255_scalar_add`, `crypto_core_ristretto255_scalar_complement`, `crypto_core_ristretto255_scalar_invert`, `crypto_core_ristretto255_scalar_mul`, `crypto_core_ristretto255_scalar_negate`, `crypto_core_ristretto255_scalar_random`, `crypto_core_ristretto255_scalar_reduce`, `crypto_core_ristretto255_scalar_sub`, `crypto_core_ristretto255_SCALARBYTES`, `crypto_core_ristretto255_sub`, `crypto_core_salsa20`, `crypto_core_salsa2012`, `crypto_core_salsa2012_CONSTBYTES`, `crypto_core_salsa2012_INPUTBYTES`, `crypto_core_salsa2012_KEYBYTES`, `crypto_core_salsa2012_OUTPUTBYTES`, `crypto_core_salsa208`, `crypto_core_salsa208_CONSTBYTES`, `crypto_core_salsa208_INPUTBYTES`, `crypto_core_salsa208_KEYBYTES`, `crypto_core_salsa208_OUTPUTBYTES`, `crypto_core_salsa20_CONSTBYTES`, `crypto_core_salsa20_INPUTBYTES`, `crypto_core_salsa20_KEYBYTES`, `crypto_core_salsa20_OUTPUTBYTES`, `crypto_generichash_blake2b`, `crypto_generichash_blake2b_BYTES`, `crypto_generichash_blake2b_BYTES_MAX`, `crypto_generichash_blake2b_BYTES_MIN`, `crypto_generichash_blake2b_final`, `crypto_generichash_blake2b_init`, `crypto_generichash_blake2b_init_salt_personal`, `crypto_generichash_blake2b_KEYBYTES`, `crypto_generichash_blake2b_KEYBYTES_MAX`, `crypto_generichash_blake2b_KEYBYTES_MIN`, `crypto_generichash_blake2b_keygen`, `crypto_generichash_blake2b_PERSONALBYTES`, `crypto_generichash_blake2b_salt_personal`, `crypto_generichash_blake2b_SALTBYTES`, `crypto_generichash_blake2b_STATEBYTES`, `crypto_generichash_blake2b_update`, `crypto_generichash_primitive`, `crypto_hash_primitive`, `crypto_kdf_blake2b_BYTES_MAX`, `crypto_kdf_blake2b_BYTES_MIN`, `crypto_kdf_blake2b_CONTEXTBYTES`, `crypto_kdf_blake2b_derive_from_key`, `crypto_kdf_blake2b_KEYBYTES`, `crypto_kdf_primitive`, `crypto_kx_primitive`, `crypto_onetimeauth_keygen`, `crypto_onetimeauth_poly1305`, `crypto_onetimeauth_poly1305_BYTES`, `crypto_onetimeauth_poly1305_final`, `crypto_onetimeauth_poly1305_init`, `crypto_onetimeauth_poly1305_KEYBYTES`, `crypto_onetimeauth_poly1305_keygen`, `crypto_onetimeauth_poly1305_STATEBYTES`, `crypto_onetimeauth_poly1305_update`, `crypto_onetimeauth_poly1305_verify`, `crypto_onetimeauth_primitive`, `crypto_pwhash_alg_argon2i13`, `crypto_pwhash_alg_argon2id13`, `crypto_pwhash_alg_default`, `crypto_pwhash_argon2i`, `crypto_pwhash_argon2i_alg_argon2i13`, `crypto_pwhash_argon2i_BYTES_MAX`, `crypto_pwhash_argon2i_BYTES_MIN`, `crypto_pwhash_argon2i_memlimit_interactive`, `crypto_pwhash_argon2i_memlimit_max`, `crypto_pwhash_argon2i_memlimit_min`, `crypto_pwhash_argon2i_memlimit_moderate`, `crypto_pwhash_argon2i_memlimit_sensitive`, `crypto_pwhash_argon2i_opslimit_interactive`, `crypto_pwhash_argon2i_opslimit_max`, `crypto_pwhash_argon2i_opslimit_min`, `crypto_pwhash_argon2i_opslimit_moderate`, `crypto_pwhash_argon2i_opslimit_sensitive`, `crypto_pwhash_argon2i_passwd_max`, `crypto_pwhash_argon2i_passwd_min`, `crypto_pwhash_argon2i_SALTBYTES`, `crypto_pwhash_argon2i_str`, `crypto_pwhash_argon2i_str_needs_rehash`, `crypto_pwhash_argon2i_str_verify`, `crypto_pwhash_argon2i_STRBYTES`, `crypto_pwhash_argon2i_strprefix`, `crypto_pwhash_argon2id`, `crypto_pwhash_argon2id_alg_argon2id13`, `crypto_pwhash_argon2id_BYTES_MAX`, `crypto_pwhash_argon2id_BYTES_MIN`, `crypto_pwhash_argon2id_memlimit_interactive`, `crypto_pwhash_argon2id_memlimit_max`, `crypto_pwhash_argon2id_memlimit_min`, `crypto_pwhash_argon2id_memlimit_moderate`, `crypto_pwhash_argon2id_memlimit_sensitive`, `crypto_pwhash_argon2id_opslimit_interactive`, `crypto_pwhash_argon2id_opslimit_max`, `crypto_pwhash_argon2id_opslimit_min`, `crypto_pwhash_argon2id_opslimit_moderate`, `crypto_pwhash_argon2id_opslimit_sensitive`, `crypto_pwhash_argon2id_passwd_max`, `crypto_pwhash_argon2id_passwd_min`, `crypto_pwhash_argon2id_SALTBYTES`, `crypto_pwhash_argon2id_str`, `crypto_pwhash_argon2id_str_needs_rehash`, `crypto_pwhash_argon2id_str_verify`, `crypto_pwhash_argon2id_STRBYTES`, `crypto_pwhash_argon2id_strprefix`, `crypto_pwhash_memlimit_interactive`, `crypto_pwhash_memlimit_max`, `crypto_pwhash_memlimit_min`, `crypto_pwhash_memlimit_moderate`, `crypto_pwhash_memlimit_sensitive`, `crypto_pwhash_opslimit_interactive`, `crypto_pwhash_opslimit_max`, `crypto_pwhash_opslimit_min`, `crypto_pwhash_opslimit_moderate`, `crypto_pwhash_opslimit_sensitive`, `crypto_pwhash_passwd_max`, `crypto_pwhash_passwd_min`, `crypto_pwhash_primitive`, `crypto_pwhash_scryptsalsa208sha256_ll`, `crypto_pwhash_scryptsalsa208sha256_memlimit_interactive`, `crypto_pwhash_scryptsalsa208sha256_memlimit_max`, `crypto_pwhash_scryptsalsa208sha256_memlimit_min`, `crypto_pwhash_scryptsalsa208sha256_memlimit_sensitive`, `crypto_pwhash_scryptsalsa208sha256_opslimit_interactive`, `crypto_pwhash_scryptsalsa208sha256_opslimit_max`, `crypto_pwhash_scryptsalsa208sha256_opslimit_min`, `crypto_pwhash_scryptsalsa208sha256_opslimit_sensitive`, `crypto_pwhash_scryptsalsa208sha256_passwd_max`, `crypto_pwhash_scryptsalsa208sha256_passwd_min`, `crypto_pwhash_scryptsalsa208sha256_strprefix`, `crypto_pwhash_str_alg`, `crypto_pwhash_strprefix`, `crypto_scalarmult_curve25519`, `crypto_scalarmult_curve25519_base`, `crypto_scalarmult_curve25519_BYTES`, `crypto_scalarmult_curve25519_SCALARBYTES`, `crypto_scalarmult_primitive`, `crypto_scalarmult_ristretto255`, `crypto_scalarmult_ristretto255_base`, `crypto_scalarmult_ristretto255_BYTES`, `crypto_scalarmult_ristretto255_SCALARBYTES`, `crypto_secretbox_keygen`, `crypto_secretbox_MESSAGEBYTES_MAX`, `crypto_secretbox_primitive`, `crypto_secretbox_xchacha20poly1305_detached`, `crypto_secretbox_xchacha20poly1305_easy`, `crypto_secretbox_xchacha20poly1305_KEYBYTES`, `crypto_secretbox_xchacha20poly1305_MACBYTES`, `crypto_secretbox_xchacha20poly1305_MESSAGEBYTES_MAX`, `crypto_secretbox_xchacha20poly1305_NONCEBYTES`, `crypto_secretbox_xchacha20poly1305_open_detached`, `crypto_secretbox_xchacha20poly1305_open_easy`, `crypto_secretbox_xsalsa20poly1305`, `crypto_secretbox_xsalsa20poly1305_BOXZEROBYTES`, `crypto_secretbox_xsalsa20poly1305_KEYBYTES`, `crypto_secretbox_xsalsa20poly1305_keygen`, `crypto_secretbox_xsalsa20poly1305_MACBYTES`, `crypto_secretbox_xsalsa20poly1305_MESSAGEBYTES_MAX`, `crypto_secretbox_xsalsa20poly1305_NONCEBYTES`, `crypto_secretbox_xsalsa20poly1305_open`, `crypto_secretbox_xsalsa20poly1305_ZEROBYTES`, `crypto_secretstream_xchacha20poly1305_tag_final`, `crypto_secretstream_xchacha20poly1305_tag_message`, `crypto_secretstream_xchacha20poly1305_tag_push`, `crypto_secretstream_xchacha20poly1305_tag_rekey`, `crypto_shorthash_keygen`, `crypto_shorthash_primitive`, `crypto_shorthash_siphash24`, `crypto_shorthash_siphash24_BYTES`, `crypto_shorthash_siphash24_KEYBYTES`, `crypto_shorthash_siphashx24`, `crypto_shorthash_siphashx24_BYTES`, `crypto_shorthash_siphashx24_KEYBYTES`, `crypto_sign_ed25519`, `crypto_sign_ed25519_BYTES`, `crypto_sign_ed25519_detached`, `crypto_sign_ed25519_keypair`, `crypto_sign_ed25519_MESSAGEBYTES_MAX`, `crypto_sign_ed25519_open`, `crypto_sign_ed25519_PUBLICKEYBYTES`, `crypto_sign_ed25519_SECRETKEYBYTES`, `crypto_sign_ed25519_seed_keypair`, `crypto_sign_ed25519_SEEDBYTES`, `crypto_sign_ed25519_sk_to_seed`, `crypto_sign_ed25519_verify_detached`, `crypto_sign_ed25519ph_final_create`, `crypto_sign_ed25519ph_final_verify`, `crypto_sign_ed25519ph_init`, `crypto_sign_ed25519ph_STATEBYTES`, `crypto_sign_ed25519ph_update`, `crypto_sign_edwards25519sha512batch`, `crypto_sign_edwards25519sha512batch_keypair`, `crypto_sign_edwards25519sha512batch_open`, `crypto_sign_final_create`, `crypto_sign_final_verify`, `crypto_sign_init`, `crypto_sign_MESSAGEBYTES_MAX`, `crypto_sign_primitive`, `crypto_sign_STATEBYTES`, `crypto_sign_update`, `crypto_stream_chacha20_ietf_keygen`, `crypto_stream_chacha20_keygen`, `crypto_stream_keygen`, `crypto_stream_MESSAGEBYTES_MAX`, `crypto_stream_primitive`, `crypto_stream_salsa20`, `crypto_stream_salsa2012`, `crypto_stream_salsa2012_KEYBYTES`, `crypto_stream_salsa2012_keygen`, `crypto_stream_salsa2012_MESSAGEBYTES_MAX`, `crypto_stream_salsa2012_NONCEBYTES`, `crypto_stream_salsa2012_xor`, `crypto_stream_salsa208`, `crypto_stream_salsa208_KEYBYTES`, `crypto_stream_salsa208_keygen`, `crypto_stream_salsa208_MESSAGEBYTES_MAX`, `crypto_stream_salsa208_NONCEBYTES`, `crypto_stream_salsa208_xor`, `crypto_stream_salsa20_keygen`, `crypto_stream_xchacha20_keygen`, `crypto_stream_xsalsa20`, `crypto_stream_xsalsa20_KEYBYTES`, `crypto_stream_xsalsa20_keygen`, `crypto_stream_xsalsa20_MESSAGEBYTES_MAX`, `crypto_stream_xsalsa20_NONCEBYTES`, `crypto_stream_xsalsa20_xor`, `crypto_stream_xsalsa20_xor_ic`, `crypto_verify_16_BYTES`, `crypto_verify_32_BYTES`, `crypto_verify_64`, `crypto_verify_64_BYTES`, `randombytes`, `randombytes_close`, `randombytes_implementation_name`, `randombytes_internal_implementation`, `randombytes_set_implementation`, `randombytes_stir`, `randombytes_sysrandom_implementation`, `sodium_allocarray`, `sodium_base642bin`, `sodium_base64_encoded_len`, `sodium_bin2base64`, `sodium_bin2hex`, `sodium_hex2bin`, `sodium_init`, `sodium_library_minimal`, `sodium_library_version_major`, `sodium_library_version_minor`, `sodium_misuse`, `sodium_runtime_has_aesni`, `sodium_runtime_has_avx`, `sodium_runtime_has_avx2`, `sodium_runtime_has_avx512f`, `sodium_runtime_has_neon`, `sodium_runtime_has_pclmul`, `sodium_runtime_has_rdrand`, `sodium_runtime_has_sse2`, `sodium_runtime_has_sse3`, `sodium_runtime_has_sse41`, `sodium_runtime_has_ssse3`, `sodium_set_misuse_handler`, `sodium_stackzero`, `sodium_version_string`\n\n## License\n\n[MIT](LICENSE.md)\n","readmeFilename":"README.md","users":{"akiva":true},"contributors":[{"name":"Emil Bay","email":"github@tixz.dk","url":"http://bayes.dk"},{"name":"Mathias Buus","email":"mathiasbuus@gmail.com","url":"https://mafinto.sh"},{"name":"Christophe Diederichs","email":"chm-diederichs@hyperdivision.dk"}]}