{"_id":"@altfreq/isomorphic-argon2","_rev":"1-f184dadd98c60160d214ec066807b9ae","name":"@altfreq/isomorphic-argon2","dist-tags":{"latest":"1.0.3-unstable.0"},"versions":{"1.0.2-unstable.0":{"name":"@altfreq/isomorphic-argon2","version":"1.0.2-unstable.0","description":"Argon2 hash library for Browser, NodeJs and React-Native","main":"./dist/isomorphic-argon2.main.js","browser":"./dist/isomorphic-argon2.browser.js","react-native":"./dist/isomorphic-argon2.native.js","repository":{"type":"git","url":"git+https://github.com/Sphereon-OpenSource/isomorphic-argon2.git"},"author":{"name":"Sphereon BV"},"license":"Apache-2.0","scripts":{"test":"run-s build:* && run-s test:*","test:lint":"eslint . --ext .ts","test:prettier":"prettier \"{lib,__tests__}/**/*.[t|j]s\" --list-different","test:node":"jest -i __tests__/nodejs.spec.ts","test:browser":"karma start karma.conf.js --single-run","fix":"run-s fix:*","fix:prettier":"prettier \"{lib,__tests__}/**/*.[t|j]s\" --write","fix:lint":"eslint . --ext .ts --fix","build":"run-s build:*","build:tsc":"tsc -p tsconfig.main.json","build:webpack":"webpack"},"dependencies":{"argon2-browser":"^1.18.0","uint8arrays":"^3.1.0"},"devDependencies":{"@babel/core":"^7.18.10","@sphereon/react-native-argon2":"^2.0.7","@babel/preset-env":"^7.18.10","@babel/preset-typescript":"^7.18.6","@jest/create-cache-key-function":"^27.5.1","@types/jest":"^27.5.2","@typescript-eslint/eslint-plugin":"^5.33.1","@typescript-eslint/parser":"^5.33.1","babel-loader":"^8.2.5","base64-loader":"^1.0.0","eslint":"^8.21.0","eslint-config-prettier":"^8.5.0","eslint-plugin-eslint-comments":"^3.2.0","eslint-plugin-import":"^2.26.0","ignore-loader":"^0.1.2","jasmine":"^4.3.0","jasmine-core":"^4.3.0","jest":"^27.5.1","karma":"^6.4.0","karma-chrome-launcher":"^3.1.1","karma-jasmine":"^5.1.0","karma-webpack":"^5.0.0","npm-run-all":"^4.1.5","prettier":"^2.7.1","react-native":"^0.68.3","ts-jest":"^27.1.5","ts-loader":"^9.3.1","typescript":"^4.6.4","url-loader":"^4.1.1","webpack":"^5.74.0","webpack-cli":"^4.10.0"},"peerDependencies":{"react-native":"^0.60.0","@sphereon/react-native-argon2":"^2.0.7"},"prettier":{"singleQuote":true,"printWidth":150},"gitHead":"3b2122d2b9bde72d0683f2e527928470661ad6a9","bugs":{"url":"https://github.com/Sphereon-OpenSource/isomorphic-argon2/issues"},"homepage":"https://github.com/Sphereon-OpenSource/isomorphic-argon2#readme","_id":"@altfreq/isomorphic-argon2@1.0.2-unstable.0","_nodeVersion":"18.12.1","_npmVersion":"8.19.2","dist":{"integrity":"sha512-4EY1mPgmpdWGxKA0JSDZEdY+hIBL2OlPn62BuoiRptUu79Gfx62JzdrRy7Q2I/B04mPDTCLCUGSDZUqOoeTs1g==","shasum":"128830b6d7bda414442f8e118cebba736563960b","tarball":"https://registry.npmjs.org/@altfreq/isomorphic-argon2/-/isomorphic-argon2-1.0.2-unstable.0.tgz","fileCount":3,"unpackedSize":18386,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAaMWYSmFG+mQJys/ink3fVW0iI0yoPl1cKRbCVZj0ygAiAr8+SWZXSx2JtRbMw8auz7G40p8J2pv7lDHyabGS+YpQ=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjf/paACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpiwg/7BCCaC3rLlY1C/5KcCofjdj5/DbUcvONo0RONpu2Ou6y7VIoP\r\nO7Me/SbNmyP6w0jRRlIR2Yxm1W3DAWIv3DLrr/KZIL7bKH/1i8p1IS8On/yh\r\nv14jPeLN0GO4v5lEBaavqYlgtzbPn8m/Mvpzk5WWUEKMKY/cvZU42XGRNtl5\r\nCIA9NPVoKPrGsAPeC/BD+qT4/YwDMjvIRiq1P35+KHpA4YX4VL+V5+Vk6Mmr\r\nMC1nYNIMpGQ4zmFB6lFMpdyfrWcmoQ9qXWBIwGwWa9VyIFYM9SIHxcwq3Kqz\r\nrVRDlkOSWVDfFWfPYo0Tam8Us4+fjUVic+XQH1Oi8gJ7qMxR0VFqbWmOMwot\r\nhkyFsb/sETEb8oaOyaAOUudvEoXdN76a3baQALEDsF7gAY0mve/i4JtJtA+t\r\ntmfvdZOb74KQ+DAU76deXyGbkV1H/Kr17d10XZTU2b+cIUcTNBRJwXSwAlhe\r\naidnNfEJCfWpDo2qSkOtdkEN2/w6aAYmfcwZdolWi8R67z2FAAujr4nJcNda\r\nYQqCqLy3C6Ww+XFh3Y1JHR/VhQGUkP8f96g+6qN2KkppKS+ITxVMYm45zXm9\r\nW1xmjnEmIE6RdkGpQOsW9Z6wleU9sURXwPj8aDFaVeTnePyCHMTgDaPa+gaQ\r\nK6XqRThy1zqimoKsAwt1tpRJMk3a6IM3sjI=\r\n=XJ7m\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"altfreq","email":"AltFreq07@gmail.com"},"directories":{},"maintainers":[{"name":"altfreq","email":"AltFreq07@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/isomorphic-argon2_1.0.2-unstable.0_1669331546551_0.8847345856507141"},"_hasShrinkwrap":false},"1.0.3-unstable.0":{"name":"@altfreq/isomorphic-argon2","version":"1.0.3-unstable.0","description":"Argon2 hash library for Browser, NodeJs and React-Native","main":"./dist/isomorphic-argon2.main.js","browser":"./dist/isomorphic-argon2.browser.js","react-native":"./dist/isomorphic-argon2.native.js","repository":{"type":"git","url":"git+https://github.com/Sphereon-OpenSource/isomorphic-argon2.git"},"author":{"name":"Sphereon BV"},"license":"Apache-2.0","scripts":{"test":"run-s build:* && run-s test:*","test:lint":"eslint . --ext .ts","test:prettier":"prettier \"{lib,__tests__}/**/*.[t|j]s\" --list-different","test:node":"jest -i __tests__/nodejs.spec.ts","test:browser":"karma start karma.conf.js --single-run","fix":"run-s fix:*","fix:prettier":"prettier \"{lib,__tests__}/**/*.[t|j]s\" --write","fix:lint":"eslint . --ext .ts --fix","build":"run-s build:*","build:tsc":"tsc -p tsconfig.main.json","build:webpack":"webpack"},"dependencies":{"argon2-browser":"^1.18.0","uint8arrays":"^3.1.0"},"devDependencies":{"@babel/core":"^7.18.10","@babel/preset-env":"^7.18.10","@babel/preset-typescript":"^7.18.6","@jest/create-cache-key-function":"^27.5.1","@types/jest":"^27.5.2","@typescript-eslint/eslint-plugin":"^5.33.1","@typescript-eslint/parser":"^5.33.1","babel-loader":"^8.2.5","base64-loader":"^1.0.0","eslint":"^8.21.0","eslint-config-prettier":"^8.5.0","eslint-plugin-eslint-comments":"^3.2.0","eslint-plugin-import":"^2.26.0","ignore-loader":"^0.1.2","jasmine":"^4.3.0","jasmine-core":"^4.3.0","jest":"^27.5.1","karma":"^6.4.0","karma-chrome-launcher":"^3.1.1","karma-jasmine":"^5.1.0","karma-webpack":"^5.0.0","npm-run-all":"^4.1.5","prettier":"^2.7.1","ts-jest":"^27.1.5","ts-loader":"^9.3.1","typescript":"^4.6.4","url-loader":"^4.1.1","webpack":"^5.74.0","webpack-cli":"^4.10.0"},"prettier":{"singleQuote":true,"printWidth":150},"types":"./dist/isomorphic-argon2.main.d.ts","bugs":{"url":"https://github.com/Sphereon-OpenSource/isomorphic-argon2/issues"},"homepage":"https://github.com/Sphereon-OpenSource/isomorphic-argon2#readme","_id":"@altfreq/isomorphic-argon2@1.0.3-unstable.0","_nodeVersion":"18.12.1","_npmVersion":"8.19.2","dist":{"integrity":"sha512-+YugGXt9+tXw4Jcv283pQONDMcW4UCA67asMMSIBFbgYA5+CNGzDpvojTkOmOU+hvTDjOoslK+6rGl7ePX2Xng==","shasum":"ab4308268accf3283f7c0e9b53d8acef04969748","tarball":"https://registry.npmjs.org/@altfreq/isomorphic-argon2/-/isomorphic-argon2-1.0.3-unstable.0.tgz","fileCount":13,"unpackedSize":77079,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDZ9kltt3Qqk6TUR0uBG/qQ0M45jiCChGWZ76vMn7/ngAiBuQlBfUhEWZlfNxDbpyBaF0sCeFgFTBZAcHGz8VBpTyw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjgAL3ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrwBA//ULab21e2wpbOv6zoG/4bv1ioQq0CPxjHigU92B6dx1zdyVV2\r\nUDNMzsMUfmbRmf6LfypyX1BXntqVGx0XPtc5IAXagRfRuNO+Y1NeQzjEdc93\r\neF2mo9vClOyBIYsuDH9D/916X32drPi+HQOZvKNYpN8PpeZNNdO/mAsgRHHW\r\n45QcU83jduIPkhIBwGCS0KDfsxqnKKOliF2dcETHRjiU+H6m4uEBEhLElCnp\r\npG+BIeYnOxfS/0pSk5aKaGlfpt9PZ9Sb/ymAE9umRRuEzJikw+JmBE0JfVFg\r\n8Rp8h1uDh57MX1bPzCyNH3TLyJuLi2et4NM5C1FldHjE/JptPtMmstcWonNE\r\nXJJhCWmyfXkvOi9bQMSPd6MyiBcctieipb5OdvoZqdGp/SfW6xpJAwyX3XMP\r\ntpNDkX/nbKu/zBlW1yfUzZ1RIeOPKoa000Q4yw7Y6JEc6NfEEiaWHhkt5zNq\r\n/vyS0+MDUGNCCWayedAT0/TauJIt2t7zYDbNTO7+IsFyivEv7QF1aIQBQlLP\r\npZvDWfwWqRDScdaqYo8GOtvX0jEXN3kD+/g+Ls7UbhLaUwJ+5Q3iyx3EQgps\r\ng4NKSvgkkywe49vBO2EAlzTkztzv2R3fPmlpAFNNmpQ0CovwcNHAuJS17mOw\r\nk/IpgvdoLw+cIwff9d2lOv2OnxYQ0z8porw=\r\n=D+k2\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"altfreq","email":"AltFreq07@gmail.com"},"directories":{},"maintainers":[{"name":"altfreq","email":"AltFreq07@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/isomorphic-argon2_1.0.3-unstable.0_1669333751011_0.44084440517783197"},"_hasShrinkwrap":false}},"time":{"created":"2022-11-24T23:12:26.490Z","1.0.2-unstable.0":"2022-11-24T23:12:26.690Z","modified":"2022-11-24T23:49:11.317Z","1.0.3-unstable.0":"2022-11-24T23:49:11.232Z"},"maintainers":[{"name":"altfreq","email":"AltFreq07@gmail.com"}],"description":"Argon2 hash library for Browser, NodeJs and React-Native","homepage":"https://github.com/Sphereon-OpenSource/isomorphic-argon2#readme","repository":{"type":"git","url":"git+https://github.com/Sphereon-OpenSource/isomorphic-argon2.git"},"author":{"name":"Sphereon BV"},"bugs":{"url":"https://github.com/Sphereon-OpenSource/isomorphic-argon2/issues"},"license":"Apache-2.0","readme":"<h1 align=\"center\">\r\n  <br>\r\n  <a href=\"https://www.sphereon.com\"><img src=\"https://sphereon.com/content/themes/sphereon/assets/img/logo.svg\" alt=\"Sphereon\" width=\"400\"></a>\r\n  <br>Isomorphic Argon2 hash generator\r\n  <br>\r\n</h1>\r\n\r\n[![CI](https://github.com/Sphereon-Opensource/isomorphic-argon2/actions/workflows/main.yaml/badge.svg)](https://github.com/Sphereon-Opensource/isomorphic-argon2/actions/workflows/main.yaml) [![NPM Version](https://img.shields.io/npm/v/@sphereon/isomorphic-argon2.svg)](https://npm.im/@sphereon/isomorphic-argon2)\r\n\r\n# Isomorphic Argon2 hash generator\r\n\r\nArgon2 is a password-hashing function, which was the winner of\r\nthe [Password Hashing Competition](https://www.password-hashing.net/).\r\n\r\nThis is an isomorphic library which can be run in the browser, NodeJS and React-Native.\r\n\r\nFor browser and NodeJS it is using the [argon2-browser](https://github.com/antelle/argon2-browser) package and for\r\nReact-Native it is using the [@sphereon/react-native-argon2](https://github.com/Sphereon-Opensource/react-native-argon2)\r\npackage.\r\n\r\n## NodeJS and Browser notice\r\n\r\nWhen using this package in the browser or a Node environment, you can ignore the warning about the missing peer\r\ndependency for `@sphereon/react-native-argon2` and `react-native`. Obviously these are not needed for non react-native\r\nprojects.\r\n\r\n## React Native notice\r\n\r\nNext to NodeJS and Browser support, this package also works with react-native. You do need to install the following\r\npackage using your package manager. This has to do with auto-linking not being available for transitive dependencies. We\r\nneed some native Argon2 Android/IOS modules on React Native because WASM isn't available. As such you will have to\r\ninstall the dependency directly into your app.\r\nSee [this ticket](https://github.com/react-native-community/cli/issues/870) for a discussion about this issue.\r\n\r\nnpm: `npm install @sphereon/react-native-argon2`\r\n\r\nyarn: `yarn add @sphereon/react-native-argon2`\r\n\r\n## Examples\r\n\r\nAlthough NodeJS and React-Native have different entry points in the package, using them in your code is exactly the same\r\n\r\n### NodeJS and React-Native\r\n\r\n```typescript\r\nimport { Argon2, Argon2Mode } from '@sphereon/isomorphic-argon2';\r\n\r\nawait Argon2.hash('test input', 'my salt value here', {\r\n  hashLength: 32,\r\n  memory: 1024,\r\n  parallelism: 1,\r\n  mode: Argon2Mode.Argon2id,\r\n  iterations: 1,\r\n}).then((hash) => console.log(`${hash.hex}\\n${hash.encoded}`));\r\n\r\n// output:\r\n// e5db767555a025f007b3b9f4176ef51ef7bd3aea1dcb99b8c382ca68bdf959cc\r\n// $argon2id$v=19$m=1024,t=1,p=1$c2FsdHNhbHNhbHNhbHRzYWxzYWx0$5dt2dVWgJfAHs7n0F271Hve9Ouody5m4w4LKaL35Wcw\r\n```\r\n\r\n### Browser\r\n\r\nA bundle, you can use in your browser, is shipped as part of this package. It is called `isomorphic-argon2.browser.js`.\r\nThe example HTML file below contains a reference to the browser bundle (isomorphic-argon2.browser.js). The actual\r\nexample code is in the `browser.demo.js` file below.\r\n\r\n`index.html`:\r\n\r\n```html\r\n<!DOCTYPE html>\r\n<html lang=\"en\">\r\n  <head>\r\n    <meta charset=\"UTF-8\" />\r\n    <title>Isomorphic-Argon2 Browser Demo</title>\r\n  </head>\r\n  <body>\r\n    <h1>Isomorphic-Argon2 Browser Demo</h1>\r\n    <script src=\"isomorphic-argon2.browser.js\"></script>\r\n    <pre>Output should appear here. If not, please check DevTools in your browser.</pre>\r\n    <script src=\"browser.demo.js\"></script>\r\n  </body>\r\n</html>\r\n```\r\n\r\nThe `browser.demo.js` file looks like this:\r\n\r\n```typescript\r\nArgon2.hash('test', 'my salt value here', {\r\n  hashLength: 32,\r\n  memory: 1024,\r\n  parallelism: 1,\r\n  mode: Argon2Mode.Argon2id,\r\n  iterations: 1,\r\n}).then((hash) => {\r\n  document.querySelector('pre').innerText = 'Seems like it worked:\\n' + `Encoded: ${hash.encoded}\\n` + `Hex: ${hash.hex}\\n`;\r\n});\r\n```\r\n\r\nThe output in your browser would be something like:\r\n\r\n> Isomorphic-Argon2 Browser Demo\r\n>\r\n> Seems like it worked:\r\n> Encoded: $argon2id$v=19$m=1024,t=1,p=1$c2FsdHNhbHNhbHNhbHRzYWxzYWx0$5dt2dVWgJfAHs7n0F271Hve9Ouody5m4w4LKaL35Wcw\r\n> Hex: e5db767555a025f007b3b9f4176ef51ef7bd3aea1dcb99b8c382ca68bdf959cc\r\n\r\n## Build\r\n\r\n```shell\r\nyarn build\r\n```\r\n\r\n## Test\r\n\r\nThe test command runs:\r\n\r\n- `eslint`\r\n- `prettier`\r\n- `jest`\r\n- `karma`\r\n\r\n```shell\r\nyarn test\r\n```\r\n\r\n### Utility scripts\r\n\r\nThere are several other utility scripts that help with development.\r\n\r\n- `yarn fix` - runs `eslint --fix` as well as `prettier` to fix code style.\r\n","readmeFilename":"README.md"}