2011-08-09 15 views
8

Şifrelenmiş parolaları depolamak için MD5 hashing kullanıyorum. Şifre 6 ila 40 karakter uzunluğunda olabilir. Şifrelenmiş parolayı saklamak için gereken veritabanı sütunu boyutu nedir? Ayrıca, 40 karakterlik karma boyutu çok büyükse, o zaman 20 karakterlik bir şifre ne kadar karma büyüklükte olur?MD5 hash boyutu üretildi

Veritabanında saklamak için karma oluşturmak için FormsAuthentication.HashPasswordForStoringInConfigFile(stringToEncrypt, "MD5"); kullanıyorum.

+12

hashing! = Şifreleme – Oded

+1

Ayrıca, şifreler için MD5 kullanmayın. BCrypt veya SCrypt gibi bir hesaplama pahalı karma algoritma kullanın, bu yüzden kaba kuvvetle tersine çevirmek zor. –

cevap

24

gibi yeni bir karma fonksiyonları kullanarak düşünün. Diğer bir deyişle, boş bir dize veya birçok gigabayt bilgi edinebilirsiniz. Karma boyut her zaman sabittir.

Sizin durumunuzda karma boyutu 128 bittir. Bir ASCII dizesine dönüştürüldüğünde, yalnızca onaltılı basamak içeren bir 32 karakter dizgisi olur.

+0

Çok teşekkürler. Karma şifreyi saklamak için 32 karakterlik bir sütun kullanacağım. – Jatin

+8

Unutmayın, eğer parolaları elle koyarsanız, [yanlış yapıyorsunuz] demektir (http://www.codinghorror.com/blog/2007/09/youre-probably-storing-passwords-incorrectly.html). Lütfen [bcrypt kullanın] (http://stackoverflow.com/questions/481160/is-bcrypt-a-good-encryption-algorithm-to-use-in-c-where-can-i-find-it). –

3

MD5 karmaları, giriş ne kadar uzun olursa olsun her zaman tam 16 bayt (128 bit) uzunluğundadır.

6

http://msdn.microsoft.com/en-us/library/system.security.cryptography.md5.aspx

MD5 algoritması için karma boyutu ne olursa olsun, dizgenin uzunluğu karma olan, 128 bittir.

bir karma algoritma her zaman sabit uzunlukta bir gösterimine rasgele boyutlu mesajı harita SHA 256

+1

Veya şifreleri saklamak için, [bcrypt kullanın] (http://stackoverflow.com/questions/481160/is-bcrypt-a-good-encryption-algorithm-to-use-in-c-where-can-i-find -o). –