{"repo":"alexedwards/argon2id","free":true,"listed":false,"github":"https://github.com/alexedwards/argon2id","clone":"git clone https://github.com/alexedwards/argon2id.git","description":"Argon2id password hashing and verification for Go","language":"Go","stars":685,"topics":["go","golang","argon2"],"license":"MIT","category":"api-integrations-sdks","readme_excerpt":"Argon2id This package provides a convenience wrapper around Go's argon2 implementation, making it simpler to securely hash and verify passwords using Argon2. It enforces use of the Argon2id algorithm variant and cryptographically-secure random salts. Usage Changing the Parameters When creating a hash you can and should configure the parameters to be suitable for the environment that the code is running in. The parameters are: Memory — The amount of memory used by the Argon2 algorithm (in kibibytes). Iterations — The number of iterations (or passes) over the memory. Parallelism — The number of threads (or lanes) used by the algorithm. Salt length — Length of the random salt. 16 bytes is recommended for password hashing. Key length — Length of the generated key (or password hash). 16 bytes or more is recommended. The Memory and Iterations parameters control the computational cost of hashing the password. The higher these figures are, the greater the cost of generating the hash and the longer the runtime. It also follows that the greater the cost will be for any attacker trying to guess the password. If the code is running on a machine with multiple cores, then you can decrease the runtime without reducing the cost by increasing the Parallelism parameter. This controls the number of threads that the work is spread across. Important note: Changing the value of the Parallelism parameter changes the hash output. For guidance and an outline process for choosing appropriate parameter","default_branch":null,"files":null,"tree":[],"storefront":"/r/alexedwards","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/alexedwards/argon2id/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}