SHA-384 Hash Generator (Hash Suite B TLS)
Hasilkan hash SHA-384 online — output hex 96 karakter, kebal ekstensi panjang, sesuai NSA Suite B. Dipasangkan dengan AES-256-GCM di TLS. Semua hashing berjalan di browser Anda melalui Web Crypto API.
Apa Itu SHA-384?
SHA-384 adalah fungsi hash kriptografis 384-bit dalam keluarga SHA-2, diterbitkan oleh NIST pada 2001 sebagai bagian dari FIPS 180-2. Secara arsitektur ini adalah varian terpotong dari SHA-512: kedua algoritma menggunakan aritmatika kata 64-bit yang identik, 80 ronde kompresi, dan blok input 1024-bit — satu-satunya perbedaan adalah vektor inisialisasi (IV) dan fakta bahwa SHA-384 membuang 128 bit terakhir dari output 512-bit SHA-512, menghasilkan 384 bit (96 karakter heksadesimal).
Mengapa pemotongan penting secara kriptografis: SHA-256 rentan terhadap serangan ekstensi panjang — diberikan SHA-256(pesan), penyerang dapat menghitung SHA-256(pesan || padding || ekstensi) tanpa mengetahui pesan asli. SHA-384 menghilangkan permukaan serangan ini: pemotongan membuang 128 bit status internal, sehingga hash 384-bit yang diterbitkan tidak membawa cukup informasi untuk melanjutkan komputasi SHA-512. Ini membuat SHA-384 mentah (tanpa pembungkus HMAC) aman untuk konstruksi di mana output hash mungkin terekspos ke musuh.
Peran NSA Suite B dan TLS: SHA-384 diwajibkan oleh NSA Suite B (CNSSP-15, 2005) untuk klasifikasi TOP SECRET. Ini adalah algoritma hash dalam ciphersuite ECDHE-ECDSA-AES256-GCM-SHA384, yang merupakan ciphersuite TLS 1.2 standar untuk sistem yang sesuai Suite B. CNSA Suite NSA (2015) mempertahankan SHA-384 bersama SHA-256, dan SHA-384 muncul dalam daftar algoritma tanda tangan TLS 1.3 (ecdsa_secp384r1_sha384).
Performa: Pada hardware 64-bit, SHA-384 dan SHA-512 berjalan dengan kecepatan identik — keduanya menggunakan operasi kata 64-bit secara eksklusif. Keduanya biasanya lebih cepat dari SHA-256 (yang menggunakan operasi kata 32-bit dan memerlukan lebih banyak pass untuk input yang sama) pada prosesor x86-64 dan ARM64 modern.
Alat ini menghitung SHA-384 sepenuhnya di browser Anda melalui crypto.subtle.digest('SHA-384', ...) dari Web Crypto API. Output identik bit-untuk-bit dengan yang dihasilkan sha384sum, openssl dgst -sha384, atau Python hashlib.sha384().
Kapan menggunakan SHA-384: ciphersuite TLS yang mewajibkan kepatuhan Suite B, HMAC-SHA-384 untuk TLS 1.2 PRF, derivasi kunci HKDF-SHA-384, sidik jari dokumen terklasifikasi, dan konteks apa pun di mana kekebalan ekstensi panjang diperlukan tanpa pembungkus HMAC. Kapan tidak menggunakan SHA-384: checksum tujuan umum dan penggunaan integritas sehari-hari — SHA-256 adalah pilihan standar untuk itu.
// Hash text using Web Crypto API (SHA-384)
async function sha384(text) {
const data = new TextEncoder().encode(text);
const hash = await crypto.subtle.digest('SHA-384', data);
return Array.from(new Uint8Array(hash))
.map(b => b.toString(16).padStart(2, '0'))
.join('');
}
await sha384('Hello, World!');
// → '5485cc9b3365b4305dfb4e8337e0a598a574f8242bf17289e0dd6c20a3cd44a089de16ab4ab308f63e44b1170eb5f515' Contoh SHA-384
Sidik jari TLS ciphersuite handshake
ECDHE-ECDSA-AES256-GCM-SHA384
Nama ciphersuite ECDHE-ECDSA-AES256-GCM-SHA384 adalah ciphersuite Suite B kanonik untuk sesi TLS TOP SECRET. Sufiks SHA-384 mengacu pada PRF (Pseudo-Random Function) yang digunakan dalam TLS 1.2 handshake untuk menurunkan kunci sesi. Tempel string ini untuk menghasilkan hash SHA-384 dari nama ciphersuite itu sendiri — cara cepat memverifikasi implementasi SHA-384 Anda konsisten di seluruh lingkungan.
Derivasi kunci HKDF-SHA-384 (TLS 1.2 PRF)
master secret || client random || server random
PRF TLS 1.2 (didefinisikan dalam RFC 5246) menggunakan HMAC-SHA-384 untuk ciphersuite yang dinegosiasikan dengan SHA-384. Master secret diturunkan dari pre-master secret menggunakan P_SHA384(pre_master_secret, 'master secret' || ClientHello.random || ServerHello.random). HKDF-SHA-384 (RFC 5869) memperluas pola ini untuk derivasi kunci umum. Tempel materi seed apa pun di sini untuk menghasilkan sidik jari SHA-384 sebelum menerapkan HMAC.
Sidik jari dokumen terklasifikasi NSA Suite B
CLASSIFIED//TS//SI//NF — Document ID: TSC-2026-0001
Profil kriptografi NSA Suite B (CNSSP-15, digantikan oleh CNSA Suite pada 2018) mewajibkan SHA-384 untuk integritas dokumen TOP SECRET. Sistem komunitas intelijen menggunakan sidik jari SHA-384 pada dokumen terklasifikasi untuk mendeteksi manipulasi. String hex 96-karakter yang dihasilkan disimpan dalam manifes dokumen bersama muatan terenkripsi AES-256-GCM.
Autentikasi pesan HMAC-SHA-384
POST /api/v2/transfer
Content-Type: application/json
{"amount":10000,"to":"account-XYZ"} HMAC-SHA-384 digunakan dalam API berassurance tinggi untuk mengautentikasi badan permintaan. Server menghitung HMAC-SHA-384(secret_key, canonical_request) dan menyertakan hex digest dalam header Authorization; klien mereproduksi komputasi dan membandingkan. Karena SHA-384 kebal ekstensi panjang bahkan dalam bentuk mentah (non-HMAC), ini memberikan margin keamanan ekstra dibandingkan HMAC-SHA-256 untuk skenario di mana hash mentah mungkin terekspos.
Cara Membuat Hash SHA-384
- 1
Tempel teks atau masukkan file
Pilih tab Teks dan tempel string apa pun — ID dokumen, badan permintaan, atau input arbitrer — ke area input. Hash SHA-384 diperbarui saat Anda mengetik. Untuk file, beralih ke tab File dan seret file apa pun ke dropzone; browser meng-hash-nya secara lokal menggunakan Web Crypto API tanpa unggahan. Indikator kemajuan muncul untuk file besar (>10 MB).
- 2
Salin hash 96 karakter
Klik tombol Salin di samping output hash. String hex lowercase 96 karakter penuh masuk ke clipboard Anda — siap ditempelkan ke konfigurasi TLS, laporan kepatuhan, atau implementasi HMAC. Gunakan toggle Huruf Besar jika sistem target Anda memerlukan hex uppercase.
- 3
Bandingkan dengan hash yang diketahui
Beralih ke tab Bandingkan dan tempel dua hash SHA-384 secara berdampingan. Alat melaporkan cocok atau tidak cocok menggunakan perbandingan constant-time, yang tidak membocorkan informasi timing. Berguna untuk memverifikasi hash kepatuhan Suite B, membandingkan kunci yang diturunkan HKDF-SHA-384, atau memeriksa sidik jari dokumen dalam audit arsip.
Detail Teknis
- Algoritma: SHA-512 dengan IV berbeda, output dipotong menjadi 384 bit
- SHA-384 secara struktural identik dengan SHA-512 (FIPS 180-4 bagian 6.5). Keduanya menggunakan 80 ronde operasi 64-bit (fungsi Ch, Maj, Σ0, Σ1) dengan konstanta yang diturunkan dari akar kubik dan akar kuadrat dari 80 bilangan prima pertama. Vektor inisialisasi (delapan kata 64-bit) berbeda dari IV SHA-512 — IV SHA-384 diturunkan dari bagian pecahan akar kuadrat bilangan prima ke-9 hingga ke-16. Setelah pemrosesan, enam kata 64-bit pertama dari delapan kata status dikeluarkan (384 bit); dua kata terakhir dibuang.
- Output: 384 bit, 96 karakter hex
- Selalu persis 96 karakter heksadesimal lowercase (384 bit = 48 byte, setiap byte dikodekan sebagai 2 karakter hex). Panjang tetap terlepas dari ukuran input. 128 bit yang dibuang — dua kata status 64-bit terakhir — adalah yang membuat SHA-384 tahan terhadap ekstensi panjang.
- Performa: identik dengan SHA-512 pada hardware 64-bit
- SHA-384 dan SHA-512 menjalankan urutan instruksi yang sama pada CPU 64-bit. Keduanya menggunakan blok input 1024-bit (128-byte), diproses dengan rotasi dan penambahan 64-bit. Throughput biasanya 500–900 MB/s di browser menggunakan Web Crypto API, dan 1–3 GB/s di alat native dengan ekstensi SHA hardware. Pada hardware 32-bit atau tanpa akselerasi hardware, SHA-384/512 lebih lambat dari SHA-256 karena emulasi integer 64-bit.
- Standar: FIPS 180-4, warisan NSA Suite B, CNSA saat ini
- Distandarkan dalam FIPS 180-2 (2001), versi terkini FIPS 180-4 (2015). Diwajibkan oleh NSA Suite B (CNSSP-15, 2005) untuk TOP SECRET, masih ada dalam CNSA Suite (2015). Ditentukan untuk TLS dalam RFC 5246 (TLS 1.2 PRF dengan ciphersuite SHA-384), RFC 8446 (algoritma tanda tangan TLS 1.3 ecdsa_secp384r1_sha384), dan RFC 5869 (HKDF). Disetujui NIST untuk semua tingkat kekuatan keamanan hingga 2030 dan seterusnya.
Praktik Terbaik
- Gunakan SHA-384 ketika kekebalan ekstensi panjang penting tanpa HMAC
- Jika protokol Anda mengekspos output hash mentah dan penyerang dapat mencoba memperpanjang pesan, SHA-384 memberikan kekebalan ekstensi panjang inheren yang tidak dimiliki SHA-256. Untuk semua penggunaan yang dikunci lainnya, terapkan HMAC terlepas dari hash yang mendasari — HMAC-SHA-256 dan HMAC-SHA-384 keduanya aman, dan HMAC menghilangkan serangan ekstensi panjang untuk varian SHA-2 apa pun.
- Pasangkan dengan AES-256-GCM untuk kepatuhan Suite B / CNSA
- Jika Anda membangun sistem yang harus mematuhi persyaratan NSA Suite B atau CNSA, pasangan kanonik adalah AES-256-GCM untuk enkripsi massal dan SHA-384 untuk integritas dan derivasi kunci. TLS 1.2 dengan ECDHE-ECDSA-AES256-GCM-SHA384 adalah ciphersuite referensi. Untuk TLS 1.3, yang setara adalah TLS_AES_256_GCM_SHA384 dengan ecdsa_secp384r1_sha384 sebagai algoritma tanda tangan.
- Gunakan HMAC-SHA-384 untuk MAC yang dikunci dalam konteks TLS 1.2 PRF
- PRF TLS 1.2 menggunakan HMAC-SHA-384 untuk ciphersuite di mana SHA-384 dinegosiasikan (RFC 5246 bagian 5). Jika Anda mengimplementasikan atau menguji TLS 1.2 PRF: PRF(rahasia, label, seed) = P_SHA384(rahasia, label + seed). Jangan substitusi HMAC-SHA-256 dalam konteks ciphersuite SHA-384 — negosiasi ciphersuite menentukan hash PRF, dan ketidakcocokan keduanya menyebabkan kegagalan handshake.
- Gunakan perbandingan constant-time saat memverifikasi hash SHA-384 dalam kode
- Jika Anda membandingkan dua hash SHA-384 dalam kode — memverifikasi sidik jari dokumen, memeriksa MAC — gunakan pemeriksaan kesetaraan constant-time:
crypto.timingSafeEqual()di Node.js,hmac.compare_digest()di Python,subtle.ConstantTimeCompare()di Go. Kesetaraan string naif (=== atau ==) membocorkan informasi timing yang memungkinkan penyerang merekonstruksi hash yang diharapkan byte-per-byte dalam ~768 perbandingan (96 karakter × 8 bit).
FAQ SHA-384
Mengapa menggunakan SHA-384 dibandingkan SHA-256?
Apakah SHA-384 seaman SHA-512?
Apakah SHA-384 memiliki kecepatan yang sama dengan SHA-512?
Kapan HMAC-SHA-384 lebih penting dari HMAC-SHA-256?
Haruskah saya menggunakan SHA-384 untuk hashing tujuan umum?
Apa itu NSA Suite B dan apakah masih digunakan?
Seberapa panjang hash SHA-384?
Apakah data saya dikirim ke server saat menggunakan alat ini?
crypto.subtle.digest('SHA-384', data)). Buka DevTools → tab Network saat melakukan hashing — Anda akan melihat nol permintaan keluar. File yang Anda masukkan dibaca melalui FileReader API dan di-hash secara lokal; byte tidak pernah meninggalkan mesin Anda. Jaminan privasi yang sama berlaku untuk generator SHA-256 dan generator SHA-512. Alat Terkait
Lihat semua alat →JWT Decoder
Alat Keamanan
Dekode token JWT online dengan dekoder JWT gratis kami. Periksa header, payload, tanda tangan, kedaluwarsa, dan klaim secara instan. 100% browser — token Anda tidak meninggalkan perangkat. Tanpa pendaftaran, tanpa pelacakan.
MD5 Hash Generator & Alat Checksum File
Alat Keamanan
Hasilkan hash MD5, SHA-256, SHA-1 & SHA-512 secara online gratis. Hash teks atau file di browser Anda, verifikasi checksum dan salin hasil. Tanpa pendaftaran.
Generator Kata Sandi Acak Online — Kuat, Aman & Gratis
Alat Keamanan
Buat kata sandi acak yang kuat secara instan — gratis, tanpa pendaftaran, 100% di browser. Sesuaikan panjang & karakter, batch hingga 50 dengan analisis entropi.
SHA-1 Hash Generator (160-bit, Algoritma Usang)
Alat Keamanan
Hasilkan hash SHA-1 di browser — output hex 40 karakter, tanpa unggah. Algoritma usang untuk sidik jari Git, cek sertifikat lama, dan audit migrasi. Data tidak pernah meninggalkan perangkat Anda.
SHA-256 Hash Generator & Alat Checksum
Alat Keamanan
Hasilkan hash SHA-256 online gratis. Hash teks atau file di browser Anda, verifikasi checksum, dan salin output hex 64 karakter. Tanpa pendaftaran; data tidak pernah meninggalkan halaman.
SHA-3 Hash Generator (Keccak SHA3-256 NIST)
Alat Keamanan
Hasilkan hash SHA-3 online gratis. Konstruksi sponge NIST FIPS 202 — standar pasca-SHA-2. Output SHA3-256 dalam 64 karakter hex. Hanya browser melalui js-sha3 yang di-lazy-load; tanpa unggahan.