Base64

From MgmtWiki
Revision as of 15:47, 20 January 2020 by Tom (talk | contribs) (Solution)

Jump to: navigation, search

Full Title

Base64 is a coding schema designed to convert binary data into ASCII encoded text.

Context

Base64 coding was created to allow binary information to be passed over channels that cannot cope with the full range of characters represented by a binary stream.

Problems

  • While Base64 works well for what it was designed to accomplish on Web Site communications over the World Wide Web, it cannot be used within a URL. Defined in RFC 4648
  • Some uses of base64 require padding with "=" or "==" to ensure that the encode stream is always divisible by four. Some uses prohibit such padding. Most uses don't care.

Solution

  • Now there are two versions that occur in common web usage:
    • Base64 uses the characters '+ and '/' typically with padding ad defined in [
  • While Base64 works well for what it was designed to accomplish on Web Site communications over the World Wide Web, it cannot be used within a URL.
  • Some uses of base64 require padding with "=" or "==" to ensure that the encode stream is always divisible by four. Some uses prohibit such padding. Most uses don't care.
    • Base64url uses the characters '-' and '_' and prohibits padding.

References