Navigation
 Startseite
 Fachbücher
 Forum
 Webmaster News
 Script Newsletter
 Kontakt
 Script Installation
 Php
 Php Tutorials
 Impressum

Community-Bereich
 kostenlos Registrieren
 Anmelden
 Benutzerliste

Script Datenbank
 Script Archiv
 Script Top 20
 Screenshots
 Testberichte

Suche
 

Unsere Php Scripts
 Counter Script
 Umfrage Script
 Bilder Upload Script
 Terminverwaltung
 Simple PHP Forum
 RSS Grabber

Script Mods
 phpBB Adsense Mode

Tools und Generatoren
 .htpasswd Generator
 md5 Generator
 base64 Generator
 Markdown to HTML
 Colorpicker
 Unix timestamp Tool
 TLD Liste
 Webkatalog‑Verzeichnis

Partner
 Sprüche Treff

Artfiles.de
Bietet Serviceorientierte Internetdienstleistungen...
https://www.Artfiles.de
Hosterplus.de
Bekommen Sie Speicherplatz (Webspace), Domains und...
https://www.Hosterplus.de
 
 
 

Verschluesselung von Zeichenketten nach DES

Sie befinden sich: Home > Php Tutorial > Verschluesselung von Zeiche...

Verschluesselung von Zeichenketten nach DES


Eintrag am:  12.08.2010
Hits / Besucher:  4180
Sprache:  Deutsch
Kategorie:  Einsteiger Tutorials...
Tutorial Art:  eigenes
Eingetragen von   schubertmedia schubertmedia
 
Beschreibung

In vielen Fällen ist es sinnvoll, eine Zeichenkette, die irgendwo abgespeichert werden soll, nicht im Klartext zu speichern, sondern in verschlüsselter Form. Wenn man z. B. ein Passwort in einer Datei oder in einer Datenbank ablegen möchte, und dies dabei nicht verschlüsselt, dann kann jeder, der sich Zutritt zu dieser Datei bzw. zur Datenbank verschafft, dieses Passwort lesen. Wird das Passwort aber in verschlüsselter Form abgelegt, ist es schwierig, dieses zu entschlüsseln, weil der Algorithmus der Verschlüsselung nicht bekannt ist.

In PHP gibt es zum Verschlüsseln einer Zeichenkette die Funktion crypt(). Diese Funktion bekommt als Parameter eine Zeichenkette übergeben, die sie in verschlüsselter Form zurückgibt.

Der Syntax:

crypt(Zeichenkette, [Schlüssel]);

Beispiel:

<?php

    
/*

    * Created on 30.01.2010 by Nico Schubert

    */

    
$zeichenkette 'passwort';

    echo 
'Erster Aufruf ohne SALT:

        '
.crypt($zeichenkette).'<br>';

    echo 
'Zweiter Aufruf ohne SALT:

        '
.crypt($zeichenkette).'<br><br>';

    
$salt 'test';

    echo 
'Erster Aufruf mit SALT:

        '
.crypt($zeichenkette$salt).'<br>';

    echo 
'Zweiter Aufruf mit SALT:

        '
.crypt($zeichenkette$salt).'<br>';

?>

Ausgabe:

Erster Aufruf ohne SALT: $1$Z...uL..$oZhNCSVcmwTUR5jmPkULg1
Zweiter Aufruf ohne SALT: $1$fS4.6s4.$vEkB3YilbPYmH9s2D6xJw0

Erster Aufruf mit SALT: te5chwhw0IhZE
Zweiter Aufruf mit SALT: te5chwhw0IhZE

Erklärung:

In der Zeichenkette $zeichenkette wird das Wort "passwort" gespeichert. Beim ersten Aufruf der Funktion wird diese Zeichenkette verschlüsselt und per echo-Anweisung ausgegeben. Beim zweiten Aufruf wird diese bereits verschlüsselte Zeichenkette erneut verschlüsselt und anschließend ausgegeben. Deshalb unterscheidet sich die zweite Ausgabe von der ersten. Beim dritten Aufruf der Funktion wird der optionale Parameter $salt gesetzt, und die Zeichenkette $zeichenkette erneut verschlüsselt. Dies ist eine Variable, die den Wert "test" enthält. Dieser Parameter stellt den Startwert der Verschlüsselung dar. Beim vierten Aufruf wird dann der Inhalt der Variablen $zeichenkette ein viertes Mal verschlüsselt. Die Verwendung des optionalen Parameters $salt hat großen Einfluss auf die Verschlüsselung, was man daran sieht, das sich die Ausgabe vor allem in der Länge deutlich von der Ausgabe unterscheidet, die ohne Angabe von $salt erstellt wurde.

Die Verschlüsselung per crypt()-Funktion ist eine 1-Wege-Verschlüsselung. Das heißt, eine verschlüsselte Zeichenkette kann nicht wieder entschlüsselt werden.

 

Tags:

 

Artikel hinzufügen bei:
         
Bücherregal mit drei Büchern: 'PHP 4 - Grundlagen und Profiwissen' von Hanser Verlag, 'Webdesign in a Nutshell' von O'Reilly Verlag, und 'Webgestaltung' von Galileo Computing.