Skip to main content
Free Security Tool · 100% Client-Side

RIPEMD-160 Generator — Hash Text & Files Online

Generate RIPEMD-160 cryptographic hashes instantly in your browser: paste text, drop a file, or hash a whole list at once. Hex & Base64 output, a verify box, the official test vectors with a live self-test, and a HASH160 (SHA-256 → RIPEMD-160) demo for Bitcoin address derivation. Nothing is ever uploaded to a server.

Generate RIPEMD-160 Hash

RIPEMD-160 is not part of the Web Crypto API, so this tool ships a hand-written JavaScript implementation of the official specification — validated against the spec test vectors and three independent reference implementations.

Input text (UTF-8 encoded)
RIPEMD-160 digest
Your hash will appear here…
Output format:
Input size
—
Digest size
160 bit
Hex length
40 chars
Time
—
🔍 Verify against an expected hash

Batch Mode — Hash Multiple Inputs

One input per line. Each line is hashed independently as UTF-8 text — handy for checksums lists, test fixtures, or address batches.

Inputs (one per line)

Official RIPEMD-160 Test Vectors

The 8 test vectors published in the RIPEMD-160 specification. Load any of them into the generator above, or run the self-test to re-hash every vector through this page's live engine.

InputExpected RIPEMD-160Status

HASH160 Demo — RIPEMD160(SHA256(x))

Bitcoin derives legacy addresses as RIPEMD160(SHA256(public key)). Enter any text to see both steps: SHA-256 runs via your browser's Web Crypto, then this tool's RIPEMD-160 engine compresses the 32-byte result to 20 bytes.

Input
Step 1 — SHA-256 (32 bytes)
—
Step 2 — RIPEMD-160 of the above (20 bytes)
—
In real Bitcoin address generation the SHA-256 input is the raw public-key bytes, and the 20-byte HASH160 is prefixed with a version byte and Base58Check-encoded. This demo hashes UTF-8 text to illustrate the two-step construction.

About RIPEMD-160

What is RIPEMD-160?

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 as part of the European RIPE project. It maps arbitrary input to a fixed 20-byte fingerprint, conventionally written as 40 hexadecimal characters. The design is a Merkle–Damgård construction: the message is padded, split into 512-bit blocks, and each block updates five 32-bit chaining words through 80 rounds arranged in two parallel lines with different constants, rotations, and message orderings — deliberately unlike the SHA family, so a weakness in one design is unlikely to affect the other.

RIPEMD-160 vs MD5, SHA-1, SHA-256

AlgorithmDigestHex charsCollision resistanceTypical use today
RIPEMD-160160-bit40No practical attack knownBitcoin address derivation
MD5128-bit32Broken (2004)Legacy checksums only
SHA-1160-bit40Broken (SHAttered, 2017)Git (being phased out)
SHA-256256-bit64SecureGeneral-purpose hashing

Where is RIPEMD-160 actually used?

Its most prominent home is Bitcoin: legacy P2PKH addresses embed HASH160 = RIPEMD160(SHA256(public key)), and many derived cryptocurrencies reuse the construction. It also appears in some PGP key fingerprints and older X.509 certificate fingerprints. For new designs, SHA-256 or SHA-3 is the safer default — RIPEMD-160 survives on compatibility, not on margin.

Why a hand-written JavaScript implementation?

Browsers expose MD5 nowhere and SHA-1/SHA-2/SHA-3 through the Web Crypto API — but RIPEMD-160 is not in Web Crypto. This tool therefore carries a from-scratch implementation of the official specification. It was validated against the 8 official test vectors plus padding-boundary, all-byte-value, and million-character inputs, cross-checked with three independent reference implementations (OpenSSL, PHP, and pycryptodome — all agreeing), and the vectors panel above lets you re-verify the live engine yourself at any time.

Frequently Asked Questions

What is RIPEMD-160?
RIPEMD-160 (RACE Integrity Primitives Evaluation Message Digest) is a cryptographic hash function designed in 1996 by Hans Dobbertin, Antoon Bosselaers, and Bart Preneel. It turns any input into a fixed 160-bit (20-byte) fingerprint, normally written as 40 hexadecimal characters. It processes data in 512-bit blocks through 80 rounds arranged in two parallel lines, a design deliberately different from the SHA family.
How do I generate a RIPEMD-160 hash of my text?
Type or paste your text into the input box — the RIPEMD-160 digest is computed instantly as you type. Your text is encoded as UTF-8 first, so the same characters always produce the same hash on any device. For example, the empty string hashes to 9c1185a5c5e9fc54612808977ee8f548b2258d31 and "abc" hashes to 8eb208f7e05d987a9b044a8e98c6b087f15a0bfc (both verified against the official test vectors).
Can I hash a file with RIPEMD-160?
Yes. Switch to the File tab and drop any file onto the upload zone or pick it with the file browser. The file is read in 4 MB chunks and hashed incrementally with a progress bar, so even large files never freeze the page. The file never leaves your device — hashing happens locally in your browser.
What does a RIPEMD-160 hash look like?
A RIPEMD-160 digest is always 160 bits: 40 hexadecimal characters (0-9, a-f), or 28 Base64 characters. This tool offers lowercase hex, UPPERCASE hex, and Base64 output. Use the compare box to check a digest you received elsewhere: paste it in and the tool tells you instantly whether it matches your input.
What are the official RIPEMD-160 test vectors?
The RIPEMD-160 specification publishes test vectors, including: "" → 9c1185a5c5e9fc54612808977ee8f548b2258d31, "a" → 0bdc9d2d256b3ee9daae347be6f4dc835a467ffe1, "abc" → 8eb208f7e05d987a9b044a8e98c6b087f15a0bfc, and "message digest" → 5d0689ef49d2fae572b881b123a85ffa21595f36. This page includes all 8 official vectors with one-click loading and a self-test button that re-hashes each one through the live engine and reports pass or fail.
Is RIPEMD-160 secure?
No practical collision or preimage attack is known against full RIPEMD-160, and it remains safe for its main real-world job (Bitcoin address derivation). Its 160-bit output caps generic collision resistance at 80 bits, which is below the modern 128-bit bar set by 256-bit hashes — so new systems that need a strong general-purpose hash should prefer SHA-256 or SHA-3. Never use any fast hash, RIPEMD-160 included, to store passwords; use bcrypt, scrypt, or Argon2 for that.
Why does Bitcoin use RIPEMD-160?
Bitcoin derives legacy (P2PKH) addresses with HASH160, defined as RIPEMD160(SHA256(public key)). Hashing the public key twice — first with SHA-256, then compressing the 32-byte result to 20 bytes with RIPEMD-160 — produces the short 20-byte identifier encoded in every classic Bitcoin address. Try it yourself in the HASH160 demo panel below: it runs SHA-256 (via Web Crypto) followed by this tool's RIPEMD-160 engine on your input.
Is my data sent to a server when I use this tool?
No. Everything runs 100% in your browser with JavaScript — your text and files are never uploaded, stored, or logged. Note that browsers do not ship RIPEMD-160 in the Web Crypto API, so this tool carries a hand-written, spec-faithful JavaScript implementation that was validated against the official test vectors and three independent reference implementations (OpenSSL, PHP, and pycryptodome).
🔗 Related tools: Hash Identifier · HMAC Generator · Hash Generator
RIPEMD-160 digests shown here are computed locally for identification, integrity-checking, and educational purposes. Fast hashes are not password storage — use Argon2, scrypt, or bcrypt for passwords.

Free tool by NRTechStudio