Skip to content

zhanlan123/YXlogDecode

Folders and files

NameName
Last commit message
Last commit date
Aug 2, 2024
Jun 25, 2024
Aug 2, 2024
Jul 18, 2023
Apr 3, 2024
Aug 2, 2024
Apr 1, 2024
Aug 26, 2023
Jun 25, 2024
Jun 25, 2024
Jul 18, 2023
Sep 6, 2022
Sep 6, 2022
Jun 25, 2024

Repository files navigation

YXLogDecode

语言 Java Relase

YXLogDecode 是腾讯Mars-xlog的解密的Java实现版本,核心来自XlogDecoder

  • 支持UI操作;
  • 支持压缩加密文件和只压缩文件的解密解压缩;
  • 压缩方式支持:ZIP,ZSTD;
  • 增加了一个可以在Android上运行的解密核心 android/decode-core
  • 增加了一个Android上解密查看日志的APP: XLog_1.9.1.apk

目录

概述

YXLogDecode 简单使用说明

使用说明

Android界面

电脑端安装使用

YXLogDecode 需要JDK(版本需要1.8版本以上的OpenJdk,具体看你Android Studio的版本)

Windows 系统可以直接下载Release下的已经打成zip压缩包的文件,里面自带JRE。

MAC,Linux 直接下载Release下的jar文件,然后自行下载OpenJdk。

桌面端更新 只需要覆盖exe文件和jre目录,config.ini 可以使用旧的。

如果使用 OracleJdk 那么请按照下面方式修改:

  • 1: 修改 JAVA_HOME\jre\lib\security\java.security 文件, 添加如下内容:
security.provider.11=org.bouncycastle.jce.provider.BouncyCastleProvider

其中security.provider.11中的11是根据已有的配置行顺序而定的,如下

security.provider.1=sun.security.provider.Sun
security.provider.2=sun.security.rsa.SunRsaSign
security.provider.3=sun.security.ec.SunEC
security.provider.4=com.sun.net.ssl.internal.ssl.Provider
security.provider.5=com.sun.crypto.provider.SunJCE
security.provider.6=sun.security.jgss.SunProvider
security.provider.7=com.sun.security.sasl.Provider
security.provider.8=org.jcp.xml.dsig.internal.dom.XMLDSigRI
security.provider.9=sun.security.smartcardio.SunPCSC
security.provider.10=sun.security.mscapi.SunMSCAPI
security.provider.11=org.bouncycastle.jce.provider.BouncyCastleProvider
  • 2: 在JAVA_HOME\jre\lib\ext 文件夹中加入源码目录jar下的
bcprov-jdk18on-1.73.jar

下载bcprov-jdk18on-1.73.jar

如果有其他的BC jar请删除

构建运行

Gradle运行的需要配置JDK是OpenJdk 17以上,项目依赖也需要配置OpenJdk以上,不能是Oracle Jdk

Desktop

  • 1: 使用Android Studio 打开,然后点击运行就可以。
  • 2: 使用Android Studio 构建,如下图所示。

构建演示

  • 3:使用Gradle进行构建:

window

# 打包成可运行的exe文件
.\gradlew.bat :decode-ui:createExe 

# 打包成可运行的jar文件
.\gradlew.bat :decode-ui:shadowJar

# 打包带JRE和exe的zip文件
.\gradlew.bat :decode-ui:distWinWithJre

Linux,MAC

# 打包成可运行的exe文件
.\gradlew :decode-ui:createExe 

# 打包成可运行的jar文件
.\gradlew :decode-ui:shadowJar

# 打包带JRE和exe的zip文件
.\gradlew :decode-ui:distWinWithJre

Android

Android 上提供解密日志和查看日志的APP和解密核心和一个简单的测试DEMO,如果需要集成到APP中。 APP可以通过分享等其它方式打开日志文件和电脑端的config.ini文件导入密钥

  • 1: 编译APP

    • 1: 直接编译APP源码: android/app
  • 2: 集成核心

    • 1: 或自己集成解密源码: android/decode-core

    • 2: 或集成打包好的核心-下载源码目录中的:jar/decode-core-1.0.aar

    • 3: 然后在build.gradle中增加如下依赖:

// https://mvnrepository.com/artifact/org.apache.commons/commons-lang3
implementation("org.apache.commons:commons-lang3:3.12.0")
// https://mvnrepository.com/artifact/com.github.luben/zstd-jni
implementation("com.github.luben:zstd-jni:1.5.4-2@aar")

常见错误

  • 1: 使用了OracleJdk,但是没有按照说明修改。
java.security.NoSuchProviderException: JCE cannot authenticate the provider BC
  • 2:密钥错误
java.util.concurrent.ExecutionException: java.lang.NullPointerException: Cannot read the array length because "<parameter1>" is null

如果出现此错误,请使用测试公钥替换你自己的公钥试一试;

  • 测试公钥:

94e62d97637f357fbd20f0c1f667a67c2f675e158e46015dd0cc54cb3995d0a5d468f7e98b20aec266effb61ec0a2321fb1f8c61af72bf76567921a0d8305005

感谢

About

Tencent mars-xlog 解密的javaGUI版本

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages