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,我必须按字符分解散列吗?我想那会行得通。
发布于 2012-10-08 03:42:01
mpz_set_str第二个参数必须是字符串。
传递给SHA1函数的hash参数可能不是字符串。在将其传递给mpz_set_str函数之前,将其转换为字符串格式。
https://stackoverflow.com/questions/12772102
复制相似问题