Es gibt heute im wesentlichen zwei Typen von Chiffrierverfahren; welcher von beiden gewählt wird, sollte von der konkreten Anwendung abhängen.
Secret-Key-Verfahren gibt es im Prinzip schon seit mehreren tausend Jahren, wenn auch nicht auf so streng mathematischer Grundlage wie die heutigen. Sender und Empfänger vereinbaren einen gemeinsamen und geheimen Schlüssel. Dieser wird zum Verschlüsseln und zum Entschlüsseln der Nachricht verwendet - das Verfahren ist also symetrisch. Es gibt heute sogenannte Schlüsselaustauschverfahren, mit denen zwei Personen selbst über eine öffentliche Datenleitung einen gemeinsamen, geheimen Schlüssel vereinbaren können. Ein Dritter, der sie dabei belauscht, kann aus der mitgehörten Kommunikation keine Rückschlüsse auf den geheimen Schlüssel ziehen. Diese Schlüsselaustauschverfahren sind immer interaktiv, das heißt beide Personen müssen selbst senden und empfangen. Eine solche Interaktivität ist aber in vielen Anwendungen unbequem und unerwünscht, und sie bedeutet fast immer einen Zeitverlust.
Public-Key-Verfahren gibt es erst seit der Erfindung des RSA-Verfahrens 1978. Jeder, der es anderen ermöglichen möchte, ihm geheime Nachrichten zu senden, wählt sich einen geheimen Schlüssel selbst und berechnet daraus den öffentlichen Schlüssel. Den öffentlichen Schlüssel gibt er bekannt: Er schreibt ihn in ein öffentlich zugängliches File auf seinem Rechner oder übergibt ihn einer zentralen Institution zur Veröffentlichung. Diese Rolle könnte z.B. die Telekom mit einer Art Telefonbuch übernehmen. Jeder, der diesem Anwender eine geheime Nachricht schicken will, verschlüsselt diese nun mit dessen öffentlichem Schlüssel. Nur dieser Anwender kann dann mit seinem geheimen Schlüssel die chiffrierte Nachricht wieder entschlüsseln.
Public-Key-Verfahren sind erheblich langsamer als Secret-Key-Verfahren. Vor allem bei der Übermittlung großer Datenmengen, wie sie z.B. bei Multi-Media-Anwendungen auftreten, macht sich dieser Nachteil bemerkbar. Viele Chiffrierverfahren, die heute verwendet werden, bedienen sich deshalb beider Typen: Die Nachricht wird mit einem zufälligen Schlüssel gemäß einem Secret-Key-Verfahren verschlüsselt und der Schlüssel, der nur eine kleine Datenmenge darstellt, wird nach einem Public-Key-Verfahren mit dem öffentlichen Schlüsssel des Empfängers verschlüsselt. Die chiffrierte Nachricht und der chiffrierte Schlüssel werden dann dem Empfänger gesendet. Diese Methode ist sehr effizient und wird z.B. von PGP verwendet.
Von der Verschlüsselung bemerkt der Anwender in der Praxis jedoch nicht viel - hat er die Mail-Adresse und den öffentlichen Schlüssel des Empfängers einmal abgespeichert, so arbeitet das Chiffrierprogramm automatisch im Hintergrund.
Johannes Merkle