网络安全中的公钥和私钥

公钥和私钥的核心就是加密和解密的密码不一样,一个是公钥,另一个是私钥,这个机制也叫非对称密码机制。
和原来的对称密码不同,原来双方使用同一个密码,除了自己保存外,如果跟别人通讯,则要求对方也有同样的密码,就存在密码泄漏的可能;但对于非对称密码,由于加密和解密密码不一样,所以可以将其中一个密码完全公开,只要保证自己手上的另一个密码秘密性就可以了。可以对外公开的密码就是公钥,自己的就是私钥,公钥和私钥是相对的,两者本身并没有规定哪一个必须是公钥或私钥。

对于两台机器的加密传输,接收方R可以生成自己的私钥和公钥,然后发送方S保存了R的公钥,用它加密数据后发送给R,R收到后使用自己的私钥解密,从而得到内容。R如果有数据要返回给S,则使用R自己的私钥加密,S收到后用原来保存的R的公钥解密。

在Linux下可用下面的命令生成一对密码,可分别作为公钥和密钥。
ssh-keygen -t rsa -C "yourname@gmail.com"
在用户目录下生成.ssh目录,目录下可见生成的一对密码文件:
id_rsa          // 密钥文件
id_rsa.pub   // 公钥文件
一般还可以为密钥文件的使用生成一个passphase,就是为了保护id_rsa使用的额外的密码。

公钥和私钥除了用在加密传输之外,也用在数字证书上。就是为了防止传输的数据中途被改变。
1. 发送方S通过算法比如HASH,给数据生成一个摘要,然后对摘要进行非对称加密;
2. 接着发送方S将数据以及摘要一起发给接收方(中间还会加密);
3. 接收方S拿到数据后,对摘要进行非对称解密(和S的非对称加密密钥配对);
4. 然后接收方S再将数据本身进行HASH,生成本地摘要,和解出来的摘要对比,查看是否一样,从而判断数据有否在中途被修改。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值