0

我正在开发 mdm 服务器,但其中一个注册步骤有问题。问题是 scep 步骤。我实现了一个 scep 服务器,它处理 Device CACert 请求并以 der 格式发送我们的服务器证书。之后,设备发送加密和签名的 csr。
但我无法验证消息的签名。我认为设备会创建一个自签名证书并用它签署消息。我们认为这是因为签名证书的通用名称正在改变每个“PKIOOperation”请求。但出于安全考虑,我们必须验证此签名。

例如,在每 3 个注册请求中,csr 签名证书更改。它们的通用名称是:

 CN=6E4F65AD-1E64-4E4D-A96E-2039EB140041

 CN=2E33C2CC-14B8-47AC-938B-DCC7F8DA8715

 CN=6817ED48-AB79-4FF0-A1A9-42C2AC303672

注意:注册设备的其他步骤使用适当的证书签署消息,我可以验证它们。只有 scep PKIOperation 请求是我的问题。是否有要设置的配置文件标志或解决此问题的方法?

4

1 回答 1

0

我可能在某些细节上是错误的,因为我大约在两年前接触过这个。

但是,我记得它是协议的一部分

如果您查看 SCEP 草案:https ://datatracker.ietf.org/doc/html/draft-nourse-scep-23#page-30 ,您将看到:

When building a pkiMessage, clients MUST have a certificate to sign
the PKCS#7 [RFC2315] signed-data (because PKCS#7 [RFC2315] requires
it).  Clients MUST either use an existing certificate, or create a
self-signed certificate (see Section 2.3).
 If the requester does not have an appropriate existing
 certificate, then a locally generated self-signed certificate
 MUST be used instead.  The self-signed certificate MUST use the
 same subject name as in the PKCS#10 request.

但是,我的印象是 iOS 设备使用设备内置的证书/私钥。此证书是使用 Apple 证书签名的。实际上,我记得它们的格式与您展示的 CN 完全相同。

因此,一般来说,如果设备使用自签名证书与 SCEP 服务器 (PKIOperation) 进行首次通信并稍后使用您的 CA 颁发的证书,则可以。

于 2013-07-17T18:48:09.657 回答