Sessionsnøgle
En sessionsnøgle er en symmetrisk nøgle til engangsbrug, der bruges til at kryptere alle meddelelser i en kommunikationssession. Et nært beslægtet begreb er trafik-krypteringsnøgle eller TEK, som henviser til enhver symmetrisk nøgle, der bruges til at kryptere trafikmeddelelser. Typisk ændres TEK'er ofte, i nogle systemer dagligt og i andre systemer for hver enkelt meddelelse.
Sessionsnøgler medfører kompleksitet i et kryptosystem. De hjælper dog også med at løse nogle reelle problemer, og det er derfor, de anvendes. Der er to primære grunde til at bruge sessionsnøgler:
- For det første bliver flere kryptoanalytiske angreb lettere, når der er mere krypteringstekst, der er krypteret med en bestemt nøgle, til rådighed. Ved at begrænse antallet af meddelelser, der krypteres med en enkelt nøgle, vanskeliggøres disse angreb.
- For det andet kræver mange ellers gode krypteringsalgoritmer, at nøglerne distribueres sikkert, før krypteringen kan anvendes. Alle symmetriske hemmelige nøglealgoritmer har denne uønskede egenskab. Der findes andre algoritmer, som ikke kræver sikker distribution af hemmelige nøgler, men de er for langsomme til at være praktiske til kryptering af lange meddelelser (se kryptering med offentlige nøgler). Ved at bruge en af disse "asymmetriske" algoritmer til at distribuere en krypteret hemmelig nøgle til en anden, hurtigere symmetrisk nøglealgoritme er det muligt at forbedre den samlede ydelse betydeligt.
Som alle kryptografiske nøgler skal sessionsnøgler vælges således, at de er uforudsigelige for en angriber. I det almindelige tilfælde betyder det, at de skal vælges tilfældigt. Manglende valg af sessionsnøgler (eller enhver anden nøgle) er en stor ulempe i ethvert kryptosystem.
Spørgsmål og svar
Q: Hvad er en sessionsnøgle?
A: En sessionsnøgle er en symmetrisk nøgle til engangsbrug, der bruges til at kryptere alle meddelelser i en kommunikationssession.
Q: Hvad er forskellen mellem en sessionsnøgle og en trafik-krypteringsnøgle (TEK)?
Svar: En TEK henviser til enhver symmetrisk nøgle, der bruges til at kryptere trafikmeddelelser, mens en sessionsnøgle specifikt bruges til at kryptere alle meddelelser i en kommunikationssession.
Q: Hvorfor bruges sessionsnøgler?
A: Sessionsnøgler anvendes, fordi de hjælper med at løse nogle reelle problemer, f.eks. gør kryptoanalytiske angreb vanskeligere og gør det muligt at anvende hurtigere krypteringsalgoritmer ved at distribuere en krypteret hemmelig nøgle på sikker vis.
Spørgsmål: Hvordan skal sessionsnøgler vælges?
Svar: Sessionsnøgler skal vælges tilfældigt, så de er uforudsigelige for en angriber.
Spørgsmål: Hvad sker der, hvis der vælges den forkerte type sessionsnøgler?
Svar: Hvis der vælges den forkerte type sessionsnøgler, kan det være en stor ulempe i ethvert kryptosystem.
Spørgsmål: Hvor ofte ændres TEK'er typisk?
Svar: TEK'er ændres typisk ofte; i nogle systemer dagligt og i andre systemer for hver meddelelse.
Spørgsmål: Hvilken anden algoritme kan bruges til at forbedre ydeevnen ved brug af symmetriske nøglealgoritmer? Svar: Offentlig nøglekryptografi kan bruges til at distribuere en krypteret hemmelig nøgle til en anden, hurtigere symmetrisk nøglealgoritme, hvilket kan forbedre den samlede ydeevne betydeligt.