[发明专利]一种基于Android平台通讯接口的加密保护方法有效
| 申请号: | 201410740398.2 | 申请日: | 2014-12-05 |
| 公开(公告)号: | CN105721154B | 公开(公告)日: | 2020-02-18 |
| 发明(设计)人: | 朱兴;熊林欣;马雁;陈星宇;郭欣;林震 | 申请(专利权)人: | 航天信息股份有限公司 |
| 主分类号: | H04L9/32 | 分类号: | H04L9/32;H04L29/06 |
| 代理公司: | 北京工信联合知识产权代理有限公司 11266 | 代理人: | 李勇 |
| 地址: | 100195 北京市*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 android 平台 通讯 接口 加密 保护 方法 | ||
本发明公开了一种基于Android平台通讯接口的加密保护方法,属于数据加密领域,方法包括:Java程序向服务器端发起通讯请求之前,向基于C语言开发的加密库提供包括通讯接口报文所需的输入参数的特定格式的字符串;加密库对接收到的字符串进行解析;解析成功后校验输入参数的合法性,如果输入参数符合对应接口报文的拼接规则,将输入参数拼接为明文报文;加密库对明文报文加密后,返回加密的通讯报文数据到Java程序;Java程序获取加密的通讯报文数据之后,向服务器端发起通讯请求。本发明实现了有效保护通讯接口安全性的同时,提高了数据加密程序的执行效率。
技术领域
本发明涉及数据加密技术领域,具体涉及一种基于Android平台通讯接口的加密保护方法。
背景技术
随着Android智能手机的普及,基于Android平台开发的应用也越来越多。由于Android系统的大部分应用是运行在dalvik虚拟机上的Java程序,众所周知,Java程序很容易被反编译,且执行效率不高。如果一些核心的代码放在Java层将面临反编译后的代码泄露的风险。利用Java本地调用技术把核心算法转向C层后仍需要对Java层和C层之间的交互过程进行保护,因为Java层不受保护,黑客可以通过仿造身份去访问C层,获得数据。因此,程序的安全性和执行效率一直是Android程序开发需要解决的问题。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的基于Android平台通讯接口的加密保护方法,通讯时对报文进行加密。
依据本发明的一个方面,提供了一种基于Android平台通讯接口的加密保护方法,其特征在于,包括以下步骤:
Java程序向服务器端发起通讯请求之前,向基于C语言开发的加密库提供包括通讯接口报文所需的输入参数的特定格式的字符串;
所述加密库对接收到的所述特定格式的字符串进行解析;
解析成功后校验输入参数的合法性,如果输入参数符合对应接口报文的拼接规则,将所述输入参数拼接为明文报文;
所述加密库对所述明文报文加密后,返回加密的通讯报文数据到Java程序;
Java程序获取所述加密的通讯报文数据之后,向所述服务器端发起通讯请求。
进一步地,所述向基于C语言开发的加密库提供包括通讯接口报文所需的输入参数的特定格式的字符串的步骤中具体包括:
Java程序将通讯接口报文所需的输入参数、混淆参数和对应接口参数拼接规则标识按照自定义规则,添加连接符,组织生成特定格式的字符串;
将所述特定格式的字符串传入到基于C语言开发的加密库的数据加密接口。
进一步地,所述加密库对接收到的所述特定格式的字符串进行解析的步骤中具体包括:
所述加密库接收到Java程序传入的所述特定格式的字符串之后,根据内部定义的字符串拼接规则,进行解析;
如果解析失败,则返回错误信息到Java程序;
如果解析成功,则过滤掉所述混淆参数,获取拼接报文所需的所述输入参数和所述对应接口参数拼接规则标识。
进一步地,所述解析成功后校验输入参数的合法性,如果输入参数符合对应接口报文的拼接规则,将所述输入参数拼接为明文报文步骤具体包括:
根据所述接口参数拼接规则标识,校验所述输入参数的合法性;
如果所述输入参数符合对应接口报文的拼接规则,则按照所述拼接规则定义的接口报文格式,将所述输入参数拼接为明文报文;
如果所述输入参数校验不通过,则返回错误信息到Java程序。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于航天信息股份有限公司,未经航天信息股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410740398.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:剪刀
- 下一篇:细粒物质粒组分离装置





