SHA-384 Hash Generator

Buat hash SHA-384 dari teks apa pun

Teks Input

Berjalan lokal · Aman untuk menempel rahasia

Hash SHA-384

Hash SHA-384 akan muncul di sini…

Apa Itu Hashing SHA-384?

SHA-384 adalah fungsi hash kriptografis yang didefinisikan dalam NIST FIPS 180-4 sebagai bagian dari keluarga SHA-2. Fungsi ini menerima input dengan panjang berapa pun dan menghasilkan message digest tetap 384-bit (48-byte), yang biasanya ditampilkan sebagai 96 karakter heksadesimal. SHA-384 banyak digunakan dalam cipher suite TLS, tanda tangan sertifikat digital, dan sistem pemerintah yang membutuhkan margin ketahanan tabrakan lebih tinggi dari yang disediakan SHA-256.

Secara internal, SHA-384 adalah varian terpotong dari SHA-512. SHA-384 menggunakan ukuran blok 1024-bit, 80 putaran kompresi, dan aritmetika kata 64-bit yang sama dengan SHA-512, tetapi dimulai dengan kumpulan nilai hash awal yang berbeda (diturunkan dari bilangan prima ke-9 hingga ke-16) dan hanya mengeluarkan 384 bit pertama dari state akhir. Pemotongan ini berarti SHA-384 menghasilkan digest yang berbeda dari SHA-512 untuk input yang identik, meskipun berbagi algoritma inti yang sama.

Karena SHA-384 beroperasi pada kata 64-bit, fungsi ini berjalan lebih cepat dari SHA-256 pada prosesor 64-bit modern sambil menghasilkan digest yang lebih besar. Ini menjadikannya pilihan tengah yang praktis: lebih kuat dari SHA-256 (ketahanan tabrakan 192-bit vs. 128-bit) tanpa overhead penyimpanan dari output hex 128 karakter SHA-512. SHA-384 adalah hash default untuk tanda tangan verifikasi sertifikat TLS 1.3 dan diwajibkan oleh NSA Suite B (sekarang CNSA) untuk data TOP SECRET.

Mengapa Menggunakan Generator SHA-384 Online?

Menghasilkan hash SHA-384 biasanya memerlukan perintah terminal atau penulisan kode. Alat berbasis browser ini memungkinkan Anda menghitung digest SHA-384 secara instan tanpa menginstal apapun atau mengirim data ke server. Baik untuk membuat hash SRI bagi aset CDN, memverifikasi checksum file, atau membandingkan output SHA-384 dengan SHA-256 untuk input yang sama, alat ini memberi Anda cara langsung tanpa dependensi untuk bekerja dengan digest SHA-384 di browser modern mana pun.

Komputasi instan di browser
Tempel teks dan dapatkan hash SHA-384 96 karakter secara langsung. Web Crypto API menangani komputasi secara native di browser Anda tanpa dependensi eksternal.
🔒
Hashing yang mengutamakan privasi
Input Anda tidak pernah meninggalkan perangkat Anda. Semua proses hashing berjalan secara lokal melalui Web Crypto API — tidak ada permintaan ke server, tidak ada pencatatan, tidak ada penyimpanan data.
📋
Format output siap salin
Beralih antara output hex huruf kecil dan huruf besar dengan satu klik. Salin hash ke clipboard untuk digunakan dalam file checksum, konfigurasi, atau dokumentasi.
🔍
Tanpa akun atau instalasi
Bekerja di browser modern mana pun — Chrome, Firefox, Safari, Edge. Tanpa pendaftaran, tanpa ekstensi, tanpa pengaturan CLI.

Kasus Penggunaan SHA-384 Hash Generator

