在ElGamal密码体制中,设素数p=71,生成元g=7。(1)如果接收者B的公钥为yB=3,发送者A随机选择整数k=2,求明文m=30所对应的密文。(2)如果发送者A选择另一个随机整数k,使得明文m=30加密后的密文为c=(59, c2),求c2。

ElGamal密码体制

已知条件

  • 素数
  • 生成元
  • 接收者B的公钥
  • 明文

(1)随机整数

计算密文

  1. 计算

    计算

    所以:

  2. 计算

    计算

    所以:

    计算

因此,密文

(2)选择另一个随机整数 ,使密文为

假设发送者选择的随机整数 使得 。我们需要求解此情况下的

  1. 确定 我们需要找到满足

通过计算可以找到

所以

  1. 计算 计算 所以:计算

因此,当 时,密文

总结

  • 当随机数 时,明文 的密文为
  • 当随机数 时,明文 的密文为

在RSA密码体制中,已知素数p=3,q=11,公钥e=7,计算私钥d并给出对明文m=5的加密和解密过程。

RSA密码体制

已知条件

  • 素数
  • 素数
  • 公钥
  • 明文

1. 计算

  1. 计算

  2. 计算

2. 计算私钥

私钥 在模 下的乘法逆元,即满足:

即:

我们需要找到 使这个等式成立。可以使用扩展欧几里得算法来计算:

扩展欧几里得算法求解:

步骤如下:

从中我们可以逆向求得:

代入得:

因此,因为:

所以私钥

3. 对明文 进行加密和解密

  1. 加密

    • 使用公钥
    • 密文

    计算

所以密文

  1. 解密

    • 使用私钥
    • 明文

    计算

所以解密后的明文

总结

  • 私钥
  • 明文 加密后的密文
  • 密文 解密后的明文