作者MasterChang (Han-Yuan)
看板Python
标题Re: [问题] 软体限制使用者/安装/复制
时间Fri Sep 6 22:20:16 2019
不要浪费生命干这种事情,有现成的解决方案
https://www.pronew.com.tw/
我公司产品用Sentinel 的usb key port做,因为我们都是做专业
测台软件,所以怕厂商硬体逆向软体随便copy,软件绑key跟主机
很方便。
这套好处是你程式开发完再加锁就好。
※ 引述《jakeasa123 (酒虎)》之铭言:
: ※ 引述《bobshih (夏天)》之铭言:
: : 你好 各位先辈
: : 我是新手 想请教
: : 如果开发一个软体 打包成exe档出售
: : 但遇到 软体给使用者A後 怕使用者A 私下复制提供他人使用
: : 或是使用者A 有两台电脑 要同时安装其软体
: : 该如何限制使用者 购买的软体 只能安装於一台电脑 不能复制/转移其他电脑/其他人使用
: : 我之前有跟巴基斯坦人 购买过小软体
: : 软体打开後 要输入帐号密码连线後 (应该是连到伺服器或是对方电脑吧)
: : 才能使用软体 并且该软体可以限制 安装几台电脑 超过安装次数/或是使用期限
: : 则无法安装开启软体
: : 请问这是什麽技术? 又是该往哪方面找资料??
: 各位好,
: 小弟遇到了同此原文的问题,
: 还望各位指点一些关键字或是解决方法。
: 小弟所遭遇的问题和原文相近,
: 上头的指示是希望制作成安装档而不是执行档,
: 也就是程式帮使用者安装後,
: 他即使复制给别人也不能运作(或是会跳出警告)。
: 根据原文的留言:
: 「→ uranusjr: Device UUID UDID, 不过防止复制什麽的其实都可以破解辣」
: 我找到了以下的程式码:
: import subprocess
: x = subprocess.check_output('wmic csproduct get UUID')
: 藉此可以得到电脑的 UUID,
: 原先是想要将 UUID 登录至伺服器上,
: 这样只要每次开启程式自动与伺服器联系就能判断要不要跳警告了;
: 不过後来考量到以小弟的所在环境来说,
: 上头给不给开伺服器是还好解决,
: 但使用者那边没开网路或网路被限制在内网的问题比较难解决……
: 关於上述这些内容,
: 想到的解决办法是取得要开放的 UUID,
: 直接写在 .py 内的 list 内并用 pyinstaller 生成 .exe 执行档,
: 执行时发现在 list 内找不到 UUID 就跳错误。
: 想请教还有其他推荐的关键字或解决办法吗?
: 另外,
: 把 Python 写出来的程式包装成安装档这部分该用什麽关键字?
: 我自己试了几组关键字,
: 结果大多是如何安装 Python、如何安装某某函式库或是 Pyinstaller 如何使用等等,
: 可能是因为我关键字一直包含 Python 和 install 两个词,
: 只是想要调整关键字也找不太到该加什麽或改成什麽……
: 小弟经历浅薄,
: 还请各位赐教。
: 在此先谢谢各位前辈花时间阅读与回应了,
: 谢谢!
--
不要问我从哪来,我只是一个浪迹天涯的工程师....
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 222.114.153.229 (韩国)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1567779619.A.C46.html
1F:→ AndCycle: python没办法做出native exe, 基本上这类东西都不太适用 09/06 23:44
2F:→ AndCycle: 然後 pyc 的反阻译门槛非常低, 大多是做防君子的, 09/06 23:44
3F:推 Falldog: Embedded Python可以做出native exe啊 09/09 23:53
4F:推 jakeasa123: 谢谢前辈的推荐,不过暂时因为一些因素应该没办法考量 09/10 15:11