我想使用SSL连接我的Android应用程序和托管我的Web服务的服务器之间的连接。
我想使用自签名证书,然后使用SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER
但是中间人攻击会有漏洞,所以我决定使用可信证书。
我打算购买证书,但我想知道哪些CA最受信任以及如何生成BKS
我检查了这个link和this one并选择了第一个链接中描述的解决方案,即使用充气城堡库生成它并将其作为原始资源加载到应用程序中。它是一种安全的方法,它能安全地使用Android 2.2的设备吗?
我正在努力学习所有这些工作,但这是我第一次使用证书。
非常感谢!
答案 0 :(得分:1)
自签名证书本身并不容易受到中间人攻击。但是使用ALLOW_ALL_HOSTNAME_VERIFIER
,所以你不应该使用它。只要您正确设置应用程序以信任自签名证书并正确验证其有效性,就确实没有安全问题。
如果您想购买证书,只需从与Android 2.2捆绑在一起的CA中获取证书,您就不必处理自定义信任存储和额外代码:它只会起作用,因为系统信任发行CA.