Einführung in C#
Cäsar Verschlüsselung
Geheimbotschaften durch Buchstabenverschiebung
Die Cäsar Verschlüsselung ist ein Verfahren welches Julius Cäsar benutzt hatte um Geheimbotschaften zu übermitteln. Dabei handelt es sich um eine einfache Verschiebung der Buchstaben des Alphabets um drei Stellen nach rechts.
a | b | c | d | e | f | g | h | i | j | k | l | m | n | o | p | q | r | s | t | u | v | w | x | y | z |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
d | e | f | g | h | i | j | k | l | m | n | o | p | q | r | s | t | u | v | w | x | y | z | a | b | c |
Aus dem Klartext HALLO würde demnach der verschlüsselte Text KDOOR
Hier ein Beispiel, welches einen Klartext mit der Cäsar-Chiffre verschlüsselt:
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication_Verschluesselung1 { class Program { static void Main(string[] args) { char[] alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ".ToCharArray(); // Wandle einen String in ein char-Array string klartext = "Textnachricht xyz"; // Der zu verschlüsselnde Text = klartext int schluessel = 3; // Schlüssel 3 für die Cäsar-Verschlüsselung string code = ""; // Hier wird der verschlüsselte Text gespeichert foreach (char c in klartext.ToUpper()) // Iteriere durch jedes Zeichen im Klartext und wandle in Großbuchstaben { if (alphabet.Contains(c)) // Prüfe ob das aktuelle Zeichen ein Buchsatbe im Alphabet ist { int position = Array.IndexOf(alphabet, c); // Ermittle die aktuelle Indexposition des Zeichens im Array int position_new = position + schluessel; // Addiere den Schlüssel zur Indexposition int rest = position_new % 26; // Berechne die neue Indexposition code += alphabet[rest]; // Füge den neuen Buchstaben dem verschlüsselten Text hinzu } else { code += c; // Wenn kein Buchstabe aus dem Alphabet (z.B. Leerzeichen) gefunden wurde, übernimm das Zeichen } } Console.Write(code); // Ausgabe des verschlüsselten Textes Console.ReadLine(); } } }