Når du opretter en konto på en privat beskedtjeneste, vælger du normalt en adgangskode. Så langt, så normalt. Det, der ikke er så normalt, er det, der sker under overfladen.
I de fleste tjenester er din adgangskode nøglen til alt. Mister du den, mister du adgangen. Bliver den stjålet, mister du alt. Din identitet, dine beskeder, dine filer. Alt afhænger af én ting, du tastede ind en tirsdag eftermiddag.
De 24 ord fungerer anderledes. De er ikke en adgangskode, du vælger. De er en nøgle, systemet genererer tilfældigt, med 256 bits reel entropi. For at give dig en idé: at bryde den nøgle med brute force ville kræve mere energi, end solen vil producere i hele sit liv. Det er ikke en metafor. Det er en matematisk beregning.
To nøgler til to døre
Din adgangskode forbinder dig til tjenesten. Det er nøglen til hoveddøren. Glemmer du den, kan du komme ind ad bagdøren med dine 24 ord. Bliver din adgangskode stjålet, kan du ændre den med det samme, uden at andet ændrer sig.
Dine 24 ord er noget andet. De er repræsentationen af din hovednøgle. Nøglen, hvorfra din kryptografiske identitet udledes, den der beskytter dine data, den der identificerer dig over for dine kontakter. Mister du de 24 ord og også adgangskoden, er dine data uigenkaldelige. Som med Bitcoin. Og det, selv om det lyder hårdt, er præcis, hvad du vil have af et sikkert system.
For alternativet er, at nogen kan gendanne dine data for dig. Og hvis nogen kan gendanne dine data, kan de også få adgang til dem.
Papir er vigtigt
Skriv dine 24 ord ned på et stykke papir. Et rigtigt stykke papir, den gammeldags slags. Opbevar det et sikkert sted. Ikke på din telefon, ikke i en digital note, ikke i en e-mail til dig selv. Et stykke papir i en skuffe, i et pengeskab, eller hvor du opbevarer de ting, der betyder noget.
Det virker måske gammeldags. Men et stykke papir kan ikke hackes på afstand, kan ikke opsnappes over internettet og behøver ikke batteri. Nogle gange er den ældste teknologi den sikreste.
For dem, der vil gå dybere
De 24 ord følger BIP39-standarden, der bruges af Bitcoin-tegnebøger. De repræsenterer 256 bits entropi genereret af operativsystemets CSPRNG (crypto.getRandomValues). Fra disse 256 bits udledes identitetsnøglen (Ed25519 til signering + X25519 til nøgleudveksling) via HKDF-SHA256 med domæneseparation. Adgangskoden indkapsler denne nøgle med Argon2id + AES-256-GCM, inden den sendes til serveren. Serveren gemmer den krypterede blob, men kan ikke læse den.