如何获取现有的 X509Certificate,制作精确副本并更改内容以进行测试?我想更改的内容是使签名无效,更改主题字段的某些部分,更改证书策略扩展字段,更改基本约束扩展字段,将其设置为过期等。
是否有允许我执行此操作的现有功能(Java(?
我不确定你真的能做到这一点......此类证书的部分好处是它们不会被篡改和修改。
您不能只创建自己的测试吗?尝试修改现有版本可能会更容易。
我可能在这一点上错了,但无论如何我都不知道这样做。
由证书颁发机构进行数字签名(或自签名(。对内容的任何更改都将使签名无效,因此,如果您复制现有证书以更改某些属性,则需要新的签名
如果您拥有私钥,则可以使用相同的公钥向 CA 请求新证书,但字段不同。您也可以使用自己的 CA 对其进行签名,或者如果它是自签名的 CA,则使用私钥对其进行签名。
出于测试目的,您可以使用 bouncycastle 构建自己的证书。例如,您可以在 Java 中使用自签名 X509 证书的代码和充气城堡