明文Base64编码后换位,换位后的编码可以被破解的概率
程序员文章站
2022-06-02 08:51:10
...
上图中的Base64的编码表
先用Base64常规编码,编码明文后,将编码后的明文位置打乱
比如将正常Base64编码后中的A换成B,B换成C,C换成A,以此方式进行随机调换
1.这个时候我知道换位的编码换位顺序。
2.被人不知道这个换位的编码被什么字符串替换
这个时候其他人不知道换位后的编码的情况下有多大的概率破解。
先用Base64常规编码,编码明文后,将编码后的明文位置打乱
比如将正常Base64编码后中的A换成B,B换成C,C换成A,以此方式进行随机调换
1.这个时候我知道换位的编码换位顺序。
2.被人不知道这个换位的编码被什么字符串替换
这个时候其他人不知道换位后的编码的情况下有多大的概率破解。
回复讨论(解决方案)
base64 由 64 个符号构成,所以破解的概率为 1/64!(64的阶乘分之一)
破解的方法是遍历 64 个符号全排列 结果集,逐一尝试
得出来了 base64将文明正常编码加密后 ,
假设是2位长度 在64个编码中随机替换 替换后破译的概率为 4096 分之一
举例:base64编码后对编码后的值随机打乱,编码后长度不变依然为12位 那么破以后的概率为 64平方12
假设电脑每秒计算100万次 破译需要大约151825054.10460536309465020576132年
备注:base64换位后如果想要换回来,在计算的中间会产生非乱码明文,但是这个明文并不是你的实际文明值
上一篇: Mysql 数据类型使用说明_MySQL
下一篇: 求教PHP正则表达式