Verifikasi Sertifikat TLS
TLS 1.2 dan 1.3 menggunakan SHA-384 dalam verifikasi tanda tangan sertifikat dan PRF (pseudorandom function). Hitung digest SHA-384 untuk memvalidasi fingerprint sertifikat terhadap nilai yang diharapkan selama audit keamanan.
Subresource Integrity (SRI)
Buat hash SHA-384 untuk file JavaScript dan CSS yang dimuat dari CDN. Atribut integrity pada tag script dan link menggunakan SHA-384 yang dienkode Base64 secara default di sebagian besar generator SRI.
Sistem Pemerintah dan Kepatuhan
CNSA (sebelumnya NSA Suite B) mewajibkan SHA-384 untuk melindungi informasi rahasia. Buat hash untuk memverifikasi integritas dokumen dalam alur kerja kepatuhan yang memerlukan algoritma FIPS 180-4.
Pemeriksaan Integritas File
Hitung checksum SHA-384 untuk image firmware, rilis perangkat lunak, atau file konfigurasi. Bandingkan hash sebelum dan sesudah transfer untuk mendeteksi kerusakan atau manipulasi.
Derivasi Kunci HMAC-SHA384
SHA-384 dipasangkan dengan HMAC untuk autentikasi pesan dalam protokol seperti IPsec dan TLS. Gunakan alat ini untuk memverifikasi output hash yang diharapkan saat men-debug implementasi HMAC-SHA384.
Latihan Kriptografi Akademis
Mahasiswa yang mempelajari keluarga SHA-2 dapat membandingkan output SHA-384 dengan SHA-256 dan SHA-512 untuk input yang sama guna mengamati bagaimana vektor awal yang berbeda dan pemotongan menghasilkan digest yang berbeda.

Perbandingan Varian Keluarga SHA-2

SHA-384 termasuk dalam keluarga SHA-2 bersama beberapa varian lainnya. Tabel di bawah menunjukkan perbedaan ukuran digest, panjang output, dan aplikasi khas masing-masing varian.

VarianDigestPanjang HexByteTerbaik untuk
SHA-384384 bits96 hex chars48 bytesTLS 1.2/1.3, government/CNSA, certificate signatures
SHA-256256 bits64 hex chars32 bytesTLS, blockchain, code signing, JWTs, SRI
SHA-512512 bits128 hex chars64 bytesDigital signatures, HMAC with large keys
SHA-224224 bits56 hex chars28 bytesTruncated SHA-256 — rare, specific compliance
SHA-512/256256 bits64 hex chars32 bytesSHA-512 speed on 64-bit CPUs, 256-bit output

SHA-384 vs SHA-256 vs SHA-512 vs SHA-3-384

Memilih antara SHA-384 dan algoritma hash lain bergantung pada persyaratan keamanan, batasan platform, dan kebutuhan performa Anda. Perbandingan ini mencakup properti yang paling relevan.

PropertiSHA-384SHA-256SHA-512SHA-3-384
Digest size384 bits (96 hex)256 bits (64 hex)512 bits (128 hex)384 bits (96 hex)
Internal state512 bits (8x64-bit)256 bits (8x32-bit)512 bits (8x64-bit)1600 bits (sponge)
Block size1024 bits512 bits1024 bits832 bits
Rounds80648024
Word size64 bits32 bits64 bitsN/A (sponge)
Length extensionResistantVulnerableVulnerableResistant
64-bit performanceFast (native ops)Slower (32-bit ops)Fast (native ops)Moderate
StandardFIPS 180-4FIPS 180-4FIPS 180-4FIPS 202
Web Crypto APIYesYesYesNo

Cara Kerja SHA-384 Secara Internal

SHA-384 memproses input melalui konstruksi Merkle–Damgård yang sama dengan SHA-512. Input diisi (padding) menjadi kelipatan 1024 bit, dibagi menjadi blok-blok, dan setiap blok diproses melalui 80 putaran pencampuran menggunakan fungsi Ch, Maj, dan dua fungsi Sigma dengan aritmetika kata 64-bit. Perbedaan utama dari SHA-512 adalah nilai hash awal: SHA-384 menggunakan nilai yang diturunkan dari bagian pecahan akar kuadrat bilangan prima ke-9 hingga ke-16, sementara SHA-512 menggunakan 8 bilangan prima pertama. Setelah semua blok diproses, SHA-384 memotong state internal 512-bit menjadi 384 bit pertama.

