Dieses Beispiel zeigt wie einfach sich Kryptographie mit PHP realisieren lässt.
Im Einzelnen macht die Funktion nichts anderes, als dass sie jeden Buchstaben in seinen Binärwert
umwandelt und die 8 Bits (1 Bit = 1 Ziffer (0/1)) in ihrer Anordnung ändert. Das führt dazu, dass der
daraus resultierende Binärwert, umgewandelt in das darstellbare Zeichen, unlesbar wird.
Eine kleine Besonderheit an dieser Funktion ist, dass zum Verschlüsseln und zum Entschlüsseln
ein und die selbe Funktion genutzt wird. Das wurde dadurch erreicht, weil die Bitanordnung, in einer
logischen Ordnung stehen. Ein Beispiel (mit Beispielwerten):
Bei der Verschlüesselung, Bit von Position 3 auf Position 0 Verschieben:
0...1... wird zu 1...0...
Beim Entschlüsseln verschieben sich die Bits in gleicher Ordnung:
1...0... wird zu 0...1...
Somit ist die Original Ordnung wieder hergestellt.
Man beachte: Die Positionsnummern der Bits beginnen mit 0, sprich Bit 1 hat Position 0, Bit 2 hat
Position 1, Bit 3 hat Position 2 usw. bis Bit 8, welches Position 7 hat.
An dieser Stelle möchte ich ausdrücklich darauf hinweisen, dass diese Funktion (bitshifting) NICHT
sicher genug ist, um Sicherheitsrelevante Daten damit zu chiffrieren. Dafür müsste die Funktion um
Einiges erweitert werden. Die Funktion dient nur als Denkanastoß!
|