常用的加密算法

作者: 聪明的奇瑞 | 来源:发表于2017-12-25 13:50 被阅读140次

    概述

    • 加密算法分为单向加密双向加密,明文数据通过加密后传输,以确保传输和存储安全
    • 单向加密包括 MD5、SHA、BCrypt 加密算法等,它是不可逆的,也就是无法将加密后的数据恢复成原始数据,除非采用碰撞等方式,一般账户密码的存储是采用单向加密方式
    • 双向加密是可逆的,存在密文的密钥,持有密文的一方可以根据密钥解密得到的原始明文,一般用于发送方和接收方都能通过密钥获取明文信息,双向加密包括对称加密和非对称加密。对称加密包括 DES、AES 加密,非对称加密包括 RSA、ECC 加密

    算法介绍

    MD5 算法

    • MD5 为计算机安全领域广泛使用的一种散列函数,用以提供消息完整性的保护,是一种消息摘要算法,它是不可逆的
    • MD5 广泛用于软件的密码认证和钥匙识别上

    SHA-1、SHA-2 算法

    • SHA-1 是和 MD5 一样流行的消息摘要算法,SHA 加密算法模仿 MD4 加密算法,它比 MD5 安全性更强
    • SHA-2 是 SHA-1 的继承者,SHA-1 是 160 位的哈希值,SHA-2 是组合值,有不同的位数,最受欢迎的是 256 位

    AES 算法

    • AES 加密算法是密码学中高级加密标准,该加密算法采用对称分组密码体制,密钥长度最少支持为 128、192、256,分组长度为 128 位,算法应易于硬件和软件实现
    • 这种加密算法是美国联邦政府采用的区块加密标准,用来替代 DES

    DES 算法

    • DES 加密算法是一种分组算法,以 64 位为分组对数据加密,它的密钥长度是 56 位,加密解密采用同一算法。
    • DES 加密是对密钥进行保密,而公开算法,这样只有拥有密钥的人才能解读数据,因此破解 DES 加密算法实际上就是搜索密钥的编码
    • 随着计算机的发展,DES 的安全性相对较弱

    RSA 算法

    • RSA 加密算法是目前最有影响的公钥加密算法,并被普遍认为是目前最优秀的公钥方案之一
    • RSA 是第一个能同时用于加密和数字签名的算法,能抵制目前为止已知的所有密码攻击,被 ISO 推荐为公钥加密标准

    Base64 算法

    • Base64 加密算法是最常见的用于传递 8bit 字节码的编码方式之一
    • 计算机任何数据都是按 ascii 码存储的,而 ascii 码的 128~256 之间的值是不可见字符,由于不同设备对字符处理方式有不同,可能会导致错误,不利于传输,所以把数据作为一个 Base64 编码,统统变成可见字符,出错可能性就降低了
    • Base64 是取 6 个比特为一组,计算它的 ascii 值,得到一个可见字符,在解码时按 6 个比特进行解码并读取,如 01010101101 等比特流,取 010110 计算它的 ascii 码,转化为可见字符,因此 Base64 还具备了数据压缩能力

    Bcrypt 算法

    • MD5 之所以能被轻易暴力破解的原因在于它速度“太快”,而 Bcrypt 能减缓加密过程,加密时间比 MD5 慢,也因此比 MD5 安全,因为通过暴力破解方式需要非常长的时间

    相关文章

      网友评论

        本文标题:常用的加密算法

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