Защищенный код Java в Linux

Обратите внимание, что если вы видите эту ошибку, и вы уже отсортировали по определенному колонка и бьетесь головой о стену например sort -k4,4, тогда вам также может понадобиться установить разделитель для команды сортировки

По-видимому, OP уже сделал это с -t ' ', но для обычного текста, разделенного табуляцией, я бы рекомендовал

sort -t $'\t' ...

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

Затем, если вы передали эти отсортированные данные для соединения, и у вас есть

join -t $'\t' ...

, то это приводит к появлению сообщения об ошибке о том, что они не отсортированы. Как отмечалось выше, join может не принимать -t ' '.

0
27.02.2017, 12:49
1 ответ

Если люди имеют физический доступ к компьютеру, на котором запущен ваш код, значит, они имеют доступ к вашему коду. Если вы не хотите, чтобы люди имели доступ к вашему коду, не давайте им доступ.

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

Исключение составляют случаи, когда компьютер предлагает безопасную среду выполнения, которая физически защищена. Смарт-карты предлагают такую ​​среду и довольно дешевы, но имеют очень ограниченную вычислительную мощность. (Обратите внимание, что смарт-карта просто для хранения ключа для зашифрованного кода, который находится на большом компьютере, вам не поможет, поскольку целью атаки будет более крупный компьютер, а не смарт-карта.) Аппаратные модули безопасности также предлагают такую ​​среду и примерно такие же мощные, как недорогой ПК, но они очень дороги. Некоторые компьютеры с защищенной средой на основе Intel SGX или ARM TrustZone предлагают промежуточный уровень защиты, только от «случайных» физических атак (открывайте корпус, но не пытайтесь взломать чипы ).

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

3
28.01.2020, 02:25

Теги

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