美文网首页
SSL常见加密算法

SSL常见加密算法

作者: HughM | 来源:发表于2015-08-13 15:25 被阅读396次

    一.密码学简介

    据记载,公元前400年,古希腊人发明了置换密码。1881年世界上的第一个电话保密专利出现。在第二次世界大战期间,德国军方启用“恩尼格玛”密码机,密码学在战争中起着非常重要的作用。
    随着信息化和数字化社会的发展,人们对信息安全和保密的重要性认识不断提高,于是在1997年,美国国家标准局公布实施了“美国数据加密标准(DES)”,民间力量开始全面介入密码学的研究和应用中,采用的加密算法有DES、RSA、SHA等。随着对加密强度需求的不断提高,近期又出现了AES、ECC等。
    使用密码学可以达到以下目的:
    保密性:防止用户的标识或数据被读取。
    数据完整性:防止数据被更改。
    身份验证:确保数据发自特定的一方。

    二.加密算法介绍
    根据密钥类型不同将现代密码技术分为两类:对称加密算法(秘密钥匙加密)和非对称加密算法(公开密钥加密)。
    对称钥匙加密系统是加密和解密均采用同一把秘密钥匙,而且通信双方都必须获得这把钥匙,并保持钥匙的秘密。
    非对称密钥加密系统采用的加密钥匙(公钥)和解密钥匙(私钥)是不同的。
    1)对称加密算法

    • DES(Data Encryption Standard):数据加密标准,速度较快,适用于加密大量数据的场合。
    • 3DES(Triple DES):是基于DES,对一块数据用三个不同的密钥进行三次加密,强度更高。
    • AES(Advanced Encryption Standard):高级加密标准,是下一代的加密算法标准,速度快,安全级别高;

    2)非对称加密算法

    • RSA:由 RSA 公司发明,是一个支持变长密钥的公共密钥算法,需要加密的文件块的长度也是可变的;
    • DSA(Digital Signature Algorithm):数字签名算法,是一种标准的 DSS(数字签名标准);
    • ECC(Elliptic Curves Cryptography):椭圆曲线密码编码学。

    3)单向加密算法

    • BASE64 严格地说,属于编码格式,而非加密算法
    • MD5(Message Digest algorithm 5,信息摘要算法)
    • SHA(Secure Hash Algorithm,安全散列算法)
    • HMAC(Hash Message Authentication Code,散列消息鉴别码)

    三.特点

    • DES,3DES,AES 加密数据,只有一个密码,密钥长度不同。
    • PBE Password-based encryption 对称加密中基于密码加密,口令用户掌管不借助任何物理媒介,采用随机数杂凑多重加密保证数据安全。
    • RSA 即能用户数据加密也能用于数字签名,同时有公钥和私钥。数字签名的意义在于,对传输过来的数据进行校验确保传输过程中不被修改。
    • 单向加密中MD5,SHA,HMAC为非可逆加密,单向散列一般用于产生信息摘要。通常作为加密的基础。单向加密主要用途为校验传输过程中是否被修改过。

    四.算法比较

    • 在管理方面:公钥密码算法只需要较少的资源就可以实现目的,在密钥的分配上,两者之间相差一个指数级别(一个是n一个是n2)。所以私钥密码算法不适应广域网的使用,而且更重要的一点是它不支持数字签名。
    • 在安全方面:由于公钥密码算法基于未解决的数学难题,在破解上几乎不可能。对于私钥密码算法,到了AES虽说从理论来说是不可能破解的,但从计算机的发展角度来看。公钥更具有优越性。
      -从速度上:AES的软件实现速度已经达到了每秒数兆或数十兆比特。是公钥的100倍,如果用硬件来实现的话这个比值将扩大到1000倍。

    五.参考内容
    http://www.willrey.com/support/ssl_DES.html
    http://www.open-open.com/lib/view/open1397274257325.html
    http://blog.csdn.net/sunny243788557/article/details/38874153

    相关文章

      网友评论

          本文标题:SSL常见加密算法

          本文链接:https://www.haomeiwen.com/subject/qeaiqttx.html