【问题标题】:Cordova / Phonegap lock the source app code to be not edited/hackedCordova / Phonegap 锁定源应用程序代码不被编辑/黑客
【发布时间】:2014-12-03 10:00:53
【问题描述】:

每个人都知道 cordova 和 phonegap 使用 webview,所以应用程序包含 html 和 js 和 css 文件,这意味着它们可以被编辑。

我想知道,一旦应用程序安装在手机上,有什么方法可以锁定/使这些文件不可编辑?以某种方式隐藏代码?

很高兴能对此有所了解,但这应该是应用商店应该做的,我猜开发人员不应该隐藏代码,但如果您有任何技巧/想法/线索,请分享!

谢谢!

【问题讨论】:

  • 一切都是可编辑的。
  • 将 webview 指向服务器端编写的应用程序?
  • 即使它不是浏览器,你还是不想把秘密放在“view-source”中......
  • 甚至可以反编译java代码。最难反编译和理解的是本机代码。这个不用想太多,没人会用你的代码!
  • @Ali 当然 :) 最后只是一种好奇心

标签: javascript android ios cordova web-applications


【解决方案1】:

您可以混淆 html、css 和 javascript 文件...

一些有用的链接:

您必须了解混淆不是加密。
您的代码可以反转。但不是懒惰的程序员。

【讨论】:

  • 谢谢,但我想知道是否有任何方法可以隐藏和锁定代码,我的意思是没有人可以编辑它......:P
【解决方案2】:

由于到目前为止提供的答案都没有满足赏金的要求,我可以从 Cordova 项目本身给你the official statement

不要假设您的源代码是安全的

由于 Cordova 应用程序是由打包在本机容器中的 HTML 和 JavaScript 资产构建的,因此您不应认为您的代码是安全的。可以对 Cordova 应用程序进行逆向工程。

此外,还有一种方法可以在打包时加密代码,然后在使用时解密。当然这也不安全,但给黑客带来了更多的麻烦。请参阅this blog post 了解如何在 iOS 上实现它。不过,同样的概念也适用于 Android 或任何其他平台。关于安全性的要点是加密密钥需要始终在包中可用。

【讨论】:

    【解决方案3】:

    您可以缩小和混淆您的代码,从而使其更难编辑/理解。我最喜欢的是用于 windows 的 GUI YUI Compressor。 LINK to GUI YUI for Windows

    取消选中 Verbose 通常是个好主意。我将我的设置为 UTF8 并保留分号。它对我来说非常有效。

    【讨论】:

      【解决方案4】:

      在大多数情况下,混淆 JS 文件就足够了,并且可以使用 gulp(我推荐)或 grunt 之类的工具轻松完成。

      但是,对于关键应用,您可以使用本机(编译)插件,以加密格式包装文件,并在应用启动时解密(当然这肯定会牺牲一些性能)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-03-01
        • 2012-08-29
        • 1970-01-01
        相关资源
        最近更新 更多