To top
Support & Downloads Support & Downloads

Frequently Asked Questions

Share:

Java

  •  

    This error message usually occurs, if the AxProtector components were packed into the JAR archive when building the application or the JAR archive.

     

    Even if, for example, you use Wupi functions and have therefore referenced AxProtector, you must not pack the classes into the JAR archive.

     

    During encryption AxProtector automatically adds the required classes to the specified JAR archive or creates a separate WibuXpm4JRutnime.jar archive containing the required classes when using the AxProtector option '-jos'.

  •  

    To encrypt Java applications compiled with Java 9 or newer, at least AxProtector version 10.10 is required.

     

    If an older AxProtector Java version is used in conjunction with Java 9, an error (incompatible magic value) occurs.

    Only the encryption is affected by this, so there is no need on the user side to update to CodeMeter Runtime 6.60 in order to use encrypted Java 9 applications.

     

    Also, the JVM signature check (option -cag4) is no longer possible with Java 9 due to the new Jigsaw feature.

    Instead, we recommend the use of other security mechanisms supported by AxProtector, such as

    - Method Extraction

    - Encrypt Constants Pool Entries

    - Encrypt Method Control Flow

    - obfuscation

    - JVMPI/JVMTI detection

     

    Previous features are still supported compatible for Java versions 6 to 8.

    However, an application encrypted with the JVM signature check cannot be started with Java 9. This option must be disabled for use with Java 9 (or OpenJDK).

  •  

    To fix this problem, the encrypted JAR archive has to be repackaged.

    There is an example script that can be adapted to your own application.

  •  

    The date is set to this value after the encryption to guarantee that several encryptions of the same application are binary identical - otherwise the modification date would be different.

     

    Alternative Vorgehensweise:

    For AxProtector version 10.30a and higher specify:

    -jb:60364

  •  

    The cause could be that you are using the Java archive file openejb-javaagent.jar, which is located in the libs directory of TomEE.

    This Java archive file in turn loads the instrument.dll library of the Java API. The library installs a JVMTI hook, which is correctly detected by the protected software and leads to this error.

     

    There are the following possible solutions for this:

    - First, you should check if you actually need the Java archive file openejb-javaagent.jar. If not, you may be able to do without it and remove it from the libs directory.

    - Alternatively, you can also disable the security option "-cag1" (JVMTI detection) during encryption.

  •  

    The cause of the error is that Java 7 (or lower) is installed on the system.

    Since Java 7 is no longer supported by Oracle and AxProtector technology has also evolved, Java 7 for performing encryption is no longer supported.

    However, the encrypted application should still be executable with Java 7, if it has been before.

    Consequently, this change only affects the software vendor when encrypting and should not affect the end user.

  •  

    The message "Error: JVMTI SetEventCallBack cannot be used." is displayed because several wibuxpm4j files are loaded into the same process space.

    These files try several times to modify the JVM for AxProtector, i.e. to activate a hacking countermeasure. However, these files do not recognize that this has already taken place due to the loading of the library from different paths and therefore run into their own trap.

  •  

    Please proceed as follows:

    Call the encrypted application. Please adjust your proxy information.

    java -Dhttp.proxyHost=proxy.company.local -Dhttp.proxyPort=8080 -jar application.jar

     

    Alternatively you can download the current WibuVM.jar via your browser: wibu.com/files/java/WibuVm.jar.

    You can then store this archive in the Classpath or the /lib/ext directory in your Java installation so that the application can find and load this jar archive.

  •  

    The error 1001 means "FileNotFound".

    It occurred since your WkFirm.wbc file has not been found.

     

    The WkFirm.wbc file is required for programming licenses and encrypting applications.

    You should have received the file from our sales department when you purchased your Firm Code.

     

    If you have already successfully encrypted on another system, check if you can find this file there and copy it to the new system.

    This file should usually be located in the following directory:

    C:\Program Files (x86)\WibuKey\DevKit\Bin or C:\Program Files\WibuKey\DevKit\Bin respectively.