base64 加密方式详解

本文详细解析base64编码方式,包括编码表的构成,编码过程中的位转换规则,以及如何处理不同长度的数据。通过举例说明,解释了为何base64编码后长度会增加约1/3。同时提及Java 1.8中新增的base64相关API,供进一步学习参考。
摘要由CSDN通过智能技术生成

base64 加密方式详解

  • base64编码表
    图片来源于网络

  • 命名
    base64是用于传输8Bit字节代码,由上图的编码表可以知道,编码后的内容只包含这64个字符类型,所以称为base64编码(不足四个字符的时候会用 ‘=’ 来补足,下面会说明)。

  • 编码过程
    1. 首先将待编码的内容转换成8位二进制,每3个字符为一组;
    2. 如果编码前的长度是3n+1,编码后的内容最后面补上2个 ‘=’,如果编码前的长度是3n+2,编码后的内容最后面补上1个 ‘=’。
    3. 再将每一组的二进制内容拆分成6位的二进制,不足6位的后面补足0;
    4. 每个6进制的数字前面补足0,保证变成8位二进制;
    5. 将补足后的内容根据base64编码表转换成base64内容输出;

  • 举例说明
加密步骤 加密过程
1、编码前 hb
2、根据ascii码转换成8位二进制,3个为一组 01101000 | 01100010
3、编码前长度是3n+2ÿ
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值