通过javascript和本地存储实现清单安全的Web应用程序

通过javascript和本地存储实现清单安全的Web应用程序,javascript,html,security,web-applications,local-storage,Javascript,Html,Security,Web Applications,Local Storage,我想在多个移动平台上创建一个web应用程序;它不是免费的,而是商业性的,因此用户将拥有一个解锁代码(通过远程PHP代码)来访问index.PHP页面 此页面有一个清单文件,因此需要的所有文件都将下载到设备的脱机存储/缓存中。现在我的疑问是:用户是否有可能将我的所有HTML/CSS/JS文件复制到另一台设备,并在其他地方使用我的非免费脱机应用程序? 我认为答案是肯定的,因此我想创建一个JavaScript安全系统,该系统将检查特定值是否等于从本地SQL或索引存储中获取的另一个值 因此,第二个问题是

我想在多个移动平台上创建一个web应用程序;它不是免费的,而是商业性的,因此用户将拥有一个解锁代码(通过远程PHP代码)来访问
index.PHP
页面

此页面有一个清单文件,因此需要的所有文件都将下载到设备的脱机存储/缓存中。现在我的疑问是:用户是否有可能将我的所有HTML/CSS/JS文件复制到另一台设备,并在其他地方使用我的非免费脱机应用程序?

我认为答案是肯定的,因此我想创建一个JavaScript安全系统,该系统将检查特定值是否等于从本地SQL或索引存储中获取的另一个值

因此,第二个问题是:如果用户无法破解JavaScript代码,因为它做得很好,那么用户是否也可以复制与web相关的本地存储,从而取消我的安全检查?

如果是,那么在哪个设备上,在什么条件下?(Android、越狱iOS等的每个版本)


感谢您的关注。

下载到客户端的所有内容都必须被视为不安全、可共享和可检查

没有办法保护Javascript源代码或下载的任何数据。只需设置代理(如Fiddler)或直接从缓存复制数据(或从浏览器中保存源文件)

即使使用私钥-公钥方法也不行,因为跳转用于执行检查的函数相当容易

所以,是的,所有数据都可以复制和共享,不存在牢不可破的代码:)

这是一个典型的情况——你需要计算出,无论你做什么,你的软件都会被非法使用——你可以让它变得更困难,但不能阻止它(特别是在下载Javascript的情况下)

我的2美分:确保你有一个好的许可证,并相信大多数用户(?)会诚实并为许可证付费。也许你的许可证可以是面向用户的,而不是面向设备的,如果用户想在他的另一台设备上使用它,就不需要“破坏”安全性(法律案例通常允许用户以任何方式这样做,这是一件好事!)

此外,根据您的目标群体是谁,大多数用户都不知道如何“破坏”安全性(除非您以开发人员为目标)。如前所述,您需要预先计算发生这种情况的特定风险

经常更新、更改代码、重命名函数、更改服务器API(强制更新)——并不能防止安全漏洞,但会让“黑客”更加痛苦地不断跟上

你会赢一些,你会失去一些。就是这样