autojs怎么用$cryptodigest解密BlowFishECBPKCS5Padding类型格式
使用$crypto.digest解密BlowFish/ECB/PKCS5Padding类型格式,需要先进行以下步骤:
- 导入相关库
var SecretKeySpec = javax.crypto.spec.SecretKeySpec;
var Cipher = javax.crypto.Cipher;
var Base64 = java.util.Base64;
- 定义加密算法、密钥和密码
var algorithm = "Blowfish";
var key = "1234567890123456";
var password = "123456";
- 将密钥转换为SecretKeySpec类型
var keySpec = new SecretKeySpec(key.getBytes("UTF-8"), algorithm);
- 初始化Cipher
var cipher = Cipher.getInstance(algorithm + "/ECB/PKCS5Padding");
- 解密数据
var encryptedData = "U2FsdGVkX19hC8Wfj2E+kJLQq5BqBk+2xK0r9l9K6r8=";
var encryptedBytes = Base64.getDecoder().decode(encryptedData);
cipher.init(Cipher.DECRYPT_MODE, keySpec);
var decryptedBytes = cipher.doFinal(encryptedBytes);
var decryptedData = new java.lang.String(decryptedBytes, "UTF-8");
完整代码如下:
var SecretKeySpec = javax.crypto.spec.SecretKeySpec;
var Cipher = javax.crypto.Cipher;
var Base64 = java.util.Base64;
var algorithm = "Blowfish";
var key = "1234567890123456";
var password = "123456";
var keySpec = new SecretKeySpec(key.getBytes("UTF-8"), algorithm);
var cipher = Cipher.getInstance(algorithm + "/ECB/PKCS5Padding");
var encryptedData = "U2FsdGVkX19hC8Wfj2E+kJLQq5BqBk+2xK0r9l9K6r8=";
var encryptedBytes = Base64.getDecoder().decode(encryptedData);
cipher.init(Cipher.DECRYPT_MODE, keySpec);
var decryptedBytes = cipher.doFinal(encryptedBytes);
var decryptedData = new java.lang.String(decryptedBytes, "UTF-8");
console.log(decryptedData);
``
原文地址: https://www.cveoy.top/t/topic/g3EB 著作权归作者所有。请勿转载和采集!