数论,加密,仿射变换后唯一性问题

2015-09-22 20:27:38 +08:00
 cfans1993
简单说明

对 26 个字母进行变换达到加密的效果

变换公式 C ≡ aP+b(mod 26) , 0≤C≤25

其中 P :明文
(a,26)=1 (即互素)
b:任意整数
各个英文字母与数字对号 a-0 b-1 ... z-25

例:

如要对字母 b 进行加密, b 对应 1 ,如果 a=7,b=10
那么加密:(7x1+10)mod 26= 17
得到对应的密文字母: r

问题

为什么明文字母与加密字母是一对一的,而不存在多对一的情况

1719 次点击
所在节点    问与答
2 条回复
hahastudio
2015-09-22 20:45:51 +08:00
这个简单啊,反证法
1. 假设存在 P1, P2 ∈[0, 26],且 P1 < P2 , aP1 + b ≡ C, aP2 + b ≡ C ,则有
aP1 + b + 26n = aP2 + b , n∈N+
a (P2 - P1) = 26 n
∵(a, n) = 1, P2 - P1 ∈N+
∴n / a >= 1
∴P2 - P1 >= 26 ,与假设矛盾
2. 假设存在 C1, C2 ∈[0, 26],且 C1 < C2 , aP + b ≡ C1, aP + b ≡ C2 ,则有
C1 + 26n = C2 , n ∈N+
C2 - C1 >= 26 ,与假设矛盾

作业自己写,我这只是自我满足
cfans1993
2015-09-22 22:29:36 +08:00
@hahastudio 明白意思了,谢谢

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/222892

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX