JObfuscator — Obfuskacja i Zabezpieczenie Kodów Źródłowych Java

JObfuscator to obfuskator kodów źródłowych języka Java. Zabezpiecz kody źródłowe oraz algorytmy w Java przez hakingiem, crackingiem, inżynierią wsteczną, dekompilacją i kradzieżą technologii.

Obfuskacja kodów źródłowych Java

Obfuskacja to proces polegający na transformacji kodu źródłowego Java do jego zabezpieczonej wersji.

Funkcjonalność pozostaje niezmieniona, wszystko po takiej transformacji działa tak samo, ale sam kod źródłowy jak i skompilowany bytecode są zabezpieczone przed inżynierią wsteczną (ang. reverse engineering), nawet po dekompilacji.

JObfuscator zmienia nazwy wszystkich zmiennych i metod, modyfikuje ścieżkę wykonywania kodu na nielinearną wersję oraz szyfruje wszystkie ciągi tekstowe używając do tego naszego innowacyjnego szyfrującego silnika polimorficznego.

Kontroluj, co ma być poddane obfuskacji, a co nie, wykorzystując adnotacje w kodzie źródłowym Java @Obfuscate na poziomie całych klas lub pojedyncznych metod.

Dekompilacja Javy to ogromny problem

Aplikacje napisane w języku Java i skompilowane do formatu JAR, WAR lub CLASS są podatne na dekompilację.

Istnieje szereg dekompilatorów, które są w stanie niemalże w całości odtworzyć skompilowany kod z powrotem do postaci kodu źródłowego Javy.

Problem polega na tym, iż kod Javy kompilowany jest do tzw. przejściowego kodu nazywanego bytecode dla wirtualnej maszyny Javy JVM (w przeciwieństwie do natywnego kodu procesora, takiego jak kod x86 lub x86-64).

Ta forma kodu, oprócz tego, że jest doskonale udokumentowana, pozwala na bardzo dokładne odtworzenie oryginalnego kodu źródłowego w języku Java.

Co potrafią dekompilatory Javy?

Spójrz na ten przykład:

Dekompilator JAD
Dekompilator JAD dla Javy

Tak wygląda zdekompilowany kod Javy! Wszystkie nazwy zmiennych, elementy klas, nazwy metod są w pełni czytelne. Można nawet wygodnie nawigować poprzez cały zdekompilowany kod skacząc od klasy do klasy.

Jesteś zaskoczony? To może być twoje oprogramowanie analizowane przez konkurencję, hakerów, crackerów lub kogokolwiek innego.

Kradzież technologii i własności intelektualnej (IP)

Co może się stać z twoim zdekompilowanym kodem? Najczęstszym przypadkiem jest kradzież algorytmów i wykorzystanie ich w konkurencyjnych projektach.

W niektórych przypadkach, oprogramowanie jest łamane, łatwo wykryte zabezpieczenia licencyjne w zdekompilowanym kodzie są usuwane lub całe oprogramowanie jest rekompilowane bez nich i dystrybuowane na pirackich stronach.

Jak zabezpieczyć swoje oprogramowanie w Java?

JObfuscator wykorzystuje szereg strategii obfuskacyjnych do ochrony i ukrycia prawdziwej funkcjonalności twoich kodów źródłowych w Java.

Spójrz na ten przykład, kliknij zakładkę "Po obfuskacji", aby zrozumieć jak działa JObfuscator:

import java.util.*;
import java.lang.*;
import java.io.*;

//
// dodaj adnotację @Obfuscate do kodu,
// aby włączyć obfuskację na poziomie
// całej klasy lub pojedynczej metody
//
@Obfuscate
class Ideone
{
    //@Obfuscate
    public static double calculateSD(double numArray[])
    {
        double sum = 0.0, standardDeviation = 0.0;
        int length = numArray.length;

        for(double num : numArray) {
            sum += num;
        }

        double mean = sum/length;

        for(double num: numArray) {
            standardDeviation += Math.pow(num - mean, 2);
        }

        return Math.sqrt(standardDeviation/length);
    }

