it-swarm-tr.com

1996'dan beri çatlamışsa insanlar neden hala MD5 kullanıyor / öneriyor?

1996'da güvensizliği kanıtlanmış olsa bile, hala şifreleri karıştırmanın yaygın olarak tavsiye edilen yolu:

Bu nedenle gelecekte MD5'in, çarpışmaya dayanıklı bir karma işlevinin gerekli olduğu imza şemaları gibi uygulamalarda uygulanmaması gerektiğini öneriyoruz. Mevcut bilgilerimize göre, MD5'e alternatifler için en iyi öneriler SHA-1 ve RIPEMD-160'tır.

(Yakın tarihli bir Saldırıdan Sonra MD5'in Durumu, CryptoBytes, RSA Laboratuvarları, HACİM 2, SAYI 2 - YAZ 1996)

Bu çalışmadan ve kusurları ile ilgili yaklaşan tüm makalelerden sonra bile, o zamandan beri web uygulamalarında şifre karma işlevi olarak önerilmiştir.

Hatta bazı Sertifika Yetkilileri dijital imzasında bile kullanılır ( http://rmhrisk.wpengine.com/?p=6 )

Nedeni nedir, bu mesaj özeti algoritmasının güvenlik açısından henüz yasaklanmamış olması nedir?


Bağlantılar, bunları bulmam birkaç dakika sürdü

57
Marek Sebera

@DW'den gelen iyi yanıtı tamamlamak için: şifre karması için, MD5 diğer karma işlevlerinden daha bozuk değildir (ancak yine de kullanmayın) .


Tam resim: MD5 , bu şekilde üç özelliği yerine getirmesi beklenen bir kriptografik karma işlevi 'dir:

  • Ön fotoğraflara karşı direnç: x verildi, m = bulmak mümkün değil öyle ki MD5 (m) = x .
  • İkinci ön resimlere karşı direnç: m verildi, bulmak mümkün değil m ' m ve MD5 (m) = MD5 (m') .
  • Çarpışmalara karşı direnç: m ve m '= bulmak mümkün değil, birbirinden farklı ve MD5 (m) = MD5 (m ') .

MD5 çarpışmalar açısından iyice kırılmıştır, ancak ön görüntüler veya ikinci ön görüntüler için değildir. Dahası, 1996 saldırısı (Dobbertin tarafından) MD5'i hiç kırmadı; bu bir "sıkıştırma işlevine çarpışma", yani MD5'in iç öğelerinden birine yapılan bir saldırıdır, ancak tam işlev değildir. Kriptograflar bir uyarı bayrağı olarak aldılar ve haklıydılar çünkü 2004'te (Wang tarafından) yayınlanan gerçek çarpışma saldırısı Dobbertin bulgularından yapıldı. Ancak MD5, 1996'da değil, 2004'te kırıldı ve çarpışma saldırısı oldu.

Çarpışmalar parola sağlama güvenliği ile ilgili değildir. Parola karması için bir karma işlevinin çoğu kullanımı, ya önleme direncine ya da diğer özelliklere (örneğin, karma işlevinin HMAC , bir şey içinde kullanıldığında ne kadar iyi çalıştığına bağlıdır. yukarıdaki özelliklerin hiçbirine indirgenemez). MD5 aslında ön görüntülerle ilgili olarak "zayıfladı", ancak sadece teorik bir şekilde, çünkü saldırı maliyeti hala gerçekten denenemeyecek milyarlarca milyarlarca pahalı. pratik bir şekilde değil).

Yine de MD5 kullanmayın . Herhangi bir şifreleme zayıflığı nedeniyle değil, MD5 tuzsuz ve çok hızlı olduğundan. Tam olarak bir şifre karma işlevinde istemediğiniz şey budur. Parola karma için "MD5'i öneren" kişiler daha iyi bilmezler ve her zaman aklınızda bulundurmanız gereken bir Hakikat'in kanıtıdır: İnternette bulduğunuz her şey doğru ve güvenilir değildir. Parola karma işlemi için daha iyi çözümler bilinmektedir ve on yıldan uzun bir süredir kullanılmaktadır ve kullanılmaktadır. Ayrıntılar ve işaretçiler için bu cevap konusuna bakın.

