之前做网络请求一直都是用Http请求来和服务器交互,一直听说过Https不过一直没用过,所以今天决定好好研究一下,一把鼻涕一把泪啊,结果发现……….哎,不说了,说多了都是泪;这里记录一下android怎么使用https和服务器互交。
HTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。
首先第一步(生成证书)
1.0,生成服务端的证书:
打开cmd命令行窗口,运行:(test是证书名字)
keytool -genkey -alias test -keystore test.jks(test.jks这个需要保存下来在配置tomcat服务器中需要使用)
1.1,把证书中的密钥导出:
keytool -exportcert -alias test -file test.cert -keystore test.jks
1.2,生成android端的证书:
在坑爹的Android 要求要BC证书,而Java的keytool本身不提供BKS格式,因此要自己手动配置。
配置:
1.2.1:先到http://www.bouncycastle.org/latest_releases.html这里去下载一个工具包bcprov-ext-jdk15on-151.jar(这个工具包有相对应的jdk版本)
1.2.2:把这个jar包复制到
C:\Pr