Java 使用CA证书我自己的代码

Java 使用CA证书我自己的代码,java,php,c++,security,sign,Java,Php,C++,Security,Sign,我已经搜索了好几个主题,但我没有真正找到我需要的。问题是:我想用自己编写的程序(桌面或web)中的数字证书对文件进行签名。那么我想知道: 如果我能用CA证书做到这一点。 哪个CA可以向我颁发我可以在我的程序中使用的证书。我指的是CA证书文件,其中包含访问算法、密钥以及向服务器发送验证请求的方法?一种API 这种证书存在吗?我能免费找到它吗 只要我正确理解了您的问题,请找到以下我的答案: 1-您可以通过生成密钥对来生成get-You数字证书,然后通过任何CA(您自己的CA或任何受公众信任的CA)对

我已经搜索了好几个主题,但我没有真正找到我需要的。问题是:我想用自己编写的程序(桌面或web)中的数字证书对文件进行签名。那么我想知道:

  • 如果我能用CA证书做到这一点。
  • 哪个CA可以向我颁发我可以在我的程序中使用的证书。我指的是CA证书文件,其中包含访问算法、密钥以及向服务器发送验证请求的方法?一种API
  • 这种证书存在吗?我能免费找到它吗

  • 只要我正确理解了您的问题,请找到以下我的答案:

    1-您可以通过生成密钥对来生成get-You数字证书,然后通过任何CA(您自己的CA或任何受公众信任的CA)对您的公钥进行签名

    2-您可以向CA请求获取数字证书。猜测您想要的是一个公共信任的证书,而不是可以使用范围广泛的CA。我建议您检查项目,他们会发布免费证书。 使用数字证书是一个实现问题。基本上,你需要知道你想用它实现什么(比如机密性、身份验证、完整性……)。通常,您希望实现SSL以实现这些特性中的任何一个。 对于签名文档,您需要使用与用于获取数字证书的公钥关联的私钥进行加密


    3-正如我在第二个答案中所说的,是的,公开可信的数字证书有免费选项

    好的。谢谢,我要检查一下我是否满意,也许还有些问题。1)假设我安装了SSL证书,让我们加密SSL证书。我可以用它来签署文件吗?我想知道它是否符合这个问题答案的规范:,关于KeyUsage,CodeSigning和extendedKeyUsage 2)如果不符合,哪个免费CA可以提供这种证书?