TIGER加密

在线生成TIGER哈希值,支持多种数据格式加密

Hex--
Base64--
Bytes--

工具简介

TIGER是一种由Ross Anderson和Eli Biham在1995年设计的加密哈希函数。它旨在为64位平台提供高效且安全的哈希计算,其设计目标包括高速、高安全性和易于实现。TIGER生成一个192位(24字节)的哈希值,通常表示为48个十六进制数字。它还有两个变体:TIGER/128和TIGER/160,通过截断标准输出来提供不同长度的哈希值。

 

如何使用本工具

1. 命令行使用
 对字符串进行哈希
echo -n "Hello World" | tigerhash对文件进行哈希
tigerhash myfile.txt

创建TIGER哈希对象
tiger_hasher = TIGER.new()

输入数据(必须是字节类型)
message = b"Hello World"
tiger_hasher.update(message)

2.计算并获取十六进制格式的摘要
hash_digest = tiger_hasher.hexdigest()
print(hash_digest)   输出类似:87fb2...(48位十六进制数)

计算字符串的TIGER哈希
const hash = CryptoJS.TIGER("Hello World").toString();

console.log(hash); // 输出48位十六进制哈希值

 

常见问题(FAQ)

Q1: TIGER和MD5、SHA-1有什么区别?

A: TIGER设计于MD5之后、SHA-1普及之前。它与MD5(128位输出)和SHA-1(160位输出)相比,提供了更长的192位输出,旨在抵抗当时已知的密码学攻击,并在64位架构上拥有更快的速度。然而,像MD5和SHA-1一样,TIGER现在也不再被认为是抗碰撞的,不应用于安全敏感的场景。

Q2: TIGER用于密码存储吗?

A: 绝对不推荐。像TIGER这样的快速哈希函数不适合用于存储密码。它们易于被GPU和专用硬件(ASIC)暴力破解。密码存储应使用**慢哈希函数**,如**bcrypt、Argon2、scrypt或PBKDF2。

Q3: TIGER被破解了吗?

A: TIGER已经发现了理论上的碰撞攻击。虽然在实际中制造碰撞仍然需要相当大的计算努力,但存在已知的攻击方法意味着它已被认为** cryptographically broken**(密码学上被破解),不应再依赖于其抗碰撞性。

Q4: TIGER/128和TIGER/160与TIGER/192是什么关系?

A: TIGER/192是完整版本。TIGER/128和TIGER/160是通过简单地丢弃TIGER/192输出的最后64位或32位来实现的。它们提供更短的摘要,但安全性也相应降低,一般不推荐使用。

 

注意事项

1.  安全性已过时:TIGER算法目前存在已知的有效碰撞攻击方法。对于任何需要强抗碰撞性的新应用(如数字签名、证书颁发),不应再使用TIGER。应转而使用更现代、更安全的哈希函数家族,如SHA-2(SHA-256, SHA-512)或 SHA-3。

2.  非密码用途:TIGER仍然可以用于非密码学的场景,例如作为文件校验和(确保数据无损传输)或在哈希表中分布键值,前提是这些场景不担心恶意攻击者故意制造哈希碰撞。

3.  版本确认:在使用TIGER时,请注意您使用的是哪个变体(/192, /160, /128),因为不同变体的输出长度和安全性不同,且它们之间的结果不兼容。

4.  兼容性:并非所有加密库都默认支持TIGER算法。在将其集成到项目中之前,请检查您所使用的开发环境是否有可靠的实现。

评分

0 / 5

0 人评分

数据

浏览次数:2236

使用次数:2670

微信客服
mp icon
qq icon