该问题涉及两个领域:一般的SSL证书和Phonegap / Cordova相关的功能。
首先让我简要介绍一下我们的案例:我们正在创建一个简单的系统,包括一个用Phonegap(客户端)编写的移动应用程序和一个带有RESTful API的HTTP(S)服务器。一些机密数据应该来回传递。客户端也应该使用两条腿OAuth进行身份验证。
系统已关闭,即我们不打算将其扩展到超过单个桌面应用程序,它即将配置一次并持续工作。
但是,由于某些原因,我们无法将这些内容放在封闭的网络中以仅使用纯HTTP。
所以,我猜,HTTPS是唯一的方法。
现在,问题是:
The Phonegap's Security Guide表示使用没有意义 HTTPS,如果它使用自签名证书而不是由。颁发的证书 一个CA.
另一方面,Clint Harris explains in his answer那个 自签名证书完全有效,如果我们在我们的分发 自己的。
另一个问题是Phonegap不允许您执行 这样的AJAX通过HTTPS调用RESTful API - 唯一的方法是 启用调试模式或简单地破解它。
这就是为什么我们完全糊涂了。
毕竟,哪种方法--1或2 - 在我们的封闭系统案例中是有效/适用的,我们如何解决最后的(3)问题?此外,任何其他解释将不胜感激。
答案 0 :(得分:0)
自签名证书在视图仅的安全点有效,如果您实施证书固定
你没有能力实现证书固定,因为android不允许你访问。
总之,更简单,更安全的方法是使用系统已经信任的证书。