用于加密/解密的PGP java库



我需要解密使用PGP加密的文件。我需要编写一个每日调度程序,并且需要java库支持。我在网上搜索了一下,但所有与充气城堡有关的例子都很旧,现在都不起作用了。有人能给我介绍替代库吗?或者给我介绍集成castle API的最新代码示例。

如果您不想使用任何库,可以采用以下方法:

在java:中使用Runtime类

static Runtime runtime;
static {
    runtime = Runtime.getRuntime();
}
public int decrypt(String passphrase, String encFileName, String newFileName) {
    int result = 1;
    StringBuffer output = new StringBuffer();
    try {
        String st = "pgp --decrypt --overwrite remove --passphrase " + passphrase
                + " --output " + newFileName + " " + encFileName;
        Process process = runtime.exec(st);
        logger.debug(st);
        result = process.waitFor();
        BufferedReader reader = new BufferedReader(new InputStreamReader(
                process.getInputStream()));
        String line = "";
        while ((line = reader.readLine()) != null) {
            output.append(line + "n");
        }
        logger.info(output);
    } catch (IOException e) {
        logger.error("IOError during decrypt" + e);
        e.printStackTrace();
    } catch (InterruptedException e) {
        logger.error("InterruptedException during decrypt" + e);
        e.printStackTrace();
    }
    return result;
}

将上面的代码放在任何类中,并根据您的要求进行自定义。忽略日志记录及其相关代码。文件名应该是您的完整路径。例如:/xyz/abc.pgp

最新更新