Argon2-generaattori
Luo Argon2id-salasanatiiviste satunnaisella 16 tavun suolalla ja valitsemillasi muistin, iteraatioiden, rinnakkaisuuden ja tiivisteen pituuden asetuksilla. Muistin enimmäismäärä on 64 MiB ja iteraatioiden 4; oletusarvot noudattavat OWASP:n perustasoa: 19 MiB ja 2 läpikäyntiä. Työkalu palauttaa standardin PHC-merkkijonon, joka alkaa muodolla $argon2id$v=19$ ja jonka PHP, libsodium ja argon2-kirjastot vahvistavat. Salasanaa ei koskaan näytetä.
Usein kysytyt kysymykset
Mikä on Argon2id?
Argon2 voitti Password Hashing Competition -kilpailun 2015 ja on määritelty RFC:ssä 9106. Argon2id on yhdistelmäversio, joka torjuu sekä sivukanava- että GPU-hyökkäykset. OWASP ja RFC suosittelevat sitä salasanojen tallennukseen.
Mitä muistin, iteraatioiden ja rinnakkaisuuden asetukset tarkoittavat?
Muisti määrittää, montako MiB:tä kukin tiiviste täyttää, iteraatiot määrittävät, montako läpikäyntiä muistille tehdään, ja rinnakkaisuus määrittää kaistojen määrän. Suurempi muisti ja useammat iteraatiot tekevät jokaisesta arvauksesta hyökkääjille kalliimman. Tässä muistin arvo on 1–64 MiB, iteraatioiden 1–4 ja rinnakkaisuuden 1–4.
Mitä asetuksia minun pitäisi käyttää?
Oletusarvot ovat 19 MiB, 2 iteraatiota ja 1 kaista, jotka ovat OWASP:n vähimmäisasetukset Argon2idille. PHPn oletusarvo on 64 MiB ja 4 iteraatiota, jotka voit ottaa käyttöön myös täällä. Tuotantokäytössä käytä kirjautumista kohden niin paljon muistia kuin palvelimillasi on varaa.
Miksi muistin ja iteraatioiden arvoja on rajoitettu?
Jokainen tiiviste varaa pyytämäsi määrän muistia ja suorittaa kaikki läpikäynnit jaetulla palvelimella. Rajaamalla muistin 64 MiB:hen ja iteraatiot neljään kukin pyyntö valmistuu sekunnin murto-osassa ja kattaa silti yleiset tuotantoasetukset.
Mitä tulostemerkkijono sisältää?
Tulos, kuten $argon2id$v=19$m=19456,t=2,p=1$, jota seuraavat suola ja tiiviste, luettelee muunnelman, version, muistin KiB-määrän, iteraatiot ja kaistojen määrän. Suola ja tiiviste ovat täytemerkittömässä Base64-muodossa. Tallenna koko merkkijono, sillä vahvistuksessa kaikki parametrit luetaan siitä.
Miksi tiiviste muuttuu joka kerta?
Jokaisessa pyynnössä käytetään uutta satunnaista 16 tavun suolaa, joten sama salasana tuottaa joka kerta eri merkkijonon. Kaikki niistä vahvistetaan oikein oikealla salasanalla.
Voinko valita tiivisteen pituuden?
Kyllä, 16–64 tavua; oletusarvo on 32 tavua. Pidemmät tunnisteet eivät vaikeuta arvaamista, joten 32 tavua riittää salasanojen tallennukseen.
Mitkä järjestelmät hyväksyvät nämä tiivisteet?
PHP password_verify, libsodiumin crypto_pwhash_str_verify, argon2-paketti Node.js-kielelle, argon2-cffi Pythonille ja Spring Security lukevat kaikki PHC-merkkijonomuotoa. Tämän sivuston Argon2-verifier tarkistaa ne myös.
Tallennetaanko salasana tai palautetaanko se?
Ei. Salasanaa käytetään vain muistissa hajautusarvon laskemiseen, ja se poistetaan vastauksesta. Sitä ei koskaan kirjata lokiin eikä tallenneta.
Voinko luoda Argon2i- tai Argon2d-hajautusarvoja?
Ei. Työkalu tuottaa vain Argon2id-hajautusarvoja, koska se on salasanoille suositeltu muunnelma. Argon2-verifier hyväksyy silti Argon2i- ja Argon2d-hajautusarvot.