假设我们有这样的加密函数:
f(x) = x^5 mod 21
如何从此函数生成的加密文本中获取纯文本?我怎样才能表示解密功能?
答案 0 :(得分:3)
这是家庭作业吗?如果是这样,你应该标记它作业,并接受你过去的一些问题的答案。
这看起来像RSA,其中模数是两个素数的乘积(即n = p * q)。只需按照algorithm的步骤操作即可。在这种情况下,n = 21 = 7 * 3。这告诉你phi(n)=(6 * 2)= 12。
如果5是加密指数(e),并且phi(n)= 12,那么为了计算解密指数,你需要找到d使得e * d = 1(mod phi(n))。换句话说,e -1 = d(mod phi(n))。您可以使用Mathematica中的PowerMod函数执行此操作:PowerMod [5,-1,12]。
一旦你知道模块化逆,其余的就变得容易了:
c =(m)^ 5 mod 21
m =(c)^ d mod 21