Verschlüsselungsalgorithmus

Dieses Tutorial zeigt einen Verschlüsselungsalgorithmus von Texten nach dem PHP Data Encryption Standard.

Zunächst benötigt dieses Tutorial eine Rahmeneinführung in den Aufbau der ASCII (American Standard Code for Information Interchange) Tabelle: Mit dem ASCII Code sind Buchstaben und Zahlen beispielsweise im Internet darstellbar. Beginnen wir bei dem Buchstaben A. Dieser ist mit dem ASCII Wert 65 darstellbar. Dies können Sie auch mit der Funktion ord(); nachprüfen. Diese Funktion ermittelt zum entsprechenden Zeichen den jeweiligen ASCII Wert. Um dies besser nachvollziehen zu können, führen Sie folgendes Script aus, das Ihnen die für dieses Tutorial notwendigen Zeichen ausgeben wird.

<?php
$alphabet
=range('A','Z'); 
foreach(
$alphabet as $buchstabe

$ascii_code=ord($buchstabe); 
echo 
"$buchstabe = $ascii_code<br>"

?>

Zurück zur eigentlichen Verschlüsslung mittels PHP. Wie das Script zeigt, ist dem Buchstaben A der Wert 65 zugeordnet. Die nun benötigte Funktion chr(); liefert zu dem entsprechenden ASCII Wert das jeweilige Zeichen. Wenden wir nun folgende Funktion an, so erhalten wir den Buchstaben E. echo chr(ord("A")+4); Folgendes Problem taucht nun auf: Die gezeigte Funktion chr() bzw. ord() ist nur in der Lage, einzelne Buchstaben umzuwandeln, ganze Texte müssten manuell behandelt werden - beinahe unmöglich. Hierzu nutzen wir die Funktion strlen(); , um zunächst die Länge des Strings zu ermitteln. Diese Funktion kombinieren wir mittels while() Schleife mit der uns ebenfalls zur Verfügung stehenden Funktion substr(), mit Hilfe derer wir den Buchstaben festlegen, welchen wir verschlüsseln wollen.

<?php
$codiertext 
"Tutorial"
$laenge strlen($codiertext); 
while(
$n $laenge)

echo 
chr(ord(substr($codiertext,$n,1))+4); 
$n++; 

?>

Wir codieren also den jeweils in der Schleife durchlaufenden Buchstaben der Reihe $n. Wir erhalten nun als Ausgabe den String: Xyxsvmep Selbstverständlich kann die Schleife beliebig erweitert und um ein Vielfaches mehr verschlüsselt werden, mit jeder Verschlüsslungsstufe wird die Sicherheit erhöht, die Entschlüsslung komplexer.

Um jedoch selbst den String wieder korrekt lesen zu können, benötigt man selbstverständlich noch eine Entschlüsslungsprozedur. Diese ist ähnlich aufgebaut, wie das vorherige Beispiel, jedoch subtrahiert man die zuvor addierten Werte.

<?php 
$entcodiertext 
"Xyxsvmep"
$laenge strlen($entcodiertext); 
while(
$n $laenge)

echo 
chr(ord(substr($entcodiertext,$n,1))-4); 
$n++; 

?>

Nun erhalten wir wieder den Text Tutorial zurück.

Noch einmal die kompletten Codes:

Verschlüsslung:

<?php
$codiertext 
"Tutorial"
$laenge strlen($codiertext); 
while(
$n $laenge)

echo 
chr(ord(substr($codiertext,$n,1))+4); 
$n++; 

?>

Entschlüsslung:

<?php 
$entcodiertext 
"Xyxsvmep"
$laenge strlen($entcodiertext); 
while(
$n $laenge)

echo 
chr(ord(substr($entcodiertext,$n,1))-4); 
$n++; 

?>

Erfahrungen

Es sind noch keine Kommentare vorhanden.

Hier Kannst Du einen Kommentar verfassen


Bitte gib mindestens 10 Zeichen ein.
Wird geladen... Bitte warte.
* Pflichtangabe

Verwandte Beiträge

Das 'Nested Sets' Modell - Bäume mit SQL

Das 'Nested Sets' Modell - Bäume mit SQL

Dieses Tutorial beschreibt die 'Nested Sets'-Technik, mit der man solche Bäume mit SQL performant konstruieren kann. ...

gorski@

Autor : gorski@
Kategorie: mySQL-Tutorials

MySQL Klasse

In meinem kleinen Tutorial zeige ich euch, wie ihr ganz einfach eine kleine MySQL Klasse schreiben könnt. ...

Borlabs

Autor : Borlabs
Kategorie: mySQL-Tutorials

Einfaches News-Script

Das hier ist ein kleines Tutorial, um zu zeigen wie so ein News-Script aussehen kann. Im Grunde ist es nichts anderes als ein Gästebuch, in welches jedoch nur der Webmaster (oder sonstige authorisierte Personen) etwas eintragen kann. Natürlich kann man ...

pik

Autor : pik
Kategorie: PHP-Tutorials

Wie erstelle ich ein LogIn-Skript?

Das folgende Tutorial nutzt eine Datenbank, in der die Benutzerdaten gespeichert werden und eine Session, in der der Benutzer registriert wird. ...

andy@

Autor : andy@
Kategorie: PHP-Tutorials

plotting masters - a professional guide - Teil I

Grafische Interpolation und Bestapproximation von numerischen Wertepaaren: Wir wollen Punkte auf einer Zeichenebene über verschiedene Verfahren miteinander verbinden. ...

EVAMasters

Autor : EVAMasters
Kategorie: PHP-Tutorials

Ein Gästebuch in PHP Programmieren

Eine ausführliche Anleitung wie man auf einfache Art ein Gästebuch realsiert. Dieses Gästebuch basiert auf einer Textdatenbank! ...

Freak

Autor : Freak
Kategorie: PHP-Tutorials

Was muss ich in WordPress einstellen, damit Google Fonts nicht mehr geladen werden?

Möchten Du WordPress davon abhalten, Google Fonts zu verwenden? Hier erfährst Du, was du dafür in WordPress einstellen musst. ...

admin

Autor : admin
Kategorie: Sonstige Tutorials

Tutorial veröffentlichen

Tutorial veröffentlichen

Teile Dein Wissen mit anderen Entwicklern weltweit

Du bist Profi in deinem Bereich und möchtest dein Wissen teilen, dann melde dich jetzt an und teile es mit unserer PHP-Community

mehr erfahren

Tutorial veröffentlichen