Frage

Die Frage ist ziemlich selbsterklärend. Ich googeln viele Seiten, viele Methoden, viele Kodierungen versucht, aber ich kann sie nicht übereinstimmen.

Ich versuche, die Zeichenfolge „asdasd“ Spiel zu machen. ( http://www.fileformat.info/tool/hash.htm?text= asdasd )

War es hilfreich?

Lösung

Versuchen Sie, diese

using System.Security.Cryptography

public static string HashPassword(string unhashedPassword)
{
    return BitConverter.ToString(new SHA512CryptoServiceProvider().ComputeHash(Encoding.Default.GetBytes(unhashedPassword))).Replace("-", String.Empty).ToUpper();
}

Andere Tipps

BitConverter funktioniert gut ...

var testVal = "asdasd";
var enc = new ASCIIEncoding();
var bytes = enc.GetBytes( testVal );

var sha = new SHA512Managed();
var result = sha.ComputeHash( bytes );

var resStr = BitConverter.ToString( result );
var nodash = resStr.Replace( "-", "" );

nodash.Dump();

(Fixed für 512-Bit-Hash, leider:)

Ich verbrachte mehrere Stunden versucht, eine .NET-Hash-Funktion zu erhalten PHP-Crypt-Funktion entsprechen. Kein Spaß.

Es gibt mehrere Herausforderungen hier, da die PHP Implementierung von Crypt einen Base64-codierten Zeichenfolge zurückzugibt, und nicht mehr Hash-Iterationen macht (zB 5000 ist standardmäßig für Crypt.) Ich nicht in der Lage war ähnlich Ausgaben von .NET zu erhalten mit mehrere Bibliotheken, bis ich gefunden CryptSharp. Er nimmt ein Salz ähnlich wie PHP (oder die ursprünglichen C) Funktion (z.B. "$6$round=5000$mysalt"). Beachten Sie, dass es kein Hinter $ ist, und dass, wenn Sie es einen gelegentlichen kein Salz liefern automatisch generieren.

Hier finden Sie CryptSharp hier: http://www.zer7.com/software.php?page=cryptsharp

Gute Hintergrund Lesung: - http://www.akkadia.org/drepper/SHA-crypt.txt

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top