Apa yang dilakukan tool ini
Menghitung hash SHA-256 dari teks atau file apapun di browser kamu, mengembalikan digest heksadesimal 64 karakter. SHA-256 adalah kuda kerja hashing kriptografis modern: 256 bit output, bagian dari keluarga SHA-2 (FIPS 180-4), dirancang oleh NSA dan dipublikasikan pada 2001. Setelah lebih dari dua dekade pengamatan publik, tidak ada serangan collision praktis pada SHA-256 yang diketahui. Itu adalah default yang tepat untuk hampir semua kode baru yang membutuhkan hash kriptografis.
Di mana SHA-256 digunakan
- Sertifikat TLS. Setiap sertifikat HTTPS yang dikeluarkan hari ini membawa signature SHA-256 (atau lebih kuat).
- Digest image container. Docker, OCI, dan Kubernetes menggunakan SHA-256 untuk mengidentifikasi image secara unik. Notasi
@sha256:abc...di referensi image persis ini. - Hash blok Bitcoin dan ID transaksi. Proof-of-work Bitcoin adalah SHA-256 yang diterapkan dua kali; setiap transaksi diidentifikasi oleh digest SHA-256-nya.
- Subresource Integrity (SRI).
<script integrity="sha256-...">memberi tahu browser untuk menolak script jika hash-nya tidak cocok. - Verifikasi rilis software. Saat proyek mempublikasikan download bersama checksum SHA-256, itulah yang diharapkan.
- Format objek generasi berikutnya git. Git 2.29+ mendukung SHA-256 sebagai alternatif untuk SHA-1 untuk repository baru.
- Signature JWT (HS256, RS256, ES256). « 256 » dalam nama algoritma tersebut adalah SHA-256.
Kapan memilih SHA-256 daripada SHA-512
- Kompatibilitas. Hampir setiap sistem yang menerima hash menerima SHA-256. SHA-512 didukung dengan baik tapi tidak universal.
- Ukuran output. SHA-256 muat dalam 32 byte, SHA-512 dalam 64 byte. Untuk aplikasi yang sensitif terhadap penyimpanan (kolom database, parameter URL, field sertifikat), SHA-256 setengah dari byte.
Pilih SHA-512 saat kamu meng-hash banyak gigabyte data di mesin 64-bit — SHA-512 beroperasi pada kata 64-bit secara native dan dapat sedikit lebih cepat meskipun digest lebih besar.
Saat SHA-256 bukan tool yang tepat
- Penyimpanan password. Peringatan yang sama dengan hash cepat lainnya: gunakan bcrypt, scrypt, atau Argon2. SHA-256 terlalu cepat — GPU modern menghitung miliaran per detik.
- Autentikasi pesan. Gunakan HMAC-SHA-256, bukan SHA-256 telanjang.
HMAC(key, message)adalah konstruksinya; SHA-256 sendiri tidak menerima key. - Derivasi key. Gunakan HKDF atau PBKDF2-SHA-256, bukan SHA-256 telanjang. Hashing langsung password menjadi key tidak aman.
Vektor uji
Vektor uji SHA-256 kanonis dari FIPS 180-4:
- String kosong
""→e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 "abc"→ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad"abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq"→248d6a61d20638b8e5c026930c3e6039a33ce45964ff2167f6ecedd419db06c1"The quick brown fox jumps over the lazy dog"→d7a8fbb307d7809469ca9abcb0082e4f8d5651e46d3cdb762d02d0bf37c9e592
Catatan
Mengapa 64 karakter? SHA-256 menghasilkan 256 bit = 32 byte = 64 karakter hex.
Apakah implementasi ini constant-time? Ya — menggunakan crypto.subtle.digest WebCrypto browser, yang diekspos platform sebagai primitif native constant-time. Tidak ada early-exit pada data input yang akan membocorkan timing.
Batas ukuran file? File picker meng-hash hingga 256 MB secara lokal. File yang lebih besar secara teknis mungkin tapi lambat di main thread; untuk itu, lebih baik sha256sum di terminal.
Mengapa SHA-256 saya berbeda dari sha256sum? Newline trailing. echo "hello" | sha256sum menambahkan \n; paste "hello" di sini tidak. Gunakan echo -n atau file picker untuk pencocokan byte-exact.
Tools terkait
- Generator hash — kelima hash berdampingan
- SHA-512 — level keamanan yang sama, digest lebih panjang, lebih cepat di CPU 64-bit
- SHA-1 — pendahulu, deprecated untuk keamanan
- Base64 — encode digest biner untuk transport (misalnya, atribut SRI)