Kryptographie ist ein wirksames mathematisches Instrument zum Schutz von Informationen in Computersystemen. Daher verwenden viele Sicherheitsanwendungen kryptographische Verfahren für die Ver- und Entschlüsselung von Daten. Dank der Kryptographie werden sensible Daten über Telekommunikationsnetze auf sichere Weise übertragen, ohne dass sie durch das Abhören und die nachfolgende Beeinträchtigung gefährdet werden. Die Verschlüsselung kann als der Prozess definiert werden, bei dem Informationen nicht entzifferbar und zwecklos gemacht werden, bis sie zum richtigen Empfänger gelangen. Die Entschlüsselung ist die Umwandlung der verschlüsselten Daten in die ursprüngliche, lesbare Form.
Diese Technik wird im Alltagshandeln eingesetzt, wie Telefonieren mit einem Handy, Bezahlen mit einer Kredit- oder Debitkarte, Geldheben von einem Geldautomat, Einloggen in einen Computer mit einem Passwort usw. Die Kryptographie erlaubt die Speicherung von empfindlichen Informationen oder ihre Übertragung über ungesicherte Netzwerke (wie das Internet), so dass sie nur vom geplanten Empfänger gelesen werden können. Die Kryptographie wurde zu einem Industriestandard für die Sicherstellung der Informationssicherheit und ‑vertraulichkeit, Zugriffskontrolle auf Ressourcen und elektronische Transaktionen. Sie kann jedoch nicht allein alle Bedrohungen der Informationssicherheit behandeln.
Ein kryptographischer Algorithmus (auch als Chiffre bezeichnet) ist eine Sequenz von entsprechenden Ver- und Entschlüsselungsprozessen. Es handelt sich um eine mathematische Formel, die speziell für das Verdecken des Dateninhaltes entworfen wurde. Die wirksamsten Verschlüsselungsalgorithmen arbeiten mit einem oder mehreren Schlüsseln zusammen. Der gleiche Klartext kann mit Hilfe von unterschiedlichen Schlüsseln in unterschiedliche Geheimtexte verschlüsselt werden. Ein zuverlässiger kryptographischer Algorithmus muss garantieren, dass keine Möglichkeit besteht, den ursprünglichen Klartext zu entdecken, ohne dass man den Schlüssel kennt. Selbstverständlich gibt es auch Brute-Force-Methoden, die versuchen, alle möglichen Schlüssel auszuprobieren, bis der richtige gefunden wird. Die Sicherheit der verschlüsselten Daten hängt von zwei Faktoren ab: der Stärke des kryptographischen Algorithmus und der Geheimhaltung des Schlüssels.
Die Anzahl möglicher Schlüssel muss so hoch sein, dass es rechnerisch unmöglich ist, den richtigen Schlüssel mit einem Brute-Force-Angriff innerhalb einer angemessenen Frist zu entdecken. Viele Verschlüsselungsalgorithmen steigern ihre Zuverlässigkeit durch Erhöhung der Länge ihrer Schlüssel. Mit der Länge der Schlüssel wird mehr Rechenleistung für die Ver- und Entschlüsselung der Daten benötigt. Daher ist es wichtig, einen solchen Verschlüsselungsalgorithmus zu wählen, der den Mittelweg zwischen der notwendigen Sicherheit und den Rechenkosten der Datensicherung findet.
Moderne kryptographische Algorithmen können nach zwei Kriterien aufgeteilt werden: nach dem Typ des eingesetzten Schlüssels und nach der Art ihrer Arbeit mit Daten.
Nach dem Typ des eingesetzten Schlüssels gibt es:
Der Hauptvorteil der Kryptographie mit öffentlichen Schlüsseln besteht darin, dass Subjekte ohne eine vorhandene Sicherheitsregelung Nachrichten auf eine sichere Weise austauschen können. Sowohl der Sender als auch der Empfänger brauchen keine geheimen Schlüssel über sichere Kanäle zu teilen: die Kommunikation umfasst nur öffentliche Schlüssel und kein privater Schlüssel wird übertragen oder geteilt.
Nach der Art, wie die Algorithmen mit Daten arbeiten, können Chiffren wie folgt aufgeteilt werden:
Im Modul wird die folgende Terminologie verwendet: