Base64编码/解码



“一个小工具箱”微信小程序版,换新归来。

“一个小工具箱”微信小程序致力于为您打造一个便捷好用的小工具集合,囊括文字编辑、计算换算、日期时间、图像图形、日常生活等多种实用小工具。

“一个小工具箱”微信小程序现已更新至3.0版本,汇集众多网站同款小工具。

打开微信就能用,无需安装,用完即走。

工具集合小程序,一个就够了。

在微信搜索栏输入“一个小工具箱”,点击进入即可使用所有小工具。

Base64编码是使用64个可打印ASCII字符(A-Z、a-z、0-9、+、/)将任意字节序列数据编码成ASCII字符串,另有“=”符号用作后缀用途。

Base64 编码表
数值字符
数值字符数值字符数值字符
0A16Q32g48w
1B17R33h49x
2C18S34i50y
3D19T35j51z
4E20U36k520
5F21V37l531
6G22W38m542
7H23X39n553
8I24Y40o564
9J25Z41p575
10K26a42q586
11L27b43r597
12M28c44s608
13N29d45t619
14O30e46u62+
15P31f47v63/

Base64将输入字符串按字节切分,取得每个字节对应的二进制值(若不足8比特则高位补0),然后将这些二进制数值串联起来,再按照6比特一组进行切分(因为2^6=64),最后一组若不足6比特则末尾补0。将每组二进制值转换成十进制,然后在上述表格中找到对应的符号并串联起来就是Base64编码结果。

由于二进制数据是按照8比特一组进行传输,因此Base64按照6比特一组切分的二进制数据必须是24比特的倍数(6和8的最小公倍数)。24比特就是3个字节,若原字节序列数据长度不是3的倍数时且剩下1个输入数据,则在编码结果后加2个=;若剩下2个输入数据,则在编码结果后加1个=。

完整的Base64定义可见RFC1421和RFC2045。因为Base64算法是将3个字节原数据编码为4个字节新数据,所以Base64编码后的数据比原始数据略长,为原来的4/3。在电子邮件中,根据RFC822规定,每76个字符,还需要加上一个回车换行。可以估算编码后数据长度大约为原长的135.1%。

Base64可用于任意数据的底层二进制数据编码,以应用于只能传输ASCII字符的场合。不过最常用于文本数据的处理传输,例如在MIME格式的电子邮件中,Base64可以用来编码邮件内容,方便在不同语言计算机间传输而不乱码,注意是传输而不是显示,例如在西欧地区计算机上使用utf-8编码即可正常显示中文(安装有对应字库),但是它未必能正常传输中文,这时转换为Base64便无此顾虑。

Base64编码若无特别说明,通常约定非ASCII字符按照UTF-8字符集进行编码处理。


Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法。

Base64编码是从二进制到字符的过程,可用于在HTTP环境下传递较长的标识信息。例如,在Java Persistence系统Hibernate中,就采用了Base64来将一个较长的唯一标识符(一般为128-bit的UUID)编码为一个字符串,用作HTTP表单和HTTP GET URL中的参数。在其他应用程序中,也常常需要把二进制数据编码为适合放在URL(包括隐藏表单域)中的形式。此时,采用Base64编码具有不可读性,需要解码后才能阅读。


同音替代密码在线加密/解密工具。同音替代密码(Homophonic Substitution Cipher) :又称多名替代密码。与单表替代系统相似,唯一的不同是单个字符明文可以映射成密文的几个字符之一。

同音替代密码加密/解密

同音替代密码在线加密/解密工具。同音替代密码(Homophonic Substitution Cipher) :又称多名替代密码。与单表替代系统相似,唯一的不同是单个字符明文可以映射成密文的几个字符之一。
自动密钥密码(Autokey Cipher)是密码学中的一种加密算法,与维吉尼亚密码类似,区别在于密钥不同。它的密钥开头是一个关键词,之后则是明文的重复。

自动密钥密码加密/解密

自动密钥密码(Autokey Cipher)是密码学中的一种加密算法,与维吉尼亚密码类似,区别在于密钥不同。它的密钥开头是一个关键词,之后则是明文的重复。
随机密码和密钥生成器是一款免费且移动友好的随机密码生成工具,提供各种随机生成的密钥和密码,您可以使用这些密钥和密码来保护任何应用程序、服务或设备。

随机密码和密钥生成器

随机密码和密钥生成器是一款免费且移动友好的随机密码生成工具,提供各种随机生成的密钥和密码,您可以使用这些密钥和密码来保护任何应用程序、服务或设备。
Base16编码使用16个ASCII可打印字符(数字0-9和字母A-F)对任意字节数据进行编码。Base16先获取输入字符串每个字节的二进制值(不足8比特在高位补0),然后将其串联进来,再按照4比特一组进行切分,将每组二进制数分别转换成十进制,在下述表格中找到对应的编码串接起来就是Base16编码。

Base16编码/解码

Base16编码使用16个ASCII可打印字符(数字0-9和字母A-F)对任意字节数据进行编码。Base16先获取输入字符串每个字节的二进制值(不足8比特在高位补0),然后将其串联进来,再按照4比特一组进行切分,将每组二进制数分别转换成十进制,在下述表格中找到对应的编码串接起来就是Base16编码。