    //
    // poszczególne strategie obfuskacji
    // mogą być włączane lub wyłączane
    // na poziomie całej klasy lub
    // pojedyncznej metody (domyślnie
    // wszystkie strategie obfuskacyjne
    // są włączone jeśli użyta jest
    // sama adnotacja @Obfuscate bez
    // wyszczególnionych strategii)
    //
    //@Obfuscate(
    //  remove_comments = true,
    //  crypt_strings = true,
    //  rename_methods = false,
    //  rename_variables = true,
    //  shuffle_methods = true,
    //  mix_code_flow = true,
    //  ints_to_arrays = true
    // )
    public static void main(String[] args) {

        double[] numArray = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
        double SD = calculateSD(numArray);

        System.out.format("Standard Deviation = %.6f", SD);
    }
}
////////////////////////////////////////////////////////////////////////////////
//
// An output from JObfuscator v1.08 - Bartosz Wójcik
//
// Website   : https://www.pelock.com/products/jobfuscator
// Version   : v1.08
// Params    : /MixCodeFlow /RenMethods /RenVars /ShuffleMethods /IntsMathCrypt /CryptStr /IntsToArray /DblsToArray
// New lines : Windows (CRLF - \r\n)
// Date      : 21.10.2021
//
////////////////////////////////////////////////////////////////////////////////

import java.util.*;
import java.lang.*;
import java.io.*;
import java.lang.Math.*;

class Ideone {

