java使用hutool rsa公钥加密+前端使用RSA私钥算法解密
时间: 2024-11-29 19:17:28 浏览: 5
Android使用RSA加密和解密的示例代码
Hutool是一个流行的Java工具包,它提供了一个方便易用的RSA加密模块。如果你想要使用Hutool对数据进行公钥加密并在前端通过私钥解密,可以按照以下步骤操作:
1. **生成RSA密钥对**:
- 使用Hutool的`RsaUtil`类,首先需要创建一个`HutoolRsa`实例,然后分别生成公钥(PublicKey)和私钥(PrivateKey):
```java
RsaUtil rsa = new HutoolRsa();
KeyPair keyPair = rsa.generateKeyPair(2048); // 生成2048位密钥,默认为AES
PrivateKey privateKey = keyPair.getPrivate(); // 私钥
PublicKey publicKey = keyPair.getPublic(); // 公钥
```
2. **加密数据**:
- 对于客户端发送的数据,使用公钥加密:
```java
String dataToEncrypt = "待加密内容";
byte[] encryptedBytes = rsa.encrypt(dataToEncode.getBytes(), publicKey);
```
3. **前端接收并解密**:
- 前端接收到服务器返回的加密数据后,使用JavaScript的RSA库(如node-rsa或crypto-js)加载私钥来解密:
```javascript
const CryptoJS = require('crypto-js');
const decryptedData = CryptoJS.RSA.decrypt(encryptedBytes, privateKey.toString(CryptoJS.enc.Utf8));
let decryptedText = decryptedData.toString(CryptoJS.enc.Utf8);
```
阅读全文