gpt4 book ai didi

c - 将 BigNum 与普通整数相乘

转载 作者:太空宇宙 更新时间:2023-11-04 03:13:05 25 4
gpt4 key购买 nike

我有以下功能:

BIGNUM * multiplyWithInt(BIGNUM *bn, int val){
//Logic Here
}

我尝试做的是计算乘法 bn*val。根据文档(从命令 man bn 给出)乘法如下:

int BN_mul(BIGNUM *r, BIGNUM *a, BIGNUM *b, BN_CTX *ctx);

如您所见,我需要以某种方式将整数 val 转换为 openssl 的 BIGNUM。我该怎么做?一种方法是将其转换为 unsigned char * 字节数组并使用 BN_bin2bn 函数,但这会给我所需的功能吗?

最佳答案

您要查找的函数是BN_set_word。这会将一个 unsigned long 值分配给一个 BIGNUM

BIGNUM *bn_val = BN_new();
BN_set_word(bn_val , val);

然后您可以将 bn_valbn 传递给 BN_mul

关于c - 将 BigNum 与普通整数相乘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54506788/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com