76
Thomas Pornin

Ne demek "yasak"? MD5'in kullanımını kim yasaklar? ROT13 ve diğer güvensiz kripto planlarını kullanan insanları tutuklayan bazı Uluslararası Kripto Polislerimiz yok gibi değil.

Ya da, biraz daha ciddi olmak gerekirse: kriptograflar yeni sistemlerin MD5'ten kaçınmasını ve mevcut sistemlerin MD5'ten uzaklaşmasını tavsiye ediyorlar. Kriptografların bu konuda daha ne yapabileceğini düşündüğünüzü bilmiyorum.

MD5'in "şifreleri karıştırmanın yaygın olarak önerilen bir yolu" olduğunu iddia edersiniz, ancak bu hak talebi için herhangi bir kanıt sağlamazsınız. İddianın doğru olduğunu düşünmüyorum. Bu benim deneyimim değildi.

Sonuç olarak, kriptografik topluluk is zaten çok net bir şekilde, tek bir sesle, bu konuda ve çoğu insan zaten zaten MD5'ten uzaklaşıyor. MD5'in hala kullanıldığı durumlar, kural değil istisnadır.

Düzenleme (6/17): Karma için MD5 kullanımını belirten bazı bağlantılar eklediğinizi görüyorum. Tüm kanıtladıkları, hiç duymadığım bazı insanların kafasının karışmış olduğudur. Ne olmuş yani? Muhtemelen güvenlik/kriptografi topluluğunda olumlu bir üne sahip olmayan insanlardan tavsiye almak konusunda şüpheci olmalısınız. Güvenlik/kriptografi topluluğunu, toplulukta olmayan bazı insanların kafasını karıştırdığı için nasıl eleştirebileceğinizi anlayamıyorum. Tam olarak ne yapmamız gerekiyor? Bunu yapmanın doğru yolu hakkında bilgiyi genişletmek için elimizden geleni yapıyoruz. Suçu gerçekten yanlış insanlara koyduğunuzu hissediyorum.

Her neyse, bazı milletlerin neden hala MD5 önerdiğiyle ilgili sorunuzu cevaplamak için: evet, muhtemelen bu millet daha iyi bilmiyor. Konu hakkında daha fazla kimsenin ne söyleyebileceğini veya kimsenin daha fazla ne söyleyeceğini beklediğini bilmiyorum.

28
D.W.

