OpenSSL的BN_bn2dec输出错误了吗?

时间:2017-02-13 13:16:36

标签: openssl

我正在尝试在OpenSSL中使用BIGNUM工具。我写了以下测试程序:

BIGNUM someSSLInt;

BN_init(&someSSLInt);

BN_set_word(&someSSLInt, 10);

for (unsigned i=0; i<100000; i++) {
    BN_mul_word(&someSSLInt, 100)
}

char *sslstr=BN_bn2dec(&someSSLInt);
printf("%s",sslstr);

不幸的是,我得到1只有“仅”约3000的零,而我期望1为200001零。如果我将相同的代码与其他库(例如GMP或Tommath)进行比较,我会得到预期的输出。我是以错误的方式使用OpenSSL吗?

我在macOS上使用的是1.0.2g版本。

1 个答案:

答案 0 :(得分:0)

事实证明问题不在OpenSSL中,而是在我的输出窗口中,意外地在没有标记的情况下截断字符串。