Существуют ли одноплатные компьютеры (SBC) с Android и защитой от копирования для установленного программного обеспечения? - PullRequest
2 голосов
/ 02 июня 2019

У меня есть приложение для Android, которое может работать на одноплатном компьютере (SBC) в режиме «выделенного устройства». Есть ли способ запретить кому-либо копировать его?

Любые конкретные примеры доски приветствуются.

P.S. Raspberry Pi и Tinker Board, вероятно, не будут работать, потому что скопировать содержимое их SD-карты очень просто.

Ответы [ 2 ]

0 голосов
/ 11 июня 2019

Я пока не вижу идеального решения, но вот лучшие кандидаты:

  1. Использование стандартного телефона Android (или планшета) в режиме «выделенного устройства».Большинство стандартных телефонов уже имеют безопасную загрузку.TODO: исследуйте, насколько хорошо пользовательское приложение защищено от копирования в этом случае.

  2. Используйте SBC с впаянным eMMC и накройте его (или всю плату) эпоксидной смолой или чем-то еще.

  3. Использование SBC с безопасной загрузкой.TODO: найти с поддержкой Android.

  4. Установите уникальную версию программного обеспечения на каждой плате, которая проверяет идентификатор процессора или MAC-адрес или что-то еще.Недостаток: усложняет систему сборки и сравнительно легко победить.

0 голосов
/ 11 июня 2019

Используйте USB-токен с LUKS ... просто потому, что ключ не должен существовать в незашифрованном разделе и не может быть прочитан из зашифрованного раздела. обычно эти токены даже поддерживают два ключа, поэтому другой можно использовать для дальнейших действий. Копировать SD в любом случае проще, чем копировать токен - и при объединении вторичного ключа с веб-сервисом это может быть эффективной защитой от копирования, поскольку оно привязано к аппаратному обеспечению (вам также может понадобиться запустить ключ -сервер, если такой USB-токен необходимо будет воспроизвести и заменить). Я бы сомневался, что SBC без наименьшего дополнительного фактора безопасности может обеспечить что-то похожее на защиту от копирования или активацию программного обеспечения.

...