给定一个大数字x(1024位)和一个大素数N(N>x),我想用更小的y(128位)加密它。
安全吗?如果没有,我如何评估它的泄漏?
发布于 2021-04-13 08:55:13
最基本的安全措施是“在窃听者在场的情况下无法区分”。这是基于一个简单的实验。对手A向挑战者C发送两条消息( m_0,m_1 )。挑战者对其中一条消息进行加密(随机选择,比如C随机选择b \in \{0,1\}统一随机加密c_b = Enc(m_b))。然后将密文发送到A。对手现在必须找出哪条消息是加密的,并将b'=0或b'=1发送到C。如果b = b',我们说A赢了。
现在我们来看一下您的加密:A知道Enc(x)和x。利用扩展的欧几里德算法,A可以计算y,从而区分c_b。因此,A赢了实验,加密系统甚至没有提供最基本的安全概念。
https://crypto.stackexchange.com/questions/89359
复制相似问题