一种基于移动终端应用程序安全应用的开发方法及系统技术方案

技术编号:10068581 阅读:218 留言:0更新日期:2014-05-23 11:33
本发明专利技术公开了一种基于移动终端应用程序安全应用的开发方法及系统,该系统包括:发送终端,安全SDK,服务器,接收终端;该方法包括:发送终端向服务器请求随机数,在接收到请求的随机数后,调用发送终端私钥对该随机数进行签名,并将签名结果和签名公钥证书发送至所述服务器;身份认证成功后,调用安全SDK,使用对称密钥对接收的所述数据信息进行加密,采用所述接收终端公钥对该对称密钥进行加密,将经加密的对称密钥和数据信息发送给接收终端;所述接收终端调用所述安全SDK解密密文数据;通过本发明专利技术避免了数据信息安全的相关问题,包括身份认证、数据外泄、设备管控等。

【技术实现步骤摘要】
一种基于移动终端应用程序安全应用的开发方法及系统
本专利技术涉及一种移动终端数据安全领域,尤其涉及一种基于移动终端应用程序安全应用的开发方法及系统。
技术介绍
PKI:PublicKeyInfrastructure,即公钥基础设施,是一种遵循既定标准的密钥管理平台,它能够为所有信息安全应用提供加解密和数字签名等密码服务及所必需的密钥和证书管理体系,简单来说,PKI就是利用公钥理论和技术建立的提供安全服务的基础设施。PKI技术是信息安全技术的核心,也是电子商务的关键和基础技术。证书SDK:SoftwareDevelopmentKit,基于PKI体系,一个可以提供安全支撑的开发平台,内部对不同类型,不同介质,不同规范的证书操作进行统一接口封装,用户无需要关心复杂的安全细节,只需调用相应接口得到自己相要的结果数据(如P1,P7签验,数据信封,对称加解密,HASH等等)。本SDK要支持跨平台,支持主流的CSP,P11,国密规范,支持软硬证书。HMAC:Hash-basedMessageAuthenticationCode,是密钥相关的哈希运算消息认证码,HMAC运算利用哈希算法,以一个密钥和一个消息为输入,生成一个消息摘要作为输出。随着信息时代的进步和发展,移动智能手机得到了迅速的普及,移动终端应用作为智能手机的核心,不计其数、种类繁多的移动终端应用程序占领了移动应用市场,这些应用满足了用户不同方面的需求。从用户交互形式上可以分为:用户登录、用户注册、用户认证等,从文本数据信息传输上可以分为:云电话、邮件、查看文档、文件存储。从信息展示展示上可以分为:通讯录、邮件、浏览器等应用;移动终端应用提供信息展示、传输以及存储的功能,而没有考虑到利用加密技术进行封装,保证数据全生命周期的安全管理。现有使用比较广泛的一些系统都是以口令、域认证以及密码锁作为身份认证,并且对于数据的传输全部采用明文方式;数据都是以明文存储到本地;基础方式身份认证用户名、口令、图形密码锁数据传输明文传输数据存储明文存储目前的移动终端应用主要存在的问题:1.使用口令或密码锁进行身份认证,密码强度较弱,无法确保身份安全;2.数据传输过程中,明文传输,数据有可能被监听;3.使用移动终端下载查看文件为明文,无法确保数据安全。现有技术中存在基础SDK,作为移动终端应用的功能支撑,一些开发商将一些基础功能封装到SDK中,提供给移动应用开发人员,上层业务逻辑调用基础SDK即可快速实现相应的功能,对于移动终端某项应用的功能进行统一的管理、维护,这提高了代码的复用性、工作效率以及降低公司成本。现有的SDK针对于用户认证、数据传输、设备管理、第三方应用等功能进行封装,从而对用户的认证提供用户名口令认证方式,针对数据存储提供SQLite、XML等技术的封装,对网络提供Http、TCP等方式收发高级封装。图1是现有技术中邮件SDK所具备的功能结构图,图2是现有技术中移动终端邮件发送流程图。如图1所示,现有的邮件SDK包括以下功能组件:口令登录组件,发送邮件组件,创建邮件组件,接收邮件组件,数据库组件,配置组件。现有技术中的邮件系统包括:邮件客户端,邮件SDK,邮件服务器,邮件发送流程如下:1)邮件客户端的邮件APP开始发送邮件;2)邮件APP调用SDK发送邮件接口;3)邮件SDK接收到邮件数据后,将邮件数据传递至邮件服务器;4)邮件服务器接收邮件数据;5)根据接收者地址,邮件服务器将数据发送到邮件接收者处;6)邮件服务器返回结果信息;7)邮件SDK将发送结果信息返回;8)邮件客户端接收发送结果信息;9)结束。封装基础应用SDK是各个厂商常用的一种方式,如提供邮件移动终端SDK、通讯录SDK、网络数据传输SDK、数据存储XML、SQLite等都封装了基础SDK,为上层应用提供快速开发接口。但大多数的基础SDK并未考虑如何保障身份认证本身安全性,如防止回放攻击,防止身份伪装欺骗,在网络传输上过多考虑的是传输效率,或模型轻便,并没有考虑是否存在泄密等安全隐患,文件数据在传输过程中可能被监听;在数据存储方面以明文方式存储到本地可能被窃取,并没有做权限控制与文档生命周期管理;缺乏统一管理、统一保护
技术实现思路
为了解决移动终端应用程序安全应用的开发问题,本专利技术提出了一种基于移动终端应用程序安全应用的开发方法,该方法包括如下步骤:1)发送终端向服务器请求随机数,在接收到请求的随机数后,调用发送终端私钥对该随机数进行签名,并将签名结果和签名公钥证书发送至所述服务器,该服务器进行证书有效性验证并验签,返回认证结果,如果验证通过,跳至步骤2);2)发送终端调用安全SDK,并向所述SDK发送用户信息及数据信息,所述安全SDK根据所述用户信息获取接收终端公钥,然后在本地产生对称密钥,并使用该对称密钥对接收的所述数据信息进行加密,采用所述接收终端公钥对该对称密钥进行加密,将经加密的对称密钥和数据信息拼装成数字信封,最后将该数字信封返回到发送终端;3)发送终端向接收终端发送上述数字信封;4)所述接收终端接收到所述数字信封后,调用所述安全SDK,该安全SDK解析所述数字信封,解析出密文对称密钥和密文数据,使用接收终端私钥解密密文对称密钥,使用明文对称密钥解密密文数据,将解密的明文数据信息传递到接收终端的应用层。进一步的,所述步骤1)中,发送终端在接收到请求的随机数后,进行枚举设备、打开设备、枚举证书,然后验证PIN码,如果验证失败,则结束验证流程,如果验证成功,才继续后续的验证步骤。进一步的,所述步骤2)中所述安全SDK根据所述用户信息获取所述接收终端公钥包括:所述安全SDK根据所述用户信息在本地查找所述接收终端公钥,如果本地不存在,则将所述用户信息发送到服务器,从所述服务器接收所述接收终端公钥。进一步的,所述发送终端和接收终端分别为发送邮件终端和接收邮件终端,所述服务器包括邮件安全管理平台和邮件服务器,所述发送邮件终端通过该邮件服务器向所述接收邮件终端发送邮件。进一步的,所述步骤2)中发送邮件终端调用所述安全SDK,并向所述安全SDK发送明文的E-mail、邮件接收者列表,所述安全SDK根据该邮件接收者列表获取接收邮件终端公钥,并验证该公钥的有效性,验证通过后,对邮件签名。进一步的,所述步骤4)中使用明文对称密钥解密密文数据后,需要验证接收邮件终端公钥的有效性。为了解决移动终端应用程序安全应用的开发问题,本专利技术还提出了一种基于移动终端应用程序安全应用的开发系统,该系统包括:发送终端,安全SDK,服务器,接收终端;发送终端向服务器请求随机数,在接收到请求的随机数后,调用发送终端私钥对该随机数进行签名,并将签名结果和签名公钥证书发送至所述服务器,该服务器进行证书有效性验证并验签,返回认证结果;发送终端在身份认证成功后,调用安全SDK,并向所述SDK发送用户信息及数据信息,所述安全SDK根据所述用户信息获取接收终端公钥,然后在本地产生对称密钥,并使用该对称密钥对接收的所述数据信息进行加密,采用所述接收终端公钥对该对称密钥进行加密,将经加密的对称密钥和数据信息拼装成数字信封,最后将该数字信封返回到发送终端,发送终端向接收终端发送上述数字信封;所述接收终端接收到所述数字信封后,调用所述安全SD本文档来自技高网
...
一种基于移动终端应用程序安全应用的开发方法及系统

