首页 > 试题广场 > 某系统自称使用了一种防窃听的方式验证用户密码。密码是 n 个
[填空题]
某系统自称使用了一种防窃听的方式验证用户密码。密码是 n 个数 s 1 , s 2 , ..., s n ,均为 0
或 1。该系统每次随机生成 n 个数 a 1 , a 2 , ..., a n ,均为 0 或 1,请用户回答(s 1 a 1 + s 2 a 2 + ...
+ s n a n )除以 2 的余数。如果多次的回答总是正确,即认为掌握密码。该系统认为,即使
问答的过程被泄露,也无助于破解密码——因为用户并没有直接发送密码。
然而,事与愿违。例如,当 n = 4 时,有人窃听了以下 5 次问答:

就破解出了密码 s 1 = 1, s 2 =2, s 3 = 3, s 4 = 4
0 1 1 1
发表于 2019-10-18 18:13:41 回复(0)
(s 1 a 1 + s 2 a 2 + ...+ s n a n )这个是什么意思啊,求解答
发表于 2019-08-14 11:13:38 回复(1)
用5可以推出(s1*1+0+0+0)%2==0,s1*1==0,s1==0;
把s1==0代入1可得(0*1+s2*1+0+0)%2==1,s2*1==1,s2==1;
把s2==1代入3可得(0+1*1+s3*1+0)%2==0,s3*1==1,s3==1;
把s3==1代入2可得(0+0+1*1+s4*1)%2==0,s4*1==1,s4==1;
发表于 2019-10-19 09:14:54 回复(0)