Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法。
可以将任意文件转为Base64编码进行存储,且支持管道输入。
因此,常说的base64加密其实应该理解为转码,解密应该是解码(因为在你解码的时候是不进行密码验证的)。
平时发的邮件,就是将邮件内容和附件通过Base64位进行存储传输的。
base64编码表64个,而百度还有人说:还有个“=”号,学习中。。。
索引 | 对应字符 | 索引 | 对应字符 | 索引 | 对应字符 | 索引 | 对应字符 | |||
0 | A | 16 | Q | 32 | g | 48 | w | |||
1 | B | 17 | R | 33 | h | 49 | x | |||
2 | C | 18 | S | 34 | i | 50 | y | |||
3 | D | 19 | T | 35 | j | 51 | z | |||
4 | E | 20 | U | 36 | k | 52 | 0 | |||
5 | F | 21 | V | 37 | l | 53 | 1 | |||
6 | G | 22 | W | 38 | m | 54 | 2 | |||
7 | H | 23 | X | 39 | n | 55 | 3 | |||
8 | I | 24 | Y | 40 | o | 56 | 4 | |||
9 | J | 25 | Z | 41 | p | 57 | 5 | |||
10 | K | 26 | a | 42 | q | 58 | 6 | |||
11 | L | 27 | b | 43 | r | 59 | 7 | |||
12 | M | 28 | c | 44 | s | 60 | 8 | |||
13 | N | 29 | d | 45 | t | 61 | 9 | |||
14 | O | 30 | e | 46 | u | 62 | + | |||
15 | P | 31 | f | 47 | v | 63 | / |
语法:
#转码(加密)
base64 《文件名》
#解码(解密)
base64 -d《文件名》
测试环境centos7.9
范例:
###管道传递
#字符串ffing,进行转码
[root@ffing ~]# echo ffing |base64
ZmZpbmcK
#解码(还原)
[root@ffing ~]# echo ZmZpbmcK|base64 -d
ffing
###对文件转码
#查看test.txt
[root@ffing ~]# cat test.txt
ffing.cn
#转码后值
[root@ffing ~]# base64 test.txt
ZmZpbmcuY24K
#将转码后文件导入到jm.txt
[root@ffing ~]# base64 test.txt >jm.txt
#解码jm.txt
[root@ffing ~]# base64 -d jm.txt
ffing.cn
base64可对任意文件进行二进制转码,因此如果跨平台传送数据,用base64真的很方便!
测试异常情况:当时在centos7.6,对文件zip、exe、dmg转码失败,不知道是不是本地语言环境问题,后来就没有测试了。
拓展:
gpg:文件加密工具,linux原生工具,可验证密码。
发表评论