php - HTTPS 协议(protocol)是否与 REST API Web 服务相关?

标签 php api rest https

我有一个 PHP 中的 HTTP REST API 供 iPhone 应用程序使用。

此 API 中的一些 Web 服务通过 HTTP 请求凭据中的用户身份验证进行保护,但我想通过提供完全加密的请求数据来避免“中间人”攻击。

我在安全问题上不是很熟练,而且我在任何地方都找不到我的问题的任何明确答案:

HTTPS 与 STATELESS REST API 相关吗?

据我了解,HTTPS 做了两件事:

  • 加密你的 session
  • 向客户证明他正在与之通话的服务器是安全的

所以乍一看它没有响应我的需求,即加密我的服务器和应用程序之间的数据,因为 API 不使用 session 。但我仍然有疑问。

有人能给我讲清楚吗?

我的另一个解决方案是使用公钥/私钥系统加密请求数据。会不会更合适?

谢谢!

最佳答案

是的,是的。 HTTPS 与应用程序无关,它是一种隧道协议(protocol)。尽管 TLS 本身是一个有状态协议(protocol),但通过它的 HTTP 部分却不是。

就像您使用 VPN 一样,您仍然可以拥有基于 REST 的应用程序。 TLS 只是为每个连接自动设置和拆除隧道。

也就是说,利用 HTTP 和 HTTPS 的管道方面来提高 TLS 连接的吞吐量是有值(value)的,但这是与应用程序本身无关的性能调整方面。

关于php - HTTPS 协议(protocol)是否与 REST API Web 服务相关?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10303056/

相关文章:

php - Cakephp 2报告级别0的错误

php - Symfony2 表格 : Show already uploaded files when form is invalid

php - file_get_contents 返回 HTTP/1.1 301 永久移动

json - 如何在 Karate 中将 Json 对象转换为 Json 数组?

c# - 是否有用于 Azure 资源管理 API 调用的 C# sdk/包装器?

java - 从 Rest Web 服务返回 List<String>

php - FOS 用户/注册路径在 url 中有效但不作为路径

.net - Web 服务器上禁用 header

javascript - 从其他应用程序调用 Node.js 函数

javascript - 创建rest api以从odoo erp检索数据