openssl 1.1版本中用什么接口代替X509_get_notBefore
时间: 2024-02-28 17:53:21 浏览: 22
在 OpenSSL 1.1 版本中,可以使用函数 X509_get0_notBefore() 来代替 X509_get_notBefore()。该函数的定义如下:
```
const ASN1_TIME * X509_get0_notBefore(const X509 *x);
```
它返回一个指向 X509 证书有效期开始时间的 ASN1_TIME 结构体的指针。需要注意的是,函数名中的“0”表示该函数返回的 ASN1_TIME 结构体指针指向 X509 证书内部数据结构中的字段,而不是复制一份数据。因此,如果要修改 ASN1_TIME 结构体中的数据,需要使用其他的 API 函数进行操作。
相关问题
openssl 1.1版本中用什么接口代替SSLeay_version
在 OpenSSL 1.1 版本中,可以使用函数 OpenSSL_version() 来代替 SSLeay_version() 接口。OpenSSL_version() 函数返回的是一个指向常量字符串的指针,该字符串包含有关 OpenSSL 版本和构建信息的详细描述。使用示例如下:
```
#include <openssl/opensslv.h>
#include <openssl/crypto.h>
#include <stdio.h>
int main() {
printf("OpenSSL Version: %s\n", OpenSSL_version(OPENSSL_VERSION));
printf("OpenSSL Build Info: %s\n", OpenSSL_version(OPENSSL_BUILT_ON));
printf("OpenSSL Platform Info: %s\n", OpenSSL_version(OPENSSL_PLATFORM));
return 0;
}
```
其中,OPENSSL_VERSION、OPENSSL_BUILT_ON 和 OPENSSL_PLATFORM 是 OpenSSL_version() 函数的参数,分别用于获取 OpenSSL 版本号、构建信息和平台信息。
openssl中not_before是什么意思
在 OpenSSL 中,`not_before` 是一个 X.509 证书的一个字段。它指定了证书的有效起始日期,即该证书在此日期之前是无效的。
当使用 OpenSSL 生成一个自签名的证书时,可以使用 `-startdate` 选项来设置 `not_before` 字段的值。例如:
```
openssl req -x509 -newkey rsa:2048 -keyout key.pem -out cert.pem -days 365 -subj "/CN=mycert" -startdate 20220101000000Z
```
这将生成一个有效期为一年的自签名证书,其 `not_before` 值为 2022 年 1 月 1 日 00:00:00 UTC。