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++; 

?>

Ratings

There are no comments available yet.

Here you can write a comment


Please enter at least 10 characters.
Loading... Please wait.
* Pflichtangabe

Related topics

Variablen über mehrere Seiten hinweg verwenden - der Session-Befehl macht 's möglich!

Oberste Voraussetzung um Session-Befehle korrekt auszuführen ist, dass der Provider a) PHP und b) das speichern von Sessions auf dem Server überhaupt erlaubt. Wird der Session-Befehl unterstützt jedoch nicht das direkte speichern von Sessions bzw. Sess ...

ndo@

Autor : ndo@
Category: PHP-Tutorials

Programmierung - SQL

Dieser SQL-Kurs wendet sich vor allem an Programmierer, die mit Hilfe von SQL auf Datebaken zugreifen, und an alle, die Datenbanken neu entwerfen, erweitern oder abändern wollen ...

webmaster205@

Autor : webmaster205@
Category: mySQL-Tutorials

Unkaputtbare Hyperlinks

Wer das Publizieren im Internet nicht bloß als technische Spielerei oder gar eine Designtätigkeit auffasst, wird automatisch ein digitaler Bibliothekar ...

chris@

Autor : chris@
Category: PHP-Tutorials

MySQL für Anfänger einfach erklärt

Dieses Tutorial richtet sich an Anfänger, die noch nie mit SQL gearbeitet haben. Vielleicht ist aber auch für Fortgeschrittene das Eine oder Andere dabei. ...

admin

Autor : admin
Category: mySQL-Tutorials

Objektorientiertes Programmieren

Dieses Tutorial beschreibt sehr gut die Wirkunsweise von objektorientiertes Programmieren. Also bestens geeignet um das objektorientierte Programmieren zu verstehen. ...

phpsven

Autor : phpsven
Category: PHP-Tutorials

Counter auf MySQL Basis

Neben der Möglichkeitet, einen Counter per Textfiles zu programmieren, besteht auch die Möglichkeit, MySQL zu verwenden. ...

Lukas Beck

Autor : Lukas Beck
Category: PHP-Tutorials

Login mit Hilfe von PHP und mySQL

Dieses Tutorial soll die Grundzüge eines Login-Systems auf der Basis von PHP und mySQL unter Zuhilfenahme von Sessions klären. ...

razorblade

Autor : razorblade
Category: PHP-Tutorials

Hier ein kleines allgemeines Tutorial zu PHP

Die Einleitung ist in folgende Themen aufgeteilt: -Einleitung -Variablen -Parameterübergabe -Funktionen -Schleifen -IF-Abfragen Am besten Sie schauen sie sich der Reihenfolge nach an. ...

demiangrandt@

Autor : demiangrandt@
Category: PHP-Tutorials

Publish a tutorial

Share your knowledge with other developers worldwide

Share your knowledge with other developers worldwide

You are a professional in your field and want to share your knowledge, then sign up now and share it with our PHP community

learn more

Publish a tutorial