如何实现HTTP API守护程序

时间:2012-06-15 00:47:51

标签: linux api http

我在医疗行业的一家小公司工作。我们有一个自制的管理软件,在重写之后,我们将出售给其他类似的公司。该软件基于用PHP编写的HTTP API。由于我们不想泄露我们的代码,我们目前正在检查我们应该重写哪种技术。

我的问题是:如何在Linux机器上实现相对简单的HTTP API守护程序,而不泄露您的代码?

2 个答案:

答案 0 :(得分:1)

框架和语言

有很多优秀的语言和框架可用于构建Web应用程序。如果您正在寻找一种(类型)编译语言,您可能会考虑使用Java进行某些操作,可能使用SpringPlay framework(免责声明:播放框架仍然相对较新,并且尽管它的受欢迎程度可能并不适合每个人,因为它仍然在野外相对未经测试)。我也听说过C#和Mono项目ASP.NET的实现已经走了很长的路,虽然我还没有使用它,也无法保证它。

在编写Web服务时,我更倾向于使用Python和Ruby等解释性语言。虽然这些可能不适合您的用例。 Go这个例外已经成为我最近的热门之一。它非常容易学习,高效且非常快速(和编译)。

帮助我们帮助

不幸的是,你的问题几乎是无可救药地模糊,所以我很难给出一个好的建议。也许你会考虑改写它,列出你的一些要求,目标和目标,这样我们可以更多地了解从长远来看最适合你的东西?

不相关的肥皂盒警告!

在稍微偏离主题的说明中,我总是鼓励我签约的公司(特别是在医疗行业中通常技术落后的领域)考虑更开放的商业模式。许多小公司试图通过建立一个封闭的生态系统来保护自己的知识产权,这个生态系统从长远来看会抑制增长和创新,并且可以打开它们以应对重大的安全漏洞;开源并没有成为蓬勃发展的计算机科学行业的新趋势,因为它允许人们窃取彼此的产品。它变得流行,因为它是传统闭源实践的更便宜,更可持续的替代品。我支持通过适当的许可和法律手段来保护您的源代码,而不是坚持使用传统的分发方法。与许多人不同,我认为专有软件仍然占有一席之地;这是你决定你的产品是否适合这种模式。但是,至少要考虑替代方案的优缺点,即使您最终认为它不适合您的业务模式。 离肥皂盒

答案 1 :(得分:0)

您可以将代码保存在php中并以一些不同的方式保护它:

  • 编写一个小C程序,将您的(可能是模糊或加密的)源代码编译到其中,只调用php可执行文件
  • 通过代码混淆器运行它。它应该运行相同,但对想要进行修改的人不会非常有用
  • 删除代码中的所有注释。大多数具有可观大小的程序都会让人感到困惑,而没有任何评论说人们会被劝阻修改它们
  • 不要担心,让您的客户在法律上同意不将软件交给他人。像您的客户这样信誉良好的企业通常会遵守此类协议。
  • 不要担心;让软件远离并出售支持(合同或事件)。 AKA F / OSS商业模式。

最后两个当然是对管理层的强烈推销;但这取决于您的业务和技术目标。

如果您打算重写代码,那么窃取源代码的其他人的最佳保护(除法律限制外)可能是二进制编译语言,如C或C ++。 Java可以很容易地被反编译,尽管可以使用混淆器来使它变得毫无意义。还有各种其他语言的打包机制(例如perl PAR档案,python py2exe或tcl tclkits),这使得查看源稍微困难,但那些主要是为了简化分发,而不是为了保护代码免受恶意攻击眼睛。