编程开源技术交流,分享技术与知识

网站首页 > 开源技术 正文

Base64与URLBase64浅析(url_base64)

wxchong 2024-08-02 08:56:38 开源技术 55 ℃ 0 评论

Base64编码之所以称为Base64,是因为其使用64个字符来对任意数据进行编码,标准Base64编码使用的64个字符为:

这64个字符是各种字符编码(比如ASCII编码)所使用字符的子集。唯一有点特殊的是最后两个字符,因对最后两个字符的选择不同,Base64编码又有很多变种,比如Base64 URL编码:Base64 URL 是标准Base64编码的一个变种,分别用 -、_ 替换标准Base64编码结果中的 + 、 / ,并删除结果最后的 = ,= 字符并不在Base64编码索引表中,其意义在于结束符号,在Base64解码时遇到 = 时即可知道一个Base64编码字符串结束

应用场景:

电子邮件传输(邮件内容或者其他方式传输内容使用Base64加密,实际上主要是处理中文问题的)

网络数据传输(与URLBase64相关,即解决传输中文问题又解决特殊字符问题比如“/”,"=")

密钥存储(密钥是一段二进制数据,密钥在通信双方的传递过程:甲方将密钥采用Base64编码,写入文档,通过安全途径(例如线下等)传给乙方,采用Base64存储密钥是为了增强密钥的易读性)

实现方式有三种:

  • Commons Codec(简称“CC”)

  • Bouncy Castle(简称“BC”)

  • JDK(不推荐使用,当做JDK没实现即可)

其中,最推荐使用Commons Codec。

jar包:

baseURL和这个类似,这里主要理解,如果在url上传输字符串的话一定要使用baseURL,因为baseURL把特殊符号都去除了,这样在传输时就不会出错了

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表