生成独立加密、可分发的 Web 应用程序的 Web 框架?
Posted
技术标签:
【中文标题】生成独立加密、可分发的 Web 应用程序的 Web 框架?【英文标题】:web framework that produces stand alone encrypted, distributable web application? 【发布时间】:2012-01-21 15:32:41 【问题描述】:Play 框架能够部署 .war 文件,其中包括它自己的嵌入式数据库和 Web 服务器。
我正在寻找的是其他 web 框架,最好是 java,它将 web 应用程序导出到单个 jar 或 .war 中,并带有它自己的嵌入式 web 服务器和数据库,以及一些加密层以使其难以反编译。
后者不太重要,但更重要的是,在他们自己的服务器上为多个用户部署一个完整的 Web 应用程序,我想要一个无需配置的可分发文件,他们可以简单地下载到他们的机器上,然后运行并忘记。
游戏框架最适合我的场景吗?
场景:用户下载 MyBlogCMS.jar,在他们的服务器上运行它,并且能够使用来自 http://23.194.14.111/myblogcms 的应用程序
如果有像 http://www.ioncube.com/ 这样的东西也不错,但对于 java。
【问题讨论】:
【参考方案1】:Java 框架需要安装 JVM,而且 Java 字节码非常容易进行逆向工程,即使在“混淆”时也是如此,因此对于您想要实现的目标而言,这可能是一个非常糟糕的选择。
更好的语言是编译成本地代码的东西,比如 C/C++ 或 Haskell。 Haskell 有几个不错的框架,比如 Snap 和 Happstack。 Happstack 包含一个持久性框架,该框架避免使用数据库,但可以使用 sqlite 嵌入式数据库。
一旦你有了你的原生二进制文件,你就需要在它周围添加一个加密的包装器,并且有几个商业工具可以做到这一点。
【讨论】:
看起来不错,但我不知道 Haskell...我会尝试学习 happstack,但是否有任何开源加密包装器?是否可以反编译happstack 只要付出足够的努力就可以对任何东西进行逆向工程,但由于涉及到抽象和优化,Haskell 代码会特别棘手。我会先下载“Haskell 平台”,然后查看“Learn you a Haskell”。之后尝试 Snap。加密的包装器只会增加表面的保护层,因为它必须在内存中解密。我不知道免费的二进制代码混淆器或加密器,但它们可能存在。以上是关于生成独立加密、可分发的 Web 应用程序的 Web 框架?的主要内容,如果未能解决你的问题,请参考以下文章
你问的Svelte来了--静态编译直出DOM独立分发Web Components位掩码变化追踪
你问的Svelte来了--静态编译直出DOM独立分发Web Components位掩码变化追踪