gpt4 book ai didi

c - 使用 OpenSSL 以编程方式在 X509 证书中输入数据

转载 作者:行者123 更新时间:2023-12-02 20:17:38 25 4
gpt4 key购买 nike

我正在尝试创建 ECDSA 证书,但我想以编程方式生成它。我正在使用 openssl 和 C 编程。

当我从命令行生成证书时,系统会要求我回答多个问题以在证书中使用。我想知道如何定义这个问题,以编程方式输入这些数据。

这是我在网上找到的,但我不明白如何插入更多信息,这确实有效:

X509 *x; 
x=X509_new();
X509_NAME *name = X509_get_subject_name(x);
X509_set_version(x, 2);
ASN1_INTEGER_set(X509_get_serialNumber(x), 3);
X509_gmtime_adj(X509_get_notBefore(x), 0);
X509_gmtime_adj(X509_get_notAfter(x), (long) 60 * 60 * 24 * 365);
X509_set_pubkey(x, pk);
X509_NAME_add_entry_by_txt(name, "C", MBSTRING_ASC, (const unsigned char*) "PT", -1, -1, 0);

X509_NAME_add_entry_by_txt 函数我知道这是国家/地区的答案,但是这个“C”是什么意思?这个函数是怎么组成的呢?我可以在“C”位置和“PT”位置放置任何我想要的东西吗?

最佳答案

C 是表示国家/地区的标准方式,PT 是葡萄牙的正确选择(有关其他国家/地区选项,请参阅 this list)。

您可以使用 X509_NAME_add_entry_by_txt 函数使用正确的前缀来设置可分辨名称中的其他值:

  • C = 国家/地区
  • ST = 状态
  • L = 地点
  • O = 组织
  • OU = 组织部门
  • CN = 常用名

只有国家/地区字段有固定的选择范围。

另请参阅手册页上给出的示例:http://www.openssl.org/docs/crypto/X509_NAME_add_entry_by_txt.html#EXAMPLES

关于c - 使用 OpenSSL 以编程方式在 X509 证书中输入数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15329073/

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