Oracle H: Type (Oracle 7+), DES(Oracle) Hash

Technical details, regex signatures, and cracking commands for the Oracle H: Type (Oracle 7+), DES(Oracle) algorithm.

Regex Identification Signature:
^[a-f0-9]{16}:[a-f0-9]{0,30}$
Hashcat Command (Mode: 3100):
Not supported natively by John the Ripper
← Back to Hash Identifier

What is Oracle H: Type (Oracle 7+), DES(Oracle)?

The cryptographic hash format **"Oracle H: Type (Oracle 7+), DES(Oracle)"** originates from Oracle Database’s legacy authentication mechanisms, specifically designed for early versions (pre-11g) to store and verify user passwords in a hashed format. Structurally, this scheme combines a truncated MD5 hash (Oracle’s "Type") with a DES-based encryption layer, where the user’s password is first hashed via MD5 and then encrypted using a 16-byte salt derived from the Oracle SID and username. The resulting 24-byte output (16 bytes from DES + 8 bytes from MD5 truncation) is stored in the `USER$` table. This format was primarily used for backward compatibility in Oracle 7 through Oracle 10g, where passwords were not stored in plaintext but required a hybrid approach to balance security and legacy support. The "Type" field identifies the hashing method, while the DES encryption layer was intended to obfuscate the underlying MD5 hash, though it introduced inefficiencies and cryptographic weaknesses.

The vulnerability of this format stems from its reliance on outdated cryptographic primitives and exploitable design flaws. The DES component, though ostensibly used for encryption, is merely a ciphertext wrapper around the MD5 hash—it does not provide true cryptographic security due to its 56-bit key strength and susceptibility to brute-force attacks. The lack of a robust salt (the salt is predictable and derived from the SID/username) enables rainbow table precomputation, drastically reducing the computational overhead for attackers. Additionally, the MD5 truncation (to 8 bytes) introduces collision vulnerabilities, as the hash space is insufficiently large for modern password complexity standards. Furthermore, the format’s reliance on CPU-bound DES operations (unoptimized for GPU acceleration) was later bypassed via tools like **hashcat** or **John the Ripper**, which exploit parallelized brute-force and dictionary attacks against the MD5 component. The absence of iterative hashing (e.g., salted hashes with slowdown functions) and reliance on legacy encryption render this scheme effectively broken for contemporary security standards.

Identifying Oracle H: Type (Oracle 7+), DES(Oracle) 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 Oracle H: Type (Oracle 7+), DES(Oracle), security researchers analyze the hash against a strict regular expression (regex) signature (shown above) to find structural matches.

How to Crack Oracle H: Type (Oracle 7+), DES(Oracle)

If you need to recover the plaintext password for a Oracle H: Type (Oracle 7+), DES(Oracle) 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.