A Weird Java Code and How It Works

I discovered following strange Java code that print Just another Java hacker on your terminal.

Obviously, that piece of code looks like mess. Even if you copy this code into your favorite IDE, IDE could not figure out the syntax of this code. Trust me, this piece of code works, and this is how it works.

Obviously it has class name with main method. Let’s clear out the code and format it. Now it look like this.

class Sig{
    public static void main(String...args){
        \u0066or(int\u0020$:"vÌÈÊ\"¤¾Àʲ¬Æ\"v¤Î¤\"²¤¨¸¬Æ".to\u0043h\u0061rArray()
        )System./*goto/*$/%\u0126//^\u002A\u002Fout.print((char)(($>>
        +(~'"'&'#'))+('<'>>('\\'/'.')/\u002Array.const(~1)\*\u002F)));
    }
}

Now you can see that there are some unicode characters in this code. Next we’ll extract all unicode characters. Also I’m removing /*goto/*$/%\u0126//^\u002A\u002F and \u002Array.const(~1)\*\u002F section since those code sections are just commented line written in unicode characters.

class Sig{
    public static void main(String...args){
        for(int $:"vÌÈÊ\"¤¾Àʲ¬Æ\"v¤Î¤\"²¤¨¸¬Æ".toCharArray())
            System.out.print((char)(($>>+(~'"'&'#'))+('<'>>('\\'/'.'))));
    }
}

If you replace (char)(($>>+(~'"'&'#'))+('<'>>('\\'/'.'))) expression with relevant ascii values then it would be something like (char)(($>>+(~42&35))+(60>>(92/46))). This is equivalent to (char)(c / 2 + 15). Final output of the simplified code would be something like below.

class Sig{
    public static void main(String...args){
        for(int $:"vÌÈÊ\"¤¾Àʲ¬Æ\"v¤Î¤\"²¤¨¸¬Æ".toCharArray())
            System.out.print((char)($ / 2 + 15));
    }
}

Now the mystery has been resolved. For loop take each of the characters from the string change it value according to the equation and print it.

Why don’t you give it a try to write such a code with your favaourite language and comment it down?

Warning: Don’t ever write this type of code in production repositories.

原文链接:A Weird Java Code and How It Works

© 版权声明
THE END
喜欢就支持一下吧
点赞10 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容