打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Base64编码

简述

Base64是一种用64个字符来表示任意二进制数据的方法。

Base64编码可以成为密码学的基石。可以将任意的二进制数据进行Base64编码。所有的数据都能被编码为并只用64个字符就能表示的文本文件。( 64字符:A~Z a~z 0~9 + / = )编码后的数据~=编码前数据的4/3,会大1/3左右。

Base64编码的原理

  1. 将所有字符转化为ASCII码。

  2. 将ASCII码转化为8位二进制 。

  3. 将二进制3个归成一组(不足3个在后边补0)共24位,再拆分成4组,每组6位。

  4. 统一在6位二进制前补两个0凑足8位。

  5. 将补0后的二进制转为十进制。

  6. 从Base64编码表获取十进制对应的Base64编码。

Base64编码的说明

  1. 转换的时候,将三个byte的数据,先后放入一个24bit的缓冲区中,先来的byte占高位。

  2. 数据不足3byte的话,于缓冲区中剩下的bit用0补足。然后,每次取出6个bit,按照其值选择查表选择对应的字符作为编码后的输出。

  3. 不断进行,直到全部输入数据转换完成。

  4. 如果最后剩下两个输入数据,在编码结果后加1个“=”。

  5. 如果最后剩下一个输入数据,编码结果后加2个“=”。

  6. 如果没有剩下任何数据,就什么都不要加,这样才可以保证资料还原的正确性。

Python的Base64使用

Python内置的base64模块可以直接进行base64的编解码

注意:用于base64编码的,要么是ASCII包含的字符,要么是二进制数据

In [1]: import base64

In [2]: base64.b64encode(b'hello world')

Out[2]: b'aGVsbG8gd29ybGQ='

In [3]: base64.b64decode(b'aGVsbG8gd29ybGQ=')

Out[3]: b'hello world'

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Base64 编码原理
五、计算机中的数据和编码讲义
电脑基本知识:位&字节(天天对着电脑,基本的都忘了)
Python编程入门学习:最常见加密方式和Python实现
Bit,Byte,WORD,DWORD区别和联系
中文字符编码的相互转换(一)
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服