Base32 Encoder / Decoder
Encode and decode text using Base32 encoding.
Frequently Asked Questions
Code Implementation
import base64
# Encode bytes to Base32
data = b"Hello, World!"
encoded = base64.b32encode(data).decode()
print("Encoded:", encoded) # JBSWY3DPEB3W64TMMQ======
# Decode Base32 back to bytes
decoded = base64.b32decode(encoded)
print("Decoded:", decoded.decode()) # Hello, World!
# Base32 for TOTP secret generation
import os
totp_secret = base64.b32encode(os.urandom(20)).decode().rstrip("=")
print("TOTP Secret:", totp_secret) # e.g. JBSWY3DPEB3W64TM
# Decode without padding (common in authenticator apps)
def b32decode_nopad(s: str) -> bytes:
pad = (8 - len(s) % 8) % 8
return base64.b32decode(s.upper() + "=" * pad)Comments & Feedback
Comments are powered by Giscus. Sign in with GitHub to leave a comment.