Een publieke sleutel is een van de twee sleutels die wordt gebruikt voor asymmetrische cryptografie. Er zijn bij deze wijze van versleuteling twee verschillende sleutels die bij elkaar horen: een voor het vercijferen en een voor het ontcijferen van de tekst. De publieke sleutel is in tegenstelling tot de geheime sleutel bedoeld om met degene te worden uitgewisseld met wie men wil communiceren.
Een voorbeeld van een algoritme dat dit gebruikt, is RSA en voorbeelden van programma's, die dit gebruiken of kunnen gebruiken, zijn SSH en Pretty Good Privacy applicaties.
Een groot voordeel van twee verschillende sleutels is, dat een sleutel bekend kan worden gemaakt, de publieke sleutel, zodat iedereen deze sleutel kan gebruiken om de tekst te bewerken. Deze wordt gebruikt om de tekst te versleutelen, waarna de cijfertekst naar de eigenaar van de geheime sleutel kan worden verstuurd.
Werking
De eigenaar heeft behalve de publieke sleutel ook een geheime sleutel en is de enige die de geheime sleutel heeft. Die kan alleen worden gebruikt om de cijfertekst, de versleutelde tekst weer naar klare tekst om te zetten.
Iedereen kan met een publieke sleutel tekst op zo'n manier beveiligen dat alleen de eigenaar van de bijbehorende geheime sleutel de tekst kan ontcijferen. Dit garandeert het geheim blijven van de tekst. Alleen de geadresseerde kan de tekst met zijn geheime sleutel ontsleutelen.
Omgekeerd kan de eigenaar van een geheime sleutel een tekst versleutelen en die aan iedereen sturen. De ontvangers kunnen nu met hun publieke sleutel het bericht ontcijferen en de tekst lezen. Omdat de tekst met alleen die publieke sleutel was te ontcijferen, weten de ontvangers zeker dat het bericht van de eigenaar van de geheime sleutel afkomstig is, en ook dat het bericht onderweg niet is aangepast. De eigenaar is immers de enige die de geheime sleutel kent en kan dan ook niet ontkennen de bron van de tekst te zijn. Dit wordt in de literatuur onweerlegbaarheid, non-repudiation, genoemd.