    public static void main(String[] args) {
        double[] l__e0v0T7e1yxqRkv1kd_Y_F = { 0.4379530011464642, 2.408074277905919, 3.7570956051507003, 1.3918404554490806 };
        double[][] tJdleyzkzaUtoleisYjuotnsh = { { 1.4265514850058862 }, { 0.5165238459553662, 3.3095286367897114, 4.90178778707981, 2.519569312694359 } };
        int[] var_1281 = { 01, 00, 0x2, 5, 0x3 };
        double[][][] TRMCLMHEHV_IKISA = { { { 3.6164135998053033, 0.22405660668469918, 4.193397094465004 } }, { { 5.250285704115554 } }, { { 1.557451354249947, 2.142441930531753 } } };
        int[] var_2913 = { 0b100, 2, 0x0, 5, 01, 0b11 };
        double[][][] dVfcgleiukRekkyhyeHidwnluj = { { { 5.07541, 4.23619, 0.0 } }, { { 2.03212, 1.3392636175792E9, 4.94912, 1.69832506125042E9, 1.47867134122408E9, 5.4179294552832E8 } }, { { 1139.26272, 1.781794199999E8, 1.82645456199862E9, 2.35689, 12985.7403, 7.0222014863258E8 } } };
        double[][][] var_1577 = { { { 1.1138300620268282 } }, { { 2.238528957990631 } }, { { 0.2884688432264582 } } };
        int[] tKHn_gL_0u8_lFUK = { 0x2, 01, 0b0 };
        double[] _Zj_WoWBR_8EtVsW4dwS_ = { 2.708578928374746, 0.021338349221617745, 1.0652921147756609 };
        int[] _kSDPW_RdQDCb_F_BWztqmL = { 0b10, 0x0, 0b1 };
        double[][][] var_1419 = { { { 3.615937935522214, 1.6254439591363368 } }, { { 0.5611859181058527 } }, { { 2.4856596779882794 } } };
        int[] MPCAVUMJG = { 0x2, 65535, 0x1, 0 };
        double[] _O__uQTU2zz5UbxW6CD_J = { 65535.94024197156, 25.136887111644175, 0.8189089135861333 };
        int SxpnRI9_gO_0J9X5CD_Ae_2iP = (int) (-dVfcgleiukRekkyhyeHidwnluj[var_2913[(int) (TRMCLMHEHV_IKISA[var_1281[02]][0][0])]][var_2913[var_1281[(int) (l__e0v0T7e1yxqRkv1kd_Y_F[01])]]][var_2913[(int) (TRMCLMHEHV_IKISA[var_1281[(int) (tJdleyzkzaUtoleisYjuotnsh[1][(int) (l__e0v0T7e1yxqRkv1kd_Y_F[02])])]][var_1281[(int) (tJdleyzkzaUtoleisYjuotnsh[(int) (l__e0v0T7e1yxqRkv1kd_Y_F[0b0])][0])]][var_1281[(int) (tJdleyzkzaUtoleisYjuotnsh[(int) (l__e0v0T7e1yxqRkv1kd_Y_F[03])][(int) (l__e0v0T7e1yxqRkv1kd_Y_F[0b0])])]])]] + Math.cbrt(dVfcgleiukRekkyhyeHidwnluj[var_2913[(int) (TRMCLMHEHV_IKISA[var_1281[(int) (tJdleyzkzaUtoleisYjuotnsh[0][0b0])]][0][(int) (tJdleyzkzaUtoleisYjuotnsh[(int) (l__e0v0T7e1yxqRkv1kd_Y_F[0b11])][(int) (l__e0v0T7e1yxqRkv1kd_Y_F[2])])])]][(int) (TRMCLMHEHV_IKISA[0][0][(int) (tJdleyzkzaUtoleisYjuotnsh[0][0])])][var_2913[(int) (TRMCLMHEHV_IKISA[var_1281[(int) (l__e0v0T7e1yxqRkv1kd_Y_F[3])]][0][var_1281[(int) (tJdleyzkzaUtoleisYjuotnsh[(int) (l__e0v0T7e1yxqRkv1kd_Y_F[03])][(int) (l__e0v0T7e1yxqRkv1kd_Y_F[00])])]])]]));
        double var_2032 = dVfcgleiukRekkyhyeHidwnluj[(int) (TRMCLMHEHV_IKISA[0b0][0][var_1281[(int) (tJdleyzkzaUtoleisYjuotnsh[0x1][0])]])][0][var_2913[(int) (TRMCLMHEHV_IKISA[(int) (l__e0v0T7e1yxqRkv1kd_Y_F[1])][0][0])]];
        double[] jqiJKid1tvuJDP1Afo__ = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
        SxpnRI9_gO_0J9X5CD_Ae_2iP = (int) (-dVfcgleiukRekkyhyeHidwnluj[var_2913[(int) (tJdleyzkzaUtoleisYjuotnsh[0x0][0])]][0][(int) (tJdleyzkzaUtoleisYjuotnsh[01][(int) (l__e0v0T7e1yxqRkv1kd_Y_F[0b10])])] - Math.tan(dVfcgleiukRekkyhyeHidwnluj[var_2913[(int) (TRMCLMHEHV_IKISA[(int) (l__e0v0T7e1yxqRkv1kd_Y_F[0x1])][0][0b0])]][0][var_2913[(int) (TRMCLMHEHV_IKISA[0x1][0][0b0])]]));
        SxpnRI9_gO_0J9X5CD_Ae_2iP = (int) (dVfcgleiukRekkyhyeHidwnluj[(int) (TRMCLMHEHV_IKISA[2][0][0b1])][0][var_2913[(int) (TRMCLMHEHV_IKISA[0][0][0])]] + Math.tan(dVfcgleiukRekkyhyeHidwnluj[0][0][0b0]));
        while (SxpnRI9_gO_0J9X5CD_Ae_2iP != (int) (dVfcgleiukRekkyhyeHidwnluj[var_2913[(int) (TRMCLMHEHV_IKISA[00][0][02])]][0][01] - Math.cosh(dVfcgleiukRekkyhyeHidwnluj[00][0][0b1]))) {
            switch(SxpnRI9_gO_0J9X5CD_Ae_2iP) {
                case 0b1010100111101100110101011011:
                    var_2032 = func_437(jqiJKid1tvuJDP1Afo__);
                    SxpnRI9_gO_0J9X5CD_Ae_2iP -= (int) (-dVfcgleiukRekkyhyeHidwnluj[var_2913[(int) (TRMCLMHEHV_IKISA[0b0][0][(int) (tJdleyzkzaUtoleisYjuotnsh[01][(int) (l__e0v0T7e1yxqRkv1kd_Y_F[0x2])])])]][0][var_1281[(int) (tJdleyzkzaUtoleisYjuotnsh[1][01])]] - Math.log1p(dVfcgleiukRekkyhyeHidwnluj[(int) (TRMCLMHEHV_IKISA[var_1281[(int) (l__e0v0T7e1yxqRkv1kd_Y_F[1])]][0][0b1])][0][var_2913[var_1281[1]]]));
                    break;
                case 702220146:
                    double[] ZPYXPIXD_MQXCVAWW = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
                    SxpnRI9_gO_0J9X5CD_Ae_2iP = (int) (dVfcgleiukRekkyhyeHidwnluj[0x2][0][01] - Math.tanh(dVfcgleiukRekkyhyeHidwnluj[01][0][(int) (TRMCLMHEHV_IKISA[2][0][0x1])]));
                    break;
                case 0b101010111010011110100000010110:
                    String mbh_drrz6I_LBH8Re_VR_Q = "";
                    int[] BMNPBMZN_MTCKLMSOP_DLSNDUPPWG = { 0xFFAA, 0xFF88, 0xFF9A, 0xFF8C, 0xFF95, 0xFF97, 0xFF85, 0xFF92, 0xFFD5, 0xFFB0, 0xFF8E, 0xFF7C, 0xFF88, 0xFF8F, 0xFF7B, 0xFF85, 0xFF7E, 0xFF7E, 0xFFCB, 0xFFAD, 0xFFC9, 0xFFC3, 0xFFB9, 0xFFB0, 0xFF7F };
                    for (int mRehcyaVluqdhpXtmfvoy = (int) (_O__uQTU2zz5UbxW6CD_J[MPCAVUMJG[(int) (var_1419[_kSDPW_RdQDCb_F_BWztqmL[02]][0][_kSDPW_RdQDCb_F_BWztqmL[tKHn_gL_0u8_lFUK[0x1]]])]]), var_2042 = (int) (var_1419[(int) (_Zj_WoWBR_8EtVsW4dwS_[tKHn_gL_0u8_lFUK[(int) (var_1577[0x2][0][0])]])][0][(int) (_Zj_WoWBR_8EtVsW4dwS_[(int) (var_1577[0b0][0][0x0])])]); mRehcyaVluqdhpXtmfvoy < (int) (_O__uQTU2zz5UbxW6CD_J[MPCAVUMJG[(int) (var_1419[_kSDPW_RdQDCb_F_BWztqmL[0]][(int) (var_1577[0x2][0][0x0])][(int) (_Zj_WoWBR_8EtVsW4dwS_[tKHn_gL_0u8_lFUK[(int) (var_1577[0][0][00])]])])]]); mRehcyaVluqdhpXtmfvoy++) {
                        var_2042 = BMNPBMZN_MTCKLMSOP_DLSNDUPPWG[mRehcyaVluqdhpXtmfvoy];
                        var_2042++;
                        var_2042 += mRehcyaVluqdhpXtmfvoy;
                        var_2042++;
                        var_2042 ^= (int) (_O__uQTU2zz5UbxW6CD_J[MPCAVUMJG[(int) (var_1419[_kSDPW_RdQDCb_F_BWztqmL[tKHn_gL_0u8_lFUK[(int) (var_1577[0b0][0][(int) (l__e0v0T7e1yxqRkv1kd_Y_F[00])])]]][(int) (_Zj_WoWBR_8EtVsW4dwS_[tKHn_gL_0u8_lFUK[(int) (var_1577[(int) (TRMCLMHEHV_IKISA[(int) (tJdleyzkzaUtoleisYjuotnsh[0b1][0b0])][0][0x1])][0][var_2913[02]])]])][_kSDPW_RdQDCb_F_BWztqmL[(int) (_Zj_WoWBR_8EtVsW4dwS_[tKHn_gL_0u8_lFUK[(int) (var_1577[0b10][0][var_2913[0b10]])]])]])]]);
                        mbh_drrz6I_LBH8Re_VR_Q += (char) (var_2042 & MPCAVUMJG[(int) (var_1419[_kSDPW_RdQDCb_F_BWztqmL[(int) (_Zj_WoWBR_8EtVsW4dwS_[tKHn_gL_0u8_lFUK[(int) (var_1577[0b10][0][0x0])]])]][tKHn_gL_0u8_lFUK[(int) (var_1577[0x1][0][0])]][_kSDPW_RdQDCb_F_BWztqmL[(int) (_Zj_WoWBR_8EtVsW4dwS_[tKHn_gL_0u8_lFUK[(int) (var_1577[0x1][0][0])]])]])]);
                    }
                    System.out.format(mbh_drrz6I_LBH8Re_VR_Q, var_2032);
                    SxpnRI9_gO_0J9X5CD_Ae_2iP ^= (int) (dVfcgleiukRekkyhyeHidwnluj[01][0][var_1281[(int) (tJdleyzkzaUtoleisYjuotnsh[1][02])]] + Math.sinh(dVfcgleiukRekkyhyeHidwnluj[01][0][0x0]));
                    break;
            }
        }
    }

