> 백엔드 개발 > PHP 튜토리얼 > 明文Base64编码后换位,换位后的编码可以被破解的概率

明文Base64编码后换位,换位后的编码可以被破解的概率

WBOY
풀어 주다: 2016-06-23 13:20:51
원래의
1196명이 탐색했습니다.



上图中的Base64的编码表

先用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换位后如果想要换回来,在计算的中间会产生非乱码明文,但是这个明文并不是你的实际文明值


원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