纯Java实现,不涉及so, flag加密之后与指定字符串 “wigwrkaugala"比较判断,循环一个个字符加的,那可以一个个字符对应还原。
 
 加密算法就在a,b类里面,代码直接复制到idea ,枚举暴力破解。
 每一位输入范围a-z , 找到对应的加密字符"wigwrkaugala”
 a,b 类直接复制就行,没什么需要改的。
 一位一位的找,执行12次就可以了。
    public static void main(String[] args) {
        String old = ""; //这里填对应的结果
        char ch = 'a';
        for (int i = 0; i < 26; i++) { //a-z 循环
            String temp = String.valueOf((char)(ch + i));
            String s = old + temp;
            System.out.println("s = " + s);
            b b0 = new b(2);
            a a0 = new a(3);
            StringBuilder stringBuilder0 = new StringBuilder();
            int v1 = 0;
            for(int v = 0; v < s.length(); ++v) {
                stringBuilder0.append(new easyjava().d((s.charAt(v) + ""), b0, a0));
                Integer integer0 = b0.b() / 25;
                if(integer0 > v1 && integer0 >= 1) {
                    ++v1;
                }
            }
            System.out.println("sb= " + stringBuilder0);
            b.reset();  //重置b类的静态变量
            a.reset();  //重置a类的静态变量
        }
    }
    private char d(String s, b b0, a a0) {
        return a0.a(b0.a(s));
    }
 
大致流程就是每一位都遍历a-z,找到加密结果和wigwrkaugala 对应上。
 对应的加密结果:最后算出来是有多个解。
 v->w
 ve->wi
 ven->wig
 veni->wigw
 veniv->wigwr
 venivi->wigwrk
 venivia->wigwrka 有2个 venivid->wigwrka 第7位两个解
 veniviai->wigwrkau
 veniviaiv->wigwrkaug
 veniviaivi->wigwrkauga 又有2个 veniviaivk ->wigwrkauga 第10位两个解
 veniviaivic->wigwrkaugal
 veniviaivici->wigwrkaugala 又有2个 veniviaivicr->wigwrkaugala 第12位两个解
注意点1:
 jeb的自动解密导致代码错误。
 jeb自动把b.b解密成“abcdefghijklmnopqrstuvwxyz”,而b.b 运行中是会变化的。
 
 关掉jeb 自动解密:
 
 注意点2:
 类a,b 执行过程中是变化的,执行不同次数结果是不一样的。
 另外a,b类里面有静态变量,遍历完一次需要重置恢复到初始值不然加密结果不对。



















