openssl / libressl ocsp响应程序缺少对过期/已撤销证书的响应

时间:2018-09-27 12:54:27

标签: openssl ocsp libressl

由于某种原因,OpenSSL OCSP响应程序似乎未针对过期或吊销的证书提供任何响应。对于有效的证书,一切都很好。

在LibreSSL 2.2.7(在MacOS上)上对此进行了测试。作为参考,我还在非常老的OpenSSL 0.9.8f(相同的问题)上对此进行了测试。

设置

文件index.txt(字段之间用制表符分隔):

V   20991231235959Z     32F31   unknown /CN=valid01
V   20991231235959Z     32F32   unknown /CN=valid02
V   20991231235959Z     32F33   unknown /CN=valid03
E   20171231235959Z     32F34   unknown /CN=expired01
E   20171231235959Z     32F35   unknown /CN=expired02
E   20171231235959Z     32F36   unknown /CN=expired03
R   20171231235959Z 20160631235959Z 32F37   unknown /CN=revoked01
R   20171231235959Z 20160631235959Z 32F38   unknown /CN=revoked02
R   20171231235959Z 20160631235959Z 32F39   unknown /CN=revoked03
V   20991231235959Z     32F3A   unknown /CN=valid04

文件index.txt.attr:

unique_subject = yes

文件ca.pem:

(Please create your own, self-signed ca with key)

使用启动OCSP响应程序

openssl ocsp -index index.txt -port 8084 -rkey ca.pem -rsigner ca.pem -CA ca.pem -text -resp_no_certs

测试

查询有效证书(这里没有问题)

$ openssl ocsp -issuer ca.pem -serial 0x32f31 -url http://localhost:8084 -noverify
0x32f31: good
    This Update: Sep 27 12:46:06 2018 GMT

查询已过期或已撤销的证书(缺少响应):

$ openssl ocsp -issuer ca.pem -serial 0x32f36 -url http://localhost:8084 -noverify
0x32f36: ERROR: No Status found.

出了什么问题?

1 个答案:

答案 0 :(得分:0)

发现了问题。 OpenSSL似乎要求索引文件中的时间戳采用两位数年份格式,而不是四位数。 2000年有问题吗?显然不是。