公钥和私钥可以解决什么问题

为什么会出现公钥和私钥,主要是要解决两个问题,

1、保证信息传输的安全,防止被其他人截获,泄露信息。

2、保证信息的真实性,不能被伪造。

举个例子来说明。

场景: 部队a 向 部队b 发送情报message1。对方部队c想截获a的情报,并伪造一封假的情报给b。

步骤:

1、这时b生成 一组公钥和私钥。并把公钥给了a。

2、a拿到b的情报后使用这个公钥加密了message1。

这时这个message1在发送过程中,被敌方部队c窃密到,但是c没有b的私钥来解密。从而保证了情报的安全性

3、这时c,想伪造a发送的情报发送给b,他获得b的公钥。也发了一份假情报message2给b。

4、b收到了两封情报,但是message1 里面还包含了一个数字签名,b使用a的公钥进行解密,发现签名的人是a,从而可以证明这封情报是a发送的。

而message2的签名使用a的公钥不能解析。证明是一封假情报。从而保证了情报的真实性

http://blog.csdn.net/tanyujing/article/details/17348321这篇博客也写得不错。

原文地址:https://www.cnblogs.com/chenjfblog/p/7764437.html