SORU
1 Mart 2015, Pazar


Neden Git şifreleme karma işlevi kullanır?

Neden Git SHA-1, şifreleme karma işlevi yerine olmayan şifreleme hızlı bir hash fonksiyonu kullanır?

İlgili soru:

Yığın Taşması soruWhy does Git use SHA-1 as version numbers?Gıt kullanır neden sorar SHA-1 iptalleri için sıralı numaraları farklı olarak.

CEVAP
1 Mart 2015, Pazar


Linus Torvalds himself, when he presented Git to Google back in 2007: kontrol edebilirsiniz
(vurgu benim)

Şifreli olarak güvenli kabul edilir toplamlarını kontrol ediyoruz. Kimse SHA-1, ama buradaki önemli nokta, kırmak mümkün olmuşturSHA-1 gıt ilgili olarak, hatta bir güvenlik özelliği değildir. Tamamen tutarlılık kontrol edin.
Güvenlik parçaları başka bir yerde. Bir sürü insan gıt kullanır SHA-1 ve SHA-1 şifreleme açısından güvenli şeyler için kullanılan bu yana, büyük bir güvenlik özelliği olduğunu düşünüyorlar varsayalım. Hiç güvenlik ile ilgisi yoktur, sadece dünyanın en iyi karma.

İyi bir hash sahip veri güvenemediğin için iyidirbaşka iyi özellikleri de var,, nesneleri biz karma ne demek, karma iyi dağıtılmış olduğunu biliyoruz ve belli bir dağıtım sorunları hakkında endişelenmenize gerek yok.

Uygulama açısından anlamı içten, karma karma algoritmalarını kullanabiliriz ve kötü durumlar vardır hayır olduğunu bilmek o kadar iyi olduğuna güvenebiliriz.

Şifreleme tarafta da gibi bazı sebepler vardır, ama gerçekten verilerinizi güven yeteneği.
Sizi temin ederim, eğer Sen Koy verilerinizi gıt güvenebilirsin aslında beş yıl sonra, sonra dönüştürülen senin harddisc DVD için ne olursa olsun yeni teknoloji ve kopyalanan rahatbeş yıl sonra koyduğun aynı veri geri almak veri doğrulayabilirsiniz. Ve bu gerçekten aramak gereken bir kaynak kod yönetim sistemi.


"Sana." How would git handle a SHA-1 collision on a blob? bahsettiğim ^em>olabilirmühendis belirli bir SHA1 ile tamamlamaönek(hala son derece pahalı bir çaba).
Ama konu Eric Sink bahseder gibi kalır"Git: Cryptographic Hashes" (Version Control by Example (2011) book:

Bu DVCS asla aynı sindirmek zorunda olan veriler iki farklı parçaları karşılaşma oldukça önemlidir. Neyse ki, iyi bir şifreleme karma işlevlerini bu tür çarpışmalar son derece düşüktür yapmak için tasarlanmıştır.

Araştırma gibi düşünün sürece, düşük çarpma hızı good non-cryptographic hash bulmak daha zordur "Finding State-of-the-Art Non-cryptographic Hashes with Genetic Programming".

Ayrıca okuyabilirsiniz "Consider use of non-cryptographic hash algorithm for hashing speed-up örneğin", son derece hızlı olmayan bir şifreleme Karma algoritması, hızları RAM sınırına yakın çalışıyor. "xxhash zikrettiği",


Gıt karma değiştirilmesi ile ilgili tartışmalar yeni değildir:

(Linus Torvalds)

Gerçekten bir şey yokkalanmozilla kod, ama hey, buradan başladım. "Gez" gibi şeyler. 20/20 bir geçmişe bakınca, muhtemelen zaten engelleme akil yaptığını PPC Migros kodundan başlamış olmalı, ama

Artı hey, mozilla kodu crud en korkunç bir kazık olan şeyler geliştirmek ben ikna iken neden oldu. Eğer herhangi bir gerçek kalan kod daha motive edici tarafı;) ilgiliyse bile kaynak olmuş, o kadar

Ve how to measure the actual optimization gain hakkında dikkatli olmak gerekir

(Linus Torvalds)

Ben çok fazla ancak o zaman P4 sorunlardan bazıları gizleyen bok kod oluşturmak gcc yapan şeyler geliştiren size garanti edemez.

  • ya da 14* *için
    (diğer karma için geçerli olacak, SHA-3, ama) örneğin:

(John Tapsell - johnflux)

Yeni bir algoritma SHA-1'den gıt yükseltmek için mühendislik maliyeti çok yüksektir. Peki bunu nasıl emin değilim.

Öncelikle biz muhtemelen ihtiyacı dağıtmak sürümü gıt (hadi Ara sürüm 2 için bu konuşma) sağlayan orada bir yuva için yeni bir hash değeri bile değil okumak veya kullanım alanı -- kullanır SHA-1 karma değeri olan diğer yuva.

Bu şekilde bir zamanlar bizsonundadağıtmak henüz daha yeni bir sürümü gıt arayalım bu sürüm 3, üreten SHA-3 karma ek olarak, SHA-1 sağlamalarının, insanları kullanarak git sürüm 2 edebilecektir devam etmek arası çalışır.
Bu tartışma başına, savunmasız olsa da (ve güvenen insanları-1-sadece SHA yamalar savunmasız olabilir.)

Kısacası, geçiyorumherhangi birkarma kolay değil.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • snookie77

    snookie77

    2 Mart 2006
  • UKF Dubstep

    UKF Dubstep

    29 NİSAN 2009
  • FusioNGamiing

    FusioNGamiin

    10 Temmuz 2007