Защита кода Ruby

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

Так; каковы ваши предложения, какой подход я должен выбрать?


person Cihan Keser    schedule 28.10.2009    source источник
comment
JRuby может компилировать код в файлы java .class kenai.com/projects/jruby/pages/JRubyCompiler   -  person clyfe    schedule 08.03.2010


Ответы (2)


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

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

person Ken    schedule 29.10.2009

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

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

person Keith Nicholas    schedule 28.10.2009