第三章 密码学
作者:互联网
前言
由于数据传输的过程中会遇到信息泄漏、篡改、伪造的风险,加密技术应运而生。
三、密码学
1.对称加密 & 非对称加密
有加密就有解密,根据加密过程使用的密钥和解密过程使用的密钥是否相同,将加密算法分为了两个大类: 对称加密 和 非对称加密 。
最早出现的加密技术是对称加密
< 对称加密:加密密钥和解密密钥一致,特点是加密速度快、加密效率高。常用的对称加密算法有:
> DES
> AES
> RC4
这种加密方式中有一个非常关键的问题是,解密方需要拿到密钥才能进行解密,
而密钥钥匙通过网络传输又会面临不安全的风险,这成了一个鸡生蛋,蛋生鸡的问题。
于是通信技术上一个划时代的技术被发明了出来,这就是 非对称加密 !
< 非对称加密:加密密钥与解密密钥不一致,特点是算法较复杂,但安全性高。
非对称加密的密钥一般分为公钥和私钥,公钥公开,私钥需保密。
常用于数字认证,如HTTPS中握手阶段的服务器认证。常用的非对称加密算法有:
> RSA
> DH
> ECC(椭圆曲线加密)
可以毫不夸张的说,没有了非对称加密,互联网绝不会发展到今天这样的高度。
2.秘钥交换技术
在互联网通信中,有加密就有解密,解密自然就需要密钥,那如何把这个密钥告诉对方呢? 密钥交换算法 就是要解决这个问题:如何安全的将密钥传输给对方?
回头看看上面提到的非对称加密,它就可以解决这个问题:
①服务器负责生成一对公私钥,公钥告诉客户端,私钥自己保存;
②客户端拿到公钥后,使用它来对后续通信将要使用的对称加密算法密钥进行加密传输;
③服务端收到后使用私钥解密,拿到这个密钥;
④以后双方可以通过对称加密进行传输通信。
上面这个例子并不只是举例,在早期版本的HTTPS中,就是通过这种方式来进行密钥交换。
而后来的版本中,另外一种叫DH及其变种的密钥交换算法用的越来越多。
DH全称Diffie-Hellman,是两位数学家的名称构成,这种算法的核心是完全依靠数学运算实现密钥的交换。
3.数据编码技术
严格来说,数据编码技术也不算是加密算法,因为其目的同样不是为了加密,而只是为了将数据编码以便传输。
最常见的编码算法就是 base64 了,多用于编码二进制的数据,将不可见的字符编码后转换成64个常见字符组成的文本,便于打印、展示、传输、存储。如邮件eml格式中,将附件文件通过base64编码。
除了base64,还有常用于比特币钱包地址编码的base58。base家族还有base85、base92、base128等众多算法。它们的区别不仅仅在于参与编码的字符集不同,算法执行也是各有千秋
4.多因子认证技术
说到认证,最常出现的莫过于登录、支付等场景。 传统的认证技术就是密码技术,但随着网络攻击的日益猖獗以及互联网渗透到人们生活的方方面面,
传统密码技术的安全性不足以满足互联网的发展。
多因子认证技术意为在传统密码认证之外,引入其他认证技术进行补充,
使用2种及以上的方式共同完成认证。随着人工智能技术的发展,
基于生物特征的认证技术突飞猛进:
指纹认证
虹膜认证
人脸识别
这个世界从来不缺先行者,多因子认证看上去很复杂,好在已经有不少头部企业搭建了认证平台,对于绝大多数企业,需要做的只是下载SDK,调用API而已。
目前国内外主流的多因子认证平台有三大派系:
FIDO ,国际标准,在国内,翼支付、百度钱包、京东钱包、微众银行等都已经应用
IFAA ,阿里系,凭借阿里在电商领域的优势,也吸引了众多追随者。
TUSI ,腾讯系
四、总结
本文罗列了一些常见的信息安全技术,主要分网络安全、系统安全和密码学三个领域展开。
信息安全技术不仅仅是安全工程师的事情,作为一位程序员,了解这些技术将帮助我们更好的Build The World!
标签:第三章,解密,认证,技术,密钥,加密,非对称,密码学 来源: https://www.cnblogs.com/htq-garden/p/16672347.html