【发布时间】:2014-07-03 21:48:36
【问题描述】:
我正在尝试使用 OpenSSL API 以 PEM 格式签署 CSR 文件。
我不能使用X509_sign() 方法,因为我需要使用第三方 API 对请求进行签名。此 API 要求我的应用程序发送需要签名的数据,它会返回给我一个签名。
我需要发送char* 以向第 3 方 API 签名,但我不明白签名过程是如何工作的:
-
我是否需要仅使用来自 CSR 的数据来构造这个
char*,例如公钥的主题、指数和模数:Char* = "DN=test,O=something...123456(this is the exponent)a2:43:65(this is the modulus)... -
或者我是否需要使用在 OpenSSL 中使用
-text命令时出现的所有元素来构建缓冲区:Certificate: Data: Subject: dn=test, O=something Public key info: Exponent: 123456 Modulus: A2:43:65 ....
总结一下:CA 在执行 X509 证书的签名时实际使用了请求的哪些元素,应该以什么格式呈现这些数据?
【问题讨论】:
-
你需要查看第三方API的文档,看看它期望的输入格式。也许它需要一些标准格式,也许不是。通过您提供的信息,我们可以告诉您该字符串中必须存在哪些信息,但不能告诉您需要如何格式化。