【技术保护点】
一种基于移动终端应用程序安全应用的开发方法,该方法包括如下步骤:1)发送终端向服务器请求随机数,在接收到请求的随机数后,调用发送终端私钥对该随机数进行签名,并将签名结果和签名公钥证书发送至所述服务器,该服务器进行证书有效性验证并验签,返回认证结果,如果验证通过,跳至步骤2);2)发送终端调用安全SDK,并向所述SDK发送用户信息及数据信息,所述安全SDK根据所述用户信息获取接收终端公钥,然后在本地产生对称密钥,并使用该对称密钥对接收的所述数据信息进行加密,采用所述接收终端公钥对该对称密钥进行加密,将经加密的对称密钥和数据信息拼装成数字信封,最后将该数字信封返回到发送终端;3)发送终端向接收终端发送上述数字信封;4)所述接收终端接收到所述数字信封后,调用所述安全SDK,该安全SDK解析所述数字信封,解析出密文对称密钥和密文数据,使用接收终端私钥解密密文对称密钥,使用明文对称密钥解密密文数据。

【技术特征摘要】
1.一种基于移动终端应用程序安全应用的开发方法,该方法包括如下步骤:1)发送终端向服务器请求随机数,在接收到请求的随机数后,调用发送终端私钥对该随机数进行签名,并将签名结果和签名公钥证书发送至所述服务器,该服务器进行证书有效性验证并验签,返回认证结果,如果验证通过,跳至步骤2);2)发送终端调用安全SDK,并向所述SDK发送用户信息及数据信息,所述安全SDK根据所述用户信息获取接收终端公钥,然后在本地产生对称密钥,并使用该对称密钥对接收的所述数据信息进行加密,采用所述接收终端公钥对该对称密钥进行加密,将经加密的对称密钥和数据信息拼装成数字信封,最后将该数字信封返回到发送终端;3)发送终端向接收终端发送上述数字信封;4)所述接收终端接收到所述数字信封后,调用所述安全SDK,该安全SDK解析所述数字信封,解析出密文对称密钥和密文数据,使用接收终端私钥解密密文对称密钥,使用明文对称密钥解密密文数据;其中,所述发送终端和接收终端分别为发送邮件终端和接收邮件终端,所述服务器包括邮件安全管理平台和邮件服务器,所述步骤2)中所述发送邮件终端调用所述安全SDK,并向所述安全SDK发送明文的E-mail、邮件接收者列表,所述安全SDK根据该邮件接收者列表获取接收邮件终端公钥,并验证该公钥的有效性,验证通过后,对邮件签名,从而实现所述发送邮件终端通过该邮件服务器向所述接收邮件终端发送邮件。2.根据权利要求1所述的方法,所述步骤1)中,所述发送终端在接收到请求的随机数后,进行枚举设备、打开设备、枚举证书,然后验证PIN码,如果验证失败,则结束验证流程,如果验证成功,才继续后续的验证步骤。3.根据权利要求1所述的方法,所述步骤2)中所述安全SDK根据所述用户信息获取所述接收终端公钥包括:所述安全SDK根据所述用户信息在本地查找所述接收终端公钥,如果本地不存在,则将所述用户信息发送到服务器,从所述服务器接收所述接收终端公钥。4.根据权利要求1所述的方法,所述步骤4)中使用明文对称密钥解密密文数据后,需要验证所述接收邮件终端公钥的有效性。5.一种基于移动终端应用程序安全应用的开发系统,该系统包括:发送终端,安全SDK,服务器,接收终端;发送终...

【专利技术属性】
技术研发人员:张帅咸赫男喻波王志华
申请(专利权)人:北京明朝万达科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1