是否可以接收证书请求( CSR )并将其转换为自签名的X509证书,而无需访问签名该证书的私钥?我想做以下工作:从客户端接收CSR,并将其直接转换为自签名的X509证书,就好像它是客户端自行签名的一样(我知道它很红,但它是针对一个项目的)。基本上,我希望将CSR复制到X509证书,而不对证书进行签名。我想要这样做,例如openssl或golang (就这个问题而言,openssl就足够了)。
发布于 2019-05-06 11:26:32
自签名证书意味着证书由自身签名.由于签名是使用私钥完成的,因此需要与证书中的公钥匹配的私钥。这意味着,如果您希望将公钥与CSR保持在一起,您还需要匹配的私钥。
发布于 2019-05-06 11:29:04
根据定义,自签名证书是使用与证书中的公钥关联的私钥来对自己进行签名的证书。证书中的公钥用于验证同一证书的签名。因此:
将其转换为自签名的X509证书,而不访问签名CSR的私钥?
是不可能的。
让客户自行生成自己签署的证书。如果您有一个CA并且可以访问CA私钥来签署CSR并颁发签名证书,那就另当别论了,但这不是您的情况。
一句话:当我听到客户和自签署证书的消息时,我闻到了一个糟糕且有缺陷的设计。即使是私人使用,我也建议使用标准CA软件来颁发集中式证书、执行验证、维护吊销等等。
https://security.stackexchange.com/questions/209586
复制相似问题