gpt4 book ai didi

char * 到 ASN1_INTEGER

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

对于 PKI 证书生成和设置序列号,我使用了RAND_bytes 获取 20 个字节的随机序列号,现在我希望将此 char * 设置为证书序列号,似乎是 ASN1_INTEGER *

类型

尝试过 ASN1_TYPE_set_octetstring(ASN1_TYPE *, unsigned char *, len) 但由于它采用 ASN1_TYPE * 而不是 ASN1_INTEGER* 它导致崩溃

如何在 unsigned char * 和 ASN1_INTEGER 之间转换?

谢谢,

最佳答案

我很确定这就是您要查找的内容,但我可能是错的。如果您想要一个 20 字节的 ASN1_INTEGER,一种方法是首先通过 BIGNUM 库发送它:

unsigned char data[20] = {0};
RAND_bytes(data, sizeof(data));
data[0] &= 0x7F;

// build big number from our bytes
BIGNUM* bn = BN_new();
BN_bin2bn(data, sizeof(data), bn);

// build the ASN1_INTEGER from our BIGNUM
ASN1_INTEGER* asnInt = ASN1_INTEGER_new();
BN_to_ASN1_INTEGER(bn, asnInt);

// TODO: use your ASN1_INTEGER

// cleanup
ASN1_INTEGER_free(asnInt);
BN_free(bn);

关于char * 到 ASN1_INTEGER,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23262771/

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