为什么看到密钥几乎都是以base64编码来存储的?

lushengitzone 2014-05-16 11:06:22

密钥是一段二进制数据,通常都是用base64算法对这段二进制数据进行编码,为什么要这么做呢?
查了下资料有以下两种说法
1.使得密钥具有可读性,方便密钥的发放(这个可以很容易知道,一般将加密数据传输的时候,密钥也是放在传输数据中的);
2.防止意外生成的系统定界字符
对应第二种解释,有点云里雾里的感觉。
大牛们,你们怎么看??
...全文
640 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
hookee 2014-05-17
  • 打赏
  • 举报
回复
编码为base64之前 数据是以字节数组存放, 里面任何二进制字符都是可能的。如果有的语言以\0作为字符串结束标志,正好字节数组里面有\0的话,可能会有问题。
lushengitzone 2014-05-17
  • 打赏
  • 举报
回复
引用 1 楼 hookee 的回复:
编码为base64之前 数据是以字节数组存放, 里面任何二进制字符都是可能的。如果有的语言以\0作为字符串结束标志,正好字节数组里面有\0的话,可能会有问题。
谢谢! 是否只能用base64编码呢? 是否还有其他编码来储存密钥呢?
KeepSayingNo 2014-05-17
  • 打赏
  • 举报
回复
这要看你放到哪里去传输了,在web页面上去传输交互都用base64,请看我的博文 http://blog.csdn.net/dotnetstudio/article/details/25032661

10,607

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 其他
社区管理员
  • 其他
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