在IOS中,证书固定有效。但是在android证书固定中不起作用。
下面是证书固定的代码段。
try {
WLClient wlClient = WLClient.createInstance(context);
WLClient.getInstance().pinTrustedCertificatePublicKey("ProdCert.cer");
} catch (Exception e) {
Log.d("MFPClient",e.toString());
Toast.makeText(this, e.toString(),Toast.LENGTH_LONG).show();
} finally {
try {
URI url = new URI("/adapters/TestAdapter/getFeed");
WLResourceRequest request = new WLResourceRequest(url,WLResourceRequest.GET);
request.send(new WLResponseListener() {
@Override
public void onSuccess(WLResponse wlResponse) {
Log.d("MFPClient",wlResponse.toString());
// Toast.makeText(context,wlResponse.toString(),Toast.LENGTH_LONG).show();
}
@Override
public void onFailure(WLFailResponse wlFailResponse) {
Log.d("MFPClient",wlFailResponse.toString());
// Toast.makeText(context, wlFailResponse.toString(),Toast.LENGTH_LONG).show();
}
});
} catch (Exception e) {
Toast.makeText(this, e.toString(),Toast.LENGTH_LONG);
}
}
下面是客户端的日志
09-20 20:20:16.460 31459-31459 /? I / FtBuild:getRomVersion mRomVer = 3.6 09-20 20:20:16.608 31459-31459 /? D / NetworkSecurityConfig:未指定网络安全配置,使用平台默认值 09-20 20:20:16.623 31459-31459 /? D /反馈:analyticsUrl = null analyticsApiKey = null 09-20 20:20:16.624 31459-31459 /? W / FEEDBACK:由于分析上下文为空,因此无法调用反馈模式 09-20 20:20:16.637 31459-31459 /? D / OpenSSLLib:OpensslErr:模块:12(175 :);文件:external / boringssl / src / crypto / asn1 / asn1_lib.c;行:175;功能:ASN1_get_object
以上是与没有证书固定的应用程序日志不同的日志。其余包含服务器信息。
在上面的代码中,我看到了一个OpensslErr。如何确保在本地android客户端代码中成功进行证书固定。没有异常与日志相关联。这意味着该文件在那里,并且它不是无效的证书。但是如何确保MFP证书固定成功。
预先感谢