由于某种原因,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.
出了什么问题?
答案 0 :(得分:0)
发现了问题。 OpenSSL似乎要求索引文件中的时间戳采用两位数年份格式,而不是四位数。 2000年有问题吗?显然不是。