eth-rlp
eth-rlp: RLP definitions for common Ethereum objects in Python
What it is and what it does
eth-rlp is a Python library that defines RLP (Recursive Length Prefix) serialization rules for standard Ethereum data structures. RLP is the encoding scheme used throughout the Ethereum protocol to serialize objects for transmission and storage. This package wraps the lower-level rlp library with Ethereum-specific object definitions, so you can encode and decode transactions, blocks, and other blockchain primitives without manually specifying their structure each time.
The package depends on eth-utils for utility functions, hexbytes for hex-encoded byte handling, rlp for the core encoding/decoding logic, and typing_extensions for type hints. It targets modern Python versions (3.8–3.13) and is maintained by the Ethereum Foundation. With no known vulnerabilities and a permissive MIT license, it is suitable for production use in Ethereum tooling, wallets, and protocol implementations.
Use it for:
- Serialize Ethereum transactions for broadcast to the network or storage in a local database.
- Deserialize RLP-encoded blockchain data received from peers or archived state.
- Build Ethereum client libraries or wallet software that needs standard object encoding.
- Validate or inspect the structure of Ethereum protocol messages in development and testing.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides RLP (Recursive Length Prefix) encoding and decoding definitions for Ethereum objects in Python, enabling serialization of common blockchain data structures.
Yes. eth-rlp is a stable, low-friction dependency for any Python project working with Ethereum data structures. It has no known vulnerabilities, a permissive license, and broad Python version support. The aging maintenance status (556 days since last release) is not a blocker for a mature, well-scoped library; however, if you need active feature development or rapid bug fixes, verify that the package's release cadence meets your project's expectations.
Install
eth-rlp on PyPI
pip
pip install eth-rlpuv
uv add eth-rlppoetry
poetry add eth-rlpInstalling eth-rlp
Before you install
Low install friction with a pure-Python wheel. Maintenance is aging—last release was 556 days ago—but the repository remains active and the package is marked Production/Stable with support for Python 3.8 through 3.13.
License in practice
MIT license (permissive) places no restrictions on use, modification, or distribution; suitable for commercial and proprietary projects.
Quickstart
pip install eth-rlp
from eth_rlp import encode_transaction
# Encode an Ethereum transaction object using RLP definitions
Verify before relying
- Specific RLP object types supported beyond 'common Ethereum objects' (transactions, blocks, receipts, etc.)
- Whether this package provides encoding/decoding or only definitions/schemas for RLP structures
- Integration patterns with eth-utils, hexbytes, and rlp dependencies in typical workflows
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (<4,>=3.8) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 4 — eth-utils, hexbytes, rlp, typing_extensions |
| Maintenance | aging — 556 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 6,512,565/month — #1,895 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: eth_rlp-2.2.0-py3-none-any.whl
Keywords: ethereum
Tags
More Internet packages
Botocore provides low-level, data-driven access…
permissive · top 100 on PyPI
aiobotocoreProvides an async client for AWS services using…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
filelockProvides a platform-independent file locking…
permissive · top 100 on PyPI
fastapiFastAPI is a Python web framework for building…
permissive · top 100 on PyPI
googleapis-common-protosProvides common Protocol Buffer message…
permissive · top 100 on PyPI
rlpEncodes and decodes data using Recursive Length…
permissive · top 5,000 on PyPI
eth-typingProvides standardized type annotations for…
permissive · top 5,000 on PyPI
faster-eth-abiEncodes and decodes Ethereum ABI data…
permissive · top 15,000 on PyPI
poly-eip712-structsConstructs and serializes EIP-712 structured…
permissive · top 5,000 on PyPI
py-multicodecWraps data with self-describing multicodec…
permissive · top 15,000 on PyPI
libipldlibipld provides fast Python bindings to a Rust…
permissive · top 15,000 on PyPI
prophyProphy is a binary serialization protocol with…
permissive · top 15,000 on PyPI
bech32mEncodes and decodes Bech32 and Bech32m strings,…
permissive · top 15,000 on PyPI
scalecodecEncodes and decodes data using the SCALE codec,…
permissive · top 15,000 on PyPI
pyiso8583Serializes and deserializes ISO8583 financial…
permissive · top 15,000 on PyPI