java - 如何使用java中的数字签名对文档进行电子签名

标签 java security encryption digital-signature digital-certificate

我可以使用数字签名对所有文件进行签名吗?或者是否存在我无法签名的文件类型?

我可以获得证书的公钥,但如何用它签署 .iso 或 .zip 文件?

最佳答案

答案取决于您希望登录的格式。PKCS#7/CMS/CAdES 签名是一种二进制格式,可让您签署任何数据并进行包装签名和分离签名。 XMLDSIG/XAdES(XML 签名)也可用于相同目的。还存在特定于格式的签名机制(例如用于签名 Office 文档、PDF 文档等)。

要进行签名,您必须拥有带有相应私钥的证书。它是启用签名的私钥。

在 Java 中,您可以使用 BouncyCastle 进行签名或我们的SecureBlackbox (Java 版)。 BouncyCaSTLe 支持 PKCS7/CMS 签名,我们的 SecureBlackbox 支持我上面提到的所有签名格式和机制。

关于java - 如何使用java中的数字签名对文档进行电子签名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9513469/

相关文章:

java - 当前正在使用 eclipse,无法退出 Debug模式

java - 3D:如何渲染/创建地形

java - Android源码变更签名

java - 如何生成和访问 JWT key

java - 加密和解密字符串

java - 在进行批量更新时,PostUpdate Hook 不起作用

java - 在工具栏中找不到 textView id

javascript - 在本地存储中存储 session key

python - 加密程序中索引的逻辑错误

python - 如何为WhatsApp .crypt12格式生成页眉和页脚?