sha384(sha384($pass)) Hash
Technical details, regex signatures, and cracking commands for the sha384(sha384($pass)) algorithm.
What is sha384(sha384($pass))?
SHA-384 is a member of the SHA-3 (Keccak) family of cryptographic hash functions, standardized as part of NIST’s FIPS 202-2 in 2015 as a successor to SHA-1 and SHA-2. It produces a 384-bit (48-byte) hash value through a sponge construction—an iterative permutation-based process that processes input data in fixed-width blocks via a Keccak-f[1600] permutation, followed by a bitwise absorption and squeezing phase. Unlike its predecessor SHA-256, SHA-384 was designed with enhanced collision resistance and security against length-extension attacks, making it suitable for applications requiring higher security margins, such as long-term password storage (e.g., via PBKDF2 or bcrypt integration) or cryptographic signatures (e.g., ECDSA with 384-bit curves). Its structure ensures a preimage resistance of approximately 2^192, though practical security depends on implementation and post-processing (e.g., salting).
The double-hashing construct `sha384(sha384($pass))` is vulnerable to cracking due to several architectural and implementation flaws. First, **computational efficiency** enables brute-force attacks: modern GPUs and FPGA-based hardware (e.g., Hashcat’s SHA-384 optimizations) can evaluate billions of hashes per second, reducing the effective security margin. Second, **lack of salting** in raw SHA-384 hashes exposes users to rainbow table attacks, as identical passwords yield identical hashes. Third, **collision resistance**—while theoretically robust—becomes impractical when combined with weak password entropy or insufficient iteration counts (e.g., in custom implementations). Finally, the **iterative nature** of double-hashing (SHA-384 composed with itself) introduces no meaningful security benefit over a single SHA-384 with proper salting and key stretching (e.g., Argon2 or PBKDF2), as the second hash only adds computational overhead without mitigating core vulnerabilities like preimage attacks.
Identifying sha384(sha384($pass)) Hashes
Identifying a hash blindly is often difficult because multiple algorithms can output strings of the exact same length. For example, a standard 32-character hexadecimal string could be MD5, NTLM, MD4, or LM. To definitively identify sha384(sha384($pass)), security researchers analyze the hash against a strict regular expression (regex) signature (shown above) to find structural matches.
How to Crack sha384(sha384($pass))
If you need to recover the plaintext password for a sha384(sha384($pass)) hash during a penetration test or forensics investigation, you must supply the correct module ID to your cracking software. Use the exact commands provided at the top of this page to target the hash successfully.