同MD5类似的Hash算法有那些?

MD5类似的Hash算法有以下几种:

SHA-1 (Secure Hash Algorithm 1):是一种不可逆的哈希函数,与MD5一样广泛使用于数据完整性验证、数字签名等方面。但是由于其安全性已经被攻击,因此现在已经不再建议使用SHA-1。

SHA-256 (Secure Hash Algorithm 256):是一种更加安全的哈希函数标准,输出长度为256位,具备较高的安全性和性能表现,常用于密码学安全、数字签名等领域。

SHA-512 (Secure Hash Algorithm 512):是较新的一种哈希函数标准,输出长度为512位,比SHA-256更加安全,也更复杂,常用于特别需要高安全性保护的应用环境中。

RIPEMD (RACE Integrity Primitives Evaluation Message Digest):是欧洲联盟委员会设计的一个哈希函数家族,包括RIPEMD-160等多个版本,可以用来代替MD5进行数据完整性验证和数字签名等应用场景中。

同时,以上哈希函数还可以通过结合HMAC(Hash-based Message Authentication Code)算法的应用来提供更高的安全级别和额外的身份验证,以确保消息的真实性和完整性。推荐HMAC with SHA-256算法。算法计算结果是256位,32字节。

备注:MD5目前是不安全的算法,容易受到碰撞攻击,不再推荐。

代码示例:

import hmac
import hashlib

# 定义密钥和输入消息
key = bytes.fromhex('4e885aaf6c9f3bf8dd3215b6d9731cbc')
msg = b'This is a message to be verified.'

# 使用HMAC-SHA256算法计算哈希值
h = hmac.new(key, msg, hashlib.sha256)

# 打印计算出的哈希值(以十六进制字符串形式)
print(h.hexdigest()) # 输出: 07481187ed81f54ad930bd64098f30fe7a424669c96f3150fe619019309c6ef6



作者简介:https://shimo.im/docs/rp3OVwxle2fJn7Am/
上海徐汇
2023年6月6日


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值