Надежная пробная стратегия - PullRequest
3 голосов
/ 07 мая 2009

Я знаю, что на SO уже есть подобные вопросы. Но мой вопрос более теоретический.

Мне интересно, можно ли разработать надежную пробную систему? Под надежной защитой я подразумеваю такую ​​систему, которая не может быть взломана, даже если взломщик знает алгоритм такой системы?

Извините, если это не вопрос программирования.

Редактировать: Я думаю, я должен сделать мой вопрос более практичным. Я спрашиваю о целой системе, а не об отдельном приложении. Система состоит из ПК с ОС Linux и подключенного к нему оборудования. Может быть, я могу использовать шифрование жесткого диска?

Ответы [ 4 ]

4 голосов
/ 07 мая 2009

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

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

3 голосов
/ 05 августа 2009

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

Обратите внимание, как я сказал, что это теоретически. Неизбежно, вы найдете аппаратного хакера, который найдет способ изменить аппаратное обеспечение (см. modchips ). Оттуда они могут загрузить любое программное обеспечение, которое они хотят, и изменить программное обеспечение, которое уже там.

Та же модель, которая применяется к физической безопасности (сейфы, хранилища и т. Д.), Применяется к программному обеспечению. Смысл в том, чтобы сделать кражу / копирование товаров более дорогостоящим, чем их получение законными способами. Вы никогда не сможете создать надежную систему, но вы можете легко предотвратить взлом вашего продукта сценаристами и хобби-хакерами. Плюсы, с другой стороны, живут, чтобы взломать. Они найдут способ.

1 голос
/ 07 мая 2009

Вы можете спроектировать свое приложение так, чтобы оно зависело от удаленного сервера, который контролируется кем-либо, кроме вас.

0 голосов
/ 07 мая 2009

Нет. Вы можете сделать это очень сложно, но ваш вопрос сводится к тому, «как я могу позволить кому-то запускать код, но не позволять им запускать код».

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...