Как скрыть каталог файлов программ в программном обеспечении php desktop [duplicate]

  • Первая скобка создает новый анонимный внутренний класс.
  • Второй набор фигурных скобок создает инициализаторы экземпляра, такие как статический блок в классе.
  • Например:

       public class TestHashMap {
        public static void main(String[] args) {
            HashMap map = new HashMap(){
            {
                put("1", "ONE");
            }{
                put("2", "TWO");
            }{
                put("3", "THREE");
            }
            };
            Set keySet = map.keySet();
            for (String string : keySet) {
                System.out.println(string+" ->"+map.get(string));
            }
        }
    
    }
    

    Как это работает

    Первая скобка создает новый анонимный внутренний класс. Эти внутренние классы способны получить доступ к поведению своего родительского класса. Итак, в нашем случае мы фактически создаем подкласс класса HashSet, поэтому этот внутренний класс способен использовать метод add ().

    И Второй набор фигурных скобок - это ничего, кроме инициализаторов экземпляров. Если вы напомните основные концепции Java, вы можете легко связать блоки инициализатора экземпляра со статическими инициализаторами из-за аналогичной структуры, подобной структуре. Единственное отличие состоит в том, что статический инициализатор добавляется с ключевым словом static и запускается только один раз; независимо от того, сколько объектов вы создаете.

    more

39
задан Sherif 9 November 2015 в 16:20
поделиться

6 ответов

Есть много способов сделать это (вы можете захотеть обфускать исходный код, вы можете сжать его, ...). Некоторые из этих методов требуют дополнительного кода для преобразования вашей программы в исполняемую форму (например, сжатие).

Но то, что не могут сделать все методы, сохраняет секретный код. Другая сторона получает ваш двоичный код, который всегда может быть преобразован (обратный дизайн) в удобочитаемую форму снова, потому что двоичный код содержит всю информацию о функциональности, которая предоставляется в вашем исходном коде.

12
ответ дан Abrixas2 18 August 2018 в 08:02
поделиться
  • 1
    Это единственный ответ, который является объективным, правильным и не вводит в заблуждение. – MickLH 8 February 2015 в 17:33
  • 2
    Хороший ответ, но чтобы определить, что ... обратный инженерный двоичный код возможен, но нелегко. Вы должны быть готовы потратить на это значительное время и ресурсы, и в этом заключается большая часть сдерживающего фактора. – CS Koh 9 February 2015 в 08:44

https://toolki.com/ru/php-decoder/

Декодировать скрытые PHP eval (), gzinflate (), str_rot13 (), str_replace () и base64_decode () [/ д2]

-15
ответ дан George 18 August 2018 в 08:02
поделиться

Вы можете просто разделить интерфейс и бэкэнд. Интерфейс размещен на сервере клиентов с API, который вызывает вызовы на сервер на вашем сервере. Это удерживает весь собственный проприетарный код и заставляет пользователей подписывать / оплачивать подписки.

1
ответ дан John Proestakes 18 August 2018 в 08:02
поделиться
  • 1
    OP сказал let others have the system installed and run on their machine, поэтому размещение бэкэнд на вашем сервере не является вариантом – ibex 31 May 2018 в 21:57

Есть некоторые онлайн-сервисы для обфускации php, чтобы скрыть код от других. Это один Свободный обфускатор правого кодера онлайн

@ Главич прав. «Ничто не является пуленепробиваемым». Вы можете кодировать исходный код и скрывать от более крупных программистов, а не от экспертов.

-3
ответ дан Rana Hyder 18 August 2018 в 08:02
поделиться

Да, вы можете скрыть / закодировать / зашифровать исходный код php, а «другие» могут установить его на своей машине. Вы можете использовать следующие инструменты для достижения того же самого.

Но эти «другие» также могут декодировать / расшифровать исходный код, используя другие инструменты и услуги, найденные в Интернете. Таким образом, вы не можете на 100% защитить свой код, что вы можете сделать, сделать его более сложным для того, чтобы кто-то мог перепроектировать ваш код.

Большинство этих инструментов выше поддерживают кодирование и обфускацию.

  • Кодировка скроет ваш код, зашифровав его.
  • Обфускация сделает ваш код трудным для понимания.

Вы можете использовать оба (кодирование и обфускация) или один, в зависимости от ваших потребностей.

42
ответ дан Rohit Chemburkar 18 August 2018 в 08:02
поделиться
  • 1
    Для ясности, действительно ли шифрование сделано? Он просто кодирует правильно! – Keerthivasan 27 August 2016 в 05:33
  • 2
    любые бесплатные альтернативы? – Ahmad Seraj 6 January 2017 в 19:40
  • 3
    @AhmadSeraj вы можете попробовать fopo.com.ar, который является бесплатным онлайн-инструментом для обфускации. – Rajib Sarker 10 March 2018 в 05:24

Существуют коммерческие продукты, такие как ionCube (которые я использую), источник-хранитель и Zen Guard .

В сети также есть сообщения, в которых утверждается, что они могут перепроектировать закодированные программы. Насколько они надежны, сомнительно, так как я их никогда не использовал.

Обратите внимание, что для большинства этих решений требуется, чтобы на своих серверах был установлен кодировщик. Таким образом, вы можете захотеть убедиться, что ваш клиент устраивает это.

5
ответ дан Sutandiono 18 August 2018 в 08:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: