【发布时间】:2018-02-04 18:10:00
【问题描述】:
假设我使用了一个函数,例如:
int someHash(string someValue)
{
return crc32(someValue) + 10 - 5 * 20;
}
为了重现相同的哈希值,推断哈希是如何被操纵的有多容易?
【问题讨论】:
-
如果原始字符串大于 4 个字节,crc32 它不能被逆向工程——只能暴力破解——见stackoverflow.com/questions/1514040/reversing-crc32
-
我认为问题在于哈希是否涉及对哈希值的自定义操作。
-
@ramailosathi 是正确的。假设原始字符串/数据是已知的,但不应更改。数据经过哈希处理,哈希值与数据一起保存。
-
一般来说是不可能的。假设改变是计算low32(sha256(0x76123bed ^ crc32(x)))。你怎么想出来的?如果对所做的更改没有一些限制,这是行不通的。
标签: security cryptography