Sağlama toplamı
Sağlama toplamı, verideki kazara değişiklikleri veya bozulmayı fark etmeye yarayan kompakt bir değerdir.
Tanım
Sağlama toplamı, daha sonra bir yazılımın veya kişinin yeniden hesaplayıp karşılaştırabilmesi için bir veri bloğundan üretilen küçük bir değerdir. Değerler farklıysa veri depolama, kopyalama veya iletim sırasında neredeyse kesin olarak değişmiştir.
Sağlama toplamları dosya biçimlerinde, ağ protokollerinde, indirmelerde, yedeklerde ve arşivlerde yaygındır. Yararlı olmalarının nedeni özgün veriyi içermeleri değil, kompakt ve kolay karşılaştırılabilir olmalarıdır.
Nasıl çalışır
Algoritma tam baytları okur ve onları sabit boyutlu bir değerde birleştirir. Örneğin CRC32, genellikle 8 on altılık karakter olarak yazılan 32 bitlik bir değer üretir. SHA-256 gibi kriptografik hashler de yayımlanan özet güvenilir olduğunda sağlama toplamı olarak kullanılır.
Aynı görünen metin; bayt kodlaması, satır sonları, boşluklar veya dosya içeriği farklıysa farklı sağlama toplamlarına sahip olabilir. Dosya adının sağlama toplamı, dosyanın sağlama toplamı değildir.
Güvenlik sınırları
Basit toplamlar ve CRC'ler dahil birçok sağlama toplamı algoritması, kötü niyetli kurcalamadan çok kazara hatalar için tasarlanır. Hem veriyi hem de sağlama toplamını değiştirebilen bir saldırgan çoğu zaman bunları eşleştirebilir.
Tehdit modelinde kasıtlı değiştirme varsa HMAC, dijital imza veya protokole özgü bir bütünlük mekanizması kullanın. SHA-256 gibi kriptografik hash, CRC32'den daha güçlü çakışma direnci sağlar; ancak düz bir hash tek başına veriyi kimin ürettiğini kanıtlamaz.
Genellikle hayır. Sağlama toplamı verinin değiştiğini algılar; eksik veya hasarlı veriyi yeniden oluşturmak için hata düzeltme kodları ya da yedekler gerekir.
Saldırganlara karşı hayır. CRC32 hızlıdır ve yaygın kazara bozulmaları iyi algılar, ancak kasıtlı kurcalamaya direnmek için tasarlanmamıştır.
Veri veya algoritma farklıdır. Tam dosya baytlarını, metin kodlamasını, satır sonlarını, gizli boşlukları, algoritma varyantını ve çıktı biçimini kontrol edin.