Bence gördüğünüz şey ağın uzun kuyruğu. 2006'dan şifre karma işlemi için MD5'i öneren makaleleri bulabilirim (örn. http://www.pixel2life.com/publish/tutorials/118/understanding_md5_password_encryption/ ) - referans tarihinden 10 yıl sonra.

Bununla birlikte, kriptografi dergilerini okumayan ve hatta bu alanda uzman olmayan günlük pratisyenler arasında uygulama önermek için hakemli kriptografi dergilerindeki en son araştırmalardan bir şey elde etmek için zamandan bahsediyoruz. Muhtemelen olan şey, 1990'da herkesin MD5'in şifreler için iyi olduğunu "bildiği" için, herkese MD5'in şifreler için iyi olduğunu söylediler. 1990'ların sonlarından itibaren bazı insanlar MD5'in parolalar için kötü olduğunu söylüyordu, ancak çoğu kişi parolalar için iyi olduğunu biliyordu ve bu hala başkalarına tavsiye ettikleri şeydi.

Bugünlerde, bcrypt'in bu önerileri görmeye başladığınız şifreler için iyi olduğunu bilen yeterince büyük bir insan var, ancak MD5 şifreler için iyi olduğunu söyleyen makaleler henüz arama motoru endeksleri çürümüş değil. Zamanla yapacaklar.

Yani on yıl içinde buraya geri dönüp "neden insanlar hala bcrypt iş faktörünü (10) dergisi en az 150 kullanmanız gerektiğini mi söylüyor? "...

Poul Henning-Kamp, UNIX crypt () işlevini başlangıçta DES 'dan MD5'e taşıdı. Burada açıklıyor insanların MD5'i kullandıklarının, başarılı bir şekilde ne yapmaya çalıştığını açıklayın: şifre karma işlemini daha karmaşık hale getirin, MD5'i bir shibboleth olarak yüklemeyin.

8
user185

MD5'in çeşitli kullanımları var

Bütünlük denetimi

İndirdiğiniz veya aldığınız dosyanın orijinal olup olmadığını kontrol etmek, dosyanın karmasını kontrol ederek. Aynı sağlama toplamı olan bir dosyayı kolayca oluşturabileceğiniz gösterilmiştir.

MD5'teki çarpışma üretimi kolay . MD5 bu amaçla kullanılmamalıdır .

İnsanlar iso ve materyalleri indirirken hala MD5 sağlama toplamı önermektedir ancak genellikle SHA sağlama toplamı da vermektedir. MD5 çok daha hızlı ve genellikle uygulandığı için bu açıklanabilir.

Şifre kontrolü

Bir şifreyi açık metin olarak saklamak yerine, şifrenin karmasını saklarsınız. Bazı web siteleri bunu yapmak için hala MD5 kullanıyor. Buradaki sorun bir çarpışma bulmak değil, bir Rainbow tablosunu veya MD5 sağlama toplamının devasa bir veritabanını kontrol etmektir.

Milyonlarca MD5 sağlama toplamını çok hızlı bir şekilde üretebileceğiniz için, kendi bilgisayarınızda bir parolayı zorlayabilirsiniz. Bu nedenle parolanızı karmak için MD5 kullanmamalısınız, ancak çoğunlukla bir tuz eklemelisiniz.

Saklanan her parola için çok karmaşık bir parolanız (özel karakterlerle uzun) ve benzersiz bir karmaşık tuzunuz varsa, MD5'i kullanmanız o kadar da sorun değildir. Yapmamalısın (yapmamalısın) demiyorum ama eğer parola kaba kuvvetle zorlanacaksa ve Rainbow tablosunun kullanımı tuz tarafından engelleniyorsa, MD5'i kullanmak büyük bir güvenlik sorunu değildir. Tabii ki, web sitenizde, kullanıcıları karmaşık bir şifreye sahip olmaya zorlamak (ve takdir etmek) kolay değildir, bu nedenle bir kullanıcı 12345'i kaydederse, hangi hash fonksiyonunu kullanırsanız kullanın, kırılacaktır.

İnsanların hala kullanmasının nedeni, belki de hala en bilinen hash işlevidir ve birkaç yıl önce hala kabul edilebilirdi. Çok fazla kripto bilgisi olmayan insanlar bunu kullanabilir.

6
Martin Trigaux

Tavsiye olduğunu düşünmüyorum. Wikipedia MD5'in bozuk olarak kabul edildiğini ve SHA-2 veya SHA ailenin yerini alması önerilir) Ayrıca Geliştir , a Ruby gem yetkilendirmeyi işliyor. Farklı bir şifreleyici türü var.

3
Travis Pessetto

Bu çalışmadan ve kusurları ile ilgili yaklaşan tüm bildirilerden sonra bile, o zamandan beri web uygulamalarında şifre karma işlevi olarak önerilmiştir.

Evet ve?

Parola karma sadece zaman israf olduğunu.

MD5 ^ n (MD5 yinelenen n kez) SHA1 ^ m kadar iyidir (m için time(MD5^n) >= time(SHA1^m) gibi) - zaman kaybı.

Kimse MD5 ^ n değerini MD5 o MD5^(n-1) 'den daha hızlı hesaplamak için herhangi bir yol önermedi. Bunu yapacak bir fikrin başlangıcı bile yok.

Burada hiçbir şey bozuk değil.

Time.space israfı için scrypt.

2
curiousguy

Bu MD5 hakkında resmi bir bilgidir - Çarpışma saldırılarına açık MD5 Daha yüksek güvenlik için SHA-2 dikkate alınmalıdır. Hiç kimse kullanıcıların MD5'i kullanmasını engellemez, ancak gizli tutmak istediğiniz veriler için değil.

Karma algoritmaların performansı

"Karma algoritmaların performansı" diyagramında gösterildiği gibi, SHA256 MD5'ten çok daha hızlıdır.

Bu göz önünde bulundurulması gereken iyi bir kaynaktır, yazar LinkedIn sızdırılmış parolaları (sıra) acm (.) Org/detail.cfm? İd = 2254400 & ref = fullrss, parolaların nasıl güvenliğini sağlamanın bazı yollarını gösterir.

1
user1652382

Parola sağlama ve Rainbow tablolarının kullanımı, bir web sunucusunun güvenliğinin altında yatan bir zayıflıktan yararlanma konusudur.

Öncelikle tüm bu web siteleri şifrenizin güvenli olup olmadığını görmek için basit bir test sunmak iddiasında ... Ummm iyi phishing olarak bu sitelere bakmak sağlar ve bu sitelere yuvarlanan tüm insanlar yapıyor bir Rainbow tablo besleniyor. Bu sorunun bir parçası.

İkincisi, nesnenin parayı komisyonlamak ve web sunucusu güvenliğini unutmak için web barındırma hizmetleri kullanan insanlar, bu ana bilgisayarlar duvara konulmalı ve IMHO'yu vurmalı, bir kullanıcının giriş güvenliğinin bir parçası güvenlikten geliyor bir web sunucusu ve temel teknolojilerin bilinen istismarların kullanılmasını durdurmak için güncel olması.

Üçüncüsü, insanlar kalın kafalarına girdikten sonra MD5 çarpışmaya karşı dirençli olmadığında veya olabildiğince sağlam olmayı tercih ettiğimde, sömürülebilir bir sistem çalıştıran bir web barındırıcınız yoksa bir kullanıcı hesabının saldırıya uğraması hala zor , web kodlamanız sağlam değildir ve şifre güvenliğinizi kontrol ettiğini iddia eden bir site kullanarak kendinizi ifşa edersiniz.

Büyük bir kısmı için MD5 +, bir Tuz değeri, daha önce belirtilen sistem ve yazılım istismar edilmediği sürece, bir web forumunda kullanıcı girişi için yeterli güvenliktir. Bir zayıflık için sömürülen bir sisteminiz olduğunda, bir tuzlama sistemi kullanmayan bilinen karma değerleri için bir sorgu çalıştırmak, dördüncü bir zayıflığı ortaya çıkaracaktır ... son kullanıcı.

Dördüncüsü son kullanıcıdır, web güvenliğiniz en nihayetinde en zayıf halka kadar güçlüdür ve birçoğu için son kullanıcıyı bu şekilde görür ve yöneticilerin bir sistemin son kullanıcıları olduklarını ve eşit derecede savunmasız olduklarını hatırlamaları gerekir. özensiz programlama veya kolayca kırılan yazılım, zayıf şifre güvenliği ve aynı zamanda bu ADMIN girişini değiştiremeyen veya günümüzde hala yönetici giriş adına Yönetici olarak sahip olmakta ısrar eden ve süper kullanıcı hesapları kullanan bir sistem kullanarak sistem güvenliğinden ödün vermek.

Bu yüzden söylemeye gerek yok, bu yüzden yine de söyleyeceğim, MD5 çatlak değil, zayıf kullanıcılar, zayıf yazılımlar ve bir teknolojiyi anlayamayan insanlar aracılığıyla tersine mühendislik. MD5 çatlamışsa, SHA ve AES ve benzeri ...

0
Mark Giblin