Input: "hello world"
SHA-384: fdbd8e75a67f29f701a4e040385e2e23986303ea10239211af907fcbb83578b3e417cb71ce646efd0819dd8c088de1bd
(384 bits = 48 bytes = 96 hex characters)

Pemotongan dan inisialisasi yang berbeda ini berarti SHA-384 dan SHA-512 selalu menghasilkan digest yang berbeda untuk input yang sama. Hal ini juga membuat SHA-384 secara inheren tahan terhadap length-extension attacks, tidak seperti SHA-256 dan SHA-512 di mana penyerang dapat menambahkan data dan menghitung hash yang valid tanpa mengetahui pesan aslinya.

Contoh Kode SHA-384

SHA-384 didukung secara native di semua bahasa dan runtime utama. Berikut adalah contoh yang dapat langsung Anda salin ke proyek Anda.

JavaScript (Web Crypto API)
// Works in all modern browsers and Node.js 18+
async function sha384(text) {
  const data = new TextEncoder().encode(text)
  const hashBuffer = await crypto.subtle.digest('SHA-384', data)
  const hashArray = Array.from(new Uint8Array(hashBuffer))
  return hashArray.map(b => b.toString(16).padStart(2, '0')).join('')
}

await sha384('hello world')
// → "fdbd8e75a67f29f701a4e040385e2e23986303ea10239211af907fcbb83578b3e417cb71ce646efd0819dd8c088de1bd"

// Node.js (built-in crypto module)
const crypto = require('crypto')
crypto.createHash('sha384').update('hello world').digest('hex')
// → "fdbd8e75a67f29f701a4e040385e2e23986303ea10239211af907fcbb83578b3e417cb71ce646efd0819dd8c088de1bd"
Python
import hashlib

# Basic SHA-384 hash
result = hashlib.sha384(b'hello world').hexdigest()
print(result)
# → "fdbd8e75a67f29f701a4e040385e2e23986303ea10239211af907fcbb83578b3e417cb71ce646efd0819dd8c088de1bd"

# Hash a string with Unicode characters
text = 'café ☕'
hashlib.sha384(text.encode('utf-8')).hexdigest()
# → 96-character hex string

# Hash a file in chunks (memory-efficient)
with open('release.tar.gz', 'rb') as f:
    sha = hashlib.sha384()
    for chunk in iter(lambda: f.read(8192), b''):
        sha.update(chunk)
    print(sha.hexdigest())
Go
package main

import (
    "crypto/sha512"
    "fmt"
)

func main() {
    data := []byte("hello world")
    // SHA-384 lives in the crypto/sha512 package
    hash := sha512.Sum384(data)
    fmt.Printf("%x\n", hash)
    // → fdbd8e75a67f29f701a4e040385e2e23986303ea10239211af907fcbb83578b3e417cb71ce646efd0819dd8c088de1bd
}
CLI (Linux / macOS)
# Using sha384sum (Linux)
echo -n "hello world" | sha384sum
# → fdbd8e75a67f29f701a4e040385e2e23...  -

# macOS
echo -n "hello world" | shasum -a 384
# → fdbd8e75a67f29f701a4e040385e2e23...  -

# Using openssl (cross-platform)
echo -n "hello world" | openssl dgst -sha384
# → SHA2-384(stdin)= fdbd8e75a67f29f701a4e040385e2e23986303ea...

# Verify a file checksum
sha384sum myfile.bin > checksum.txt
sha384sum -c checksum.txt
# → myfile.bin: OK

Pertanyaan yang Sering Diajukan

