diff --git a/app/src/main/assets/web/help/md/ruleHelp.md b/app/src/main/assets/web/help/md/ruleHelp.md index 0b771fc87..f6d4f8ef2 100644 --- a/app/src/main/assets/web/help/md/ruleHelp.md +++ b/app/src/main/assets/web/help/md/ruleHelp.md @@ -205,5 +205,42 @@ let options = { > 适用于图片需要二次解密的情况,直接填写JavaScript,返回解密后的`ByteArray` > 部分变量说明:java(仅支持[js扩展类](https://github.com/gedoor/legado/blob/master/app/src/main/java/io/legado/app/help/JsExtensions.kt)),result为待解密图片的`ByteArray`,src为图片链接 +``` +java.createSymmetricCrypto("AES/CBC/PKCS5Padding", key, iv).decrypt(result) +``` + +``` +function decodeImage(data, key) { + var input = new Packages.java.io.ByteArrayInputStream(data) + var out = new Packages.java.io.ByteArrayOutputStream() + var byte + while ((byte = input.read()) != -1) { + out.write(byte ^ key) + } + return out.toByteArray() +} + +decodeImage(result, key) +``` + * 封面解密 > 同图片解密 其中result为待解密封面的`inputStream` + +``` +var out = new Packages.java.io.ByteArrayOutputStream() +java.createSymmetricCrypto("AES/CBC/PKCS5Padding", key, iv).decrypt(data, out, true) +out.toByteArray() +``` + +``` +function decodeImage(data, key) { + var out = new Packages.java.io.ByteArrayOutputStream() + var byte + while ((byte = data.read()) != -1) { + out.write(byte ^ key) + } + return out.toByteArray() +} + +decodeImage(result, key) +```