我想创建一个非开源的JavaScript应用程序,因此我希望学习如何模糊我的JS代码?这可能吗?
我需要编写一个GUI相关的JavaScript库.它会给我的网站带来一些优势(就我能提供的功能而言) - 直到我的竞争对手玩它足够长的时间来弄清楚如何自己编写它(或者最终破解下载的脚本).我可以接受这样一个事实:它会随着时间的推移而被模仿 - 这对于课程(它的业务部分)而言是相同的.我只想在几个月的时间里呼吸人们去的地方"哇 - 他们这样做了怎么样?" - 这给了我几个月的免费宣传和一些动力去转移到其他事情上.
为了清楚起见,我甚至不关心那些仍然会破解消息来源的核心黑客 - 这就是一场不值得战斗的输掉战争(无论如何我接受我的代码并非"如此珍贵").然而,我无法忍受的是,通过使用任何人都可以下载和使用的普通JavaScript,有效地简单地将所有可能进入图书馆的辛勤工作交给我的竞争对手.如果有人打算使用我的工作,那么我肯定不想简单地把它交给他们 - 我希望他们努力解码它.如果他们可以解码它,他们应该得到代码(他们很可能会发现他们自己可以编写更好的代码 - 他们只是没有') - 所以,我并没有声称没有人可以写这个(这在任何情况下都是一个荒谬的主张) - 而是,我所说的是没有人(到目前为止)已经使我的功能谈论,可用于这个特定的行业 - 而我(作为一个企业家而不是一个极客/编码员),想要为它的所有价值赢得它,而它持续,直到它(不可避免地)被黑客攻击.
已经确定的事实是,我正在"攻击"的行业中没有一个网站具有此功能,因此这种库的价值是不可否认的,并且不值得讨论(即这不是我在这里要求的).
我想要找到的是混淆javascript库的优点和缺点,以便我可以做出最终决定.
我最关心的两个问题是调试,以及混淆器可能引入的细微错误.
我想知道:
如何管理这些风险(能够调试错误的代码,确保/最小化混淆错误)
您是否可以推荐任何质量好的行业标准混淆器(最好是您自己使用的东西).
您在生产环境中使用混淆代码的经历是什么?
我担心javascript安全性,因为客户端可以查看和编辑代码,我知道要克服这一点,我们可以使用ajax调用来在服务器上运行关键进程.但最近我正在通过解析云代码,它的一部分在服务器上运行.我想知道这是否是javascript安全问题的答案,是否安全?