Asymmetrische cryptografie

Uit Wikipedia, de vrije encyclopedie
Ga naar: navigatie, zoeken

Bij asymmetrische cryptografie (zoals RSA) wordt gebruikgemaakt van twee aparte sleutels: één sleutel wordt gebruikt om de informatie te coderen (vercijferen) of te ondertekenen, en de tweede sleutel om de informatie weer te decoderen (ontcijferen) of de identiteit van de afzender te verifiëren. Bij de andere methode, de symmetrische cryptografie, wordt dezelfde sleutel gebruikt voor zowel coderen als decoderen, en is niet geschikt voor ondertekenen/verifiëren.

Voordeel van de asymmetrische cryptografie is, dat men door het verstrekken van de ene dan wel de andere sleutel kan kiezen wie de versleutelde informatie kan lezen en ook wie allemaal informatie kan versleutelen.

Toepassing[bewerken]

Toepassingen maken dit principe duidelijk. Stel voor dat je een sleutelpaar bezit. Door één sleutel gewoon in media te publiceren (bijvoorbeeld op een website of meegestuurd bij ondertekening van een e-mail) wordt die sleutel de publieke sleutel van jouw set sleutels. De andere sleutel is dan jouw geheime sleutel die jij zorgvuldig voor jezelf houdt.

Versleuteling[bewerken]

Iedereen die je een bericht wil sturen dat geheim moet blijven kan nu jouw publieke sleutel gebruiken om de informatie te vercijferen. Vervolgens kan het vercijferde bericht worden verzonden. Alleen jijzelf kan het bericht ontcijferen, omdat jij als enige beschikt over de geheime privé-sleutel, nodig om het bericht te ontcijferen. Anderen hebben wel een sleutel om te vercijferen, maar niet om te ontcijferen. Hierdoor blijft het bericht voor iedereen onleesbaar, behalve voor jou.

Ondertekening[bewerken]

Andersom kun je een bericht voorzien van een controlegetal dat afhankelijk is van de inhoud (door middel van hashen, bijvoorbeeld een MD5-sum of een SHA). Het is hierbij belangrijk dat er niet eenvoudig een ander bericht te maken is met hetzelfde controlegetal, omdat anders alsnog anderen het bericht ongezien zouden kunnen aanpassen. Door nu dat controlegetal met jouw geheime privé-sleutel te vercijferen en het resultaat mee te sturen (dit is de Digitale handtekening), geef jij iedereen de mogelijkheid om met jouw publieke sleutel het controlegetal te ontcijferen. Door opnieuw zelf een controlegetal op dezelfde manier van de inhoud te bepalen en het resultaat te vergelijken met de ontcijferde waarde, weet men zeker dat het bericht van jou afkomstig is, en dat de inhoud van het bericht onderweg niet is aangepast. Immers: alleen jij bezit de sleutel om het controlegetal te kunnen vercijferen (coderen). Op deze wijze wordt een bericht "digitaal ondertekend".

Vertrouwen[bewerken]

Hoe weet je nu of de publieke sleutel werkelijk van de persoon is die hij beweert te zijn? De methode van vertrouwen kan ook het best met een voorbeeld uitgelegd worden.

PKI[bewerken]

Zoals een bericht ondertekend kan worden, zo kan ook de bijbehorende publieke sleutel ondertekend worden, en wel door een derde partij. Die derde partij garandeert dat de eigenaar van die publieke sleutel, dus het sleutelpaar, inderdaad degene is die hij beweert te zijn. Deze bewering staat in het certificaat, waar ook de publieke sleutel in zit, en die op dezelfde manier digitaal ondertekend is met de geheime privé-sleutel van die derde partij, de Certificaatautoriteit. In het certificaat staat ook waar je kunt achterhalen of die bewering nog steeds geldig is, de CRL. Deze methode van vertrouwen heet PKI.

PGP[bewerken]

Als alternatief kan een ongetekende publieke sleutel gepubliceerd worden op een betrouwbaar medium, bijvoorbeeld op de website van de eigenaar van de sleutel. Deze vorm van vertrouwen wordt onder andere gebruikt bij PGP.