文章目录

  • 1.Base64 能干什么?
  • 2.Base64 是加密算法吗?
  • 3.什么情况下,使用Base64?
  • 4.Base64原理

1.Base64 能干什么?

转码
图片
装逼
编、解码

2.Base64 是加密算法吗?

不是,是一种编码格式

3.什么情况下,使用Base64?

URL特殊字符,转码,转义
嵌入图片 src="base64编码之后的内容"

4.Base64原理

官方解释:Base64就是使用64个可打印字符来表示二进制数据的方法
理解:把3个8位字节(3*8=24)转换为4个6位得字节(4*6=24),之后在每个6位的前面补两个0,形成8位,即一个字节。再根据每个字节的值,用下表中的值替换,不足四个字节的,补"="
案例:初始值 11111111 11111111 11111111转换值 00111111 0011111 00111111 00111111所以Base64中    min 000000 0max 111111 63共需要64个字符a-z 26A-Z 260-9 10+/  2

第一步:找到中文字符在操作系统中对应字符编码表(chcp)GB2312
第二步:中文找到字符编码中的十进制值(参照http://tools.jb51.net/table/gb2312)计算方式 按照编码表查出左边四位,如升,左边为十六进制C9F0,上面为D,计算方式为将16进制转为10进制 51696 + 13 = 51709

    案例:升职加薪 对应为(EXCEL函数=CODE(G15)可快速运算)升 51709职 54960加 48339    薪 53437
第三步:十进制转换为二进制升 1100100111111101职 1101011010110000加 1011110011010011    薪 1101000010111101
第四步:对二进制进行分组,每6个一组,不足6位最后补0110010 011111 110111 010110 101100 001011 110011 010011 110100 001011 110100
第五步:转为10进制,对应base64编码,结尾 “=”表示结束50 31 55 22 44 11 51 19 52 11 52y  f  3  W  s  L  z  T  0  L  0  =
第六步:验证
public static void main(String[] args) {BASE64Decoder base64Decoder = new BASE64Decoder(); BASE64Encoder base64Encoder = new BASE64Encoder();try {String result = new String(base64Decoder.decodeBuffer("yf3WsLzT0L0="),"GB2312");System.out.println(result);//升职加薪} catch (Exception e) {e.printStackTrace();} }

3. Base64用途和原理相关推荐

  1. 私有密钥与公钥的用途与原理解析

    私有密钥与公钥的用途与原理解析 数字签名是什么? 作者: 阮一峰        http://www.ruanyifeng.com/blog/2011/08/what_is_a_digital_sig ...

  2. Base64与Java -- Base64简介与原理

    Base64与Java – Base64简介与原理 文章目录 Base64与Java -- Base64简介与原理 简介与用途 为什么叫Base64? 编码流程 常规处理 特殊处理 剩余1个字节 剩余 ...

  3. 关于base64编码的原理及实现

    我们的图片大部分都是可以转换成base64编码的data:image. 这个在将canvas保存为img的时候尤其有用.虽然除ie外,大部分现代浏览器都已经支持原生的基于base64的encode和d ...

  4. [vue] 你知道style加scoped属性的用途和原理吗?

    [vue] 你知道style加scoped属性的用途和原理吗? 在标签上绑定了自定义属性,防止css全局污染 但是很多时候使用ui框架如果加scope就不能覆盖,这个时候一般写sass 会在最外层包裹 ...

  5. 详述图片base64加密的原理,告诉你什么是“/9j/“

        欢迎大家搜索"小猴子的技术笔记"关注我的公众号,有问题可以及时和我交流.     在日常的生活中,我们肯定都经历过类似这样的场景:报名考试上传图片,网站要求的是上传的照片不 ...

  6. Base64编解码原理并用Java手工实现Base64编解码

    Base64编解码原理 目前Base64已经成为网络上常见的传输8比特字节代码的编码方式之一.在做支付系统时,系统之间的报文交互都需要使用Base64对明文进行转码,然后进行签名或加密,之后再次Bas ...

  7. 16进制转Base64的实现原理及代码

    随着计算机技术的发展,数据的存储和传输方式也在不断更新,其中十六进制字符串和Base64编码是两种常见的数据表示方式.本文将介绍16进制字符串和Base64编码的原理,并提供Java代码实现16进制字 ...

  8. Base64编码解码原理详解

    Base64编码解码原理详解 1. Base64字符的组成部分 Base64所用字符: 0,1,2 -.9 A,B,C,D-Z a,b,c,d-z + / 对应ASCII: 48,49-58,65,6 ...

  9. 彻底搞懂base64加解密原理和隐写技术

    base64编码和解码是一个常用的方式,可以避免明文传输或者存储,也可以结合加解密技术进行使用. base64 编码的定义:base64编码表: base64 采用6位二进制进行编码,不足部分补足0, ...

最新文章

  1. 用fgets()函数以字符串形式读取磁盘文件并输出到屏幕
  2. 回归模型-线性回归算法
  3. centos7-同步时间
  4. 【Android NDK 开发】Android Studio 使用 CMake 导入动态库 ( 构建脚本路径配置 | 指定动态库查找路径 | 链接动态库 )
  5. 解压RK3288的boot.img修改init.rc 添加开机自启动脚本
  6. java 获取当前时间月加1 ,年加1
  7. 四大算法解决最短路径问题(Dijkstra+Bellman-ford+SPFA+Floyd)
  8. macOS下搭建Nexus 3.x服务器作为Maven的资源仓库服务器
  9. sybase自增与插入
  10. Java拦截器验证失败时返回Json格式数据
  11. 企查查python爬虫实例
  12. python 单词拆音节_实用小技巧,Python一秒将全部中文姓名转为拼音!
  13. 安卓系统目录说明大全,各文件夹是什么,可以删除吗?(以MIUI为例)
  14. (附源码)spring boot基于Java的电影院售票与管理系统毕业设计 011449
  15. 功能强大~带你走近Smartbi增强分析模块
  16. 老男孩教育 | 5分钟带你搞懂日志采集利器Filebeat!
  17. 我所知道的专业搜索引擎
  18. 2019年年终总结~平淡生活
  19. Pycharm2018永久破解方法
  20. 计算机网络实践的体会,计算机网络实训心得体会

热门文章

  1. 公司挖来一个阿里Java大神,生产环境故障调优很溜
  2. 致曾经那个优秀的女孩儿
  3. 外贸软件之冷冻食品进口贸易管理系统
  4. EasyNVR HLS流播放中断是什么原因?该如何解决?
  5. 武田宣布多项细胞疗法合作,以推进公司的新型免疫肿瘤学阵容
  6. 博客搬家至 utensil.github.io
  7. 要早点进入IT行业不是没道理的
  8. BIGO 的数据管理与应用实践
  9. eclipse护眼豆沙绿
  10. SAPNoteSAR格式解压_SAP刘梦_新浪博客