Herkömmliche Algorithmen (auch symmetrische Algorithmen oder Geheimschlüsselalgorithmen genannt) verwenden denselben Schlüssel zum Ver- und Entschlüsseln von Daten. Das bedeutet, dass Sender und Empfänger denselben geheimen Schlüssel teilen müssen, um sicher kommunizieren zu können.
Public-Key-Algorithmen (auch asymmetrische Algorithmen genannt) verwenden zwei verschiedene Schlüssel, einen öffentlichen Schlüssel und einen privaten Schlüssel. Der öffentliche Schlüssel wird zum Verschlüsseln von Daten und der private Schlüssel zum Entschlüsseln von Daten verwendet. Das bedeutet, dass der Sender Daten mit dem öffentlichen Schlüssel des Empfängers verschlüsseln kann und nur der Empfänger die Daten mit seinem privaten Schlüssel entschlüsseln kann.
Hier ist eine Tabelle, die die wichtigsten Unterschiede zwischen herkömmlichen und Public-Key-Algorithmen zusammenfasst:
| Funktion | Konventionelle Algorithmen | Public-Key-Algorithmen |
|---|---|---|
| Anzahl der Schlüssel | Ein Schlüssel | Zwei Schlüssel (öffentlich und privat) |
| Schlüsselverteilung | Muss sicher zwischen Sender und Empfänger geteilt werden | Der öffentliche Schlüssel kann öffentlich geteilt werden, der private Schlüssel muss geheim gehalten werden |
| Verschlüsselung/Entschlüsselung | Derselbe Schlüssel wird zum Verschlüsseln und Entschlüsseln von Daten verwendet | Der öffentliche Schlüssel wird zum Verschlüsseln von Daten verwendet, der private Schlüssel wird zum Entschlüsseln von Daten verwendet |
| Sicherheit | Weniger sicher als Public-Key-Algorithmen | Sicherer als herkömmliche Algorithmen |
| Geschwindigkeit | Schneller als Public-Key-Algorithmen | Langsamer als herkömmliche Algorithmen |
Im Allgemeinen werden herkömmliche Algorithmen verwendet, wenn die übertragenen Daten nicht hochsensibel sind oder wenn der Kommunikationskanal sicher ist. Algorithmen mit öffentlichem Schlüssel werden verwendet, wenn die übertragenen Daten hochsensibel sind oder der Kommunikationskanal nicht sicher ist.