Panduan Lengkap SHA-256 - Bagaimana Fungsi Hash Kriptografi Berfungsi
Ketahui segala-galanya tentang SHA-256: apa itu hashing, bagaimana SHA-256 berfungsi, kes penggunaan dunia sebenar dari Bitcoin hingga penyimpanan kata laluan, dan cara menjana hash SHA-256 dalam talian.
Apa itu Hashing?
Hashing ialah fungsi matematik sehala yang mengambil input apa-apa saiz dan menghasilkan output bersaiz tetap yang dipanggil nilai hash (juga dikenali sebagai digest atau checksum). Fikirkan ia sebagai cap jari digital untuk data.
Perbezaan utama antara hashing dan penyulitan ialah hashing tidak boleh diterbalikkan. Sementara penyulitan direka untuk diterbalikkan dengan kunci yang betul, fungsi hash adalah sehala sahaja.
- Saiz output tetap: Tidak kira input 1 bait atau 1 terabait, hash sentiasa sama panjangnya.
- Deterministik: Input yang sama sentiasa menghasilkan hash yang sama.
- Sehala: Anda tidak boleh mendapatkan data asal daripada nilai hash.
- Unik: Perubahan kecil dalam input menghasilkan hash yang sama sekali berbeza (kesan runtuhan salji).
SHA-256 Dijelaskan
SHA-256 (Secure Hash Algorithm 256-bit) adalah ahli keluarga SHA-2, direka oleh NSA dan diterbitkan oleh NIST pada 2001. Ia adalah fungsi hash paling banyak digunakan di dunia, membentuk tulang belakang teknologi blockchain, sijil digital dan protokol keselamatan moden.
SHA-256 sentiasa menghasilkan output 256-bit (32-bait), dipaparkan sebagai rentetan heksadesimal 64 aksara.
Sifat Utama SHA-256
- Deterministik: Input yang sama sentiasa menghasilkan hash yang sama.
- Kesan Runtuhan Salji: Menukar satu bit sahaja menghasilkan hash yang sama sekali berbeza.
- Rintangan Perlanggaran: Mustahil secara pengiraan untuk mencari dua input berbeza yang menghasilkan hash yang sama.
- Rintangan Pra-imej: Diberi nilai hash, mustahil untuk mencari input asal.
Input: "hello"
SHA-256: 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824
Input: "Hello" (hanya huruf pertama berubah)
SHA-256: 185f8db32271fe25f561a6fc938b2e264306ec304eda518007d1764826381969
Bagaimana SHA-256 Berfungsi
- Pengisian mesej: Input diisi sehingga panjangnya gandaan 512 bit.
- Pembahagian kepada blok: Mesej dibahagikan kepada blok 512-bit.
- Permulaan: Lapan pembolehubah 32-bit dimulakan dengan pemalar yang diperoleh daripada punca kuasa dua 8 nombor perdana pertama.
- 64 pusingan pemampatan: Setiap blok melalui 64 pusingan operasi bitwise, penambahan modular dan putaran.
- Hash akhir: Lapan pembolehubah digabungkan untuk menghasilkan hash 256-bit (64 aksara heksadesimal).
2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824
Kes Penggunaan Dunia Sebenar SHA-256
Blockchain dan Bitcoin
SHA-256 adalah tulang belakang Bitcoin. Ia digunakan dalam algoritma perlombongan Proof of Work, di mana pelombong mesti mencari nonce yang menghasilkan hash dengan bilangan sifar tertentu di hadapan.
Penyimpanan Kata Laluan
Aplikasi menyimpan hash SHA-256 kata laluan dan bukannya teks biasa.
Pengesahan Integriti Fail dan Tandatangan Digital
Apabila memuat turun perisian, laman web sering menyediakan checksum SHA-256. Sijil SSL/TLS moden menggunakan SHA-256 untuk menjana cap jari sijil.
SHA-256 vs Algoritma Hash Lain
| Algorithm | Output Size | Security | Speed | Status |
|---|---|---|---|---|
| MD5 | 128-bit (32 hex) | Broken | Very Fast | Deprecated |
| SHA-1 | 160-bit (40 hex) | Broken | Fast | Deprecated |
| SHA-256 | 256-bit (64 hex) | Secure | Moderate | Recommended |
| SHA-512 | 512-bit (128 hex) | Secure | Moderate | Recommended |
- MD5: Direka pada 1991, hash 128-bit. Serangan perlanggaran ditunjukkan pada 2004.
- SHA-1: Hash 160-bit. Google menunjukkan serangan perlanggaran praktikal (SHAttered) pada 2017.
- SHA-256: Tiada kelemahan praktikal yang diketahui. 2^256 output yang mungkin.
- SHA-512: Lebih banyak bit (512), sedikit lebih pantas pada sistem 64-bit.
Menggunakan Penjana Hash SHA-256 Kami
Mod Teks
- Masukkan teks: Taip atau tampal apa-apa teks dalam medan input.
- Keputusan serta-merta: Hash SHA-256 dikira dalam masa nyata semasa anda menaip.
- Salin hash: Klik butang salin untuk menyalin hash ke papan keratan.
Mod Fail
- Pilih fail: Klik kawasan muat naik atau seret dan lepas fail.
- Pengiraan hash: Fail dibaca sepenuhnya dalam pelayar anda. Tiada data dimuat naik.
- Sahkan integriti: Bandingkan hash yang dijana dengan checksum yang disediakan oleh sumber fail.
Cuba Penjana Hash SHA-256 Kami
Jana hash SHA-256 daripada teks atau fail serta-merta dalam pelayar anda. Tiada data dihantar ke mana-mana pelayan.