Вопрос

Я разрабатываю коммерческий проект на встраиваемой плате на базе ARM с пользовательским ядром Linux на ней, используя Ruby.Целевое рабочее пространство проекта и устройства - это закрытая среда, без ethernet, inernet, устройств ввода-вывода и т.д...Я хочу защитить свой код / программу так, чтобы;это будет работать только на определенных машинах, которые я разрешаю (так;люди не могут просто скопировать и вставить мой код / программу на свои встроенные платы и запустить ее без разрешения).Вероятно, это можно сделать с помощью MAC-адреса компьютера, хотя;У меня нет никакого опыта в этом вопросе.Я думаю, просто простое if(устройство.MACAddr == "XX:XX....XX") не подлежал бы удалению (не говоря уже о том, что люди могут просто легко удалить проверку из моего кода).Я не могу использовать некоторые ruby-обфускаторы, которые я нашел через Google, из-за;устройство не запускает ruby-external-C-libraries или что-то в этом роде, только чистый ruby-код.

Итак;каковы ваши предложения, какой тип подхода мне следует избрать?

Это было полезно?

Решение

Это изоморфно проблеме DRM.Вы даете человеку и замок, и ключ к этому замку, и пытаетесь помешать этому человеку использовать ключ так, как вам не нравится.

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

Другие советы

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

в принципе, делайте очень мало, если вообще что-либо делаете, чтобы обезопасить его, в основном это напрасная трата времени и усилий

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top