Tool for decoding / encoding in Base32 according to RFC 4648. Base 32 is a variant of Base64 which uses letters and numbers from 2 to 7 (and =) as basic symbols.
Base32 - dCode
Tag(s) : Character Encoding
dCode is free and its tools are a valuable help in games, maths, geocaching, puzzles and problems to solve every day!
A suggestion ? a feedback ? a bug ? an idea ? Write to dCode!
The Base32 code is described in RFC 4648 standard. It allows to encode with 32 characters:
ABCDEFGHIJKLMNOPQRSTUVWXYZ234567 and the = symbol optionally used as the final character (as in Base64).
Example: Base is encoded in ASCII (8-bit) 01000010,01100001,01110011,01100101
The string is then split every 5 bits, and optionally completed with 0s.
Example: The split gives the 32 bits 01000,01001,10000,10111,00110,11001,01 (three 0 needed at the end)
Each 5-tuple is then encoded in base 32 by the letter or the corresponding number according to the conversion table:
Example: 01000 for I, 01001 for J, and so on. Until IJQXGZI
The standard indicates that the Base32 message must have a number of characters multiple of 8. The message obtained must therefore be completed with the character = (padding char).
Example: Finally, the message Base is base32-encoded IJQXGZI=
The Base32 decoding is similar to a mathematical base change.
Example: Decode the message INXWIZI= coded in Base 32
Delete the final = of the encoded message.
Example: INXWIZI= becomes INXWIZI
Replace each character with its 5-bit value (cf conversion table) to create a binary string.
Example: I for 01000, N for 01101, etc. Until 01000,01101,10111,10110,01000,11001,01000
A B32-encoded message
- is composed only of the characters 'ABCDEFGHIJKLMNOPQRSTUVWXYZ234567 =' (no 0,1,8,9)
- theoretically has a number of character multiple of 8.
- ends with 0,1,3,4 or 6 characters = (equal).
- has a length greater than 40 to 60% of the original message
The digit 0 is avoided not to be confused with the letter O, and the number 1 is also avoided for its resemblance to the letter I.
Base32 is similar to the Base64 which is much more commmonly used.
The zbase32 code is a Base32 variant wanting to be more human-readable and writtable.
The mathematical basis 32 (or base32hex) is the most natural version for writing numbers in base 32 and uses the symbols 0123456789abcdefghijklmnopqrstuv