Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > Web Development
You last visited: Today at 11:37

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



PHP & Passwort verschlüsseln

Discussion on PHP & Passwort verschlüsseln within the Web Development forum part of the Coders Den category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Jul 2010
Posts: 283
Received Thanks: 16
PHP & Passwort verschlüsseln

Frage ist recht Simple oder auch nicht.

Da ich seit längerem was neben meiner Ausbildung Zuhause programmieren wollte ist mir nun endlich was eingefallen.

Bevor ich aber einfach Anfangen wollte ich mich wegen der Sicherheit ein bisschen schlau machen. Ich bräuchte ein Verfahren (sehr sicheres Verfahren) um erstmal die Passwörter der User zu verschlüsseln.

md5 & sha1 sollen ja seid ner Zeit nicht mehr so sicher sein.

Habt ihr vll. irgendwelche Vorschläge? (neuste PHP Version läuft)
Was wär sicher?
Eventuell sha1("wortkette2" . Sha1("wortkette" . $passwort)); ?
oder gibt es von PHP "ganz neue" Funktionen die Passwörter verschlüsseln?
(
Nicht wundern das System auf meiner Arbeit läuft auf 4.3 oder so ...
und das System was auf 5.3 läuft ist intern und dort hab ich Passwörter noch nie gebraucht.
)

Um nette & hilfreiche Antworten wäre ich Dankbar

Wenn wer nebenbei noch Ideen hat wie man ein Chat zwischen 2 Personen sicher Verschlüsseln & entschlüsseln kann könnte er es auch gerne dazuschreiben.
Masterkroko1 is offline  
Old 06/18/2014, 00:42   #2

 
elite*gold: 0
Join Date: May 2014
Posts: 91
Received Thanks: 28
PHP Code:
$sSalt openssl_random_pseudo_bytes(22);
$sSalt '$2a$%13$' strtr($sSalt, array('_' => '.''~' => '/'));
$sHash crypt($form->password$sSalt); 
Zum Login nutzt du dann halt:

PHP Code:
$bPasswordIsCorrect $sHash === crypt($_REQUEST['password'], $sHash); 
Das System wird bspw. auch von Woltlab für das WBB genutzt.
マルセル is offline  
Old 06/18/2014, 18:06   #3
 
PixelTree's Avatar
 
elite*gold: 13
Join Date: Feb 2010
Posts: 1,350
Received Thanks: 239
PHP liefert auch eine eigene Methode um Passwörter zu verschlüsseln -
PixelTree is offline  
Old 06/19/2014, 10:53   #4



 
.aNNdii#'s Avatar
 
