Algorithmen und Kryptographie - Was sind Algorithmen und wie hängen sie mit Kryptographie zusammen? Lassen Sie uns zunächst verstehen, bevor ich mich rühme und diesen Blog in ein langweiliges Nebengespräch umwandle.

Algorithmen und Kryptographie

Algorithmen

Für diejenigen unter Ihnen, die denken, Algorithmen sind nur mit der Informatik verbunden, liegen Sie falsch. Algorithmus ist eine Methode oder eine Formel zur Lösung eines Problems. Und wenn ich problem sage, kann es sich um jede Art von Problem handeln, sei es um mathematische, naturwissenschaftliche oder sogar computergestützte Formeln. Lassen Sie mich Ihnen eine einfache geben

Beispiel:

(A + b) 2 = a 2 + 2ab + b 2

Oder es kann sein:

Abgrenzungsbetrag = Kapital (1 + ROI * 100 * Zeit)

Ja! Alles, was eine Formel ist, kann als Algorithmus angesehen werden. Ein Algorithmus ist ein Regelwerk zur Lösung eines Problems, das bei richtiger Ausführung jedes Mal die richtige Antwort liefert. Algorithmen beinhalten im Allgemeinen das Wiederholen einer Reihe von Schritten, wie bei den Ausleih- und Übertragsalgorithmen und bei den Long-Multiplikations- und Divisionsalgorithmen. Algorithmen umfassen eine Vielzahl von Additionen, Subtraktionen, Multiplikationen und Divisionen.

Aber bevor Sie anfangen zu denken, dass ich hier eine Art Mathe-Vorlesung halte, lassen Sie mich Ihnen sagen, dass ich es nicht bin. Ich spreche hier über Algorithmen und Kryptographie im Zusammenhang mit der Informatik. Aber bevor ich damit fortfahre, möchte ich Ihnen zunächst einige Beispiele für einfache Algorithmen geben.

Diese Beispiele sind für reine Noobs gedacht, die in ihrem ganzen Leben noch nie etwas Algorithmisches gemacht haben. Wenn Sie also der Meinung sind, dass Sie klug genug sind, können Sie zum nächsten Abschnitt der Kryptografie übergehen, in dem ich Ihnen erneut einige Grundlagen erläutere, bevor Sie mit der nächsten Ebene fortfahren.

Im Folgenden finden Sie einige Beispiele für Additionsalgorithmen, die Ihnen den Einstieg erleichtern und eine Vorstellung davon geben, wie Algorithmen funktionieren. Beginnen wir mit der grundlegenden Mathematik:

Additionsalgorithmen von links nach rechts:

Fügen Sie von links beginnend Spalte für Spalte hinzu und passen Sie das Ergebnis an.

Für manche Menschen wird dieser Vorgang so automatisch, dass sie links beginnen und die Antwort spaltenweise schreiben, wobei sie sich nacheinander anpassen, ohne irgendwelche Zwischenschritte zu schreiben. Wenn sie gebeten werden, dies zu erklären, sagen sie Folgendes:

200 plus 400 sind 600, aber (siehe nächste Spalte) ich muss das anpassen, also schreibe 7. Dann sind 60 und 80 140, aber das muss angepasst werden, also schreibe 5. Jetzt sind 8 und 3 11, nicht mehr zu tun, schreiben 1. Diese Technik entwickelt sich leicht aus Erfahrungen mit Manipulationsmitteln wie Basis-10-Blöcken und Geld sowie Tausch- oder Handelsspielen und steht im Einklang mit den zum Lesen und Schreiben gelernten Mustern von links nach rechts.

Jetzt können einige Leute ganz über Nüsse gehen, wenn sie darüber lesen. Möglicherweise müssen Sie dieses Zeug also googeln, um eine genaue Vorstellung davon zu bekommen, was genau hier vor sich geht.

Kryptographie

Kryptographie ist eine Kunst, Codes auf nicht menschlich lesbare Weise zu schreiben. Es ist eine Methode zum Speichern und Übertragen von Daten in einer bestimmten Form, sodass nur diejenigen, für die sie bestimmt sind, sie lesen und verarbeiten können. Man kann sagen, dass die Kryptographie ein enger Verwandter der Disziplinen Kryptologie und Kryptoanalyse ist.

Die Kryptografie umfasst Techniken wie Mikropunkte, das Zusammenführen von Wörtern mit Bildern und andere Methoden zum Verbergen von Informationen im Speicher oder bei der Übertragung. In der heutigen computerzentrierten Welt wird die Kryptografie jedoch meistens mit dem Verwürfeln von Klartext (gewöhnlicher Text, manchmal auch als Klartext bezeichnet) in Chiffretext (ein Prozess, der als Verschlüsselung bezeichnet wird) und dann wieder zurück (als Entschlüsselung bezeichnet) in Verbindung gebracht. Personen, die dieses Feld ausüben, werden als Kryptographen bezeichnet.

