2010-05-26 13 views
8

Ben eşdeğer olacağını içine bu dönüştürmek gerekirdönüştürme base64'd SHA1 sağlamalarının

$hash = '{SHA}' . base64_encode(sha1('some string here', true)); 

kullanılarak oluşturulan mySQL şifrelerin bir listesi var sağlamalarının

$hash = sha1('some string here'); 

Bu bizim mail sistemi kullanır ve başka bir posta sistemine dönüştürmek istediğimiz paroladır (ancak 40 char hex hash olması gerekir :(

Bir biçimden diğerine nasıl dönüştürürüm? pret eminim bunu daha önce yaptım, ama diğer yolu, kodu bulamıyorum rağmen!)

Bir not olarak, verilerin mySQL'de olduğunu belirttim - bu alakasız - Nasıl yapılacağını biliyorum veri, onu dönüştürmemek için.

karma aynıdır - Sadece bilgi doludur yolu (! Bunun sadece base16 için base64 dönüştürülmüş gerektiğini düşünüyorum, ama bu sadece bir tahmin)

cevap

16
$binary = base64_decode(substr($hash, 5)); 
$hex = bin2hex($binary); 
+2

Yığın taşması - beyin osurduğunda cevaplar için yer! - Şerefe ... – Mez

+0

efendim izin verirse, ** Dünyada ** upvot ** yeteri kadar ** yeterli değil ... – xDaizu

-3

Eh base64_decode() can dönüştürmek çalışıyorum base64_encode manuel girişinde bulunabilir.
Ve bunu ben karmaları dönüştürme değilim

+0

Eğer bunu sağlamalarının olduğun gibi kendiniz yazmak için çok zor eğer, sha1 elle giriş yorumlarında ham biçimine dönüştürmek için bir yol var eminim paketlenmiş. – Mez

+0

evet, çok hızlı bir şekilde okuyordum –

İlgili konular