Kigeuzi cha Bure

Nenosiri la Fiche Jenereta

Tengeneza heshi salama za nenosiri la bcrypt papo hapo kwenye kivinjari chako. Chagua kigezo chako cha gharama na manenosiri ya heshi upande wa mteja - ya faragha kabisa na bila malipo.

Kuhusu zana hii

bcrypt ni kipengele cha kurudisha nyuma nenosiri kilichoundwa na Niels Provos na David Mazières mwaka wa 1999, kilichotokana na msimbo wa Blowfish. Tofauti na kazi za reli za madhumuni ya jumla kama vile SHA-256, bcrypt inafanya kazi polepole kimakusudi - na inayoweza kusanidiwa polepole, kupitia kigezo cha gharama - ambayo ndiyo sifa ambayo hasher inahitaji. Chaguo za kukokotoa za heshi zenye kasi huruhusu washambuliaji kulazimisha wagombeaji zaidi kwa sekunde; polepole huwawekea mipaka.

bcrypt pia hujumuisha chumvi kwa kila neno la siri kiotomatiki, ikiondoa darasa zima la mashambulizi kulingana na jedwali za upinde wa mvua zilizokokotwa mapema. Kigezo cha chumvi na gharama huhifadhiwa kama sehemu ya pato la bcrypt, kwa hivyo uthibitishaji unahitaji tu heshi iliyohifadhiwa na nenosiri la mgombea - hakuna udhibiti tofauti wa chumvi. Mchanganyiko huu wa polepole, chumvi, na umbizo linalojitosheleza ulifanya bcrypt kuwa heshi chaguomsingi ya nenosiri kwa miongo miwili na chaguo bora leo.

Njia mbadala za kisasa zipo. Argon2 ilishinda Shindano la Nywila la Hashing la 2015 na inatoa ugumu wa kumbukumbu pamoja na ugumu wa wakati. scrypt inatoa mali sawa. Kwa miundo mpya, Argon2id ni chaguo lililopendekezwa. bcrypt bado inakubalika na kusambazwa kwa wingi, hasa katika mazingira ambapo Argon2 haipatikani.

Kwa nini Nywila za Hash zilizo na bcrypt

Kuhifadhi manenosiri kama maandishi wazi ni utovu wa nidhamu. Kuzihifadhi kwa heshi ya haraka kama SHA-256 si bora zaidi - GPU za kisasa hukusanya mabilioni ya heshi SHA-256 kwa sekunde, hivyo kufanya mashambulizi ya kikatili dhidi ya nenosiri lolote la kawaida linalowezekana kwa saa. Ucheleweshaji wa kimakusudi wa bcrypt huhamisha uchumi: kwa gharama ya kipengele cha 12, mshambulizi hutumia takriban ms 250 kwa kila nenosiri la mgombea, na kufanya nguvu ya kikatili kutowezekana kwa nenosiri lolote lisilo la maana.

chumvi ya kiotomatiki ya nenosiri la bcrypt pia hushinda mashambulizi ya jedwali la upinde wa mvua. Watumiaji wawili walio na nenosiri sawa hutoa heshi tofauti za bcrypt kwa sababu chumvi zao hutofautiana. Kuhatarisha hifadhidata ya nenosiri hakuruhusu mvamizi kutambua kwa haraka manenosiri ya kawaida au vibao vya jedwali lililokokotwa mapema.

Jinsi ya kutumia

Andika nenosiri, chagua gharama, pata heshi.

  1. Ingiza nenosiri: Andika nenosiri kwa heshi. Chombo kinaendesha kabisa kwenye kivinjari chako; nenosiri halisambazwi popote.
  2. Chagua kipengele cha gharama: Chaguomsingi ni 10, huzalisha takriban 100 ms wakati wa kuharakisha kwenye maunzi ya kisasa. 12 inapendekezwa kwa programu mpya (250 ms). Thamani za juu huongeza usalama kwa gharama ya uthibitishaji wa polepole.
  3. Tengeneza: Hasher hutoa chumvi nasibu ya baiti 16, huendesha unyambulishaji wa ufunguo wa bcrypt, na hutoa heshi katika umbizo la kawaida la $2b$.
  4. Tumia heshi: Hifadhi towe kamili ($2b$cost$saltAndHash) katika hifadhidata yako ya nenosiri. Uthibitishaji hutumia maktaba sawa kulinganisha mgombea dhidi ya heshi iliyohifadhiwa.