    public static double func_437(double[] numArray) {
        int[][][] g_hZtxzvekjbzRyyckLzmqoeh = { { { 0b0 } }, { { 0b1 } }, { { 2 } } };
        double[][] GTZdYLH_K2o_4WFd_PcR = { { 2.1101132277726147 }, { 0.28605551577294586, 1.9719921487420469 } };
        int[] var_3808 = { 2, 0, 0x1 };
        int[][] mGxiaqfzSaerxxlyhi = { { 0b11, 0x0, 01 }, { 02 } };
        double[][][] AwcS_g7JBueRj__l0KkjA_ = { { { 4.932630767432911 } }, { { 2.021504134980442, 3.975247163436968, 1.0285858923008908 } }, { { 0.39287439278812275 } } };
        double[][][] uwQ_YtY7v_nFUUpqR_ = { { { 4.698649331811814, 2.9067133981758175, 1.3173555698071326 } }, { { 3.3190348131361715 } }, { { 0.0376505659847828 } } };
        double[][] DRINMAD = { { 0.782065161957541 }, { 3.963276068797625, 1.0420050535393708, 6.256469235398118, 2.130695321511736, 4.4098299875857006 } };
        double[][][] l_D3_LK0fqmhX15X = { { { 0.9538695922895979, 7.862894985944802 } }, { { 1.6258675226039552, 3.2617680490479475, 2.1574356323482458, 5.701948677876716, 6.897384239788768 } }, { { 4.501559490222349 } } };
        int[][][] bGhwoj = { { { 13, 0x5 } }, { { 0x3, 0x9, 0b111, 0x8 } }, { { 11, 0b0, 0x4, 0x1, 0b1100, 0xa, 02, 06 } } };
        double[][][] var_666 = { { { 12.133799556468471, 13.802291969423303, 18.711391054330583, 0.13589147306197957, 16.027208800103597, 20.500393359046974, 6.737888600919923, 2.439617754957983, 3.7439620986004782, 19.004023275090514, 11.766237304847149, 5.0539031561092855, 4.15963730548454, 14.128267772342486 } }, { { 7.2030242091623355, 9.697356265540984, 15.929968211202914 } }, { { 10.892074714219692, 1.2651958104053518, 17.457974235724432, 8.250123097886677 } } };
        double[] MP_JzJLfU4_F_Vpfi = { 0.0 };
        double[] Y_F_IcECSZARcr9i_pB8ad_FQ = { 0.0 };
        double[] bCtpagwtonTwkkzUocxxxdt = { 5.26723, 2.04160124802981E9, 9654.43446, 1.4598, 3.58169, 36743.97391, 2.0736381304709E9, 2.9526519215002E8, 8455.75434, 1.06897070469781E9, 1.8755475134178E8, 1.02898826637988E9, 8.1880013815303E8, 1.068968683E9, 1.34997264649909E9, 0.0, 1.409550213E9, 1.03697350698823E9, 0.20326, 6.5128952763389E8, 10.6384 };
        int pBsmfqqhgp = (int) Math.min(bCtpagwtonTwkkzUocxxxdt[(int) (var_666[bGhwoj[(int) (l_D3_LK0fqmhX15X[1][0][(int) (uwQ_YtY7v_nFUUpqR_[0x0][0][01])])][0][(int) (l_D3_LK0fqmhX15X[(int) (DRINMAD[1][01])][0][(int) (DRINMAD[0][0])])]][bGhwoj[(int) (l_D3_LK0fqmhX15X[1][0][(int) (DRINMAD[1][(int) (AwcS_g7JBueRj__l0KkjA_[1][0][1])])])][0][(int) (AwcS_g7JBueRj__l0KkjA_[mGxiaqfzSaerxxlyhi[0b0][0b10]][0][g_hZtxzvekjbzRyyckLzmqoeh[2][0][00]])]][bGhwoj[(int) (l_D3_LK0fqmhX15X[(int) (DRINMAD[0x1][(int) (uwQ_YtY7v_nFUUpqR_[0x0][0][02])])][0][(int) (DRINMAD[0][0])])][(int) (l_D3_LK0fqmhX15X[(int) (DRINMAD[0x0][(int) (uwQ_YtY7v_nFUUpqR_[0x2][0][0x0])])][0][(int) (uwQ_YtY7v_nFUUpqR_[(int) (AwcS_g7JBueRj__l0KkjA_[1][0][00])][0][00])])][(int) (l_D3_LK0fqmhX15X[(int) (DRINMAD[(int) (AwcS_g7JBueRj__l0KkjA_[(int) (GTZdYLH_K2o_4WFd_PcR[0x1][0b1])][0][var_3808[0b0]])][(int) (uwQ_YtY7v_nFUUpqR_[0x0][0][g_hZtxzvekjbzRyyckLzmqoeh[0x2][0][0]])])][(int) (DRINMAD[(int) (uwQ_YtY7v_nFUUpqR_[(int) (AwcS_g7JBueRj__l0KkjA_[mGxiaqfzSaerxxlyhi[0][var_3808[0b0]]][0][(int) (GTZdYLH_K2o_4WFd_PcR[0b1][0x0])])][0][mGxiaqfzSaerxxlyhi[0x0][0x1]])][(int) (uwQ_YtY7v_nFUUpqR_[g_hZtxzvekjbzRyyckLzmqoeh[02][0][0x0]][0][var_3808[0x1]])])][(int) (DRINMAD[(int) (uwQ_YtY7v_nFUUpqR_[(int) (AwcS_g7JBueRj__l0KkjA_[mGxiaqfzSaerxxlyhi[1][0b0]][0][0b0])][0][(int) (AwcS_g7JBueRj__l0KkjA_[mGxiaqfzSaerxxlyhi[(int) (GTZdYLH_K2o_4WFd_PcR[1][00])][var_3808[0]]][0][mGxiaqfzSaerxxlyhi[var_3808[(int) (GTZdYLH_K2o_4WFd_PcR[0x1][01])]][(int) (GTZdYLH_K2o_4WFd_PcR[0b1][0x1])]])])][(int) (uwQ_YtY7v_nFUUpqR_[(int) (AwcS_g7JBueRj__l0KkjA_[mGxiaqfzSaerxxlyhi[var_3808[0x1]][var_3808[(int) (GTZdYLH_K2o_4WFd_PcR[g_hZtxzvekjbzRyyckLzmqoeh[01][0][0b0]][00])]]][0][mGxiaqfzSaerxxlyhi[var_3808[(int) (GTZdYLH_K2o_4WFd_PcR[0b0][00])]][0]])][(int) (AwcS_g7JBueRj__l0KkjA_[mGxiaqfzSaerxxlyhi[var_3808[(int) (GTZdYLH_K2o_4WFd_PcR[0][00])]][0]][0][0])][(int) (AwcS_g7JBueRj__l0KkjA_[mGxiaqfzSaerxxlyhi[0x1][g_hZtxzvekjbzRyyckLzmqoeh[0][0][0b0]]][mGxiaqfzSaerxxlyhi[(int) (GTZdYLH_K2o_4WFd_PcR[g_hZtxzvekjbzRyyckLzmqoeh[0b1][0][0b0]][g_hZtxzvekjbzRyyckLzmqoeh[00][0][0]])][var_3808[(int) (GTZdYLH_K2o_4WFd_PcR[0b0][0b0])]]][mGxiaqfzSaerxxlyhi[var_3808[(int) (GTZdYLH_K2o_4WFd_PcR[g_hZtxzvekjbzRyyckLzmqoeh[0x1][0][0b0]][g_hZtxzvekjbzRyyckLzmqoeh[1][0][0]])]][var_3808[(int) (GTZdYLH_K2o_4WFd_PcR[g_hZtxzvekjbzRyyckLzmqoeh[0b0][0][0]][g_hZtxzvekjbzRyyckLzmqoeh[0x0][0][0]])]]])])])])]])], bCtpagwtonTwkkzUocxxxdt[(int) (var_666[bGhwoj[(int) (l_D3_LK0fqmhX15X[0b1][0][0x2])][0][(int) (l_D3_LK0fqmhX15X[01][0][(int) (DRINMAD[0x1][01])])]][0][bGhwoj[(int) (DRINMAD[01][(int) (uwQ_YtY7v_nFUUpqR_[1][0][0x0])])][0][(int) (l_D3_LK0fqmhX15X[(int) (AwcS_g7JBueRj__l0KkjA_[1][0][g_hZtxzvekjbzRyyckLzmqoeh[0x2][0][0b0]])][0][(int) (DRINMAD[(int) (uwQ_YtY7v_nFUUpqR_[0][0][02])][(int) (uwQ_YtY7v_nFUUpqR_[0][0][0x0])])])]])]);
        double HC_QUTIz8l6_A8ztq = bCtpagwtonTwkkzUocxxxdt[(int) (var_666[1][0][0x2])];
        int g_hLxbxxSsqjvGrliauqy = (int) Math.min(Y_F_IcECSZARcr9i_pB8ad_FQ[(int) (var_666[0][0][bGhwoj[(int) (l_D3_LK0fqmhX15X[0b1][0][00])][0][0]])], bCtpagwtonTwkkzUocxxxdt[(int) (var_666[bGhwoj[(int) (DRINMAD[0x1][mGxiaqfzSaerxxlyhi[0b0][0]])][0][(int) (l_D3_LK0fqmhX15X[0b1][0][(int) (DRINMAD[0b1][(int) (AwcS_g7JBueRj__l0KkjA_[0x0][0][0b0])])])]][0][bGhwoj[0b1][0][(int) (l_D3_LK0fqmhX15X[(int) (AwcS_g7JBueRj__l0KkjA_[2][0][00])][0][0])]])]);
        double WYNVK = Y_F_IcECSZARcr9i_pB8ad_FQ[(int) (var_666[00][0][(int) (l_D3_LK0fqmhX15X[01][0][01])])], XZXMXA_BGHLBRGXJ_THAHEORX = MP_JzJLfU4_F_Vpfi[(int) (var_666[0][0][bGhwoj[0b1][0][00]])];
        pBsmfqqhgp = (int) (Math.acos(bCtpagwtonTwkkzUocxxxdt[(int) (var_666[0][0][bGhwoj[0x2][0][(int) (DRINMAD[1][(int) (uwQ_YtY7v_nFUUpqR_[0][0][0b1])])]])]) + bCtpagwtonTwkkzUocxxxdt[(int) (var_666[0][0][bGhwoj[(int) (l_D3_LK0fqmhX15X[0x1][0][00])][0][01]])]);
        do {
            switch(pBsmfqqhgp) {
                case 013174562315:
                    HC_QUTIz8l6_A8ztq = WYNVK / g_hLxbxxSsqjvGrliauqy;
                    pBsmfqqhgp = (int) (bCtpagwtonTwkkzUocxxxdt[(int) (var_666[0][0][bGhwoj[(int) (uwQ_YtY7v_nFUUpqR_[0][0][0b1])][0][(int) (l_D3_LK0fqmhX15X[00][0][1])]])] - Math.tan(bCtpagwtonTwkkzUocxxxdt[(int) (var_666[0][0][bGhwoj[0b10][0][(int) (l_D3_LK0fqmhX15X[0b10][0][0])]])]));
                    break;
                case 02516100020:
                    g_hLxbxxSsqjvGrliauqy = numArray.length;
                    pBsmfqqhgp += (int) Math.max(bCtpagwtonTwkkzUocxxxdt[(int) (var_666[(int) (uwQ_YtY7v_nFUUpqR_[00][0][0x1])][0][0])], bCtpagwtonTwkkzUocxxxdt[(int) (var_666[bGhwoj[0b10][0][0x1]][0][bGhwoj[0b10][0][0x2]])]);
                    break;
                case 015117103625:
                    for (double var_180 : numArray) {
                        WYNVK += var_180;
                    }
                    pBsmfqqhgp ^= (int) (bCtpagwtonTwkkzUocxxxdt[(int) (var_666[0][0][00])] + Math.sqrt(bCtpagwtonTwkkzUocxxxdt[(int) (var_666[0][0][bGhwoj[0b10][0][(int) (l_D3_LK0fqmhX15X[0x1][0][(int) (DRINMAD[0b1][00])])]])]));
                    break;
                case 0b1111011100110010011010011110010:
                    for (double _aHjj_E9oLanCRKnLeA8 : numArray) {
                        XZXMXA_BGHLBRGXJ_THAHEORX += Math.pow(_aHjj_E9oLanCRKnLeA8 - HC_QUTIz8l6_A8ztq, (int) (bCtpagwtonTwkkzUocxxxdt[(int) (var_666[00][0][bGhwoj[02][0][(int) (l_D3_LK0fqmhX15X[0b0][0][0x0])]])] - Math.sqrt(bCtpagwtonTwkkzUocxxxdt[(int) (var_666[0b0][0][bGhwoj[00][0][(int) (l_D3_LK0fqmhX15X[0x0][0][0x0])]])])));
                    }
                    pBsmfqqhgp += -(int) (bCtpagwtonTwkkzUocxxxdt[(int) (var_666[0b10][0][bGhwoj[0b10][0][(int) (l_D3_LK0fqmhX15X[0x1][0][1])]])] + Math.atan(bCtpagwtonTwkkzUocxxxdt[(int) (var_666[00][0][bGhwoj[0x1][0][(int) (l_D3_LK0fqmhX15X[0x1][0][0x1])]])]));
                    break;
                case 0172154021:
                    pBsmfqqhgp += (int) (bCtpagwtonTwkkzUocxxxdt[(int) (var_666[0x2][0][0x2])] - Math.expm1(bCtpagwtonTwkkzUocxxxdt[(int) (var_666[0][0][bGhwoj[0x0][0][1]])]));
                    break;
                case 04664361671:
                    XZXMXA_BGHLBRGXJ_THAHEORX = bCtpagwtonTwkkzUocxxxdt[(int) (var_666[bGhwoj[02][0][(int) (DRINMAD[01][0b0])]][0][02])];
                    pBsmfqqhgp -= (int) (bCtpagwtonTwkkzUocxxxdt[(int) (var_666[0x1][0][0b0])] - Math.sin(bCtpagwtonTwkkzUocxxxdt[00]));
                    break;
            }
        } while (pBsmfqqhgp != (int) Math.min(bCtpagwtonTwkkzUocxxxdt[(int) (var_666[0][0][0b1])], bCtpagwtonTwkkzUocxxxdt[(int) (var_666[bGhwoj[02][0][(int) (uwQ_YtY7v_nFUUpqR_[01][0][0b0])]][0][0x1])]));
        return Math.sqrt(XZXMXA_BGHLBRGXJ_THAHEORX / g_hLxbxxSsqjvGrliauqy);
    }
}

Czy bez wglądu w oryginalny kod źródłowy byłbyś w stanie powiedzieć, co robi kod poddany obfuskacji?

Zabezpiecz swoje projekty i algorytmy w Javie

Nie ryzykuj, użyj JObfuscatora do zobfuskowania i zabezpieczenia swoich projektów i algorytmów w języku Java.

Nasza firma posiada wieloletnie doświadczenie w technologiach obfuskacji (zobacz nasze obfuskatory dla Assemblera x86 i AutoIt). Aktywnie naprawiamy błędy, prowadzimy badania oraz rozwijamy nowe strategie obfuskacji dla naszych narzędzi.

Możesz liczyć na naszą ekspertyzę i wsparcie na tym polu.

Masz pytania?

Jeśli masz jakieś pytania dotyczące obfuskatora JObfuscator, masz jakieś uwagi, coś jest niejasne, napisz do mnie, chętnie odpowiem na każde Twoje pytanie.