LPsLux Proposals
Precompiles
LP-4360

RIPEMD-160 Hash Precompile (EVM `0x03`)

Draft

Native EVM precompile for the RIPEMD-160 cryptographic hash function (ISO/IEC 10118-3:2018), Ethereum precompile address 0x03.

Category
Core
Created
2026-05-18

Abstract

RIPEMD-160 (Dobbertin, Bosselaers, Preneel 1996; ISO/IEC 10118-3:2018) is a 160-bit cryptographic hash function whose primary remaining use is Bitcoin-cross-chain interop: Bitcoin addresses are RIPEMD160(SHA256(pubkey)). Ethereum exposes RIPEMD-160 as the precompile at address 0x03 to enable trust-minimized Bitcoin-script verification on-chain (HTLCs, atomic swaps, BTC bridge verification). This LP pins the Lux network's RIPEMD-160 precompile at 0x03 for full Ethereum tooling parity, gas cost 600 + 120 * ceil(len/32) per the yellow paper, and the bridge- custody path used by cBTC / wBTC / Liquid-BTC wrappers. RIPEMD-160 is not recommended for new application-level use (160-bit collision resistance is below 2026 minimums); it is supported only for legacy Bitcoin compatibility.

Reference implementation

  • Primitive: golang.org/x/crypto/ripemd160
  • Precompile address: 0x03
  • Gas cost: 600 + 120 * ceil(input_len_bytes / 32)
  • Standards: ISO/IEC 10118-3:2018, RFC 2286

Copyright and related rights waived via CC0.