Anasayfa » nasıl » MD5, SHA-1 ve SHA-256 Karmaları Nelerdir ve Nasıl Kontrol Edebilirim?

    MD5, SHA-1 ve SHA-256 Karmaları Nelerdir ve Nasıl Kontrol Edebilirim?

    İnternet seyahatleriniz sırasında indirmelerin yanında görüntülenen MD5, SHA-1 veya SHA-256 karmalarını bazen görürsünüz, ancak gerçekte ne oldukları bilinmemektedir. Bu görünüşte rastgele bir metin dizesi, indirdiğiniz dosyaların bozulmadığını veya değiştirilmediğini doğrulamanızı sağlar. Bunu Windows, macOS ve Linux'ta yerleşik komutlarla yapabilirsiniz..

    Hash'ler Nasıl Çalışır ve Veri Doğrulamada Nasıl Kullanılır?

    Karmalar, bir karakter dizisi üretmek için tasarlanmış şifreleme algoritmalarının ürünleridir. Genellikle bu dizgelerin giriş verilerinin boyutuna bakılmaksızın sabit bir uzunluğu vardır. Yukarıdaki tabloya bir bakın ve hem “Tilki” hem de “Kızıl Tilki mavi köpeğin üstünden atlar” ın aynı uzunlukta çıktı verdiğini göreceksiniz..

    Şimdi tablodaki ikinci örneği üçüncü, dördüncü ve beşinci olarak karşılaştırın. Girdi verilerinde çok küçük bir değişiklik olmasına rağmen, ortaya çıkan karma değerlerin birbirinden çok farklı olduğunu göreceksiniz. Birisi girdi verilerinin çok küçük bir parçasını değiştirse bile, karma bir şekilde değişecektir..

    MD5, SHA-1 ve SHA-256 farklı karma işlevlerdir. Yazılım yaratıcıları genellikle bir Linux .iso dosyası, hatta bir Windows .exe dosyası indirmeye benzeyen bir dosya alır ve bir karma işlevi ile çalıştırır. Daha sonra, web sitelerinde hashelerin resmi bir listesini sunarlar..

    Bu şekilde, dosyayı indirebilir ve sonra gerçek, orijinal dosyaya sahip olduğunuzu ve indirme işlemi sırasında bozulmadığını doğrulamak için karma işlevini çalıştırabilirsiniz. Yukarıda gördüğümüz gibi, dosyada yapılan küçük bir değişiklik bile karmayı büyük ölçüde değiştirecek.

    Bunlar, resmi olmayan bir kaynaktan edindiğiniz bir dosyanız varsa ve bunun yasal olduğunu onaylamak istiyorsanız da yararlı olabilir. Diyelim ki bir yerden aldığınız bir Linux .ISO dosyanız var ve üzerinde oynanmadığını onaylamak istiyorsunuz. Bu belirli ISO dosyasının karma değerini Linux dağıtımının web sitesinde çevrimiçi olarak bulabilirsiniz. Ardından, bilgisayarınızdaki karma işlevi üzerinden çalıştırabilir ve olmasını beklediğiniz karma değeriyle eşleştiğini onaylayabilirsiniz. Bu, sahip olduğunuz dosyanın, Linux dağıtım sitesinde herhangi bir değişiklik yapmadan indirmek için sunulan aynı dosya olduğunu onaylar..

    MD5 ve SHA-1 işlevleriyle “çarpışmaların” bulunduğunu unutmayın. Bunlar, aynı MD5 veya SHA-1 karma ile sonuçlanan, örneğin, güvenli bir dosya ve kötü amaçlı bir dosya olan birden çok farklı dosyadır. Bu yüzden mümkün olduğunda SHA-256'yı tercih etmelisiniz..

    Herhangi Bir İşletim Sistemindeki Karma İşlevlerini Karşılaştırma

    Bunu göz önünde bulundurarak, indirdiğiniz bir dosyanın karma değerinin nasıl kontrol edileceğine bakıp, verdiğiniz dosyaya göre karşılaştıralım. İşte Windows, macOS ve Linux için yöntemler. Aynı dosyada aynı sağlama işlevini kullanıyorsanız sağlamalar her zaman aynı olacaktır. Hangi işletim sistemini kullandığınız önemli değil.

    , Windows

    Bu işlem, PowerShell sayesinde Windows'ta herhangi bir üçüncü taraf yazılımı olmadan mümkündür.

    Başlamak için, Başlat menünüzdeki “Windows PowerShell” kısayolunu başlatarak bir PowerShell penceresi açın..

    Aşağıdaki komutu çalıştırın ve “C: \ path \ to \ file.iso” ifadesini, karmasını görüntülemek istediğiniz herhangi bir dosyanın yoluyla değiştirin:

    Get-FileHash C: \ path \ - \ file.iso

    Dosyanın boyutuna, kullandığınız algoritmaya ve dosyanın bulunduğu sürücünün hızına bağlı olarak dosyanın karmaşasını oluşturmak biraz zaman alır..

    Varsayılan olarak, komut bir dosya için SHA-256 karmasını gösterecektir. Ancak, bir MD5, SHA-1 veya başka bir karma değere ihtiyacınız olursa kullanmak istediğiniz karma algoritmasını belirleyebilirsiniz..

    Farklı bir karma algoritması belirlemek için aşağıdaki komutlardan birini çalıştırın:

    Get-FileHash C: \ yol \ dosya \ iso.Algoritma MD5
    Get-FileHash C: \ path \ - \ file.iso -Algoritma SHA1
    Get-FileHash C: \ path \ to \ file.iso -Algoritma SHA256
    Get-FileHash C: \ path \ to \ file.iso -Algoritma SHA384
    Get-FileHash C: \ path \ to \ file.iso -Algoritma SHA512
    Get-FileHash C: \ path \ to \ file.iso -Algoritma MACTripleDES
    Get-FileHash C: \ path \ to \ file.iso -Algoritma RIPEMD160

    Karma işlevinin sonucunu, görmeyi beklediğiniz sonuç ile karşılaştırın. Aynı değerdeyse, dosya orijinalinden bozulmamış, tahrif edilmiş veya başka şekilde değiştirilmemiş.

    Mac os işletim sistemi

    macOS, farklı karma türlerini görüntülemek için komutlar içerir. Onlara erişmek için bir Terminal penceresi açın. Finder> Uygulamalar> Yardımcı Programlar> Terminal'de bulabilirsiniz..

    md5 komutu bir dosyanın MD5 karmasını gösterir:

    md5 / yol / dosya

    shasum komutu varsayılan olarak bir dosyanın SHA-1 karmasını gösterir. Bu, aşağıdaki komutların aynı olduğu anlamına gelir:

    shasum / path / dosya / dosya
    shasum -a 1 / yol / dosya /

    Bir dosyanın SHA-256 karmasını göstermek için aşağıdaki komutu çalıştırın:

    shasum -a 256 / yol / dosya /

    Linux

    Linux'ta, bir Terminal'e erişin ve görüntülemek istediğiniz karma türüne bağlı olarak bir dosyanın özetini görüntülemek için aşağıdaki komutlardan birini çalıştırın:

    md5sum / yol / dosya
    sha1sum / yol / dosya
    sha256sum / yol / dosya

    Bazı Hash'lar Daha Fazla Güvenlik İçin Kriptografik Olarak İmzalandı

    Karma değerler, bir dosyanın tahrif edilmediğini doğrulamanıza yardımcı olabilirken, burada yine de tek bir saldırı yolu var. Saldırgan bir Linux dağıtımının web sitesinin kontrolünü ele geçirebilir ve üzerinde görünen karmaları değiştirebilir ya da saldırgan web sitesine HTTP yerine web sitesine erişiyorsanız geçiş sırasında web sayfasını değiştirebilir şifreli HTTPS.

    Bu nedenle modern Linux dağıtımları genellikle web sayfalarında listelenen karmalardan daha fazlasını sağlar. Bunlar, şifreleri değiştirmeye çalışabilecek saldırganlara karşı korunmaya yardımcı olmak için bu karmaları kriptografik olarak işaretler. Karma ve dosyanın tahrif edilmediğinden emin olmak istiyorsanız, karma dosyasının gerçekten Linux dağıtım tarafından imzalandığından emin olmak için şifreleme imzasını doğrulamak istersiniz..

    Şifreleme imzasını doğrulamak daha ilgili bir işlemdir. Tüm talimatlar için Linux ISO'ların tahrif edilmediğini doğrulamak için kılavuzumuzu okuyun..

    Resim Kredisi: Jorge Stolfi / Wikimedia