InhaltsverzeichnisKlicke auf den Link, um zur gewünschten Stelle zu navigieren
Dieser Inhalt wurde automatisch aus dem Ukrainischen übersetzt.
XOR (exklusives ODER) – ist eine einfache, aber nützliche logische Operation, die in der Programmierung, Kryptografie und Datenverarbeitung verwendet wird. Sie funktioniert nach der Regel: Wenn zwei Werte gleich sind, ist das Ergebnis 0, wenn sie unterschiedlich sind – 1.
Wie sieht XOR in der Praxis aus?
Stellen Sie sich vor, Sie haben zwei Schalter:
- Wenn beide aus sind – leuchtet das Licht nicht.
- Wenn beide ein sind – leuchtet es ebenfalls nicht.
- Aber wenn einer ein und der andere aus ist – leuchtet das Licht.
So funktioniert XOR: Wenn die Elemente unterschiedlich sind – ergibt sich 1, wenn sie gleich sind – 0.
Wo wird XOR verwendet?
Verschlüsselung – wenn man einen Text nimmt und XOR mit einem Schlüssel macht, erhält man eine verschlüsselte Version. Ein erneutes XOR mit demselben Schlüssel gibt den ursprünglichen Text zurück. Bitmanipulation – XOR hilft beim Umschalten einzelner Bits in Zahlen. Unterschiedsprüfung – wird in Algorithmen zum Vergleich zweier Datensätze verwendet.
Einfach gesagt, XOR ist wie die Regel "nur eines von zwei", die bei vielen Aufgaben der Informationsverarbeitung hilft. Lassen Sie uns ein einfaches Beispiel in Ruby (ruby 3.4.2) betrachten:
XOR-Beispiel (Ruby)
def xor_encrypt(text, key)
text.bytes.map.with_index { |char, i| char ^ key.bytes[i % key.size] }.pack('C*')
end
def xor_decrypt(encrypted_text, key)
xor_encrypt(encrypted_text, key)
end
text = "Hello, XOR!"
key = "key123"
encrypted = xor_encrypt(text, key)
puts "🔒 Verschlüsselt: #{encrypted.inspect}"
decrypted = xor_decrypt(encrypted, key)
puts "🔓 Entschlüsselt: #{decrypted}"
Im Terminal wird ungefähr Folgendes ausgegeben:
... 🔒 Verschlüsselt: "#\x00\x15]]\x1FK=6c\x13" ... 🔓 Entschlüsselt: Hello, XOR!
Hier wird jedes Zeichen des Textes mit dem Schlüssel über XOR kombiniert.Die Wiederholung der Operation mit demselben Schlüssel gibt den ursprünglichen Text zurück.
Dies ist eine der einfachsten Verschlüsselungsmethoden, die in vielen Algorithmen verwendet wird.
Dieser Beitrag hat noch keine Ergänzungen vom Autor.