专利名称:安卓系统用openssl引擎加载客户端证书的方法
技术领域:
本发明涉及一种处理方法,尤其是一种安卓系统用openssl引擎加载客户端证书的方法,属于安卓系统中加载客户端证书的技术领域。
背景技术:
webview是安卓系统的网页浏览器控件。目前,安卓系统的客户端利用webview访I'n] https(Hypertext Transfer Protocol over Secure Socket Layer,基于安全套接层的超文本传输协议)服务器时,在安卓系统的客户端内与https服务器握手过程中使用的客户端证书是一个默认的虚拟对象。因此,如果https服务器对客户端证书做验证的话,会返回错误,导致安卓系统的客户端利用webview无法正常访问https服务器。
发明内容
本发明的目的是克服现有技术中存在的不足,提供一种安卓系统用openssl引擎加载客户端证书的方法,其操作方便,提高了加载客户端证书的可靠性。按照本发明提供的技术方案,所述安卓系统用openssl引擎加载客户端证书的方法,所述用openssl引擎加载客户端证书的方法包括如下步骤
a、在安卓系统的客户端内加载openssl引擎,并通过openssl引擎在Java本地接口层内取出预设的客户端证书和密钥;
b>openssl回调函数将取出的客户端证书和密钥导入安卓系统的客户端与https服务器之间的安全套接层的通讯流程中,以使得https服务器能对安卓系统的客户端进行客户端证书的验证。所述客户端证书为标识安卓系统的客户端身份的对象,包括安卓系统客户端的身份信息、公钥和有效期。本发明的优点通过openssl引擎加载客户端证书和密钥,可以将客户端私钥相关的计算转移到openssl引擎模块中,用时才将客户端证书从openssl引擎中读出且不保存在本地,以实现对安卓系统客户端的客户端证书验证时的安全可靠性。
具体实施例方式下面结合具体实施例对本发明作进一步说明。为了能够确保安卓系统的客户端与https服务器进行通讯交互的安全性,本发明采用加载openssl引擎,利用openssl引擎完成相关的计算过程,具体包括如下步骤
a、在安卓系统的客户端内加载openssl引擎,并通过openssl弓丨擎在Java本地接口层内取出预设的客户端证书和密钥;
安卓系统的openssl库中开辟了一条脉络来加载openssl引擎,加载了引擎的openssl库将把一些库函数计算过程替换为引擎中提供的计算过程,所述openssl引擎还能提供存取证书功能。所述客户端证书为标识安卓系统的客户端身份的对象,包括安卓系统客户端的身份信息、公钥和有效期。所述Java本地接口层即为JNI层。b、openssl回调函数将取出的客户端证书和密钥导入安卓系统的客户端与https服务器之间的安全套接层的通讯流程中,以使得https服务器能对安卓系统的客户端进行客户端证书的验证。安卓系统的openssl库提供了标准API来获得openssl引擎中的证书和密钥。将证书和密钥导入安全套接层(Secure Sockets Layer, ssl)是在安卓系统的JNI层的回调函数 client_cert_cb 中。本发明在安卓(android)系统通过webview控件来访问https服务器时,当安全要求非常高时,需要安卓系统客户端内的用户私钥不在内存中出现,客户端证书不在客户端本地出现。于是通过加载openssl引擎,可以将客户端私钥相关的计算转移到openssl引擎模块中,用时才将客户端证书从openssl引擎中读出且不保存在本地,以实现对安卓系统客户端的客户端证书验证时的安全可靠性。
权利要求
1.一种安卓系统用openssl引擎加载客户端证书的方法,其特征是,所述用openssl引擎加载客户端证书的方法包括如下步骤 (a)、在安卓系统的客户端内加载openssl引擎,并通过openssl引擎在Java本地接口层内取出预设的客户端证书和密钥; (b),openssl回调函数将取出的客户端证书和密钥导入安卓系统的客户端与https服务器之间的安全套接层的通讯流程中,以使得https服务器能对安卓系统的客户端进行客户端证书的验证。
2.根据权利要求1所述的安卓系统用openssl引擎加载客户端证书的方法,其特征是所述客户端证书为标识安卓系统的客户端身份的对象,包括安卓系统客户端的身份信息、公钥和有效期。
全文摘要
本发明涉及一种处理方法,尤其是一种安卓系统用openssl引擎加载客户端证书的方法,属于安卓系统中加载客户端证书的技术领域。按照本发明提供的技术方案,所述安卓系统用openssl引擎加载客户端证书的方法,所述用openssl引擎加载客户端证书的方法包括如下步骤a、在安卓系统的客户端内加载openssl引擎,并通过openssl引擎在Java本地接口层内取出预设的客户端证书和密钥;b、openssl回调函数将取出的客户端证书和密钥导入安卓系统的客户端与https服务器之间的安全套接层的通讯流程中,以使得https服务器能对安卓系统的客户端进行客户端证书的验证。本发明操作方便,提高了加载客户端证书的可靠性。
文档编号G06F21/33GK103065078SQ201310001620
公开日2013年4月24日 申请日期2013年1月4日 优先权日2013年1月4日
发明者陈海雷, 范健, 潘琪锋, 尤建华 申请人:无锡矽鼎科技有限公司