Verschlüsselungsalgorithmus
Dieses Tutorial zeigt einen Verschlüsselungsalgorithmus von Texten nach dem PHP Data Encryption Standard.
2003-02-14 15:28:48 2003-02-14 15:28:48 Lukas Beck
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
Hier Kannst Du einen Kommentar verfassen
Verwandte Beiträge
Einfaches Gästebuch basierend auf php4 und MySQL
In diesem Tutorial lernt Ihr wie einfach es ist, ein Gästebuch mit php4 und MySQL zustellen. ...
![webmaster1@](/de/cache/img/7db53479b4d8289aa1fe24926b4bb0985050c.webp)
Autor :
webmaster1@
Kategorie:
PHP-Tutorials
Umfragenscript
Dieses Tutorial zeigt wie man mit eine Umfragescript mit einen TXT-Datenbank erstellen kann. ...
![kiliandreissig@](/de/cache/img/7db53479b4d8289aa1fe24926b4bb0985050c.webp)
Autor :
kiliandreissig@
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](/de/cache/img/dce0a74fc5536ce88f7ab0e6839179af5050c.webp)
Autor :
EVAMasters
Kategorie:
PHP-Tutorials
PHP cURL-Tutorial: Verwendung von cURL zum Durchführen von HTTP-Anfragen
cURL ist eine leistungsstarke PHP-Erweiterung, die es Ihnen ermöglicht, mit verschiedenen Servern über verschiedene Protokolle wie HTTP, HTTPS, FTP und mehr zu kommunizieren. ...
![TheMax](/de/cache/img/386a92f3efb9792453becfc1914a8f6d5050c.webp)
Autor :
TheMax
Kategorie:
PHP-Tutorials
Migration einer PHP 5 App auf PHP 7
Dieses PHP 7 Tutorial zeigt dir, wie du dein PHP5 Script auf PHP7 umstellst. ...
![admin](/de/cache/img/11d1a7c0dcebb73717cd882a819e96935050c.webp)
Autor :
admin
Kategorie:
PHP-Tutorials
Definition von Stored Procedures - eine Einführung
Stored Procedures sind vordefinierte SQL-Codeblöcke, die in einer Datenbank gespeichert sind und bei Bedarf aufgerufen werden können. ...
![Bernie](/de/cache/img/a2bf78f497619446f991dd56bfbb89a25050c.webp)
Autor :
ebiz-consult GmbH & Co. KG
Kategorie:
mySQL-Tutorials