Bcrypt- och Argon2-kostnad
Argon2 relative work (hash-cost) räknar arbetsfaktor. Gyllene ankare: utdata Bcrypt cost=12, Argon2 memory (KiB)=65536, Argon2 iterations=3, Argon2 parallelism=4, Bcrypt work units (2^cost)=4096, Argon2 relative work=786432, Rough bcrypt ms (baseline cost12=250ms)=250. Formel i korthet: cost 12 → 4096; 65536 KiB, 3 iter, p=4 → 786432.
Varför cost 12 inte är samma tid som Argon2 med 64 MiB
Arbetsfaktor är lätt att gissa fel, och gissningen kostar tid i backend-labb. Argon2 relative work gör relationen cost 12 → 4096; 65536 KiB, 3 iter, p=4 → 786432 synlig så att Maja i Luleå kan peka på samma tal två dagar i rad.
Utan ett ankare blir varje skärmdump en ny sanning. Därför ligger utdata Bcrypt cost=12, Argon2 memory (KiB)=65536, Argon2 iterations=3, Argon2 parallelism=4, Bcrypt work units (2^cost)=4096, Argon2 relative work=786432, Rough bcrypt ms (baseline cost12=250ms)=250 både i artikeln och i golden-values.json. Om livepanelen divergerar är det höja cost i produktion utan lasttest, inte «ungefär rätt».
Ton: specialverktyg, inte ett certifikat. Sidan svarar på arbetsfaktor, inte på nästa jobb (kolla lösenordsentropi hos användaren).
Innan du börjar
Samla fälten bcryptCost, memKiB, iters, parallel, bcryptWork så att de hör till en enda händelse. Bestäm enheter innan du skriver tal. Ha kolla lösenordsentropi hos användaren i bakhuvudet men fyll inte den historien här. Skriv upp att du jagar arbetsfaktor.
Vanliga användningsfall
- Kanoniskt körning av
hash-costmot utdata Bcrypt cost=12, Argon2 memory (KiB)=65536, Argon2 iterations=3, Argon2 parallelism=4, Bcrypt work units (2^cost)=4096, Argon2 relative work=786432, Rough bcrypt ms (baseline cost12=250ms)=250 - arbetsfaktor när du vägrar räkna det i huvudet
- Fånga felet höja cost i produktion utan lasttest innan siffran går i ett mejl
- Undervisning i Luleå: tavlan visar cost 12 → 4096; 65536 KiB, 3 iter, p=4 → 786432
- Jämföra kalkylark mot livepanelen för Argon2 relative work
- Förarbete innan kolla lösenordsentropi hos användaren
Hur man använder denna kalkylator
- Ange bcryptCost så att det beskriver samma scenario som arbetsfaktor.
- Ange memKiB så att det beskriver samma scenario som arbetsfaktor.
- Ange iters så att det beskriver samma scenario som arbetsfaktor.
- Ange parallel så att det beskriver samma scenario som arbetsfaktor.
- Läs utdata och kräv att de gyllene talen återkommer innan du arkiverar.
Ändringar i ett fält uppdaterar lösaren direkt i Argon2 relative work. För att lösa en annan obekant, lämna det fältet tomt och fyll i de övriga — motorn väljer relationen för hash-cost.
Steg-för-steg genomgång
Maja i Luleå öppnar Argon2 relative work för att få arbetsfaktor som ett reproducerbart tal, inte som en känsla.
Situation: backend-labb; ankare utdata Bcrypt cost=12, Argon2 memory (KiB)=65536, Argon2 iterations=3, Argon2 parallelism=4, Bcrypt work units (2^cost)=4096, Argon2 relative work=786432, Rough bcrypt ms (baseline cost12=250ms)=250.
Värden som anges:
- bcryptCost: 12
- memKiB: 65536
- iters: 3
- parallel: 4
Resultat: bcryptCost 12, memKiB 65536, iters 3, parallel 4, bcryptWork 4096. Maja jämför med testdatan innan något skickas vidare.
Kontroll: Om storleksordningen hoppar är det höja cost i produktion utan lasttest.
Att ta med: hash-cost + utdata Bcrypt cost=12, Argon2 memory (KiB)=65536, Argon2 iterations=3, Argon2 parallelism=4, Bcrypt work units (2^cost)=4096, Argon2 relative work=786432, Rough bcrypt ms (baseline cost12=250ms)=250 + fältnamn.
Formel och metod
cost 12 → 4096; 65536 KiB, 3 iter, p=4 → 786432. Motorn tillämpar relationen deterministiskt på de ifyllda fälten. Testdatan utdata Bcrypt cost=12, Argon2 memory (KiB)=65536, Argon2 iterations=3, Argon2 parallelism=4, Bcrypt work units (2^cost)=4096, Argon2 relative work=786432, Rough bcrypt ms (baseline cost12=250ms)=250 är facit, inte en avrundad «känsla».
Förstå varje ingång
- bcryptCost: fält i
hash-cost. I det kanoniska testet ingår det i utdata Bcrypt cost=12, Argon2 memory (KiB)=65536, Argon2 iterations=3, Argon2 parallelism=4, Bcrypt work units (2^cost)=4096, Argon2 relative work=786432, Rough bcrypt ms (baseline cost12=250ms)=250. - memKiB: fält i
hash-cost. I det kanoniska testet ingår det i utdata Bcrypt cost=12, Argon2 memory (KiB)=65536, Argon2 iterations=3, Argon2 parallelism=4, Bcrypt work units (2^cost)=4096, Argon2 relative work=786432, Rough bcrypt ms (baseline cost12=250ms)=250. - iters: fält i
hash-cost. I det kanoniska testet ingår det i utdata Bcrypt cost=12, Argon2 memory (KiB)=65536, Argon2 iterations=3, Argon2 parallelism=4, Bcrypt work units (2^cost)=4096, Argon2 relative work=786432, Rough bcrypt ms (baseline cost12=250ms)=250. - parallel: fält i
hash-cost. I det kanoniska testet ingår det i utdata Bcrypt cost=12, Argon2 memory (KiB)=65536, Argon2 iterations=3, Argon2 parallelism=4, Bcrypt work units (2^cost)=4096, Argon2 relative work=786432, Rough bcrypt ms (baseline cost12=250ms)=250. - bcryptWork: fält i
hash-cost. I det kanoniska testet ingår det i utdata Bcrypt cost=12, Argon2 memory (KiB)=65536, Argon2 iterations=3, Argon2 parallelism=4, Bcrypt work units (2^cost)=4096, Argon2 relative work=786432, Rough bcrypt ms (baseline cost12=250ms)=250. - argonWork: fält i
hash-cost. I det kanoniska testet ingår det i utdata Bcrypt cost=12, Argon2 memory (KiB)=65536, Argon2 iterations=3, Argon2 parallelism=4, Bcrypt work units (2^cost)=4096, Argon2 relative work=786432, Rough bcrypt ms (baseline cost12=250ms)=250.
Antaganden
Modellen är medvetet smal. Specialverktyg, inte ett certifikat. Höja cost i produktion utan lasttest ligger utanför motorn. Hundår, raid och rumsmoder är leksaker och uppskattningar, inte intyg.
Vanliga misstag med Bcrypt- och Argon2-kostnad
- Höja cost i produktion utan lasttest.
- Att blanda två tidslinjer i samma körning av
hash-cost. - Att läsa bcryptCost 12, memKiB 65536, iters 3, parallel 4, bcryptWork 4096 som ett beslut i stället för aritmetik.
- Att byta enhet tyst och ändå jämföra mot utdata Bcrypt cost=12, Argon2 memory (KiB)=65536, Argon2 iterations=3, Argon2 parallelism=4, Bcrypt work units (2^cost)=4096, Argon2 relative work=786432, Rough bcrypt ms (baseline cost12=250ms)=250.
Arbetade exempel
-
Kanoniskt. utdata Bcrypt cost=12, Argon2 memory (KiB)=65536, Argon2 iterations=3, Argon2 parallelism=4, Bcrypt work units (2^cost)=4096, Argon2 relative work=786432, Rough bcrypt ms (baseline cost12=250ms)=250. Kör om live och kräv samma tal för Argon2 relative work.
-
Enhetssanitet. Maja ändrar en väljare och ser om cost 12 → 4096; 65536 KiB, 3 iter, p=4 → 786432 fortfarande ger bcryptCost 12, memKiB 65536, iters 3, parallel 4, bcryptWork 4096. Hoppar storleksordningen är det höja cost i produktion utan lasttest.
-
Omkörning. Samma indata två gånger.
hash-costär deterministisk; Luleå får inte två sanningar.
Tolka dina resultat
| Fält | Vad du tittar efter |
|---|---|
| gyllene ankare | utdata Bcrypt cost=12, Argon2 memory (KiB)=65536, Argon2 iterations=3, Argon2 parallelism=4, Bcrypt work units (2^cost)=4096, Argon2 relative work=786432, Rough bcrypt ms (baseline cost12=250ms)=250 |
| formel | cost 12 → 4096; 65536 KiB, 3 iter, p=4 → 786432 |
| typiskt fel | höja cost i produktion utan lasttest |
Utdata från Argon2 relative work är specialverktyg, inte ett certifikat. bcryptCost 12, memKiB 65536, iters 3, parallel 4, bcryptWork 4096 är testankaret, inte ett råd.
Spela in och dela resultat
Maja sparar hash-cost, utdata Bcrypt cost=12, Argon2 memory (KiB)=65536, Argon2 iterations=3, Argon2 parallelism=4, Bcrypt work units (2^cost)=4096, Argon2 relative work=786432, Rough bcrypt ms (baseline cost12=250ms)=250, enheter, datum och meningen «arbetsfaktor». Utan den meningen är arkivet i Luleå bara siffror.
Praktiska tips
- Säg cost 12 → 4096; 65536 KiB, 3 iter, p=4 → 786432 högt innan du litar på skärmen.
- Håll höja cost i produktion utan lasttest som checklista.
- Länka vidare till kolla lösenordsentropi hos användaren i stället för att tänja Argon2 relative work.
- Använd svenska decimaler i anteckningen även om panelen visar punkt: utdata Bcrypt cost=12, Argon2 memory (KiB)=65536, Argon2 iterations=3, Argon2 parallelism=4, Bcrypt work units (2^cost)=4096, Argon2 relative work=786432, Rough bcrypt ms (baseline cost12=250ms)=250.
Den som öppnar Argon2 relative work i backend-labb har nästan alltid en smal fråga: arbetsfaktor. De gyllene talen (utdata Bcrypt cost=12, Argon2 memory (KiB)=65536, Argon2 iterations=3, Argon2 parallelism=4, Bcrypt work units (2^cost)=4096, Argon2 relative work=786432, Rough bcrypt ms (baseline cost12=250ms)=250) finns så att motorn hash-cost kan avslöjas på trettio sekunder: om skärmen inte återger dem tittar du på fel enhet, fel fält eller fel verktyg.
Ett typiskt fel med Argon2 relative work är höja cost i produktion utan lasttest. Det är sällan algebran som havererar; det är en krock mellan registry-etiketten och meningen Maja har i huvudet i Luleå. Läs fältnamnen högt och koppla dem till din svenska formulering innan du klistrar in resultatet i ett mejl.
I svensk kontext — hundår, RAID och rumsmoder är leksaker och uppskattningar, inte intyg — förblir Argon2 relative work ett pedagogiskt scenario. Specialverktyg, inte ett certifikat. Behandla utdata som reproducerbar aritmetik och bekräfta sedan husets regler.
När frågan blir «och sen då?» är nästa jobb kolla lösenordsentropi hos användaren. Länkarna längst ned är valda för det arbetet, inte för bokstavsordning i kategorin. Argon2 relative work ska inte svälja de historierna: ett verktyg, en relation.
Att dokumentera Argon2 relative work betyder att kopiera indata, enheter, utdata och datum. Utan enheter ser utdata Bcrypt cost=12, Argon2 memory (KiB)=65536, Argon2 iterations=3, Argon2 parallelism=4, Bcrypt work units (2^cost)=4096, Argon2 relative work=786432, Rough bcrypt ms (baseline cost12=250ms)=250 ut som trolleri. Med enheter kan en kollega i Luleå upprepa samma försök nästa vecka.
Om ett resultat från Argon2 relative work ser ut att ligga en tiopotens fel, sök först enheten (meter mot kilometer, procent mot bråk, sekunder mot timmar). Tvivla på formeln cost 12 → 4096; 65536 KiB, 3 iter, p=4 → 786432 sist. Automatiska tester i repot använder exakt utdata Bcrypt cost=12, Argon2 memory (KiB)=65536, Argon2 iterations=3, Argon2 parallelism=4, Bcrypt work units (2^cost)=4096, Argon2 relative work=786432, Rough bcrypt ms (baseline cost12=250ms)=250: det är ankaret för hash-cost.
Argon2 relative work ersätter inte certifierad programvara, ett sakkunnigutlåtande eller en lärarens rättning. Den visar relationen, lär ut den och skyddar storleksordningen. Extra villkor hör i marginalen, inte i motorn.
För en granskning i par läser Maja inmatningen till Argon2 relative work högt medan någon annan tittar på utdata. Det är snabbaste sättet att fånga 500 i stället för 500000. Det slår tyst omskrivning i mobilen.
Klistra inte in stycken från andra kalkylatorer: Argon2 relative work har egna fält och egna gyllene värden. En guide som bara säger «ange värdena» hjälper inte. Stanna vid namnen ovan och vid utdata Bcrypt cost=12, Argon2 memory (KiB)=65536, Argon2 iterations=3, Argon2 parallelism=4, Bcrypt work units (2^cost)=4096, Argon2 relative work=786432, Rough bcrypt ms (baseline cost12=250ms)=250.
Ett andra öga på Argon2 relative work gäller språket: säg inte «mjukvaran beslutade». Säg «med dessa indata blir utdata så här». Skillnaden räknas på tenta, i offert och i en reklamation. arbetsfaktor blir inte sant bara för att webbläsaren multiplicerade två fält.
Om du publicerar en skärmdump av Argon2 relative work, beskär de ifyllda fälten, inte bara det stora talet. Utan utdata Bcrypt cost=12, Argon2 memory (KiB)=65536, Argon2 iterations=3, Argon2 parallelism=4, Bcrypt work units (2^cost)=4096, Argon2 relative work=786432, Rough bcrypt ms (baseline cost12=250ms)=250 synligt vet du om en månad inte om det var det kanoniska försöket. I backend-labb sparar det arkivet onödiga gräl.
Antagandena i Argon2 relative work är medvetet magra: höja cost i produktion utan lasttest markerar modellens kant. Förbi kanten byter du verktyg i stället för att vrida ett fält tills talet blir behagligt. hundår, RAID och rumsmoder är leksaker och uppskattningar, inte intyg
Arbetet efter Argon2 relative work — kolla lösenordsentropi hos användaren — förtjänar en ny sida för att obekantet byts. Att trycka in allt på samma skärm ser bekvämt ut och ger etikettfel. Två dokumenterade körningar slår ett hybridminne.
Om du undervisar Argon2 relative work, skriv utdata Bcrypt cost=12, Argon2 memory (KiB)=65536, Argon2 iterations=3, Argon2 parallelism=4, Bcrypt work units (2^cost)=4096, Argon2 relative work=786432, Rough bcrypt ms (baseline cost12=250ms)=250 på tavlan innan webbläsaren öppnas. Den som når talet utan att passera fälten lär sig klicka, inte arbetsfaktor. I backend-labb ger klick utan etiketter oanvändbara bilder.
Snabb revision av Argon2 relative work: indata, formeln cost 12 → 4096; 65536 KiB, 3 iter, p=4 → 786432 sagd högt, utdata, jämförelse med utdata Bcrypt cost=12, Argon2 memory (KiB)=65536, Argon2 iterations=3, Argon2 parallelism=4, Bcrypt work units (2^cost)=4096, Argon2 relative work=786432, Rough bcrypt ms (baseline cost12=250ms)=250. Fyra steg, två minuter. Om det fjärde steget faller, «justera» inte slumpmässigt: det är nästan alltid höja cost i produktion utan lasttest.
Den som lägger Argon2 relative work i ett internt wiki ska förbjuda bilder utan fältlista. Ett grynigt JPEG av ett stort tal är inte en beräkning. I Luleå blir wikin skräp på en termin om utdata Bcrypt cost=12, Argon2 memory (KiB)=65536, Argon2 iterations=3, Argon2 parallelism=4, Bcrypt work units (2^cost)=4096, Argon2 relative work=786432, Rough bcrypt ms (baseline cost12=250ms)=250 saknas bredvid arbetsfaktor.
Svenskan på sidan använder kalkylator, beräkning, skärm och procent. Argon2 relative work (hash-cost) är inte en klistrad översättning: anteckningen ska leva i loggboken, inte bara i Chrome-historiken. Mobilen kan fota panelen, men texten måste upprepa indata.
Maja i Luleå vägrar blanda två experiment i samma körning av Argon2 relative work. Om uppgiften ändras mitt i, starta ett nytt scenario. hash-cost är deterministisk: samma indata i samma enheter ger samma utdata, inklusive utdata Bcrypt cost=12, Argon2 memory (KiB)=65536, Argon2 iterations=3, Argon2 parallelism=4, Bcrypt work units (2^cost)=4096, Argon2 relative work=786432, Rough bcrypt ms (baseline cost12=250ms)=250.
En sista kontroll: om någon ber Argon2 relative work om ett råd snarare än ett tal, peka på tonen — specialverktyg, inte ett certifikat. Siffran utdata Bcrypt cost=12, Argon2 memory (KiB)=65536, Argon2 iterations=3, Argon2 parallelism=4, Bcrypt work units (2^cost)=4096, Argon2 relative work=786432, Rough bcrypt ms (baseline cost12=250ms)=250 är ett ankare, inte ett beslut. Nästa klick är kolla lösenordsentropi hos användaren, inte att gömma osäkerheten i fler decimaler.
hundår, RAID och rumsmoder är leksaker och uppskattningar, inte intyg. Därför stannar Argon2 relative work vid specialverktyg, inte ett certifikat även om någon i backend-labb vill ha ett stämpel.
Begränsningar och när de inte ska användas
Argon2 relative work täcker inte kolla lösenordsentropi hos användaren och inte lokala lagar, leverantörsavtal eller labb-SOP. Om uppgiften kräver mer än cost 12 → 4096; 65536 KiB, 3 iter, p=4 → 786432 är det ett annat verktyg. Specialverktyg, inte ett certifikat.