Kesi za Matumizi ya Kawaida

Maelezo ya Kiufundi

bcrypt hutumia awamu ya usanidi iliyorekebishwa ya Blowfish cipher, inayorudiwa mara 2^gharama. Kipengele cha gharama ni logarithmic - gharama 12 ni ya polepole mara mbili ya 11, mara nne ya polepole kama gharama 10. Uongezaji huu wa logarithmic huwawezesha wasimamizi kuongeza gharama kwa muda kadri maunzi yanavyoboreshwa, bila kuunda upya mfumo.

Umbizo la towe ni $version$cost$saltAndHash ambapo saltAndHash imesimbwa 64 kwa alfabeti maalum. Toleo kwa kawaida ni $2b$ (kibadala cha kisasa kilicho na hitilafu iliyosasishwa) au $2y$ (mahususi PHP, sawa). Chumvi ni ka 16; heshi ni ka 24; kwa pamoja wanasimba herufi 53 za msingi-msingi64.

Urefu wa juu zaidi wa kuingiza ni baiti 72 (kikomo cha urefu wa vitufe vya Blowfish). Manenosiri marefu zaidi yamepunguzwa kimyakimya, ambayo ni tatizo la muda mrefu la bcrypt. Mbinu bora ni kupunguza urefu wa nenosiri hadi baiti 72 au heshi mapema ukitumia SHA-256 ili kurekebisha urefu kabla ya bcrypt.

Mazoea Bora

Maswali yanayoulizwa mara kwa mara

Je, ninaweza kubinafsisha pato linalozalishwa?
Ndiyo. Zana hutoa chaguzi mbalimbali za kubinafsisha ili kurekebisha matokeo kulingana na mahitaji yako mahususi. Rekebisha mipangilio kabla ya kuzalisha, au uzae upya kwa chaguo tofauti.
Je, maudhui yaliyotolewa ni bure kutumia?
Ndiyo. Kila kitu unachozalisha kwa zana hii ni chako cha kutumia kwa madhumuni ya kibinafsi, ya kielimu au ya kibiashara bila vizuizi au mahitaji ya maelezo.
Je, hii inahitaji akaunti?
Hapana. Zana iko tayari kutumika mara moja bila kujisajili, hakuna barua pepe, na hakuna usajili. Fungua tu ukurasa na uanze kutengeneza.
Je, data yangu ya ingizo inawekwa faragha?
Ndiyo. Uchakataji wote hufanyika kwenye kivinjari chako. Data yako ya ingizo na matokeo yanayozalishwa haitumwi kwa seva yoyote ya nje.
Je, niongeze chumvi yangu mwenyewe?
No. bcrypt hutengeneza na kuhifadhi chumvi nasibu kiotomatiki. Kuongeza chumvi yako mwenyewe sio lazima na kunaweza kusababisha mende ndogo. Tumia uzalishaji wa chumvi chaguomsingi wa maktaba.
Je, nenosiri limetumwa kwa seva?
Hapana. bcrypt hashing hutokea kwenye kivinjari chako. Nenosiri haliondoki kwenye kifaa chako.
Kwa nini kuna vibadala vya $2a$, $2b$, $2y$?
$2a$ ndio asili. $2b$ hurekebisha hitilafu iliyogunduliwa mwaka wa 2014. $2y$ ni mahususi ya PHP, kiutendaji ni sawa na $2b$. Mifumo mipya inapaswa kutoa heshi $2b$.
Je, ninaweza kushusha hashi ya gharama ya juu hadi gharama ya chini?
Hapana. Heshi inajumuisha gharama kama sehemu ya matokeo na uthibitishaji unahitaji gharama sawa. Ili kubadilisha gharama, rejelea reli unapoingia katika akaunti inayofuata.