破解FinalShell

发布于 2022-01-30  823 次阅读


用FinalShell很长时间了,一直用的默认图片当背景,今天突然想激活成专业版换背景图片了,就上网找了一下,结果还真被我找到了一个可以破解FinalShell换背景图的代码

这里把原文放出来,如果这篇不是原文的话请原文作者联系我

工具下载: 点我

这篇文章只给了源码,怕我加东西的可以去重新编译(其实也没必要,我没在这里面掺东西)

首先登录FinalShell账号,随便打就行了,用户名密码填123啥的一点不影响后面操作

然后点击离线激活,会显示机器码,复制下来之后打开工具(去工具下载路径执行这个

java -jar FinalShell.jar

按照提示来就行了 顺便说一下要想换背景图片的话要输入专业版激活码

源代码我也在这里放出来,顺便跟零基础说下,新建的Class名必须为FinalShell,不然会导致无法编译

import java.io.IOException;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.Scanner;
public class FinalShell {
    public static void main(String[] args) throws NoSuchAlgorithmException, IOException {
        System.out.println("FinalShell破解工具 MengXin优化版");
        System.out.println("萌新のBlog:https://blog.mengx.fun");
        System.out.print("请输入FinalShell显示的机器码:");
        Scanner reader = new Scanner(System.in);
        String machineCode = reader.nextLine();
        generateKey(machineCode);
    }
    public static void generateKey(String hardwareId) throws NoSuchAlgorithmException {
        String proKey = transform(61305 + hardwareId + 8552);
        String pfKey = transform(2356 + hardwareId + 13593);
        System.out.println("高级版激活码: " + proKey);
        System.out.print("专业版激活码: " + pfKey);
    }
    public static String transform(String str) throws NoSuchAlgorithmException {
        String md5 = hashMD5(str);
        return hashMD5(str).substring(8, 24);
    }
    public static String hashMD5(String str) throws NoSuchAlgorithmException {
        MessageDigest digest = MessageDigest.getInstance("MD5");
        byte[] hashed = digest.digest(str.getBytes());
        StringBuilder sb = new StringBuilder();
        for (byte b : hashed) {
            int len = b & 0xFF;
            if (len < 16) {
                sb.append("0");
            }
            sb.append(Integer.toHexString(len));
        }
        return sb.toString();
    }
}