栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

2021-10-11

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

2021-10-11

  1. 什么是代替密码

使用加法方式构造一种代替密码。
五元组(M,C,K,E,D)中各项如下所示:
明文
case
case
加密算法:
e(x)=x+a(mod26)a∈Z/(26)
e(x)=x+a(mod26)a∈Z/(26)
密钥:
a=5
a=5
密文:
HFYJ
HFYJ
解密算法:
x=e(x)−a(mod26)a∈Z/(26)
x=e(x)−a(mod26)a∈Z/(26)
仿射密码分析
设计思想
仿射密码由加法密码和乘法密码结合构成,由于加法和乘法相互独立,可以实现更多种类的代替密码。对于仿射密码的加密过程
e(x)=ax+b(mod26)a,b∈Z/(26)
e(x)=ax+b(mod26)a,b∈Z/(26)
当且仅当gcd(a,26)=1gcd(a,26)=1时具有唯一解(即可逆)。其中a的取值为(1,3,5,7,9,11,15,17,19,21,23,25)共12个。
(a取值为1时退化为加法密码);b取值为0到25,共26种(当b取值为0时退化为乘法密码)。在a=1,b=0a=1,b=0时,相当于未加密。

通过C++实现仿射密码所有的26×12=31226×12=312种不同情况的加密过程。
通过Matlab对字符频率进行统计分析。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/316504.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号