HttpClientCertificate return 是否有任何 "signed" 数据?
Does the HttpClientCertificate return any "signed" data?
我正在研究一个涉及基于 Web 的智能卡身份验证的研究故事。我们已经设法建立了一个环境,要求在身份验证过程中输入智能卡 PIN,但是对于生成的 HttpClientCertificate
是否包含代表签名的任何信息(即一些用 [= 加密的任意数据)存在一些分歧18=] 智能卡上的键)。
有没有人有处理过这样的签名的经验?我很难找到描述任何类型的基于 Web 的智能 Card/PIN 身份验证的示例,然后记录来自 HttpClientCertificate
的数据来验证签名。
HttpClientCertificate
,顾名思义,包含 证书(通常遵循 X.509)。因此它不包含使用智能卡上的 PIN/private 密钥加密的 "arbitrary" 数据(我假设您实际上是在尝试引用会话身份验证数据)。
证书只包含静态数据,即
- 颁发证书的 public 密钥,
- 一些元数据(例如密钥对的标识信息、public-密钥密码系统的参数、有效期、使用限制等),以及
- 静态数据的签名,由证书颁发机构颁发(如果证书颁发机构颁发证书)或使用与证书中的 public 密钥相对应的私钥创建(如果是自签名证书/CA 根证书,尽管 TLS 客户端证书不应该是这种情况)。
因此HttpClientCertificate
既不包含与证书关联的私钥,也不包含私钥签名的任何动态数据以验证 TLS 会话。
我正在研究一个涉及基于 Web 的智能卡身份验证的研究故事。我们已经设法建立了一个环境,要求在身份验证过程中输入智能卡 PIN,但是对于生成的 HttpClientCertificate
是否包含代表签名的任何信息(即一些用 [= 加密的任意数据)存在一些分歧18=] 智能卡上的键)。
有没有人有处理过这样的签名的经验?我很难找到描述任何类型的基于 Web 的智能 Card/PIN 身份验证的示例,然后记录来自 HttpClientCertificate
的数据来验证签名。
HttpClientCertificate
,顾名思义,包含 证书(通常遵循 X.509)。因此它不包含使用智能卡上的 PIN/private 密钥加密的 "arbitrary" 数据(我假设您实际上是在尝试引用会话身份验证数据)。
证书只包含静态数据,即
- 颁发证书的 public 密钥,
- 一些元数据(例如密钥对的标识信息、public-密钥密码系统的参数、有效期、使用限制等),以及
- 静态数据的签名,由证书颁发机构颁发(如果证书颁发机构颁发证书)或使用与证书中的 public 密钥相对应的私钥创建(如果是自签名证书/CA 根证书,尽管 TLS 客户端证书不应该是这种情况)。
因此HttpClientCertificate
既不包含与证书关联的私钥,也不包含私钥签名的任何动态数据以验证 TLS 会话。