SSL是一种安全协议,位于TCP/IP协议与各种应用层协议之间,为数据通讯提供安全支持。很多人对于SSL加密原理还不是很了解,今天就来为大家详细剖析一下SSL加密原理是什么。
在了解SSL加密原理之前,首先要了解一下密码学的基本原理及发展历程和产生的相应的机制等等。
一、密码学
密码学的漫长历史可以追溯到古罗马的凯撒时代,这里就不加赘述。密码技术的本质其实就是使得发送方可以伪装数据,从而使入侵者截取不到任何有帮助的信息,接收方可以从伪装的数据中,获得初始的数据。
密码学发展到今日,衍生了很多种名词和机制,例如:公钥、密钥、对称密钥系统、公开密钥系统、加密算法、解密算法等等。
二、对称密钥密码体质和公开密钥密码体质
SSL加密原理离不开这两个体质。
密码算法最基本的思想雏形就是使用明文的一种形式去取代另一种形式。参与加密通信的双方,都需要共同分享加密算法的秘密(用于加密和解密的对称密钥)。这是最简单的一种机制,但问题在于,这个共享的秘密需要在外人不知道的情况下,通信双方事先知道。这样在网络中,无疑增加了一种负担,所以需要用更新颖的机制来解决这种问题。
其实相当简单,发送方使用加密方公开的公钥去加密一种明文,另一方面,接收方有着属于自己的私钥,这个私钥外人其实并不知道。(只有发送方知道)接收方通过自己的密钥,可以解密被公钥加密过的明文。
三、SSL加密原理
SSL数字证书采用公钥体制,即利用一对互相匹配的密钥进行加密、解密。每个用户自己设定一把特定的仅为本人所知的私有密钥(私钥),用它进行解密和签名;同时设定一把公共密钥(公钥)并由本人公开,为一组用户所共享,用于加密和验证签名。当发送一份保密文件时,发送方使用接收方的公钥对数据加密,而接收方则使用自己的私钥解密,这样信息就可以安全无误地到达目的地了。
SSL加密原理大致就是这样。当网站安装SSL证书后,使用https加密协议访问网站,可以激活客户端浏览器到网站服务器之间的SSL加密通道(即SSL协议),实现高强度双向加密传输,有效防止数据被泄露或篡改。