如何选择base 64和base64url编码

How to choose between base 64 and base64url encoding

我必须通过网络发送数据。使用哪种编码更好

Base64 或 Base64URL ?

Base-64 编码所需的 64 (65) 个字符中的 62 个都使用字母数字字符。

标准 Base64 使用 +/ 作为最后 2 个字符,使用 = 作为填充。

Base64Url 使用 -_ 作为最后 2 个字符,并使填充可选。

所以你有一个选择:

  • 如果 Base64 编码的文本需要 transmitted/saved 其中 +/= 具有特殊含义,例如在所有 3 个都包含的 URL 中,最好使用 Base64Url.

  • 如果Base64编码的文本需要transmitted/saved 其中-_有特殊含义,那么最好使用标准Base64.

  • 如果5个字符中的none有特殊含义,那么你可以随意选择,不过你应该使用Standard Base64,因为它是……标准,使用标准是更好的选择。

请注意,定义的变体比这两个变体更多。参见例如Wikipedia 了解详情。