У меня есть следующая функция:
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
в BIGNUM openssl.Как я могу это сделать?Один из подходов состоит в том, чтобы преобразовать его в массив байтов unsigned char *
и использовать функцию BN_bin2bn
, но даст ли это мне желаемую функциональность?