Конфиденциальность программы

Я создал алгоритм и использовал аппаратное обеспечение Arduino, и я не хочу, чтобы пользователи моего оборудования могли читать или копировать Программу, поэтому есть ли какой-либо защитный код или что-то еще, что я мог бы использовать. Но я должен получить к нему доступ, когда мне нужно. Это должно быть похоже на администратора и пользователей.

, 👍0

Обсуждение

Быстрый поиск дал мне [этот вопрос](https://electronics.stackexchange.com/questions/53282/protecting-avr-flash-from-reading-through-isp). Может быть, это подходит для вас, @chrisl

Скорее всего, я мог бы довольно легко скопировать ваш алгоритм, даже не видя вашего кода. Мне просто нужно немного поиграть с продуктом. Сохранение кода в секрете больше не является способом заработать деньги в этом бизнесе., @Delta_G


1 ответ


1

Код, отправляемый в Arduino, является «скомпилированным», что означает, что он преобразуется из удобочитаемой формы в двоичные данные, понятные процессору. Написанный вами «код» остается только на вашем компьютере.

Это сам по себе способ шифрования, поскольку невозможно извлечь исходный код из этих двоичных данных. Эти данные можно только «декомпилировать». Это процесс, который берет двоичные данные и автоматически преобразует их в удобочитаемый код, но это не тот код, который вы создали изначально. В нем нет комментариев и имен логических переменных. Это также затрудняет понимание.

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

,