Алексей POS_troi: разумееется программу защитить программой невозможно. Для этого нужно пользоваться аппратными средствами шифрования.
Сказать честно, не понял на счет "нелегальные конеекты" и VPN ... как там возможно отследить левых клиентов, если с терминала скопировали ВСЕ, сертификаты, приватные ключи и даже МАС?
отчасти согласен, но:
во-первых, тут не понятно как ограничить чужие терминалы по доступу к серверу
во-вторых, это не терминал оплаты, там нужен реалтайм
Спасибо за интересное предложние.
Впринципе эта решение аналогично системе плагинов что я выше предлагал. Кода даже можно не загружать а расшифровывать с локального хранилища.
Но мне тут не нравится что это все действительно только для java-классов, т.е. ресурсы уже не удасться загрузить таким образом.
Есть aar библиотеки для андройда, в которые можно хранить и ресурсы. Но ... как их грузить динамически не очень понятно.
связь с интренетом никто хорошую не обещает и так же важен реалтайм.
К тому же кто мешает скопировать эту обертку? и использовать её в дальнейшем...
В серьезных компаниях это решается secure boot, где в загрузчик чипа прописывается допустим AES ключ для расшифровки флеш памяти. Но это слишком сложный пилотаж(
Александр +: там флеш память будет или sd карта
но в андройде есть же для этих целей шифрование разделов, но из-за пинкода при перезагрузке устроства ф-цией это пользоваться не удобно.
Хочется понять, как можно расшифровку разделов сделать удаленно или применить другие методы защиты.
Пока что на ум приходит сделать приложение со всей ф-циональность в плагинах, которые будут расшифровываться /tmp (ramfs) раздел. Таким образом при перезагрузке или по удаленной команде, расшифрованные копии будут теряться.
Прекрасн опонимаю, что от всего защититься не возможно, но хочется максимально усложнить задачу реверса, наиболее простыми средствами
мне как раз надо " работы с потоком входящих данных в Java-манере" дабы избежать базы enumб которая еще может потом видоизменяться и смещения потом будут уплывать(
Похоже ничего не остается кроме как потоков. Хотя я надеялся найти более элегантное решение. Посмотрел про NIO, интересная вещь, спасибо за упоминание, но не понял как она может симулировать структуры...
От структур никак не отказаться, очень много переменных и очень много кода на них завязано. По сути дела телефон должен заменить устройство на МК, и требуется перенести все алгоритмы с Си на Java. Для структур в этих алгоритмах мне требуется только чтение, никаких приведений к указателям и записи не будет, все довольно безобидно.
хотелось бы что бы в яве можно было обращаться к элементам структур так же как в С
public void Func()
{
int x = struct1.data2; //что бы х принял значение data1 из структуры struct1
//либо просто
int x = data2; //имена переменных в структурах не пересекаются
....
}
Написано
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.