Beranda » bagaimana » Apa itu MD5, SHA-1, dan SHA-256 Hash, dan Bagaimana Saya Memeriksa Mereka?

    Apa itu MD5, SHA-1, dan SHA-256 Hash, dan Bagaimana Saya Memeriksa Mereka?

    Terkadang Anda akan melihat hash MD5, SHA-1, atau SHA-256 ditampilkan bersama unduhan selama perjalanan internet Anda, tetapi tidak benar-benar tahu apa itu hash. String teks yang tampaknya acak ini memungkinkan Anda memverifikasi file yang Anda unduh tidak rusak atau rusak. Anda dapat melakukan ini dengan perintah yang ada di Windows, macOS, dan Linux.

    Bagaimana Hash Bekerja, dan Bagaimana Mereka Digunakan untuk Verifikasi Data

    Hash adalah produk dari algoritma kriptografi yang dirancang untuk menghasilkan serangkaian karakter. Seringkali string ini memiliki panjang yang tetap, terlepas dari ukuran data input. Lihatlah grafik di atas dan Anda akan melihat bahwa baik "Rubah" dan "Rubah merah melompati anjing biru" menghasilkan output panjang yang sama.

    Sekarang bandingkan contoh kedua dalam bagan dengan yang ketiga, keempat, dan kelima. Anda akan melihat bahwa, meskipun ada perubahan kecil pada data input, hash yang dihasilkan semuanya sangat berbeda satu sama lain. Bahkan jika seseorang memodifikasi sepotong kecil dari data input, hash akan berubah secara dramatis.

    MD5, SHA-1, dan SHA-256 adalah semua fungsi hash yang berbeda. Pembuat perangkat lunak sering mengambil unduhan file - seperti file Linux .iso, atau bahkan file .exe Windows - dan menjalankannya melalui fungsi hash. Mereka kemudian menawarkan daftar resmi hash di situs web mereka.

    Dengan begitu, Anda dapat mengunduh file dan kemudian menjalankan fungsi hash untuk mengonfirmasi bahwa Anda memiliki file asli dan asli dan belum rusak selama proses pengunduhan. Seperti yang kita lihat di atas, bahkan perubahan kecil pada file akan secara dramatis mengubah hash.

    Ini juga dapat berguna jika Anda memiliki file yang Anda dapatkan dari sumber tidak resmi dan Anda ingin mengonfirmasi bahwa itu sah. Katakanlah Anda memiliki file .ISO Linux yang Anda dapatkan dari suatu tempat dan Anda ingin mengonfirmasi bahwa file tersebut belum dirusak. Anda dapat melihat hash dari file ISO spesifik online di situs web distribusi Linux. Anda kemudian dapat menjalankannya melalui fungsi hash di komputer Anda dan mengonfirmasi bahwa itu cocok dengan nilai hash yang Anda harapkan. Ini mengkonfirmasi file yang Anda miliki adalah file yang sama persis dengan yang ditawarkan untuk diunduh di situs web distribusi Linux, tanpa modifikasi apa pun.

    Perhatikan bahwa "tabrakan" telah ditemukan dengan fungsi MD5 dan SHA-1. Ini adalah beberapa file yang berbeda - misalnya, file aman dan file jahat - yang menghasilkan hash MD5 atau SHA-1 yang sama. Itu sebabnya Anda harus memilih SHA-256 bila memungkinkan.

    Cara Membandingkan Fungsi Hash pada Sistem Operasi Apa Pun

    Dengan mengingat hal itu, mari kita lihat cara memeriksa hash dari file yang Anda unduh, dan membandingkannya dengan yang Anda berikan. Berikut adalah metode untuk Windows, macOS, dan Linux. Hash akan selalu identik jika Anda menggunakan fungsi hashing yang sama pada file yang sama. Tidak masalah sistem operasi yang Anda gunakan.

    Windows

    Proses ini dimungkinkan tanpa perangkat lunak pihak ketiga di Windows berkat PowerShell.

    Untuk memulai, buka jendela PowerShell dengan meluncurkan pintasan "Windows PowerShell" di menu Start Anda.

    Jalankan perintah berikut, ganti "C: \ path \ to \ file.iso" dengan path ke file apa pun yang Anda ingin lihat hash dari:

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

    Diperlukan waktu untuk menghasilkan hash file, tergantung pada ukuran file, algoritma yang Anda gunakan, dan kecepatan drive di mana file berada..

    Secara default, perintah akan menampilkan hash SHA-256 untuk file. Namun, Anda dapat menentukan algoritma hashing yang ingin Anda gunakan jika Anda membutuhkan MD5, SHA-1, atau jenis hash lainnya.

    Jalankan salah satu dari perintah berikut untuk menentukan algoritma hashing yang berbeda:

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

    Bandingkan hasil dari fungsi hash dengan hasil yang Anda harapkan. Jika nilainya sama, file tersebut tidak rusak, dirusak, atau diubah dari aslinya.

    macOS

    macOS mencakup perintah untuk melihat berbagai jenis hash. Untuk mengaksesnya, luncurkan jendela Terminal. Anda akan menemukannya di Finder> Aplikasi> Utilitas> Terminal.

    Itu md5 perintah menunjukkan hash MD5 file:

    md5 / path / ke / file

    Itu shasum perintah menunjukkan hash SHA-1 file secara default. Itu berarti perintah-perintah berikut identik:

    shasum / path / ke / file
    shasum -a 1 / path / ke / file

    Untuk memperlihatkan hash file SHA-256, jalankan perintah berikut:

    shasum -a 256 / path / ke / file

    Linux

    Di Linux, akses Terminal dan jalankan salah satu dari perintah berikut untuk melihat hash untuk file, tergantung pada jenis hash yang ingin Anda lihat:

    md5sum / path / ke / file
    sha1sum / path / ke / file
    sha256sum / path / ke / file

    Beberapa Hash Ditandatangani secara Kriptografis untuk Meningkatkan Keamanan

    Walaupun hash dapat membantu Anda mengonfirmasi file yang tidak dirusak, masih ada satu jalan serangan di sini. Penyerang dapat mengontrol situs web distribusi Linux dan memodifikasi hash yang muncul di sana, atau penyerang dapat melakukan serangan man-in-the-middle dan memodifikasi halaman web dalam perjalanan jika Anda mengakses situs web melalui HTTP alih-alih HTTPS terenkripsi.

    Itu sebabnya distribusi Linux modern sering menyediakan lebih dari hash yang terdaftar di halaman web. Mereka secara kriptografis menandatangani hash ini untuk membantu melindungi terhadap penyerang yang mungkin berusaha memodifikasi hash. Anda akan ingin memverifikasi tanda tangan kriptografi untuk memastikan file hash benar-benar ditandatangani oleh distribusi Linux jika Anda ingin benar-benar yakin hash dan file tidak dirusak.

    Memverifikasi tanda tangan kriptografis adalah proses yang lebih terlibat. Baca panduan kami untuk memverifikasi Linux ISO belum dirusak untuk instruksi lengkap.

    Kredit Gambar: Jorge Stolfi / Wikimedia