RIPEMD-160 Hash Generator

Generate 160-bit RIPEMD-160 hashes in your browser.

Free RIPEMD-160 hash generator. Produce a 160-bit RIPEMD-160 digest from any text — used in Bitcoin address derivation, all in your browser. It runs free in your browser on Gera Tools, with nothing uploaded.

Last updated Source: Gera Tools

What is RIPEMD-160 used for?

RIPEMD-160 produces a compact 160-bit (40 hex character) digest. Its best-known use is Bitcoin address derivation, where an address comes from HASH160 — RIPEMD-160 applied to a SHA-256 hash of the public key.

RIPEMD-160 is a 160-bit cryptographic hash that produces a 40-character hex digest from any input. It is most widely known from Bitcoin, where a wallet address is derived using HASH160 — RIPEMD-160 applied to a SHA-256 hash of the public key.

How it works

RIPEMD-160 is a one-way hash function: it takes input of any length and produces a fixed 160-bit (20-byte, 40 hex character) output. Internally it processes the message in 512-bit blocks through two parallel lines of compression rounds, then combines them, which is what gives it the “RIPE” double-pipeline design. The result is deterministic (same input → same hash) and avalanching (a one-character change produces a completely different digest), but not reversible. This tool runs the algorithm in pure JavaScript in your browser, so the text you hash never leaves your device.

Example

Hashing the text abc gives:

8eb208f7e05d987a9b044a8e98c6b087f15a0bfc

Hashing an empty string gives the fixed digest:

9c1185a5c5e9fc54612808977ee8f548b2258d31
PropertyValue
Output size160 bits / 40 hex chars
ReversibleNo (one-way)
Main useBitcoin HASH160 address derivation

The hash is computed entirely in your browser; nothing is ever uploaded.

RIPEMD-160’s role in Bitcoin address derivation

RIPEMD-160’s most significant real-world use is in generating Bitcoin wallet addresses. The process is:

  1. Start with an ECDSA public key (a 33- or 65-byte elliptic curve point on secp256k1)
  2. Apply SHA-256 to the public key → 32-byte hash
  3. Apply RIPEMD-160 to that SHA-256 hash → 20-byte hash (40 hex characters)
  4. This 20-byte value is called the public key hash or HASH160
  5. Add a version byte, compute a checksum, and encode in Base58Check → the familiar Bitcoin address starting with 1

Using two different hash functions (SHA-256 then RIPEMD-160) provides defense in depth: an attacker would need to break both algorithms simultaneously to reverse-derive a public key from an address. This double-hashing also compresses the public key from 33+ bytes down to 20 bytes, keeping addresses short enough for practical use.

When RIPEMD-160 is appropriate today

RIPEMD-160 has no known practical collision attacks as of 2024. However, the general cryptographic guidance is:

  • For Bitcoin address derivation: RIPEMD-160 remains appropriate and required by the protocol
  • For new security applications (general purpose hashing, password storage, MACs): prefer SHA-256, SHA-3, or BLAKE2/BLAKE3, which have longer outputs and broader ecosystem support
  • For checksums and fingerprints where collision resistance is important: SHA-256 gives a wider security margin (256-bit vs 160-bit output)

The 160-bit output means the theoretical collision resistance is around 2^80 operations — strong by today’s standards, but smaller than the 2^128 collision resistance of SHA-256.

Properties of the algorithm

RIPEMD-160 was designed by a European academic consortium (RACE Integrity Primitives Evaluation) in 1996, specifically as an improvement over the original MD4 and MD5 designs. Its internal structure uses two parallel lines of processing — a “left” and a “right” pipeline — that process the same message blocks but with different constants and orderings of operations. The two pipelines are then combined in the final round. This parallel design is what distinguishes RIPEMD from the sequential SHA family.

PropertyRIPEMD-160SHA-256BLAKE2b
Output size160 bits / 40 hex256 bits / 64 hex512 bits / 128 hex
Block size512 bits512 bits1024 bits
Primary useBitcoin HASH160General purposeHigh-speed hashing
Known collisionsNone (practical)NoneNone