itsrda

Hash (SHA-256), Base64 ve URL Kodlama Aracı

Bir metnin ya da indirilen bir dosyanın parmak izini almak, bir değeri Base64'e çevirmek veya URL'de güvenli hale getirmek günlük işlerdir. Bu araç hepsini tarayıcıda yapar; yazdığınız metin sunucuya gitmez.

Hash (özet) nedir?

Bir özet fonksiyonu, herhangi bir uzunluktaki veriyi sabit uzunlukta bir parmak izine çevirir. Aynı girdi her zaman aynı çıktıyı verir; girdide tek bir harf değişirse çıktı tamamen değişir; çıktıdan girdiye geri dönülemez. SHA-256 bugün genel amaçlı bütünlük kontrolü için uygundur. SHA-1 çakışma saldırılarına karşı zayıftır, güvenlik amaçlı kullanılmamalı.

Dosya bütünlüğünü doğrulamak

Bir işletim sistemi imajı ya da yedek indirdiğinizde sitede yayınlanan SHA-256 değerini kendi hesapladığınızla karşılaştırın: Linux'ta sha256sum dosya.img. Değerler birebir aynıysa dosya bozulmadan ya da değiştirilmeden gelmiştir. Aynı yöntem yedek dosyalarınızın zamanla bozulup bozulmadığını anlamak için de kullanılır: yedekten sonra özeti kaydedin, geri yüklemeden önce yeniden hesaplayın (yedek tatbikatında bütünlük kontrolünün neden gerekli olduğunu anlattık).

Parola için hash kullanmak

Parolaları SHA-256 ile saklamak yetersizdir: hızlı bir fonksiyon, saldırganın saniyede milyarlarca deneme yapmasına izin verir. Parolalar için bcrypt, scrypt ya da argon2 gibi bilinçli olarak yavaş ve tuzlu fonksiyonlar kullanılmalı (Flask güvenli giriş). Güçlü bir parola üretmek için parola üreticiyi kullanabilirsiniz.

Base64 şifreleme değildir

Base64, ikili veriyi metne çeviren bir kodlamadır; gizlilik sağlamaz, herkes geri çevirebilir. Parolaları ya da anahtarları "Base64'le sakladım" demek bir koruma değildir. E-posta ekleri, JSON içine gömülen dosyalar ve HTTP temel kimlik doğrulaması gibi yerlerde kullanılır. URL kodlama da benzer biçimde özel karakterleri %XX ile güvenle taşımak içindir.