Etikettarkiv: RFC

Bra RFC om identifiering

Kommunicerande system använder och utbyter ständigt olika typer av identifieringsinformation. Exempel på identifieringsinformation är värdnamn, IP-adresser, e-postadresser och resurspekare (Eng: Uniform Resource Identifier – URI).

Men om kommunicerande parter tolkar identifieringsinformationen på olika sätt och hanterar informationen på olika sätt kan problem uppstå. Typiskt kan en legitim användare av en resurs nekas tillgång till resursen. Eller omvänt att en användare (som inte behöver vara en människa) får tillgång till resurser denne inte skall ha tillgång till.

IETF har publicerat en informations-RFC som på ett mycket bra sätt går igenom vilka problem som kan uppkomma vid användning av olika typer av identifieringsinformation. Om du arbetar med att bygga system som på något sätt använder identifieringsinformation är RFC 6943 – Issues in Identifier Comparison for Security Purposes väl värd att läsa igenom. Det är lätt att göra enkla misstag vilka ofta får säkerhetsmässiga konsekvenser. Eller som dokumentet så snyggt sammanfattar det hela:

Screen Shot 2013-06-19 at 09.47.04

RFC 6070 – Testvektorer för PBKDF2

Strax efter nyår dök det upp en ny RFC från IETF, RFC 6070 – PKCS #5: Password-Based Key Derivation Function 2 (PBKDF2) Test Vectors.

Som namnet anger innehåller dokumentet testvektorer för nyckelgenereringsfunktionen PBKDF2. Denna nyckelgenereringsfunktion specificerads i RFC 2898 och har används i exempelvis RFC 5802. Tyvärr innehåller dessa dokument inga testvektorer eller bra exempel.

För den som ska implementera det dokumenten specificerar blir det därför svårare att veta att implementationen är korrekt. Tyvärr är det inte helt ovanligt att detta saknas i specifikationer. Och för kryptofunktioner, som antingen fungerar eller är fullständigt felaktiga är vektorer och exempel väsentligen tvunget att ha för att lyckas.

Den som tagit fram testvektorerna för PBKDF2 och såg behovet i sitt arbete med att implementera funktionen är Simon Josefsson. Simon berättar mer om RFC 6070 och hur den kom till på sin blog. Väl värd att läsa.