下来打算把业余做的一个东东产品化并销售,所以遇到的第一个问题很直接的就是代码的保护问题,但node.js毕竟只能混淆,还是存在被还原的可能;所以想了个办法 1:把关键业务的几个JS文件计算出MD5值 2:用C++写一个组件,把上面1说的几个文件的MD5写死在组件里,当然组件里还封装了更核心的一些业务代码。 3:启动系统时,会通过C++去遍历并计算出1说的几个文件的MD5,并与写死在组件里的MD5进行对比,通过就正常启动系统,如果不对说明文件被改动过,直接报错。 以上是我想出的一个保护方案,想问下大家这样靠谱不?或是有其它更好的保护方案?
7 回复
@wldlzt 不加壳还是透明的,分分钟被破解,加了壳,性能就会受影响。破解主要看你软件的价值,只要价值足够,加壳还是有人会破。
真要保护代码,就不要把核心算法程序给客户,建个服务器,远程调用,包月或按次收费。
但我比较好奇,楼主的什么代码需要保护???
@wldlzt 计算在自己服务器上做,怎么绕?又不是远程验证。
你要想好自己的商业模式,是自己做平台,还是帮其他人做平台。不管是你自己做,还是跟人家合作,代码透明不透明都不是重点,你只要确保著作权是你自己的,人家合作方敢侵权?即便甩开你单干,没了技术支持,他们不是找死?如果人家有技术力量,就不会跟你合作,没技术力量,光复制你的代码有什么用?后续更新维护谁来做?
死代码其实没有任何价值的,尤其是互联网,变化太快了,今天一个新功能能吸引人,明天人家又搞出另外一个,随着用户规模扩大,构架也要跟着变,没有一成不变的东西。我不太看好通过保护代码来维护自己知识产权的,能够保护自己的只有不断的自我更新和变革。