Verschlüsselung wird seit vielen tausend Jahren verwendet. Die folgenden Codes und Chiffren können gelernt und verwendet werden, um Nachrichten von Hand zu verschlüsseln und zu entschlüsseln:

A) Monoalphabetische Chiffren:

Die monoalphabetische Chiffre verwendet die gleiche Substitution für die gesamte Nachricht. Wenn Sie beispielsweise wissen, dass der Buchstabe A als Buchstabe K verschlüsselt ist, gilt dies für die gesamte Nachricht. Diese Art von Nachrichten kann durch Frequenzanalyse, fundierte Vermutungen oder durch Ausprobieren geknackt werden.

1. Ceaser Cipher

Eine Caesar-Chiffre ist eine der einfachsten (und am einfachsten geknackten) Verschlüsselungsmethoden. Es handelt sich um eine Substitutions-Chiffre, bei der jeder Buchstabe der geheimen Nachricht durch einen anderen Buchstaben des Alphabets ersetzt wird. Dies ist eine feste Anzahl von Stellen weiter im Alphabet.

Da jeder Buchstabe in der Nachricht eine direkte Übersetzung in einen anderen Buchstaben enthält, kann die Frequenzanalyse zum Entschlüsseln der Nachricht verwendet werden. Beispielsweise ist der Buchstabe E der am häufigsten verwendete Buchstabe in der englischen Sprache.

Wenn also der häufigste Buchstabe in einer geheimen Nachricht K ist, ist es wahrscheinlich, dass K für E steht. Außerdem geben häufige Wortendungen wie ING, LY und ES Hinweise. Ein Brute-Force-Ansatz, bei dem alle 25 möglichen Kombinationen ausprobiert werden, würde ebenfalls dazu beitragen, die Nachricht zu entschlüsseln.

In diesem Beispiel wurde jeder Buchstabe in der Klartextnachricht im Alphabet um 3 Buchstaben nach unten verschoben.

Klartext : Dies ist eine geheime Nachricht

Chiffretext : wklv lv d vhfuhw phvvdjh

2. Atbash-Chiffre

Die Atbash-Chiffre ist ein sehr spezieller Fall einer Substitutions-Chiffre, bei der die Buchstaben des Alphabets vertauscht sind. Mit anderen Worten, alle, die durch Zs ersetzt werden, alle Bs werden durch Ys ersetzt, und so weiter.

Da Sie durch zweimaliges Umkehren des Alphabets das tatsächliche Alphabet erhalten, können Sie eine Nachricht mit genau demselben Algorithmus verschlüsseln und entschlüsseln.

Beispiel:

Klartext : Dies ist eine geheime Nachricht

Chiffretext : Gsrh rh z hvxivg nvhhztv

Die Schlüsselwort-Chiffre ist identisch mit der Caesar-Chiffre, mit der Ausnahme, dass das verwendete Substitutionsalphabet mit einem Schlüsselwort dargestellt werden kann.

Um ein Substitutionsalphabet aus einem Schlüsselwort zu erstellen, notieren Sie sich zunächst das Alphabet. Darunter notieren Sie das Schlüsselwort (ohne doppelte Buchstaben), gefolgt von den verbleibenden nicht verwendeten Buchstaben des Alphabets.

ABCDEFGHIJKLMNOPQRSTUVWXYZ

KEYWORDABCFGHIJLMNPQSTUVXZ

Um eine Klartextnachricht zu verschlüsseln, konvertieren Sie alle Buchstaben aus der oberen Zeile in die entsprechenden Buchstaben in der unteren Zeile (A nach K, B nach E usw.).

Mit Hilfe der Frequenzanalyse und einiger fundierter Vermutungen können diese Arten von einfachen Substitutionschiffren leicht geknackt werden.

4. Pigpen / Freimaurer-Chiffre

Die Pigpen-Chiffre (manchmal als Freimaurer-Chiffre oder Freimaurer-Chiffre bezeichnet) ist eine einfache Substitutions-Chiffre, bei der Buchstaben gegen Symbole ausgetauscht werden, die auf einem Raster basieren. Das Schema wurde in den frühen 1700er Jahren von den Freimaurern für Aufzeichnungen und Korrespondenz entwickelt und verwendet. Die Beispieltaste zeigt eine Möglichkeit, wie die Buchstaben dem Raster zugewiesen werden können.

B) Polyalphabetische Chiffren:

In einer polyalphabetischen Chiffre kann sich die Ersetzung während der Nachricht ändern. Mit anderen Worten, der Buchstabe A kann als der Buchstabe K für einen Teil der Nachricht codiert sein, aber später kann er als der Buchstabe W codiert sein.

Empfohlene Kurse

  • Schulung zu XML
  • CCNA Prüfungslehrgang
  • Schließen Sie das UNIX- und Linux-OS-Training ab
  • HTML 5 Schulungspaket

1. Vigenere-Chiffre

In einer Caesar-Chiffre wird jeder Buchstabe des Alphabets um eine bestimmte Anzahl von Stellen verschoben. In einer Caesar-Chiffre von Schicht 3 würde beispielsweise A zu D, B zu E und so weiter. Die Vigenere-Chiffre besteht aus der Verwendung mehrerer Caesar-Chiffren nacheinander mit unterschiedlichen Verschiebungswerten.

Zum Verschlüsseln kann eine Alphabettabelle verwendet werden, die als tabula recta, Vigenere-Quadrat oder Vigenere-Tabelle bezeichnet wird. Es besteht aus dem Alphabet, das 26 Mal in verschiedenen Reihen geschrieben wurde, wobei jedes Alphabet im Vergleich zum vorherigen Alphabet zyklisch nach links verschoben ist, was den 26 möglichen Caesar-Chiffren entspricht. An verschiedenen Stellen des Verschlüsselungsprozesses verwendet die Chiffre ein anderes Alphabet als eine der Zeilen. Das an jedem Punkt verwendete Alphabet hängt von einem sich wiederholenden Schlüsselwort ab.

Angenommen, der zu verschlüsselnde Klartext lautet:

ATTACKATDAWN

Die Person, die die Nachricht versendet, wählt ein Schlüsselwort und wiederholt es, bis es der Länge des Klartextes entspricht, z. B. das Schlüsselwort „LEMON“:

Zitronenmelone

Jeder Buchstabe wird codiert, indem der Schnittpunkt zwischen dem Klartextbuchstaben und dem Schlüsselwortbuchstaben im Raster gefunden wird. Zum Beispiel wird der erste Buchstabe des Klartextes A mit dem Alphabet in Zeile L, dem ersten Buchstaben des Schlüssels, verschlüsselt. Dies geschieht durch Betrachten des Buchstabens in Zeile L und Spalte A des Vigenere-Quadrats, nämlich L. Ähnlich wird für den zweiten Buchstaben des Klartextes der zweite Buchstabe des Schlüssels verwendet; Der Buchstabe in Zeile E und Spalte T ist X. Der Rest des Klartextes wird auf ähnliche Weise verschlüsselt:

Klartext : ATTACKATDAWN

Schlüssel : LEMONLEMONLE

Geheimtext : LXFOPVEFRNHR

Wenn Sie die Position des Chiffretext-Buchstabens in einer Tabellenzeile finden und dann die Bezeichnung der Spalte nehmen, in der er als Klartext angezeigt wird, führen Sie die Entschlüsselung durch. In Zeile L wird beispielsweise der Chiffretext L in Spalte A angezeigt, die als erster Klartextbuchstabe verwendet wird. Wenn Sie X in Zeile E der Tabelle nachschlagen, wird der zweite Buchstabe entschlüsselt. Es wird in Spalte T angezeigt, die als Klartextbuchstabe verwendet wird.

Eine Gronsfeld-Chiffre ist mit der Vigenere-Chiffre identisch, mit der Ausnahme, dass nur 10 Zeilen verwendet werden, sodass das Schlüsselwort eine Zahl anstelle eines Wortes sein kann.

Steganographie

Steganographie ist eigentlich die Wissenschaft, Informationen vor Leuten zu verbergen, die dich beschnüffeln würden. Der Unterschied zur Verschlüsselung besteht darin, dass die potenziellen Snoopers möglicherweise gar nicht erkennen können, dass es überhaupt versteckte Informationen gibt.

Zum Beispiel haben Bilddateien normalerweise viel ungenutzten Speicherplatz. Dieser Bereich kann zum Senden versteckter Nachrichten verwendet werden. Wenn Sie sich mit Verschlüsselung befassen, wird gelegentlich der Begriff Steganographie verwendet. Es ist jedoch keine echte Verschlüsselung (obwohl sie immer noch sehr effektiv sein kann), und als solche erwähne ich sie hier nur der Vollständigkeit halber.

Wenn Sie also mit dem Üben der Kryptologie beginnen möchten, sollten Sie am besten damit beginnen, Algorithmen und Chiffretext zusammen mit der Steganographie zu lösen. Auch wenn die Steganografie einfach zu sein scheint und keine echte Verschlüsselung ist, ist sie immer noch eine der am häufigsten verwendeten Verschlüsselungen, wenn es um Grundlagen geht und wenn Sie in kürzester Zeit und auf bestmögliche Weise etwas codieren müssen.

Erste Bildquelle: pixabay.com

Empfohlene Artikel

In den folgenden Artikeln erfahren Sie mehr über die Algorithmen und die Kryptografie. Gehen Sie also einfach über den Link.

  1. Im Vorstellungsgespräch bei Data Structures And Algorithms | Am besten brauchbar
  2. 8 Awesome Algorithm Interview Fragen und Antworten
  3. Best Choice Programming Languages ​​zum Erlernen von Algorithmen
  4. 10 Beste Datenstrukturen und Algorithmen C ++ | Grundlagen