后端java加密与前端js解密
时间: 2023-09-13 17:12:38 浏览: 120
前台js后台java加密解密
5星 · 资源好评率100%
Java后端加密与前端Javascript解密的实现方式有很多,这里我提供一种常用的方式:
1. 后端Java加密
Java提供了很多加密算法,常见的有DES、AES、RSA等。以AES算法为例,在Java中可以使用javax.crypto包进行加密操作,示例代码如下:
```java
import javax.crypto.Cipher;
import javax.crypto.spec.SecretKeySpec;
import java.util.Base64;
public class AESEncryptor {
public static String encrypt(String data, String key) throws Exception {
SecretKeySpec secretKeySpec = new SecretKeySpec(key.getBytes(), "AES");
Cipher cipher = Cipher.getInstance("AES");
cipher.init(Cipher.ENCRYPT_MODE, secretKeySpec);
byte[] encryptedBytes = cipher.doFinal(data.getBytes());
return Base64.getEncoder().encodeToString(encryptedBytes);
}
}
```
2. 前端Javascript解密
在前端使用Javascript解密,也可以使用同样的AES算法,示例代码如下:
```javascript
function decrypt(data, key) {
var secretKeySpec = new CryptoJS.lib.WordArray.init(key, 0, 16);
var decrypted = CryptoJS.AES.decrypt(data, secretKeySpec, {
mode: CryptoJS.mode.ECB,
padding: CryptoJS.pad.Pkcs7
});
return decrypted.toString(CryptoJS.enc.Utf8);
}
```
需要注意的是,在前端解密时需要引入CryptoJS库,可以使用CDN或者本地引入的方式。同时,在使用AES算法时,需要使用相同的密钥进行加密和解密操作。
以上是一种常用的后端Java加密与前端Javascript解密的实现方式,希望对您有所帮助。
阅读全文