A human-friendly Base32 encoding without ambiguous characters
Project description
eBase32
eBase32 is a custom Base32 encoding standard designed to be fully URL-safe and free from ambiguous characters. The goal is to provide a human-friendly, robust, and deterministic alternative to classical Base32 schemes such as Crockford or RFC 4648.
Features
- ✅ No ambiguous characters (
0,O,I,l,1,S,B,Z, etc.) - ✅ Fully alphanumeric – no symbols
- ✅ Ideal for IDs, tokens, URLs, QR codes, or human-readable values
- ✅ No padding, no special rules
The character set consists of the following 32 characters:
ACEFHKLMNPRTWXYadeghknrtwxy34679
Installation
pip install eBase32
Usage
Functional API
from eBase32 import encode, decode
data = b"hello world"
encoded = encode(data)
decoded = decode(encoded)
assert decoded == data
Object-Oriented API
from eBase32 import EBase32
id = EBase32(b"hello")
print(str(id)) # eBase32 string
print(id.bytes) # original bytes
print(id.string) # eBase32 string (same as str())
print(bytes(id)) # original bytes
Comparison & Equality
a = EBase32(b"data")
b = EBase32(str(a))
assert a == b
assert a == b.bytes
assert a == b.string
License
Released under the MIT License.
Author
Endkind (@Endkind)
Technical Specification
For implementation and specification details, see STANDARD.md.
- Bit packing
- Character set origin
- Comparison to other standards
- Performance considerations
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ebase32-0.0.1.tar.gz.
File metadata
- Download URL: ebase32-0.0.1.tar.gz
- Upload date:
- Size: 3.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8d5193c7ca5b6ffcc8652983b5e0c57a10939169d03154e92121c284a2596946
|
|
| MD5 |
bd21d23bd1d03782c83305bbb1b8d5cb
|
|
| BLAKE2b-256 |
4b193dbb6af82b2dce33cc6e147e5945aa78c5293b5625ee8032dd9433603a1a
|
File details
Details for the file ebase32-0.0.1-py3-none-any.whl.
File metadata
- Download URL: ebase32-0.0.1-py3-none-any.whl
- Upload date:
- Size: 4.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c49dd917573fb006363009229f126aa877b93e7e29d1ec5dac4827b0915d0cc5
|
|
| MD5 |
6c58b04828b31c5ad9f284ddac5e5268
|
|
| BLAKE2b-256 |
85093446d78208f03afda109d4f545100d6b8af0518ace10c9d376f734750dd7
|