1.密码学是一门非常值得人去深究的一门技术科学,所以先简单的了解一下基础。
2.什么是密码学?
定义:密码学是研究编制密码和破译密码的技术科学。研究密码变化的客观规律,应用于编制密码以保守通信秘密的,称为编码学;
应用于破译密码以获取通信情报的,称为破译学,总称密码学。(个人理解的密码学就是加密和解密交互的一种技术)
3.密码学的发展过程:
首先是古典密码——>近代密码——>现代密码——>公钥密码
4.单钥加密体制(对称密码学)
对称加密是指加密和解密使用的都是同一把密钥,它的过程如下:
明文-------加密-----------密文----------解密---------明文
对称密码学中比较重要的两个加密算法是 DES和AES。
5.公钥加密体制(非对称加密)
非对称加密是用户指生成两把不同的密钥,一把是公钥,一把是私钥。其中呢,公钥是可以公开的,私钥是保存在用户手中的。
使用公钥加密可以实现多用户加密的消息由一人解读,可用于数据加密,反之,使用私钥加密可以实现单用户加密的消息由多用户解读,也是数字签名。
数字签名可以确保消息的完整性和抗敌赖性。
非对称密码学中比较常见的加密算法是RSA 和ECC.
6.数字签名
因为在数据在传输过程中可能会被篡改,所以需要数字签名来解决这一问题,确保了数据的完整性 。
主要对报文经过HASH处理后,对其中的摘要消息用私钥进行加密,然后随着消息一起发送。
7.数字证书
数字证书简称CA,它由权威机构给某网站颁发的一种认可凭证,这个凭证是被大家(浏览器)所认可的。
因为消息传递过程存在不信任的问题,所以要采取数字证书。
CA;证书签发机构 RA;注册机构
生成证书的过程:
1>客户生成密钥
2>将公钥和相关注册信息发送RA进行注册
3>RA进行验证,主要验证用户接受用户注册和用户是否用户和提交的公司相匹配的私钥
4>CA颁发证书。