问题: 我需要php使用密钥加密然后用相同的密钥解密javascript
原因: 试图在我的adobe air应用程序中加密99%的javascript。
到目前为止我所拥有的是:在第一次运行程序购买和下载后,客户端向服务器发送其mac地址。然后php使用mac地址来加密一个txt文件,这个文件实际上是一个包含所有javscript的html文件(基本上是程序的其余部分),然后存储在客户端。运行程序不需要进一步的互联网连接。在每次启动时,未加密的javascript将使用mac地址解码存储的文件,然后通过htmlLoader.loadString显示它,这样发出的程序的每个副本将仅与其机器和该机器结合。不会在其他机器上打开。我知道它可以破解但对我来说足够了。除加密方法外,所有测试和工作都已完成。我已经找到了在javascript和php中加密/解密但没有密钥的方法。关键是关键......
提前多多感谢。答案 0 :(得分:0)
你会喜欢RSA:http://en.wikipedia.org/wiki/RSA。
快速谷歌搜索也产生了与您的问题几乎完全相同的问题:http://www.sematopia.com/2008/10/rsa-encrypting-in-javascript-and-decrypting-in-php/。
基本上,您希望从MAC地址执行某些派生公钥,因为它是唯一共享的信息。这很容易破解(攻击者需要的只是客户端的MAC地址,如果他们使用WiFi,这很容易获得,而且地址实际上仍然是静态的)。
答案 1 :(得分:0)
不仅仅是'a'键,它将成为该文档的唯一键。这是一个脱机程序,每个下载都是为该计算机加密的。是的,具有该程序的有效副本的攻击者可以提取该信息。如果它是另一台计算机上的无效副本,那么该mac地址将无法正常工作。这不是为了在下载期间保护,而是使非代码阅读用户无法将程序复制到另一台计算机,这对该项目来说足够安全。没有必要试图保护程序免受我们在这些论坛上提供建议的人员的影响。如果提取信息并重写代码以运行它,它将很快过时。在程序更新时,使用相同的方法,并且将在服务器端验证给定的mac地址,并且仅允许2个完全相同的更新。但是感谢关于RSA的信息我即将尝试