SHA-2 Hesaplama

SHA-2(Secure Hash Algorithm) ABD Ulusal Güvenlik Ajansı tarafından tasarlanan kriptografik hash fonksiyonları (SHA-224, SHA-256, SHA-384, SHA-512) kümesidir. Bir hash fonksiyonu rastgele dizilimli bir veri elemanı kümesinden, metin dosyası gibi, sabit uzunluklu bir değer hesaplayan algoritmadır. Bulunan bu değer daha sonra kopyalanan orjinal verinin bütünlüğünü kontrol etmek için kullanılabilir. MD5 algoritmasının güvenlik konusunda bazı sıkıntıları olduğundan yeni uygulamalarda SHA-256 ve SHA-512 kullanılması tavsiye edilmektedir. Aşağıdaki kod ile 256 veya 512 bit uzunluğunda hash oluşturabiliriz.

static string GetSha(string text, int bitLength)
{
    switch (bitLength)
    {
        case 256:
            return BitConverter.ToString(new SHA256Managed().ComputeHash(Encoding.UTF8.GetBytes(text))).Replace("-", "").ToLower();
        case 512:
            return BitConverter.ToString(new SHA512Managed().ComputeHash(Encoding.UTF8.GetBytes(text))).Replace("-", "").ToLower();
        default:
            return null;
    } 
}

Leave a Reply

Your email address will not be published. Required fields are marked *