elite*gold: 1
Join Date: Aug 2008
Posts: 7,744
Received Thanks: 3,606
Ich benutze sha1(hex2bin(sha1('string'), welches das Äquivalent zum mySQL PASSWORD hash ist, wobei ich den ersten sha1 Encryption auf der Clientseite via. jQuery durchführen lasse.
.aNNdii# is offline  
Old 06/19/2014, 19:09   #5

 
マルコ's Avatar
 
elite*gold: 1329
Join Date: Jun 2009
Posts: 1,873
Received Thanks: 960
@.aNNdii:
Punkt 1, SHA1 ist schon lange nicht mehr sicher. Ein SHA1 Passwort übers netz zu schicken ist fast so, als ob du es nicht hashst. Nimm lieber SHA2 oder besser gleich SHA3. Dafür gibt es wunderschöne Libs.

Punkt 2: Ich trau dem MySQL PASSWORD Hash nicht. Ich denke, es hat Gründe, warum er nicht eingesetzt wird.


@OP: Das, was Maruseru sagt, ist eine Möglichkeit, basiert aber auf openssl. Falls du diese dependency weg haben willst, dann mach doch einfach sowas, wie
PHP Code:
/**
 * Generate a random string
 * 
 * @param integer $length
 * @param string $chars //Default: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890'
 * @return string random string made from $chars
 */
function randomString($length$chars 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890')
{
    
$chars_length = (strlen($chars) - 1);
    
$string $chars{rand(0$chars_length)};
    for(
$i 1$i $length$i strlen($string))
    {
        
$r $chars{rand(0$chars_length)};
        if(
$r != $string{$i 1})
        {
            
$string .= $r;
        }
    }
    
    return 
$string;
}

$salt randomString(8);

$hashedPW hash('sha512'md5($salt) . $pw); 
Ohne externe Abhängigkeiten funktioniert mein Skript in ziemlich jeder PHP Version; und sollte sicher sein. Über diese Variante haben auch schon tausende Augen geschaut, denn der Algo ist aus dem MyBB Quelltext genommen.
マルコ is offline  
Old 06/20/2014, 22:55   #6
 
elite*gold: 0
Join Date: Nov 2010
Posts: 700
Received Thanks: 507
Also md5 an sich ist nicht unsicher, nur nach einer gewissen Zeit könnte man das Passwort halt durch Bruteforce bekommen oder halt in entsprechenden Datenbank etwas schneller bekommen.

Dies würde sich aber vermeiden lassen wenn du bestimmte Pre/Post fixe benutzt.
Also zB. "passwort" = e22a63fb76874c99488435f26b117e37
Jetzt einfach nen Prefix davor abce22a63fb76874c99488435f26b117e37, hier "abc".
Dann ist es noch nicht mal mehr als md5 zu sehen (da die Länge nicht mehr stimmt) und solange der Prefix clever gewählt ist (oder sogar andere Sachen in den ursprünglichen Hash eingearbeit sind), wird das ganze um einiges sicherer.

Musst dir nur ne kreative Lösung einfallen lassen um den Hash zu verändern, das es nicht überall gleich ist.
Das wäre jetzt so meine Idee ^^
supercracker13 is offline  
Old 06/21/2014, 00:46   #7

 
マルコ's Avatar
 
elite*gold: 1329
Join Date: Jun 2009
Posts: 1,873
Received Thanks: 960
@supercracker13: Sicherheit aufgrund Unwissenheit ist _keine_ Sicherheit. Sicher ist, wenn jeder weiß, wie es gehasht wurde, aber es trotzdem keiner rückgängig machen kann ohne Probieren. Und MD5 ist in dem Fall einfach Mist, weil es inzwischen viele Verfahren gibt, die die Rückrechnung extrem stark beschleunigen (Rainbowtables).
Siehe zum Beispiel auch das Public Key Verfahren, das heute immer noch überall eingesetzt wird. Jeder weiß, wie es funktioniert und wo es eingesetzt wird. Aber es ist trotzdem sicher.
マルコ is offline  
Reply


Similar Threads Similar Threads
Passwort sha-1 verschlüsseln
05/10/2014 - Web Development - 9 Replies
Moin Leute, Meine Registerpage für meinen WoW-Server ist so gut wie fertig nur folgendes Problem habe ich noch. Die Daten werden ja in die Datenbank eingegeben aber da die Passwörter (sha_pass_hash) aus ID:PW bestehen z.B.: ID: Test PW: bauer sha_pass : TEST:BAUER = 875ac247bdf5f3a32c70435bd79c00ad24bdda6b
Bukkit Türen/Kisten mit Passwort verschlüsseln
08/15/2011 - Minecraft - 2 Replies
Hallo, ich habe ne kurze Frage zu Bukkit und zwar: Gibt es ein bukkitplugin womit ich türen/kisten und co mit einem Passwort verschlüsseln kann
[PHP]Passwort vom PSC Script in PHP Datei verschlüsseln
05/02/2011 - Metin2 Private Server - 19 Replies
Hallöschen. Sagt mal gibts ne möglicheit das Passwort was mit dem Cashin-Script von Sapphire auf die PSC kommt in der PHP Datei zu verschlüsseln? Beispiel: $psc->new_password = md5'15898298d06eef850d4610927cb1d13e'; So das er dann auch das entschlüsselte PW auf die PSC packt und nicht z.B. md5'15898298d06eef850d4610927cb1d13e'
Passwort verschlüsseln ?
03/18/2010 - Metin2 Private Server - 9 Replies
Hey, Ich suche nen How To um 'n passwort zu verschlüsseln damit man Leute auf nem Server manuel regestrieren kann. Ich weiß das man es mit MsQL oder so verschlüsseln muss aber keine Ahnung wie =) Wäre nett wenn ihr mir helfen könntet.
DB Passwort verschlüsseln
10/08/2009 - Metin2 Private Server - 7 Replies
hey ich habe in der DB außversehen meine ganzen accs gelöscht und jetzt will ich neue machen und habe kein verschlüsseltes PW mehr zum kopieren >.< kann mir bidde einer das verschlüsselte sstandartpasswort von instant server geben??? danke :)



All times are GMT +2. The time now is 11:37.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.