pgp加解密和生成密钥

  |  

简介

GPG, 或 GnuPG (GNU Privacy Guard) 是一个遵照 OpenPGP 协议的用于加密、数字签名以及认证的软件。它与 PGP (Pretty Good Privacy) 的区别是它是开源的,而 PGP 则是 Symantec 公司的专有软件。

使用

安装包

1
2
3
4
5
6
7
8
9
10
<dependency>
<groupId>org.bouncycastle</groupId>
<artifactId>bcpg-jdk18on</artifactId>
<version>1.77</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.11.0</version>
</dependency>

代码使用

1
2
3
4
5
6
7
8
// 生成公私钥
PgpKeyDTO generate = PgpUtil.generate("123456", "123@qq.com");

// 加密
String testMessage = PgpUtil.encrypt("test message", this.publicKey);

// 解密
String decrypt = PgpUtil.decrypt(message, this.privateKey, this.passphrase);

代码示例

参考文档

Encrypt and decrypt anything (bytes/files/streams) with PGP using bouncy castle and java

文章目录
  1. 1. 简介
  2. 2. 使用
    1. 2.1. 安装包
    2. 2.2. 代码使用
  3. 3. 参考文档