是否所有相同类型的哈希码算法都以相同的方式计算?

时间:2012-02-11 18:30:12

标签: hash hashcode sha256

我只是想知道是否所有SHA256哈希都以相同的方式计算。就像我将输入提供给这个lib一样,如何用另一个SHA256哈希算法重现相同的输出?

lib1_gf_InitializeHashInput();
lib1_gf_AddIntegerToHashInput(a);
lib1_gf_AddIntegerToHashInput(b);
lib1_gf_AddIntegerToHashInput(c);
lib1_gf_AddIntegerToHashInput(d);
lib1_gf_AddIntegerToHashInput(e);
lib1_gf_AddIntegerToHashInput(f);
lib1_gf_AddIntegerToHashInput(g);
lib1_gf_AddIntegerToHashInput(h);
lib1_gf_AddIntegerToHashInput(i);
string HASHCODE = lib1_gf_GenerateSHA256HashCode();

void lib1_gf_AddIntegerToHashInput (int lp_integer) {
    lib1_gf_AddByteToHashInput(lp_integer);
    lib1_gf_AddByteToHashInput(lp_integer >> 8);
    lib1_gf_AddByteToHashInput(lp_integer >> 16);
    lib1_gf_AddByteToHashInput(lp_integer >> 24);
}

void lib1_gf_AddByteToHashInput (byte lp_byte) {
    HashInputData[HashInputSize] = lp_byte;
    HashInputSize += 1;
}

这是lib链接(是的,它是sha256以及md5):http://www.sc2mapster.com/assets/md5-hash/

直接下载链接:http://www.sc2mapster.com/media/files/541/355/Hash_lib.SC2Lib

2 个答案:

答案 0 :(得分:1)

简短的回答是肯定的 - 除了太短,谢谢你。 SHA256是特定算法的规范,无论您使用哪种实现,它都应始终为同一输入提供相同的结果。

答案 1 :(得分:0)

SHA256算法就是其中之一。

所以,是的,SHA256哈希的计算方式总是一样的。

请注意,SHA256(和其他SHA)哈希生成算法的源代码为here