Sådan bruger du det
- Vælg hvor mange tilfældige bytes hvert token skal indeholde. 32 bytes (256 bits) er en sikker standard for hemmeligheder.
- Vælg en kodning, der passer til hvor tokenet skal bruges, og tilføj eventuelt et præfiks som “myapp_live_”.
- Angiv hvor mange tokens du har brug for, kopier derefter ét eller brug “Kopier alle”. Tryk på “Generer igen” for et nyt sæt.
Sådan fungerer det
Tokens oprettes ud fra tilfældige bytes produceret af crypto.getRandomValues, den kryptografisk sikre generator, der er indbygget i din browser og dit operativsystem. Math.random bruges aldrig.
For hex, Base64 og Base64URL tager værktøjet præcis det antal bytes, du vælger, og koder dem, så en token på 32 bytes altid har 256 bits entropi: 64 hex-tegn, 44 Base64-tegn (inklusive et = som padding) eller 43 Base64URL-tegn. Base64URL erstatter + og / med - og _ og fjerner padding, så den kan bruges i URL'er, filnavne og HTTP-headere uden escaping.
Alfanumeriske tokens bruger kun A–Z, a–z og 0–9, hvilket undgår tegn, som nogle systemer behandler specielt. Hvert tegn bærer ca. 5,95 bits, så værktøjet trækker nok tegn til at nå mindst det valgte antal bits (43 tegn for 256 bits). Tegn vælges med rejection sampling, så alle 62 er lige sandsynlige.
Præfikset tilføjes som almindelig tekst og tilføjer ingen entropi. Præfikser som “sk_live_” gør lækkede nøgler lettere at genkende og finde med secret-scannere. Opbevar hemmeligheder i en adgangskodeadministrator eller et hemmeligt lager, ikke i kildekoden.
Eksempler
En webhook-signeringshemmelighed
32 bytes i hex giver en hemmelighed på 64 tegn med 256 bits entropi, som du kan indsætte i både afsenderens og modtagerens konfiguration til HMAC-SHA-256-signaturer.
En API-nøgle med et genkendeligt præfiks
Vælg 24 bytes, Alfanumerisk og præfikset “acme_live_”. Hver nøgle ser ud som acme_live_ efterfulgt af 33 bogstaver og tal, har mindst 192 bits og er let at få øje på i logfiler eller en secret-scanner.
En URL-sikker nulstillingstoken
16 bytes i Base64URL giver en token på 22 tegn (128 bits), som kan sættes direkte ind i et link som /reset?token=… uden procentkodning.
Ofte stillede spørgsmål
Hvor mange bytes bør en hemmelighed have?
128 bits (16 bytes) er nok til at gøre det umuligt at gætte tokens som sessions-id'er. For langlivede hemmeligheder som signeringsnøgler er 256 bits (32 bytes) den almindelige anbefaling og matcher outputstørrelsen for SHA-256.
Hvilken kodning skal jeg vælge?
Entropien er den samme for et givet antal bytes; kun tekstformen adskiller sig. Brug hex for maksimal kompatibilitet, Base64URL til korte tokens i URL'er og headere, og alfanumerisk når et system afviser tegnsætning.
Bliver tokens gemt eller logget?
Nej. De genereres i denne browserfane og forsvinder, når du forlader siden. De sendes ikke til en server og indgår ikke i analyse.
Kan jeg bruge dem som adgangskoder?
Ja, de er tilfældige nok, men websteder kræver ofte en blanding af tegntyper. Adgangskodegeneratoren lader dig styre disse regler direkte.
Privatliv
Tokens genereres i din browser med crypto.getRandomValues. De uploades, gemmes, logges eller sendes ikke til analyse; der registreres kun en anonym hændelse om, at værktøjet blev brugt.