Multibase Encoding Explained
Understand the multibase self-identifying encoding scheme used in IPFS and decentralized systems.
Problem
You see strings prefixed with single letters (like b, f, B) and need to understand the multibase convention that self-identifies the encoding.
Prerequisites
- Familiarity with Base64, Base32, and hex
- Understanding of self-describing formats
Steps
-
1. Learn the prefix table
Multibase prepends a single character to indicate the encoding: B for Base64, b for Base64url, f for hexadecimal, F for uppercase hex, z for Base58 Bitcoin, and K for Base36. This lets a consumer detect the encoding without external metadata.
Inputf4d2Outputhex encoding of 0x4d2 -
2. Encode with the correct prefix
Choose the encoding that fits your needs, encode the data, and prepend the corresponding prefix. For binary data in URLs, use b (Base64url). For compact human-readable codes, use z (Base58).
Inputbinary dataOutputbAAEC (Base64url with prefix) -
3. Decode by inspecting the prefix
Read the first character to determine the encoding, strip it, and decode the rest using the identified base. A multibase decoder handles all supported prefixes automatically.
InputbAAECOutputdecode as Base64url → bytes [0,1,2]
Expected result
A self-identifying encoded string that any multibase-aware consumer can decode without prior knowledge of the encoding.
Common errors
- Forgetting to strip the prefix before decoding
- The first character is the encoding marker, not part of the data. Remove it before passing to the base-specific decoder.
- Using the wrong prefix for the encoding
- Refer to the multibase table. Using B (Base64) when you meant b (Base64url) will produce different output.
Troubleshooting
- If decoding fails, check the prefix against the multibase table to confirm it matches the actual encoding.
- Multibase is used in IPFS CIDs; the prefix is part of a larger self-describing structure.
Security limits
- Multibase is a transport encoding. It provides no confidentiality or integrity guarantees.
Related tools
Related glossary
Related tasks
Ready to run it?