SHA1(data, length, hash);
unsigned char *labelPtr;
labelPtr = hash;
mpz_set_str (encrypted, labelPtr, 16);
gmp_printf("hashed= %Zd\n", encrypted);
encrypted
等于0?
我需要从这个哈希中获取一个整数,以便我可以执行RSA加密。我在调试时看到哈希,但似乎无法将其变为int
。它是SHA-512所以512位?
奇怪的角色出自printf("%s",hash);
atoi
也给0,我是否必须按字符分解哈希?我觉得那会有用。
答案 0 :(得分:1)
mpz_set_str
第二个参数必须是字符串。
传递给hash
函数的SHA1
参数可能不是字符串。在将其传递给mpz_set_str
函数之前将其转换为字符串格式。