OOB 应用程序可以复制到另一台机器吗?
我正在编写一个需要复制保护的商业 WPF 应用程序。由于这是 WPF,如果可能的话,我正在考虑将其移植到 Silverlight OOB 应用程序。我不确定的一件事是 OOB 应用程序是否很容易“破解”,并且可以手动复制到另一台计算机,而无需访问 Web URL 来下载它。有针对 OOB 应用程序的复制保护解决方案吗?
请帮忙 谢谢 康斯坦丁
i am writing a commercial WPF application that needs to be copy-protected. since this is WPF, I am considering porting it to a Silverlight OOB application, if possible. one thing that i am not sure about is whether OOB application is easily "hackable" and can be manually copied to another machine without going to the web URL to download it from. are there any copy protection solutions for OOB applications?
please help
thanks
konstantin
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
我还没有尝试复制一个,但我认为如果您有 .XAP 文件,您将能够在另一台计算机上运行它(除非您在 .XAP 文件中内置保护)
如果您转到此文件位置:
c:\Users\UserName\AppData\Local\Microsoft\Silverlight\OutOfBrowser
您可以看到所有已安装的 OOB 应用程序。菜单上的快捷方式只是使用 SLlauncher 打开 .XAP 文件...因此我怀疑它可以再次复制并安装(使用 SLlauncher)。
我认为你需要在你的应用程序中建立保护......
I have not tried copying one, but I think if you have the .XAP file you would be able to run it on another computer (unless you built protection into the .XAP file)
If you go to this file location:
c:\Users\UserName\AppData\Local\Microsoft\Silverlight\OutOfBrowser
You can see all the OOB apps installed. The shortcut on your menu is just using SLlauncher to open the .XAP file... hence I suspect it could be copied and installed (using SLlauncher) again.
I think you would need to built protection into your app...
“复制保护”通常是完全用词不当。当您将组成您的应用程序的“部分”交给某人时,从技术上讲,您无法采取任何措施来防止它被复制。
几乎所有“复制保护”方案实际上所做的就是使应用程序在复制时难以使用。这可以通过多种方式来完成,包括将应用程序实例锁定到特定的硬件或用户,或者通过跟踪“激活”,或者通过 SaaS(其中任何桌面应用程序在没有伴随的在线服务订阅的情况下都是无用的) )
如果不了解更多关于您的应用程序如何工作的信息,就不可能获得更详细的答案。某些类型的应用程序本质上根本不需要传统的复制保护(例如与在线订阅紧密相关的应用程序),而其他类型的应用程序则很难保护。
但也许可以回答你的问题之一; Silverlight OOB 应用程序并不比浏览器中的应用程序“更安全”。事实上,它的安全性可能稍微不太容易被复制。
"Copy Protection" is generally a complete misnomer. When you hand the 'bits' that comprise your application over to someone, technically speaking, there isn't anything you can do to prevent it from being copied.
What pretty much all 'copy protection' schemes actually do is make it difficult to use the application when it is copied. This can be done in a multitude of ways, including keying an application instance to a specific piece of hardware, or a user, or via tracking 'activations', or through SaaS (where any desktop application is useless without an attendant, online service subscription)
A more detailed answer is not possible without knowing more about how your application works. Some types of applications by their very nature do not need traditional copy protection at all (such as those tied tightly to online subscriptions), and others are very difficult to protect.
But to perhaps answer one of your questions; a Silverlight OOB app isn't any 'safer' than one in the browser. Actually, it might be ever so slightly less safe from being easily copied.
您无法阻止人们复制或破解您的应用程序,您只能让他们为难。您还必须平衡您的利益(应用程序的安全性和为其获取现金)与用户的利益(能够以简单的方式使用应用程序,而不会受到版权保护的困扰)。
您可以使用登录名、机器级证书等来保护对 Web 服务的访问,但这也不是一个完整的解决方案。绝大多数用户不具备将您的应用程序复制到另一台计算机的专业知识,特别是如果您正在执行诸如将加密的注册密钥放入注册表之类的操作(您可以使用某些计算机的信息作为加密的一部分)。但你永远无法阻止那些拥有专业知识的敬业人士。
如果您的应用程序足够出色并且定价合适,那么人们不会介意为其付费。
You cannot prevent people copying or hacking your app, you can only make it difficult for them. You also have to balance your interests (the security of your app and receiving cash for it) against the user's interests (being able to use the app in a simple way without copy protection annoyances getting in their way).
You can secure access to your webservices using logins, machine level certificates, etc., but that is alo not a complete solution. A vast majority of users will not have the expertise to copy your app to another machine, especially if you are doing things like placing encrypted registration keys in the registry (you could use some of the machine's information as part of the encryption). But you will never stop the dedicated people who do have the expertise.
If your app is awesome enough and priced at the right point then people won't mind paying for it.