I stumbled upon these little facts, why engineers chose Base32 over Base64 for shared secret key:

  1. The resulting character set is all one case, beneficial when using a case-insensitive filesystem, spoken language, or human memory.
  2. The Base32 result can be used as a file name because it can not possibly contain the '/' symbol, which is the Unix path separator.
  3. To avoid similar-looking pairs of different symbols they picked an alphabet , so the strings can be accurately transcribed by hand. 4. Base32 result excluding padding can be included in a URL without encoding any characters.

I’m sure everyone mixed 'I','B','0' and '1','8','0' in hist life.  RFC 4648 omits these symbols.