160-bit European Standard (RACE Integrity) · Non-blocking Worker

    RIPEMD-160 Hash Generator

    Calculate RIPEMD-160 cryptographic hashes commonly used in Bitcoin addresses, PGP signatures, and European open-standard cryptographic protocols.

    100% Client-Side Local Execution Web Worker Sub-Thread Engine
    Input Editor0 chars · 1 lines
    Ready to generate with chosen Salt & Key
    RIPEMD-160 Preview
    Format:
    RIPEMD-160256-bit digest
    Enter text, drop a file, or fetch a URL above and click Generate Hash...
    Hash Verification & Compare Tool
    Paste expected checksum or hash to compare
    HASH160 Engine

    Bitcoin Address Standard

    Powers the Bitcoin HASH160 pipeline (RIPEMD160(SHA256(PubKey))) to create compact, secure 160-bit cryptocurrency wallet addresses and P2PKH scripts.

    160 Non-Linear Steps

    Dual-Stream Architecture

    Features two independent parallel computation streams (left and right) with 5 rounds each, delivering exceptional defense against mathematical cryptanalysis.

    ISO/IEC 10118-3

    European Open Standard

    Developed by the COSIC academic research group at KU Leuven without NSA involvement, providing an uncompromised open cryptographic alternative.

    RFC 4880 Standard

    PGP & GnuPG Compatible

    Fully compatible with OpenPGP digital signature packets, SSH key fingerprinting, and legacy cryptographic authentication protocols.

    Cryptocurrency & Academic Features

    What Features Does This RIPEMD-160 Hash Generator Provide?

    Engineered for blockchain researchers, Bitcoin protocol developers, and cryptographic auditors:

    1. Bitcoin HASH160 Pipeline

    Computes standard 160-bit digests and Bitcoin address hashes (RIPEMD160(SHA256(PubKey))) with exact output matching.

    2. Dual-Stream Architecture

    Full ISO/IEC 10118-3 compliance running two parallel 5-round computation lines with 160 non-linear step operations.

    3. HMAC-RIPEMD160 Mode

    Supports secret-key HMAC message signing required for custom blockchain authentication and OpenPGP packet verification.

    4. Live Verifier & Matcher

    Instant comparison against expected 40-character public key digests with live difference highlighting.

    5. Web Worker Streaming

    Calculates large blockchain datasets and ISO files smoothly in background threads with zero UI slowdown.

    6. Multi-Line Batch Processing

    Convert lists of public keys, strings, or transaction hashes into RIPEMD-160 digests simultaneously.

    7. Pen-Test CLI Generator

    Direct access to Hashcat audit modes (-m 6000, -m 6010) and OpenSSL CLI syntax.

    8. 100% Client-Side Privacy

    Private keys, public keys, and files never leave your machine. Calculations execute 100% locally.

    Academic Cryptographic Standard
    ISO/IEC 10118-3 · COSIC KU Leuven

    What is the RIPEMD-160 Cryptographic Hash Function?

    RIPEMD-160 (RACE Integrity Primitives Evaluation Message Digest) is a 160-bit cryptographic hash function published in 1996 by Hans Dobbertin, Antoon Bosselaers, and Bart Preneel at KU Leuven (Belgium). Designed as an open European academic standard under ISO/IEC 10118-3, RIPEMD-160 was engineered specifically without government or NSA influence to provide an independent, trusted hashing primitive.

    RIPEMD-160 achieves its world-renowned security through an innovative dual-stream parallel architecture: two completely separate execution lines (left and right) process 160 non-linear compression steps per 512-bit message block. Its most notable real-world implementation is in Bitcoin and cryptocurrency protocol engineering, where it powers the HASH160 wallet address generation pipeline.

    Output Length
    160 Bits (40 Hex)

    Fixed 20-byte cryptographic digest

    Parallel Streams
    Dual-Stream (Left & Right)

    160 total non-linear step operations

    Bitcoin Integration
    HASH160 Standard

    Compact wallet address compression

    How Bitcoin Uses RIPEMD-160: The HASH160 Pipeline

    Step-by-step breakdown of how a public key transforms into a Bitcoin wallet address:

    1. Raw Public Key

    Generate uncompressed (65-byte) or compressed (33-byte) ECDSA secp256k1 public key.

    0250863ad64a87ae8a2fe83c1af1a8403cb53f53e486d8511dad8a04887e5b2352
    2. SHA-256 Digest

    Compute first-stage 256-bit cryptographic digest of the public key.

    SHA256(PubKey) -> 0b7c7ecd7663428557ec0e621d65d08892da84e0bf65fa99a49449772748869a
    3. RIPEMD-160 Digest (HASH160)

    Apply RIPEMD-160 to the SHA-256 output to compress down to a compact 160-bit payload.

    RIPEMD160(SHA256(PubKey)) -> f54a5852e93d9f4293657d4ff980e97859472777
    4. Base58Check Encoding

    Prepend version byte (0x00 for Mainnet) and append 4-byte checksum to produce wallet address.

    Base58Check -> 1PMycacnJaSqwwJqjawXBErnLsZ7RkXUAs

    The Complete RIPEMD Algorithm Family Matrix

    Comparison of all four standardized variants in the RIPEMD suite.

    RIPEMD-16040 chars

    Bitcoin HASH160 wallet addresses, OpenPGP, ISO/IEC 10118-3

    Architecture:2 parallel streams (5 rounds each)
    Security:Cryptographically Secure
    RIPEMD-12832 chars

    128-bit checksums with higher collision resistance than MD5

    Architecture:2 parallel streams (4 rounds each)
    Security:Legacy / Drop-in MD5 replacement
    RIPEMD-25664 chars

    Extended 256-bit digest variant

    Architecture:Double-width state extension
    Security:Cryptographically Secure
    RIPEMD-32080 chars

    Extended 320-bit digest variant for extreme collision security

    Architecture:Double-width state extension
    Security:Cryptographically Secure

    How to Compute RIPEMD-160 & Bitcoin HASH160 in Code

    Tested snippets for Node.js, Python 3, Rust, Go, and OpenSSL CLI.

    typescript
    import { createHash } from "crypto";
    
    const text = "The quick brown fox jumps over the lazy dog";
    
    // 1. Standard RIPEMD-160 Hash (40 hex chars)
    const ripemd160Hash = createHash("ripemd160").update(text, "utf8").digest("hex");
    console.log("RIPEMD-160:", ripemd160Hash);
    // Output: 37f4d30021dec3a2205ee95b05b772b416473c49
    
    // 2. Bitcoin HASH160 Pipeline (RIPEMD160(SHA256(data)))
    function bitcoinHash160(buffer: Buffer): Buffer {
      const sha256 = createHash("sha256").update(buffer).digest();
      return createHash("ripemd160").update(sha256).digest();
    }
    
    const pubKey = Buffer.from("0250863ad64a87ae8a2fe83c1af1a8403cb53f53e486d8511dad8a04887e5b2352", "hex");
    const hash160 = bitcoinHash160(pubKey);
    console.log("Bitcoin HASH160:", hash160.toString("hex"));
    Cryptocurrency & Architecture FAQ

    Frequently Asked Questions About RIPEMD-160

    Related Developer Tools

    Explore more free developer tools to speed up debugging, testing, and development.