← Hashito System Home 日本語 Tools Blog
Input / Settings
Result

About Base32

What is Base32?

Base32 encodes binary data using the 32 characters A-Z and 2-7 (RFC 4648). It groups data into 5-bit chunks, one per character, and pads the end with = so the length is a multiple of 8. It is case-insensitive and avoids confusable characters (0, 1, 8, 9), which makes it robust for manual entry and dictation.

When is it used?

The most common example is the shared secret for TOTP (two-factor apps like Google Authenticator). Representing the key in Base32 makes it easier for people to type and verify. It is also used in uppercase-only environments and in URL parts or file names that are case-insensitive.

Does it handle non-ASCII text?

Yes. Input text is converted to UTF-8 bytes before encoding, and decoded back as UTF-8, so multibyte text (including Japanese) works as expected.

Frequently Asked Questions

What is the difference between Base32 and Base64?

Both represent binary data as text. Base64 uses 64 characters and is more compact but case-sensitive. Base32 uses only A-Z and 2-7, is case-insensitive, and avoids confusable characters, so it is robust for manual entry, dictation, and uppercase-only environments. It is used for TOTP shared secrets.

Is my text sent anywhere?

No. Encoding, decoding, and downloading all run entirely in your browser. Your input is never sent to a server.

Do I need the trailing = (padding)?

Standard Base32 (RFC 4648) pads the output with = so its length is a multiple of 8. Decoders usually ignore =, so this tool decodes input with or without padding. Encoding follows the standard and adds = to the output.