Apa perbedaan antara SHA-384 dan SHA-512?
SHA-384 dan SHA-512 menggunakan fungsi kompresi, ukuran blok (1024 bit), dan jumlah putaran (80) yang sama. Keduanya berbeda dalam dua hal: SHA-384 dimulai dengan nilai hash awal yang berbeda (diturunkan dari bilangan prima ke-9–16, bukan ke-1–8), dan hanya mengeluarkan 384 bit pertama dari state internal 512-bit. Ini berarti keduanya selalu menghasilkan digest yang berbeda untuk input yang sama.
Apakah SHA-384 lebih aman dari SHA-256?
SHA-384 memberikan ketahanan tabrakan 192 bit dibandingkan 128 bit SHA-256, berdasarkan batas birthday attack sebesar setengah panjang digest. Untuk ketahanan preimage, SHA-384 menawarkan 384 bit vs. 256 bit. Dalam praktiknya, keduanya dianggap aman untuk model ancaman saat ini, tetapi SHA-384 memberikan margin keamanan yang lebih besar untuk perlindungan data jangka panjang dan diwajibkan oleh beberapa standar pemerintah.
Mengapa TLS menggunakan SHA-384, bukan SHA-512?
Cipher suite TLS seperti TLS_AES_256_GCM_SHA384 menggunakan SHA-384 karena memberikan ketahanan tabrakan yang cukup (192 bit) sambil menjaga ukuran digest tetap terkelola. Output hex 128 karakter SHA-512 menambah overhead pada pesan handshake dan rantai sertifikat tanpa manfaat keamanan yang proporsional untuk kasus penggunaan TLS. SHA-384 juga selaras dengan tingkat keamanan 192-bit yang ditargetkan oleh AES-256.
Bagaimana SHA-384 digunakan dalam Subresource Integrity (SRI)?
Tag SRI dalam HTML menggunakan format integrity="sha384-{base64hash}" untuk memverifikasi bahwa skrip dan stylesheet yang diambil dari CDN tidak dimodifikasi. Browser menghitung hash SHA-384 dari file yang diunduh dan membandingkannya dengan nilai yang diharapkan. Jika tidak cocok, sumber daya diblokir. SHA-384 adalah algoritma yang paling umum digunakan untuk SRI karena menyeimbangkan keamanan dan ukuran digest.
Bisakah SHA-384 dibalikkan untuk memulihkan input asli?
Tidak. SHA-384 adalah fungsi satu arah berdasarkan desainnya. Fungsi ini memiliki ketahanan preimage 384 bit, artinya tidak ada metode yang diketahui untuk memulihkan input dari digest SHA-384 lebih cepat dari pencarian brute-force atas 2^384 kemungkinan. Namun, input yang pendek atau mudah ditebak (seperti kata sandi umum) dapat ditemukan menggunakan rainbow table yang sudah dihitung atau serangan kamus, itulah mengapa kata sandi harus di-hash dengan algoritma khusus seperti bcrypt atau Argon2.
Apakah SHA-384 didukung dalam Web Crypto API?
Ya. Semua browser modern mengimplementasikan SHA-384 melalui crypto.subtle.digest('SHA-384', data). Ini adalah API yang sama yang digunakan oleh alat ini. API ini juga tersedia di Node.js 18+ dan Deno. Web Crypto API mengembalikan ArrayBuffer yang Anda konversi menjadi string hex dengan memetakan setiap byte ke representasi heksadesimal dua karakternya.
Kapan sebaiknya menggunakan SHA-384, bukan SHA-256?
Gunakan SHA-384 ketika kebijakan keamanan Anda memerlukan lebih dari 128 bit ketahanan tabrakan, ketika Anda membutuhkan kepatuhan CNSA/Suite B untuk data rahasia, atau ketika Anda sudah menggunakan AES-256 dan ingin tingkat keamanan 192-bit yang sesuai. SHA-384 juga berjalan lebih cepat dari SHA-256 pada prosesor 64-bit karena menggunakan operasi kata 64-bit native. Untuk sebagian besar aplikasi web dan hashing serba guna, SHA-256 tetap menjadi pilihan standar.