ocsp/responder

库实现了在线证书状态协议(OCSP)响应器

0.9.7 2021-09-26 21:14 UTC

This package is auto-updated.

Last update: 2024-08-29 05:37:29 UTC


README

本项目是RFC 6960的PHP实现,用于响应客户端的X509证书检查。提供了示例接口,以展示如何根据JSON文件存储、OpenSSL证书数据库文件和MySQL表来基于证书状态。

用例

此响应器的目的是验证您为信任您的客户端创建的证书。例如,您可能有一个允许用户使用X509签名Xml文档的应用程序,从而使该文档的消费者能够验证Xml文档中包含的数据未被修改。尽管Xml文档由您的应用程序为您的客户端签名,但签名的Xml文档的消费者如何知道所使用的证书是有效的?消费者可以通过向您请求OCSP响应来确认用于签名文档的证书是有效的且未被吊销,您是该用于签名Xml文档的应用程序的作者。

非用例

此响应器的目标用途不是让浏览器识别您生成的证书。浏览器包含来自知名根证书颁发机构(如Digicert、Let's Encrypt等)的一组证书。尽管响应器会在被浏览器请求时生成有效响应,除非您的CA证书由知名根证书颁发机构或认可的中间机构签名。也就是说,如果您的证书链不以知名根证书颁发机构结束,浏览器将不会验证您创建和签名的证书。

要求

  • 适用于运行PHP脚本的任何HTTP服务器。
  • PHP版本7.3或更高

源代码

本项目基于https://github.com/xperseguers/ocsp-responder,该库又基于在http://pki.cesnet.cz/sw/ocsp上可用的libpkix-asn1-php_1.0-6_all.deb。与这些返回预先准备好的响应的实现不同(响应从何而来?),它将基于某种类型的证书存储中的信息生成适当的响应。

依赖

OCSP请求和响应采用DER编码的ASN.1令牌形式。用于解析和写入ASN.1的代码位于此OCSP请求仓库中。

使用

有关如何设置测试CA和使用此响应器代码的详细信息,请参阅wiki

安装

使用composer命令获取最新稳定版本,创建文件夹并打开命令窗口,然后输入

composer require ocsp/responder

要在尖端工作,创建文件夹并打开命令窗口,然后首先创建一个名为composer.json的文件,内容如下

{
  "minimum-stabilty": "dev"
}

然后输入以下命令

composer require ocsp/responder=dev-main