我读了一篇关于 reverse engineering 的文章Windows 8 应用程序。最令人担忧的事情之一是它们被修改的容易程度,以及微软如何在其中包含许可。
特别值得注意的是 Javsscript(尽管 C# 也容易受到 IL 重建的影响)。他们提供了函数LicenseInformation.IsTrial()
。但是,正如文章中所述,如果您更改了一些权限,您可以直接编辑 javascript,只需将 IsTrial
替换为 false
即可。
本文是在 Windows 8 的早期(第一个)公开版本中撰写的。他们采取了哪些措施来防止当前发布版本中发生修改? Javascript 应用程序是否应该被视为无法货币化?
最佳答案
应用程序包经过签名并定期检查是否被篡改。 Windows 不会启动已标记为已被篡改的打包应用程序(修改包中的文件是一种篡改形式)。
"App packages and deployment"文档页面状态:
All packages must be signed with a trusted signature. This enables Windows to confirm the identity of the signer and verify that the contents of the package haven't been tampered with. Windows won't deploy an unsigned package.
"Signing an app package"文档页面状态:
If any files in an installed package are modified, signing verification might prevent the app from launching.
也就是说,没有任何技术限制可以阻止某人破解应用程序包并构建新的修改包。为此,需要开发人员许可证。不过,此时它与用户可以下载和安装的任何其他程序没有什么不同。
关于javascript - 是否有任何预防方法可以删除 `IsTrial` 并轻松破解 WinRT 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12754265/