网络信息传输安全

目录

机密性-加密

对称加密

非对称加密

身份认证

摘要算法和数据完整性

[数字签名 签名验签](#数字签名 签名验签)

数字证书

申请数字证书所需信息

数字证书的生成

[数字证书的应用 https协议](#数字证书的应用 https协议)

数字证书的申请


数据在网络中传输过程中,怎么做到

  1. 数据没有被篡改?hash算法
  2. 信息发送者的身份认证?用发送者的私钥对数据进行加密,接收者只能用发送者的公钥进行解密。发送者的公钥怎么给到接收者?如果还是用网络进行传输,无法保证公钥本身的传输安全啊?比如,A用RSA算法生成了自己的一对公钥、私钥,A把信件的内容用hash算法生成摘要,用私钥加密摘要信息形成数字签名,在网络上发送信件的时候,A的公钥,信件本身,数字签名三者会在网络上进行传输,黑客可以截获到这些信息,黑客用新生成的一对公钥,私钥,重新生成数字签名,给到接收者,接收者收到的就是黑客篡改过的内容了
  3. 怎么确保信息发送者的身份没有被截获篡改?用数字证书证明发送者的身份。数字证书由发送者向权威机构申请,包含了身份信息(发送者的公钥)。
  4. 怎么保证数字证书的安全?数字证书是经过ca机构数字签名的,ca机构也生成一对公钥、私钥,用私钥对发送者的公钥及一些信息进行数字签名,放入数字证书当中,此时数字证书就相当于发送者的身份信息、公钥和数字签名的组合,在个人的电脑或手机里安装根证书,根证书中记录了可以信赖的ca机构和其对应的公钥,就可以用公钥去验证数字证书的内容,从而确认发送者的公钥是自己的。

机密性-加密

对称加密

AES加密算法,密钥长度128、192或256,安全强度很高,性能很好

加密分组模式:将明文分组加密,微信支付中使用 AEAD_AES_256_GCM

非对称加密

使用公钥加密后只能用私钥解密,反过来,私钥加密后也只能用公钥解密

RSA加密算法:最著名的非对称加密算法

身份认证

公钥加密私钥解密,可以确保数据的机密性

私钥加密公钥解密,可以进行身份的认证

摘要算法和数据完整性

hash值一直表示文件内容没有被篡改过

常见的摘要算法:md5、sha1、sha2(sha224、sha256、sha384)

数字签名 签名验签

  1. A要发邮件给B,A把自己的信件内容用摘要算法,生成摘要
  2. A用自己的私钥加密摘要,形成一份签名,追加到信件中
  3. B收到信件,先把信件的内容用相同的hash算法,生成摘要1
  4. B把信件中的签名,用A的公钥加密,生成摘要2
  5. 比对两份摘要,如果一致,可以说明信件没有被篡改过,并且是A发的信件

B怎么拿到的A的公钥?如果也是通过网络进行传输,又可能被黑客截取篡改,怎么办?

数字证书

公钥信任问题,黑客可能伪造公钥,这个怎么办呢?把公钥放到数字证书中,数字证书需要向有社会公信力的CA机构进行申请,申请时需要提供身份信息

申请数字证书所需信息

数字证书的生成

  1. A向ca机构申请数字证书,填入相关的身份信息和A的公钥
  2. ca机构把A的公钥和身份信息hash运算后,用自己生成的私钥加密形成数字签名
  3. 把生成的数字签名追加到数字证书中颁布给A
  1. bob发送的信件,包含数字证书、数字签名和内容
  2. pat拿到信件,用自己本地安装的ca机构的公钥解密数字证书,获取bob用自己的公钥和身份信息生成的hash值,用相同的hash算法也生成hash值,比对,如果一致证明公钥是bob的
  3. 用拿到的bob的公钥再去解密信件内容,剩下的步骤就和上面的一样了

数字证书的应用 https协议

网站想要使用https

数字证书的申请

免费的数字证书申请可访问Let's Encrypt

相关推荐
独行soc2 小时前
#渗透测试#漏洞挖掘#红蓝攻防#护网#sql注入介绍06-基于子查询的SQL注入(Subquery-Based SQL Injection)
数据库·sql·安全·web安全·漏洞挖掘·hw
独行soc3 小时前
#渗透测试#漏洞挖掘#红蓝攻防#护网#sql注入介绍08-基于时间延迟的SQL注入(Time-Based SQL Injection)
数据库·sql·安全·渗透测试·漏洞挖掘
fantasy_arch3 小时前
CPU性能优化-磁盘空间和解析时间
网络·性能优化
Clockwiseee4 小时前
php伪协议
windows·安全·web安全·网络安全
黑客Ash5 小时前
安全算法基础(一)
算法·安全
云云3215 小时前
搭建云手机平台的技术要求?
服务器·线性代数·安全·智能手机·矩阵
云云3215 小时前
云手机有哪些用途?云手机选择推荐
服务器·线性代数·安全·智能手机·矩阵
是Dream呀5 小时前
Python从0到100(七十八):神经网络--从0开始搭建全连接网络和CNN网络
网络·python·神经网络
xcLeigh5 小时前
网络安全 | 防火墙的工作原理及配置指南
安全·web安全
白乐天_n6 小时前
腾讯游戏安全移动赛题Tencent2016A
安全·游戏