公开密钥加密与私有密钥加密的六大主要区别及其应用场景分析
公共密钥加密和私钥加密之间的主要区别如下:
1。键数:
公共密钥加密使用公钥和私钥。
私钥加密仅使用一个密钥。
2。关键目的:
在公共密钥加密中,公共密钥用于加密,而私钥则用于解密。
在私有密钥加密中,唯一键都用于加密和解密。
3。密钥分布:
在公共密钥加密中,公共密钥是公开的,可以自由分发。自己保留私钥。
私钥加密需要确保双方在加密之前获得相同的密钥。
4。算法类型:
公共密钥加密是不对称的加密,例如RSA等。
私有密钥加密是对称加密,例如DES,AES等。
5。计算复杂性:
公共密钥加密具有很高的计算复杂性。
私钥加密的计算复杂性相对较低。
6。安全:
公共密钥加密的安全性基于数字理论问题,并且安全性相对较高。
私钥加密的安全性取决于密钥的机密性,并且安全要求很高。
总之,公共密钥加密和私钥加密之间的主要区别也反映在键,分布方法,算法类型,计算复杂性和安全性的数量中。两者有自己的适用应用程序。
我自己的理解在互联网上说的不是很简单:
目的:A --- B需要通信,外界不知道其数据。现在,假设C连接A ---- B之间的界限,则可以看到AB的任何数据C,那么如何将其保密?
查看上一个:密码加密
例如,A想要将123456给B,
1:使用算法加密是指变形123456,例如234561。此纯算法不依赖密码。只要其他人知道算法,它们就可以反向操作并解开它。
2:密码 +算法:假设每个人都同意密码,xy,该算法使用XOR算法,这是:将XOR和123456在Ciphertext上进行ciphertext并传输。其他人可以得到密文。不知道该算法和密码不正确,但是密码也需要在线传输。 。 。
3:考虑一个解决方案:即使C获取A --- B的所有通信数据,这是没有用的公共密钥机制
A使用算法来生成2个数字(一对),称为公钥和私钥,然后披露了公共密钥(任何人),都可以接收,C也可以看到,并且C也可以看到。
B还使用算法来生成2个数字。在B收到A的公钥之后,他使用A的公钥对“密码”进行加密,然后传输:可以获得此Ciphertext A,也可以获取C。那么,C可以知道密码吗?
要解密密码,需要一个私钥。只有一个具有它,但是C没有(这种加密和解密算法是公开的,并且该算法是不可逆转的,这意味着它无法逆转,或者反转的计算量非常大)
现在,A收到B发送的密文,然后用私钥将其解密以获取B的密码,这实际上是B的公钥。然后,A使用B的公钥来加密由123456传输的数据,并将密文从Internet传递到B。当然,C可以在Ciphertext上窃听,但是对于解密,相应的私钥是必需的,他没有。
b获得密文,用私钥解密,并获得123456明文
实际上,更简单的是,互联网上的每个人都需要发布自己的“公钥”(在自己的计算机上生成一对并保留私钥)。
然后,如果您需要保持机密通信,请使用另一方的公共密钥来加密:例如,如果A要将机密数据传递给B,则A将在线找到B的公共密钥,使用B的公共密钥来加密信息,并将其发送
其他人在获得密文时凝视着我,这样他们就不会害怕在互联网上窃听。
因此,如果您害怕捕获数据包软件以在Internet上捕获银行密码,那么这是不必要的。被此机制加密后,密码不会泄漏。唯一担心的是,您会在通过传输(例如Trojans)之前窃听,这些变速箱直接获得了宣传,而不是在传输过程中获得。
好的,不是很棒吗?只要A-B不会泄漏秘密,其他人是否看到他们传输的内容都无关紧要。注意:AB是两个陌生人,他们没有事先同意任何事情。
所有这些都归功于此“算法”,这是一种使用2(一对)编号执行加密和解密的算法。该算法是数学家的问题,RSA是著名的算法之一。