Мне просто интересно, все ли хеш-значения SHA256 рассчитываются одинаково. Например, если я передам входные данные в эту библиотеку, как показано ниже, как я могу воспроизвести этот же вывод с помощью другого хэш-алгоритма 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