Через некоторое время с Raspberry Pi 2 Model B v1.1. У меня есть следующие проблемы?
- Я знаю, что это направлено на улучшение уязвимых образовательных секторов, но есть возможность продавать продукт, основанный на RPi ?. Чтобы заработать на этом деньги? Стать с ним миллионером?
- Как мне защитить разработку, скажем, я не хочу, чтобы кто-то брал мою RPi SD-карту, дублировал ее и имел свои собственные реплики ? Моя текущая альтернатива - заполнить порт SDCard суперклеем :). Другой выбор может сделать RPI для пинг сервера лицензий в Интернете, который, конечно , потребуется WiFi соединение. Или аппаратный HASH ID (это должен быть лучший ответ, я думаю ...)
- Я проверил, есть ли механизмы для восстановления установки, даже если у вас нет рута, путем монтирования SD-карты. Опять же, мое лучшее решение - суперклейный подход ....
Заранее спасибо.
Ответы:
Если вы действительно заинтересованы в защите своей интеллектуальной собственности, то вы можете объединить свое приложение на основе Rapberry Pi с некоторыми внешними аппаратными ключами на основе микроконтроллера (MCU, такими как AVR, PIC, 8051 ...) (подключенными к Pi через USB, RXTX, I2C, SPI, 1wire ...). Например, приложение на стороне Pi генерирует случайное число, которое отправляется в MCU, декодируется и отправляется обратно в качестве ключа разблокировки для расшифровки чего-то важного. Кроме того, у вас есть важная функция, выполняемая непосредственно в MCU (вы просто передаете параметры и получаете результат из MCU). Вы можете себе представить, как это увеличит сложность взлома для хакера на порядок, поскольку его знания должны быть намного шире, чем обычно. Там нет идеальной защиты, но если вы действительно хотите сделать это вызов, то это может быть путь.
источник
Я думаю, что это была идея с модулем вычислений все время. Это не должно быть проблемой, чтобы получить прибыль.
/ 4. Вариант суперклея, вероятно, является хорошим компромиссом. В конечном итоге вы не можете победить злоумышленника с физическим доступом к устройству. Посмотрите на игровые приставки, которые, вероятно, вложили миллионы в инфраструктуру DRM, и все они в конечном итоге упали. В другом духе вы также можете принять открытость и продать версию своего продукта для разработки и включить какой-то SDK. Отзывы, которые вы получаете от технической группы пользователей, могут оказаться полезными и работать в ваших интересах.
источник
Hardware Key
предложенный Avra , и похоронить SD-карту с SuperGlue внутри своего разъема?Хотя эта практика определенно теряет покрытие, вы будете удивлены количеством USB-разъемов, которые были наклеены на настольных компьютерах в корпоративных офисных средах. И я говорю о крупных транснациональных корпорациях здесь.
Но теперь по теме ...
Для коммерческих проектов, где защита ИС является основным фактором, Pi лучше всего подходит для раннего создания прототипа / подтверждения концепции. Даже если защита не будет проблемой, развертывание Pi в более широком масштабе - ИМХО не лучшее решение - по ряду причин, которые я описал в более ранней теме на этом форуме.
Не существует системы, защищающей от обратного проектирования / взлома / воспроизведения. Любая система пригодна для использования. Однако каждая система имеет оценку проникновения. Благодаря открытому подходу и внешней SD-карте Pi имеет очень низкий уровень. Специально разработанная военная апробированная аппаратная плата с пользовательским SoC, сэндвич-компонентами и многослойной печатной платой в сочетании с пользовательским загрузчиком, аппаратное шифрование будет иметь более высокий балл.
Кроме того, есть фактор развертывания. Чем шире ваш рынок, тем интереснее будет людям взломать и украсть ваши технологии.
Если аппаратное обеспечение - это ваша составляющая сопротивления во всей настройке, а защита вашей технологии является основным фактором, я не думаю, что Pi - это продукт для вас. Если ваше оборудование является посредником для продажи услуг, возможно, защита технологий должна осуществляться на стороне сервера, а не на стороне клиента.
Мы используем Pi для продажи таких услуг. Наше программное обеспечение на Pi имеет повышенный уровень защиты, мы используем скомпилированное приложение C, заблокированное на MAC и / или серийном номере процессора. Но, в конце концов, без нашей серверной части даже исходный код практически бесполезен.
источник
Вы можете использовать контрейлерные внутри малины с ключом шифрования. На рынке есть пара коммерческих устройств. Я использовал это программное обеспечение Serial Protection для Raspberry Pi , которое работает очень хорошо.
источник
Сделайте это с открытым исходным кодом
Серьезно, не пытайтесь защитить его от копирования. Сделайте это с открытым исходным кодом. Если возможно, позвольте другим присоединиться к вашему проекту.
Тогда взимайте плату за услуги. Вы можете сделать ведра денег, если вы делаете это правильно.
Red-Had делает это так и несколько других компаний. У них все хорошо и они растут.
источник
Несколько моих центов:
...
источник
В качестве защиты начального уровня найден уникальный идентификатор SD-карты,
/sys/block/mmcblk0/device/
который не клонируется обычным программным обеспечением для клонирования образов дисков. Это имеет то преимущество, что не требует отдельного устройства для хранения уникального идентификатора и работает довольно хорошо, как второй уровень защиты после суперклея. Это по крайней мере остановит людей, которые способны просто клонировать SD-карту.Другой совет, касающийся защиты с использованием идентификаторов, - избегать использования простой проверки, т.е.
Подобные простые проверки легко обнаружить (путем поиска известного идентификатора или отслеживания вызовов
exit()
) и удалить. Гораздо лучший подход - использовать идентификатор в качестве константы в расчетах. То есть вместоi++
где-то в вашем коде вы будете писатьЭто будет намного сложнее обнаружить, так как точный идентификатор не будет указан в вашем коде дословно (
0xDEADBEEF + 1 == 0xDEADBEF0
), а проверка всех вызововexit()
также не покажет местонахождение вашего защитного кода. Вместо этого ваш код просто рухнет в системе с неверным идентификатором, и злоумышленнику придется отладить логику вашего приложения, чтобы понять и устранить проблему.источник
Используя внешний компонент, я имел в виду, что компонент безопасности решит эту проблему. Если вы действительно думаете, что ваша идея великолепна и требует дополнительных затрат, я бы посоветовал вам использовать некоторые профессиональные MCU / CPU для этого. Как и серия Broadcom BCM58101, она не очень экономична и не дружелюбна для нового пользователя, но высокий уровень безопасности также может защитить вашу идею / дизайн.
источник