欢迎来到 嗅灵易学

零基础也能上手的脚本技术课,一对一答疑带你入门

此算法的具体例子 (1千字)

此算法的具体例子 (1千字)

关于一个解密算法的解答(此算法的具体例子)
作者  :  zmworm
E-Mail:  zmworm@sohu.com
HomePage: ZMWorm.Yeah.Net 
[习题]
以下各变量的字长均为8位
用A1=96  B1=96 C1=97 D1=97 
  A2=7  B2=14 C2=21 D2=28
  A3=33  B3=34 C3=35 D3=36
算法 
  (M1 xor A3 xor  0)*A2 mod A1=N1 
  (M2 xor B3 xor N1)*B2 mod B1=N2 
  (M3 xor C3 xor N2)*C2 mod C1=N3
  (M4 xor D3 xor N3)*D2 mod D1=N4
对M1,M2,M3,M4 进行加密操作
求得
  (M1 xor 33 xor  0)*7  mod 96=86
  (M2 xor 34 xor 86)*14 mod 96=80 
  (M3 xor 35 xor 80)*21 mod 97=93
  (M4 xor 36 xor 93)*28 mod 97=25 
即密文为  N1=86 N2=80 N3=93 N4=25
问所有可能的明文M1 M2 M3 M4

gcd(7,96)=1 所以K1 有一个解
7模96的乘法逆元为55 (因为 7*55 mod 96=1)
所以K1=55*N1 mod 96 =26
K1所有可能情况是 26 ,26+96=122 ,122+96=218,
M1=26 xor 33 xor 0=59
M1=122 xor 33 xor 0=91
M1=218 xor 33 xor 0=251
M1 的所有可能是 59, 91, 251

gcd(14,96)=2,所以k 有两个解
e"=14/2=7 f"=96/2=48 d"=80/2=40
7关于 48的逆元e'=7 (因为 7*7 mod 48 =1)
所以 K2[i]i=d"*e'+(i-1)f"=[(40*7) mod 48]+(i-1)*48 (i=1,2)
解得 K2[1]=40 K2[2]=88
K2所有可能情况是 40 ,40+96=136 ,136+96=232, 88 88+96=184
M2=40 xor 34 xor 86=92
M2=136 xor 34 xor 86=252
M2=232 xor 34 xor 86=156
M2=88 xor 34 xor 86=44
M2=184 xor 34 xor 86=204
M2的所有可能是 92, 252, 156, 44, 206
gcd(21,97)=1 所以K1 有一个解
模96的乘法逆元为37 (因为 37*21 mod 97=1)
所以K1=37*N3 mod 97 =46
K1所有可能情况是 46 ,46+97=143 ,143+97=240,
M3=46 xor 35 xor 80=93
M3=143 xor 35 xor 80=252
M3=240 xor 35 xor 80=136
M2的所有可能是 93, 252, 136

M4 留为作业 ,自己求。答案不确定可以问我。

注意:上传附件及图片大小不得大于30M。

⚠️ 版权声明:
本博客所有内容(含教程、源码、工具)仅供个人技术学习与研究交流使用,严禁商用、倒卖、二次分发及非法用途
未经作者书面授权,任何组织或个人不得转载、复制或用于其他平台,违者将追究相关责任。

0 0 0 举报
复制成功