安全防御------密码学

密码学之于信息传输 --- 在不安全的环境下建立安全输出通道。
密码 --- 明文 --> 算法 + 密钥 ---> 密文
举例:
明文 ok
凯撒密码
算法:对字母进行平移可以左也可以右,移动若干位
密钥:向右平移 3 个字母
密文 rn

一、密码分类 

1.对称加密

对称加密是一种加密方式,其中加密和解密使用相同的密钥。这意味着在发送消息或文件之前,发送方和接收方必须共享相同的密钥,以便对数据进行加密和解密。

加密信息传递有两个通道 :密文传递通道 ,密钥传递通道 。
对称加密是一种加密方式,其中加密和解密使用相同的密钥。这意味着在发送消息或文件之前,发送方和接收方必须共享相同的密钥,以便对数据进行加密和解密。

2.非对称加密

在互联网时代我们希望能够在网上公开途径传输密钥

非对称加密是一种加密方式,其中加密和解密使用不同的密钥。这些密钥称为公钥和私钥。

在非对称加密中,发送方使用接收方的公钥加密消息或文件,而接收方使用其私钥来解密它们。反之,发送方可以使用自己的私钥对数字签名进行签名,而接收方可以使用发送方的公钥验证数字签名的完整性。

对称加密 速度快 但是密钥不安全
非对称加密算法 速度慢 但是安全
最佳解决 :用非对称加密算法加密对称加密算法的密钥。

 3.非对称加密的产生过程及原理

对称加密的困境
密钥的安全传输 --- 对称加密算法的缺陷
密钥传输风险
Alice bob 必须使用一个安全的信道来传输对称密钥,但是消息传输的通道是不安全的。
对称加密 A 的密钥需要用对称加密 B 来传输 ---B 的密钥不安全会导致 A 的不安全。
密钥管理难
如果没有非对称加密,百度这个企业需要和用户做安全传输,就需要保存至少 3-5 亿个密钥。
根据我们上图的非对称算法只需要一把公钥,而对称需要亿级别的钥匙。
机密性最佳解决 :用非对称加密算法加密对称加密算法的密钥
完整性与身份认证最佳解决:对明文 a 进行 hash 运算得到定长值 h ,然后对 h 进行非对称运算用私钥加密得到值k ,然后对明文 a 进行对称运算得到 y ,传输时同时传输 y k ,收到后用非对称公钥解开 k 得到 h‘ , 然后用对称算法解开y 得到 a ,然后对 a 进行 hash 得到 h‘‘ 如果 h‘ h‘’ 相同,则证明完整性与身份认证。

二、数字认证

身份认证技术的应用:

身份认证:通过标识和鉴别用户身份,防止攻击者假冒合法用户来获取访问权限。
身份认证技术:在网络总确认操作者身份的过程而产生的有效解决方法。
如何确认信息的发送者一定是他本人?
发送者是 alice ,使用非对称算法,生成私钥 A ,公钥 B
1. alice 把公钥给 bob
2. alice 发送信息 hello world
3. alice 把发送的信息用对称加密算法加密到加密信息 C
4. alice 把发送的 hello world !先用 hash 算法计算得到 hash D
5. alice hash D 用非对称加密计算得到 E E 值就是用于身份验证的。
6. alice C E 一起发给 bob
7. bob 收到 C,E 值,先用非对称的公钥对 E 进行解密,如果能正常解开则证明 C 值是 alice 的。
上述 1 中如果黑客偷换了 alice 的公钥,那么就会出现身份认证漏洞。
解决:
alice 把公钥给 bob 的环节能确保是安全的,一定是 alice 给的。
想办法证明 alice 的公钥一定是 alice 的。
场景:

 

 黑客针对上述的攻击:

解决方案:
公钥的 身份证”-----数字证书

1.数字证书包含

用户身份信息
用户公钥信息
身份验证机构的信息及签名数据

2.数字证书分类

签名证书 ---- 身份验证,不可抵赖性。
加密证书 ---- 加密,完整性与机密性。

三、 密码学完整应用

首先给原始信息用Hash算法验证完整性,得到了原始信息的信息摘要;再用Alice的私钥签名进行加密处理就得到了数字签名。而解数字签名需要公钥,公钥在传递的过程中需要证书,所以Alice就在权威机构申请证书。之后将原始信息,数字签名和证书一起传递,并用Alice和Bob之间的对称密钥对传送数据进行加密得到加密信息,而Alice和Bob之间的对称密钥要用Bob的公钥进行加密得到密钥信封,之后将加密信息和密钥信封一起传递到公网。

来到公网后,因为密钥信封需要Bob的私钥才能打开,而Bob私钥的攻击者得不到的,所以密钥信封是安全的,那么加密信封也是安全的。

之后加密信息和密钥信封来到Bob,Bob先用自己的私钥解开对称密钥,用对称密钥去撞加密信息得到原始信息,数字签名和Alice的证书。然后用Alice公钥去验证签名得到信息摘要;同时对得到的原始信息用Hash算法进行验证得到另外一份摘要。将这两份摘要进行比对,若相同,则代表数据在传输过程中是安全的。

四、SSL协议

SSL(Secure Sockets Layer)是一种用于保护网络通信安全的协议。SSL的工作过程如下:

1.握手阶段(Handshake Phase):

客户端向服务器发起SSL连接请求。
服务器将自己的SSL证书(包含公钥)发送给客户端。
客户端验证服务器证书的有效性,包括检查证书的签名、过期日期等。
客户端生成一个随机的对称密钥(称为会话密钥),并使用服务器的公钥进行加密。
客户端将加密后的会话密钥发送给服务器。


2..密钥协商阶段(Key Exchange Phase):

服务器使用自己的私钥解密客户端发送的会话密钥。
服务器和客户端都拥有相同的会话密钥,用于后续的加密和解密通信。


3.数据传输阶段(Data Transfer Phase):

客户端和服务器使用会话密钥进行对称加密和解密,保护数据的隐私和完整性。
客户端和服务器之间的所有通信内容都通过加密的方式进行传输,第三方无法窃取或修改数据。

值得注意的是,SSL已经被Transport Layer Security(TLS)所取代,但仍然广泛使用"SSL"这个术语来指代TLS协议。TLS在原始的SSL协议基础上进行了改进和增强,并提供了更强大的安全性。
总而言之,SSL/TLS通过认证服务器身份、生成对称密钥并加密数据,确保在客户端和服务器之间的通信是安全的、私密的和完整的。这种加密通信机制在保护敏感信息和防止数据泄露方面非常重要,广泛应用于网上银行、电子商务网站、电子邮件等安全传输场景中。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值