Ana içeriğe geç
Programlama

Geliştirici SHA-1 çakışma tespitini SIMD ile hızlandırdı

Öne çıkanlar

  • Yeni kütüphane sha1dc, Rust tabanlı Git paket doğrulama işlemlerini iki kat hızlandırdı.
  • SIMD tabanlı filtreleme sayesinde çakışma denetimi yalın SHA-1 hızının yüzde 81'ine ulaştı.
  • Mevcut sha1-checked çözümü yalın işlem hızının yalnızca yüzde 28'i civarında kalıyordu.

Enroute üzerinde çalışan bir yazılım mühendisi, Git sunucularında paket doğrulama işlemlerini yavaşlatan SHA-1 çakışma tespiti mekanizmasını optimize etmek amacıyla sha1dc adlı yeni bir Rust kütüphanesi geliştirdi. Git istemcilerinden gelen doğrulanmamış paket dosyalarındaki yapay SHA-1 çakışmalarını yakalamak için kullanılan mevcut sha1-checked kütüphanesinin donanım hızlandırmasından yoksun olduğunu belirten geliştirici, modern işlemcilerin sunduğu kriptografik komut setlerini ve SIMD birimlerini birleştiren bir çözüm üretti.

Yeni kütüphane, saldırı modellerine ait kaçınılmaz bit koşullarını analiz eden matematiksel bir çözücü içeriyor. Çözücü, koşulları NEON, SSE2 ve AVX2 gibi vektör birimlerine en uygun gruplar halinde yerleştirerek blokların büyük bölümünü doğrudan SIMD önekiyle eliyor; şüpheli durumlar ise skaler bir kuyruk mekanizmasına aktarılıyor. Bu mimari yaklaşım sayesinde Apple M4, Graviton4 ve Intel Xeon işlemcilerde yapılan testlerde sha1dc, donanım destekli yalın SHA-1 hızının yüzde 68 ile 81'i seviyesine ulaştı.

Gerçek dünya senaryolarında gitoxide altyapısına entegre edilen yeni kütüphane, Git paket doğrulama sürelerini yarı yarıya kısalttı. M4 çipinde yapılan testlerde tek çekirdekli paket doğrulama süresi 12,55 saniyeden 6,26 saniyeye indi ve çok çekirdekli işlem 2,13 kat hızlandı. Geliştirici, kütüphaneyi crates.io üzerinde yayımladı ve Git ekosisteminin geneline katkı sağlamak üzere gitoxide projesine entegre etmeyi hedeflediğini açıkladı.

Kaynak

Bu özet yapay zekâ ile hazırlanmıştır; ayrıntılar ve doğrulama için orijinal kaynağa başvurun.