我想将 SHA-256 哈希映射到 bn_t 中的元素。我正在使用以下代码生成字符串的哈希值。
static int calc_and_compare_hash(const char *str, const unsigned char *expected)
{
static unsigned char hash[SHA256_DIGEST_LENGTH];
sha256_context_t sha256;
sha256_init(&sha256);
sha256_update(&sha256, (uint8_t*)str, strlen(str));
sha256_final(&sha256,hash);
return (memcmp(expected, hash, SHA256_DIGEST_LENGTH) == 0);
}
//
static void test_hashes_sha256_hash_sequence_01(void)
{
static const char *teststring = "Testing The Hash";
printf("output of hash %d\n", calc_and_compare_hash(teststring, h01));
}
下一步是将此哈希映射到 bn_t 元素,并将其与椭圆曲线生成器相乘,以使用以下方法在曲线上获得一个新点
ec_mul_gen(q, d);
如果有人可以帮我解决这个问题,我将不胜感激?