How It Works


RCP Antidecompiler uses a new technology developed by BIS Guard & Co. and patented (priority of 2002)

This technology has been succesfully implemented in various Rich Client Platform projects with a strong IP protection requirements and includes Java byte code encryption, custom bundle loading, and implementation of "detect and reject" tactics for preventing interception as well as other hacker attacks. RCP Antidecompiler uses "keyless encryption". It means that encryption key is not hardcoded but calculated at runtime and thus can't be extracted from the decompiled code.


RCP Antidecompiler workflow





RCP Antidecompiler includes Antidecompiler itself and RCP Preloader. Antidecompiler encrypts bundle jars and embeds Preloader into encrypted product as well as makes corresponding modifications in the product configuration files.

RCP Preloader

contains Sonar module similiar to used in antivirus software. When JVM, and then OSGI starts it calls RCP Preloader then Preloader calls Sonar module that checks the environment integrity and the presence of hacker attacks. When Sonar detects suspicious changes in JVM or hacking attempts it immediately stops the program execution. If everything is OK the execution is passed to decryptor and then to custom bundle loader. Finally, the main application of the original product is called.




Before/After

Source code before protection

public class Class
{
     private final String password = "LCQK-OS4P-WUQ-3FHM-KV6-EBU3-LXQW";
     ...
     private String web_home = "http://www.bisguard.com?" + password;
     ...

     /**
      * @param args
      */

      public static void main(String[] args)
      {
           ...
      }

      ...
}


Compiled





Encrypted





And after any decompiler

NOTHING

Thus, if usual obfuscators make the reverse engineering time consuming, painful,
and complicated enough, RCP Antidecompiler makes it absolutely impossible.


Copyright © 2017 BIS Guard & Co. ToC Read Me User Guide EULA Modified Nov 25, 2016