»Hvorfor bruger man ikke altid 8192-bit nøgler til AES og RSA?« cirka sådan lød spørgsmålet for et par dage siden. På overfladen et enkelt spørgsmål det er ligetil at besvare: Det tager for lang tid i forhold til hvad vi tror der er behov for.
Men under overfladen lurer der en række lige så indlysende spørgsmål som for eksempel hvorfor 256-bit er nok til AES, mens en RSA nøgle skal være på mindst 2048 bit eller hvorfor man ikke bare lige kan bruge AES med en 8192-bit nøgle. Det første er stadigvæk forholdsvist enkelt at svare på, mens det sidste kræver en del indsigt i AES-algoritmen, hvis man ikke skal ende med en mere usikker kryptering.
Jeg har interesseret mig en del for kryptografi og tror derfor at jeg har nogenlunde styr på området. Men hvad bør en gennemsnitslig udvikler eller systemadministrator vide om kryptografi? Kan man som administrator nøjes med at have en liste over godkendte konfigurationsparametre liggende og kan man som udvikler nøjes med at vide hvordan man salter og hasher et kodeord?
Hvis man som udvikler har bare det mindste behov for at bruge kryptografi, om det så er kryptering eller håndtering af kodeord, så synes jeg ikke det er godt nok. Selv vil jeg gerne anbefale bogen Cryptography Engineering af Niels Ferguson, Bruce Schneier og Tadayoshi Kohno. Har I andre gode anbefalinger?
Leave a Reply