解释了使用OpenSSL / AES的网络加密

时间:2017-01-16 11:20:55

标签: c++ security encryption cryptography

我对此非常陌生,所以我遵循了一些教程,并在C ++中使用公钥和私钥在客户端 - 服务器之间进行加密/解密。

结果非常有希望,并且工作得很好,但我很困惑,真的很困惑,我不会犯错误(特别是在商业环境中)。

请向我解释我应该如何使用加密/解密,目前我有:

  • 使用公钥加密并使用私钥解密的流量
  • 使用私钥加密并使用公钥解密的流量

我需要了解并知道哪种方法正确用法,这就是我所理解的(请不要笑):

**

  • SERVER(使用私钥加密流量) - >客户(解密 公共交通)
  • CLIENT(使用公钥加密流量) - > SERVER(解密 带私钥的流量)

**

所以我的问题如下:

  • 这是对的吗?
  • 公钥是否转到客户端,私钥是否保留在服务器上?
  • 是否还有其他安全问题?

非常感谢

1 个答案:

答案 0 :(得分:0)

您想了解非对称加密(公钥加密)。 基本上,每一方都会生成一对密钥 - (私钥和公钥,以某种方式相关)。

了解OpenSSL与ssl-certificates相关,您必须了解使用ssl。请尝试阅读:SSL explained for beginners.

它与服务器客户端无关。

例如,您有一对钥匙。

然后,您的公钥将发送给您的朋友,并且该朋友使用您提供给他的公钥加密数据并将其发送给您。

现在,您可以使用私钥解锁(解密)加密数据。

您可以在以下资源中学习这个重要主题:

  1. 来自wiki:Public-key cryptography
  2. 解释视频:Encryption types explained
  3. 不对称加密解释:Video
  4. 公钥加密视频:With Diffie-Hellman example
  5. 了解dep:RSA algorithem explanation+example
相关问题