Sleutel (cryptografie)

Uit Wikipedia, de vrije encyclopedie

De sleutel is bij encryptie de set van gegevens die zijn gebruikt om een boodschap te versleutelen, en/of de set van gegevens die nodig zijn om een versleutelde boodschap te ontcijferen.

Een cryptografische sleutel was vroeger vaak een codeboek samen met instructies hoe dit kon worden toegepast. De verzender en ontvanger van het bericht moesten hetzelfde codeboek hebben. Dit geeft de zwakte van encryptie weer: de twee moeten eerder met elkaar contact gehad hebben, en op een veilige plaats een code hebben afgesproken. Is dat niet gebeurd, dan kunnen de twee partijen niet versleuteld met elkaar communiceren. Een tweede zwakte komt ook hieruit naar voren: mocht een derde partij de sleutel achterhalen, dan kan deze de communicatie volgen zonder dat daarbij de twee communicerende partijen op de hoogte zijn. De sleutel is zodoende het zwakste punt van de cryptografie.

Bij de enigmamachine bestond de sleutel uit het apparaat zelf, plus zijn instelling.

In tegenwoordige computergedreven encryptie bestaat de sleutel uit een of meer getallen die worden gebruikt bij de versleuteling.

Sinds de uitvinding in de jaren 1980 van de asymmetrische encryptie is het mogelijk dat de sleutel voor encryptie en die voor decryptie niet identiek zijn, en niet uit elkaar af te leiden. Met deze techniek is het mogelijk om beveiligde communicatie te plegen tussen mensen die elkaar nog nooit hebben ontmoet. Ook hoeft de geheime sleutel niet meer bij twee of meer partijen bekend te zijn, waardoor de kans op uitlekken sterk wordt gereduceerd. Een voorwaarde voor veilige communicatie is dat men kan beschikken over een betrouwbare publieke sleutel. Op het moment dat een aanvaller ook de publieke sleutel kan vervalsen, is een man-in-the-middle-aanval mogelijk. Om de kans daarop te verkleinen is het raadzaam de publieke sleutel voor een gegeven sleutelpaar zo veel mogelijk te verspreiden. Implementaties van asymmetrische encryptie gebruiken mechanismen als sleutelservers om publieke sleutels onafhankelijk controleerbaar te maken.