RIPEMD-160 Hash Generator

Compute the 160-bit RIPEMD-160 digest used in Bitcoin

Ad placeholder (leaderboard)

This tool computes the RIPEMD-160 hash of any text and displays it live as a 40-character hexadecimal string. RIPEMD-160 produces a 160-bit digest and is best known as the second hash in Bitcoin’s HASH160 operation, which is used to derive addresses from public keys.

How it works

RIPEMD-160 processes the message in 512-bit blocks after padding it with a 0x80 byte, zero bytes, and a 64-bit little-endian length. Each block is run through two parallel lines of 80 operations. Both lines start from the same five 32-bit state words but use different round functions, message-word orders, rotation amounts, and constants. After the two lines finish, their results are combined with the previous state in a rotated pattern (h1 + cl + dr, h2 + dl + er, and so on), which is what gives RIPEMD-160 its strength against attacks that work on a single line.

The boolean round functions cycle through XOR, multiplexing, and OR-NOT forms every 16 steps, and the left line adds the constants 0, 0x5a827999, 0x6ed9eba1, 0x8f1bbcdc, 0xa953fd4e while the right line uses a mirrored set ending in 0. The final state is serialised little-endian to give the 20-byte digest.

Example and notes

InputRIPEMD-160 (hex)
(empty)9c1185a5c5e9fc54612808977ee8f548b2258d31
abc8eb208f7e05d987a9b044a8e98c6b087f15a0bfc
message digest5d0689ef49d2fae572b881b123a85ffa21595f36

These are the canonical reference values from the RIPEMD-160 specification. RIPEMD-160 is a cryptographic hash, so do not use it to store passwords directly — use a slow, salted hash such as bcrypt or Argon2 for that. Everything is computed locally in your browser; nothing is uploaded.

Ad placeholder (rectangle)