tonglin0325的个人主页

常用哈希、加密算法

下面列举了一些常用的加密算法

加密算法 类别 介绍 安全性
MD5 hash函数 MD5一种被广泛使用的密码散列函数,可以产生出一个128位(16个字节)的散列值(hash value)。MD5是输入不定长度信息,输出固定长度128-bits的算法。 不安全
base64 编码 Base64就是一种基于64个可打印字符来表示二进制数据的方法。Base64会增加原文的长度,通常是原始长度的 4/3 -
SHA-1 hash函数 Secure Hash Algorithm 1(SHA-1)安全散列算法1是一种密码散列函数。SHA-1结果的长度:160 位(20 字节) 不安全
SHA-256 hash函数 SHA-256是一种加密哈希函数,可生成固定大小的256 位(32 字节)哈希值,其广泛用于数据完整性校验 安全
SHA-384/512 hash函数 SHA-384是SHA系列中的另一种算法,它产生的哈希值为96个字符长度的十六进制数字。 与SHA256相比,SHA384具有更强的安全性。 由于其输出长度更长,因此在实际应用中适用于更高的安全需求 安全
Hmac 消息认证码 HMAC(Hash-based Message Authentication Code)是一种基于哈希函数的消息认证码,用于验证消息的完整性和真实性。它结合了一个加密密钥和哈希函数,为消息提供更高的安全性。它要求通信双方共享密钥、约定算法、对报文进行Hash运算,形成固定长度的认证码。 Hmac算法可以用来作加密、数字签名、报文验证等。 HMAC 的安全性依赖于所使用的哈希函数的强度
DES 对称加密算法 DES全称为Data Encryption Standard,即数据加密标准,是一种使用密钥加密的块算法。DES算法的入口参数有三个:Key、Data、Mode。其中Key为DES算法的秘钥,长度8个字节(64位),其中有56位用于实际加密,还有8位用于奇偶校验;Data为8个字节64位,是要被加密或被解密的数据;Mode为DES的工作方式,有两种:加密或解密。 不安全
3DES 对称加密算法 3DES(即Triple DES)是DES向AES过渡的加密算法,它使用3条56位的密钥对数据进行三次加密。是DES的一个更安全的变形。它以DES为基本模块,通过组合分组方法设计出分组加密算法。比起最初的DES,3DES更为安全。 较安全
AES 对称加密算法 密码学中的高级加密标准(Advanced Encryption Standard,AES),又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的DES(Data Encryption Standard)。支持128位,192位和256位的秘钥长度,是目前最流行的对称加密算法。 安全
RSA 非对称加密算法 RSA算法是一种非对称加密算法,与对称加密算法不同的是,RSA算法有两个不同的密钥,一个是公钥,一个是私钥。RSA允许选择公钥的大小。512位的密钥被视为不安全的;768位的密钥不用担心受到除了国家安全管理(NSA)外的其他事物的危害。RSA 加密的密文长度等于密钥的长度(以字节为单位)。常见密钥长度包括 1024 位、2048 位、3072 位等。场景:在需要保护数据机密性的场景中,RSA可以用于对敏感数据进行加密。使用公钥加密,私钥解密。适合对小数据量的内容加密(如密钥、凭据等),但不适合大数据量加密(因为效率较低)。 安全
DSA 非对称加密算法 DSA(Digital Signature Algorithm)是一种用于生成和验证数字签名的算法,主要用于确保数据的完整性和发送者身份的真实性。DSA 专用于生成和验证数字签名,不能用于加密数据。安全性依赖于密钥长度以及散列函数的选择。 安全
ECC 非对称加密算法 ECC(Elliptic Curve Cryptography)是一种基于椭圆曲线数学的公钥加密算法。它是一种非对称加密技术,因其提供高安全性和较小的密钥长度,已成为现代加密的主流技术之一。ECC 广泛应用于数字签名、密钥交换和加密等领域。相较于 RSA 和 DSA,ECC 在提供相同安全性的情况下,使用更短的密钥,计算量更小。ECC 适合资源有限的设备,如嵌入式系统、物联网设备和移动设备。 安全
Blowfish 对称加密算法 Blowfish 是一种对称加密算法,由 Bruce Schneier 在 1993 年设计。它被广泛使用于加密数据的保护,特别是应用于资源受限的环境(如嵌入式系统)。Blowfish 是一种分组加密算法,因其高效性和灵活性,成为了当时替代传统算法(如 DES)的重要选择。 安全
RC4 对称加密算法 RC4(Rivest Cipher 4)是一种对称流加密算法,由 Ron Rivest 于 1987 年设计。这种算法因其简单、高效的特性,曾被广泛应用于通信加密、文件加密以及各种加密协议中(如 SSL/TLS 和 WEP)。然而,由于其已被证明存在严重的安全漏洞,RC4 在许多场景下已不再推荐使用。 不安全