网络营销建设网站实训网站建设技术规范
网络营销建设网站实训,网站建设技术规范,28岁女生学前端开发难吗,南京网站建设公司参考链接#xff1a;https://www.cnblogs.com/0yst3r-2046/p/12172757.html
仿射加密法 在仿射加密法中#xff0c;字母表的字母被赋予一个数字#xff0c;例如 a0#xff0c;b1#xff0c;c2…z25 。仿射加密法的密钥为0-25直接的数字对。
仿射加密法与单码加密法没什么…参考链接https://www.cnblogs.com/0yst3r-2046/p/12172757.html
仿射加密法 在仿射加密法中字母表的字母被赋予一个数字例如 a0b1c2…z25 。仿射加密法的密钥为0-25直接的数字对。
仿射加密法与单码加密法没什么不同因为明文的每个字母分别只映射到一个密文字母。
仿射密码的加密算法就是一个线性变换即对任意的明文字符x对应的密文字符为 其中a,b∈且要求gcd(a,26)1,函数e(x)称为仿射加密函数。 注意
注1. 仿射加密函数要求gcd(a,26)1即要求a和26互素否则就不是一个单射函数。
注2. 从仿射加密函数的表达式易知当a1,b3时这种仿射密码就是著名的凯撒密码。
注3. 在求解仿射解密函数时需要求a在上的乘法逆元这可由扩展欧几里得算法求解下表列出了在上所有与26互素元素的乘法逆元 举个列子
假设e(x)为密文x为明文。
设仿射加密函数是
由上表知所以相应的仿射解密函数是
若加密明文是 sorcery ,首先把明文每个字母转换为数字 18,14,17,2,4,17,24 。然后对明文进行加密这里以第一个字母s为例 e(x)11*186mod 26
e(x)204 mod 26
e(x)22 对照下表 python代码 flag szzyfimhyzd flaglist [] for i in flag: flaglist.append(ord(i)-97) flags for i in flaglist: for j in range(0,26): c (17 * j - 8) % 26 if(c i): flags chr(j97) print(flags)
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/86760.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!