ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

【2018-04-04】TLS简单笔记-几种常用加密算法比较

【2018-04-04】TLS简单笔记-几种常用加密算法比较 [历史归档]本文原发布于 cstriker1407.info 个人博客内容为历史存档仅供参考。发布时间2018-04-04 标题TLS简单笔记-几种常用加密算法比较分类编程 标签tlsTLS简单笔记-加密算法概述DES3DESAESBlowfishRSA加密算法Base64加密算法MD5加密算法SHA1加密算法XXXTEA加密算法参考链接《 https://blog.csdn.net/nightelve/article/details/16865773 》《 https://blog.csdn.net/yhhwatl/article/details/52524607 》计算机加密技术分为对称加密及非对称加密两种技术.**对称加密技术基本的实现是数据发送方和数据接收方共享一个密钥进行数据加密和解密工作。**但是他也有个问题就是一旦密钥被第三方获取数据安全性就无法保证。**非对称加密技术中数据发送方和接收方利用不同的密钥进行数据加密及解密工作。**简言之就是密钥1只能被用来加密数据与此同时密钥2用来解密数据。然而这种加密技术容易导致被人利用通过频繁更新密钥进行攻击。所以说我们需要把这两种算法结合使用来构建一个更加强健的加密技术。DES数据加密标准是IBM提出的第一个基于Lucifer算法的加密技术。作为第一个加密标准自然会带有些许瑕疵漏洞使其不是特别的安全。DES加密算法是一种分组密码以64位为分组对数据加密它的密钥长度是56位加密解密用同一算法。DES加密算法是对密钥进行保密而公开算法包括加密和解密算法。这样只有掌握了和发送方相同密钥的人才能解读由DES加密算法加密的密文数据。因此破译DES加密算法实际上就是搜索密钥的编码。对于56位长度的密钥来说如果用穷举法来进行搜索的话其运算次数为256。随着计算机系统能力的不断发展DES的安全性比它刚出现时会弱得多然而从非关键性质的实际出发仍可以认为它是足够的。不过DES现在仅用于旧系统的鉴定而更多地选择新的加密标准。3DES三重DES是DES的加强版提供了DES的三重安全性。他和DES使用同样的算法只是做了三次加密来提升安全级别。AES高级加密标准是由美国国家标准技术研究院NIST提出的旨在取代DES加密技术。作者所知道的针对AES唯一的破解方式就是暴力破解。AES加密算法是密码学中的高级加密标准该加密算法采用对称分组密码体制密钥长度的最少支持为128、192、256分组长度128位算法应易于各种硬件和软件实现。这种加密算法是美国联邦政府采用的区块加密标准这个标准用来替代原先的DES已经被多方分析且广为全世界所使用。AES加密算法被设计为支持128192256位/32nb)数据块大小即分组长度支持128192256位/32nk)密码长度在10进制里对应34×1038、62×1057、1.1×1077个密钥。BlowfishBlowfish由Bruce Schneier发明的一种在世界范围被广泛使用的加密方式。Blowfish使用16到448位不同长度的密钥对数据进行16次加密。这样黑客们基本不可能对其进行解密。直到现在作者发文时还没有针对blowfish的破解(B. Schneier)RSA加密算法RSA加密算法是目前最有影响力的公钥加密算法并且被普遍认为是目前最优秀的公钥方案之一。RSA是第一个能同时用于加密和数宇签名的算法它能够抵抗到目前为止已知的所有密码攻击已被ISO推荐为公钥数据加密标准。RSA加密算法基于一个十分简单的数论事实将两个大素数相乘十分容易但想要对其乘积进行因式分解却极其困难因此可以将乘积公开作为加密密钥。Base64加密算法Base64加密算法是网络上最常见的用于传输8bit字节代码的编码方式之一Base64编码可用于在HTTP环境下传递较长的标识信息。在其他应用程序中也常常需要把二进制数据编码为适合放在URL包括隐藏表单域中的形式。此时采用Base64编码不仅比较简短同时也具有不可读性即所编码的数据不会被人用肉眼所直接看到。MD5加密算法MD5为计算机安全领域广泛使用的一种散列函数用以提供消息的完整性保护。对MD5加密算法简要的叙述可以为MD5以512位分组来处理输入的信息且每一分组又被划分为16个32位子分组经过了一系列的处理后算法的输出由四个32位分组组成将这四个32位分组级联后将生成—个128位散列值。MD5被广泛用于各种软件的密码认证和钥匙识别上。MD5用的是哈希函数它的典型应用是对一段信息产生信息摘要以防止被篡改。MD5的典型应用是对一段Message产生fingerprin指纹以防止被“篡改”。如果再有—个第三方的认证机构用MD5还可以防止文件作者的“抵赖”这就是所谓的数字签名应用。MD5还广泛用于操作系统的登陆认证上如UNIX、各类BSD系统登录密码、数字签名等诸多方。SHA1加密算法SHA1是和MD5一样流行的消息摘要算法。SHA加密算法模仿MD4加密算法。SHA1设计为和数字签名算法DSA一起使用。SHA1主要适用于数字签名标准里面定义的数字签名算法。对于长度小于2“64位的消息SHA1会产生一个160位的消息摘要。当接收到消息的时候这个消息摘要可以用来验证数据的完整性。在传输的过程中数据很可能会发生变化那么这时候就会产生不同的消息摘要。SHA1不可以从消息摘要中复原信息而两个不同的消息不会产生同样的消息摘要。这样SHA1就可以验证数据的完整性所以说SHA1是为了保证文件完整性的技术。SHA1加密算法可以采用不超过264位的数据输入并产生一个160位的摘要。输入被划分为512位的块并单独处理。160位缓冲器用来保存散列函数的中间和最后结果。缓冲器可以由5个32位寄存器A、B、C、D和E来表示。SHA1是一种比MD5的安全性强的算法理论上凡是采取“消息摘要”方式的数字验证算法都是有“碰撞”的——也就是两个不同的东西算出的消息摘要相同互通作弊图就是如此。但是安全性高的算法要找到指定数据的“碰撞”很困难而利用公式来计算“碰撞”就更困难一目前为止通用安全算法中仅有MD5被破解。XXXTEA加密算法“微型加密算法TEA及其相关变种XTEABlock TEAXXTEA都是分组加密算法它们很容易被描述实现也很简单典型的几行代码。TEA 算法最初是由剑桥计算机实验室的 David Wheeler 和 Roger Needham 在 1994 年设计的。该算法使用 128 位的密钥为 64 位的信息块进行加密它需要进行 64 轮迭代。该算法使用了一个神秘常数δ作为倍数它来源于黄金比率以保证每一轮加密都不相同。但δ的精确值似乎并不重要这里 TEA 把它定义为 δ「(√5 - 1)231」也就是程序中的 0×9E3779B9 。”https://zh.wikipedia.org/wiki/微型加密算法http://www.waitingfy.com/archives/1157?utm_sourcetuicoolutm_mediumreferral加密算法是密码技术的核心以上这些加密算法是常用的加密算法而这些算法有些已经遭到破译有些安全度不高有些强度不明有些待进—步分析有些需要深入研究而神秘的加密算法世界又会有新的成员加入期待更安全的算法诞生。
返回列表