Computer science 信息技术安全中公钥和私钥的基本原理

Computer science 信息技术安全中公钥和私钥的基本原理,computer-science,Computer Science,John和Peter各自生成了一对公钥和私钥。然而,他们还不知道彼此的钥匙。现在他们正试图通过网络交换消息M a) 秘密交换信息的程序是什么, b) 如果可能进行主动攻击,可以采取哪些措施来降低风险?基本思路很简单: John和Peter都公开了他们的公钥,并向全世界广播,“使用我的公钥加密您发送给我的消息,这样只有我才能读取它们” John使用Peter的公钥向Peter发送加密消息,只有Peter可以解密。类似地,Peter使用John的公钥对响应进行加密,因此只有John可以读取响应

John和Peter各自生成了一对公钥和私钥。然而,他们还不知道彼此的钥匙。现在他们正试图通过网络交换消息M

a) 秘密交换信息的程序是什么,
b) 如果可能进行主动攻击,可以采取哪些措施来降低风险?

基本思路很简单:

  • John和Peter都公开了他们的公钥,并向全世界广播,“使用我的公钥加密您发送给我的消息,这样只有我才能读取它们”

  • John使用Peter的公钥向Peter发送加密消息,只有Peter可以解密。类似地,Peter使用John的公钥对响应进行加密,因此只有John可以读取响应

  • 这一切都是假设没有可疑的事情发生。如果存在活跃的攻击者,则需要采取一些额外的预防措施

    您如何知道发布Peter公钥的人实际上是否是Peter?他们可能只是声称自己是彼得并发布自己的公钥。解决方案是让受信任的证书颁发机构验证发布公钥的实体的身份,以便这些密钥的使用者可以咨询证书颁发机构,以确信公钥是由所声明的同一实体提供的

    您如何知道您从John收到的加密邮件是否来自John,而不是其他读取您的公钥并想冒充John的人?为此,您可以要求通信握手成功(以便Peter使用John的公钥回复John,John必须成功响应以确认其身份),也可以要求John对发送给Peter的消息进行数字签名。签名包括John使用自己的私钥加密部分消息,然后Peter使用John的公钥解密。Peter可以验证使用John公钥的解密是否有效(也许可以根据消息内容的散列或已知固定值或其他内容进行检查),并且由于只有John知道John公钥的私钥,Peter可以确信只有John可以发送消息