Base64加密的允许字符

Fre*_*wal 29 java base64

我正在使用Base64加密来加密Java中的用户ID字段.

String abc = new String(Base64.encodeBase64("Actualuseridfield"));
Run Code Online (Sandbox Code Playgroud)

我想知道上面的字符串abc是否包含字符",:或不是?

当在abc中返回Base64加密字符串时,它是否会包含以下字符?

" <double quote> 
, <comma> 
: <colon>
Run Code Online (Sandbox Code Playgroud)

任何一个人都可以解雇一些吗?

Tap*_*Tap 30

您将不会在Base64编码的字符串中看到任何逗号,冒号或双引号.您将看到等号,因为它们用于填充结尾内容.

  • `=` 符号并不总是存在 (2认同)
  • 仅当结果的长度与最终块长度不完全匹配时,填充“=”才会存在。块的长度为 24 位 - 因此您通常会看到 0 - 3 个填充 (2认同)

Haj*_*cke 19

如果您有适合Base64的编码器,您将看不到特殊字符,除了:

[AZ] [az] [0-9] [+ /]和末尾的填充字符'='表示零填充字节数

然而,规范允许包括任何其他字符.Base64编码数据通常包含每76个字符的换行符'\n'.除了上述字符之外的任何字符都必须在解码期间被删除.填充字符表示附加的零字节数,以应用于n*4个输出字符.


jam*_*riz 5

转换“奇怪的”和不可打印的字符是 base64 的重点,所以不,你不会看到那些。更多信息在这里http://email.about.com/cs/standards/a/base64_encoding.htm