Java/Scala有一个很好的GnuPG加密库吗?

Jam*_*ade 39 java jvm scala gnupg

我希望能够使用Java应用程序中的GnuPG加密磁盘上的文件和/或内存中的数据.如果可能,我想避免必须向GPG命令行工具发出系统调用.

是否有推荐的库,或者您是否可以推荐使用Java(或Scala)进行GPG加密的最佳方法?

我正在开发并打算在Linux环境中运行该应用程序,尽管首选跨平台解决方案.

Von*_*onC 25

您可以尝试调用BouncyCastle.org的JAVA API .

文件提到:

Bouncy Castle Crypto包是加密算法的Java实现.

你有一个openpgp ByteArrayHandler的例子.

但是,BouncyCastle加密和GnuGP加密之间可能存在一些不兼容性,因为BouncyCastle不使用GnuPG,而是在Java中实现OpenPGP(RFC2440).

  • 现在有了这个工作.我建议特别查看org.bouncycastle.openpgp.examples.KeyBasedFileProcessor中的示例代码.棘手的部分包括在密钥环集合中找到所需的公钥,并确定标准JDK中提供的JCE实现是残缺的,并且您需要明确下载并安装"Java Cryptography Extension(JCE)Unlimited Strength Jurisdiction Policy Files来自Sun网站的6". (8认同)