[发明专利]一种认证信息生成算法的保护方法和终端有效
申请号: | 202011581319.X | 申请日: | 2020-12-28 |
公开(公告)号: | CN112613023B | 公开(公告)日: | 2023-04-28 |
发明(设计)人: | 童凯;张磊;孙林泽;杜新胜;张辉极 | 申请(专利权)人: | 厦门市美亚柏科信息股份有限公司 |
主分类号: | G06F21/44 | 分类号: | G06F21/44;G06F8/41;G06F21/12;G06F21/14 |
代理公司: | 深圳市博锐专利事务所 44275 | 代理人: | 林栋 |
地址: | 361000 福建省厦门*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 认证 信息 生成 算法 保护 方法 终端 | ||
本发明公开了一种认证信息生成算法的保护方法和终端,通过预设的编程语言对待保护的认证信息生成算法进行封装;对封装后的的所述认证信息生成算法进行编译,生成二进制代码;将所述二进制代码放置于预设的代码段,并进行加密;将加密后得到的签名信息放置于所述预设的代码段中;通过将认证信息生成算法依次进行封装、编译和加密,将认证信息生成算法生成异构化加载的二进制,干扰反编译工具对认证信息生成算法的分析,使代码反编译工具在函数识别和语法树识别中出现错误,无法识别出认证信息生成算法的特征,避免了被反编译工具将认证信息生成算法还原,保证了无法通过静态分析对认证生成算法进行分析,从而保证了认证信息生成算法的安全性。
技术领域
本申请涉及计算机信息安全领域,特别涉及一种认证信息生成算法的保护方法和终端。
背景技术
随着移动技术的发展,分布式Android应用的普及,传统的会话控制(session)认证用户登录方式成本越来越高,也越来越不安全,产生了一种目前最流行的跨域身份验证解决方案JWT(JSON Web Token)签名,现阶段绝大多数的APP认证方式都是基于生成JWT签名此来进行登录认证。发展至今签名的生成机制,主要有两种方式,一种是在Java逻辑中生成,还有一种是JNI(Java Native interface,Java本地接口)调用的方式生成。
由于Java是一种跨平台的编程语言,其源码(.java文件)会被编译成与平台无关的字节码(.Dex文件),然后再运行期间被Android虚拟机进行动态翻译和链接,而编译后的文件中将包含有符号表,使得apk(Android application package,Android应用程序包)程序很容易被反编译,泄露程序的结构与实现方式。
JNI本质上是使用Android动态链接库进行封装原本生成签名的数字摘要算法,即通过将重要签名生成核心代码全部放在C文件中,利用NDK(Native Development Kit,原生开发工具包)技术将核心代码编译成动态库(.so文件),再用JNI对动态库进行调用。
两种方式都是通过字符串拼接和数据公式计算以及消息摘要算法生成,虽然不同的APP会使用不同的算法组合和公式生成不能被复制重用的令牌(Token)数值,但通过一些应用工具能够直接看到具体的加密逻辑,因此无法保护Token的生成算法。
发明内容
本发明所要解决的技术问题是:提供一种认证信息生成算法的保护方法,保证认证信息生成算法的安全性。
为了解决上述技术问题,本发明采用的技术方案为:
一种认证信息生成算法的保护方法,包括步骤:
通过预设的编程语言对待保护的认证信息生成算法进行封装;
对封装后的的所述认证信息生成算法进行编译,生成二进制代码;
将所述二进制代码放置于预设的代码段,并进行加密;
将加密后得到的签名信息放置于所述预设的代码段中。
为了解决上述技术问题,本发明采用的另一种技术方案为:
一种认证信息生成算法的保护终端,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述一种认证信息生成算法的保护方法中的各个步骤。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于厦门市美亚柏科信息股份有限公司,未经厦门市美亚柏科信息股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011581319.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种低频强磁共振治疗仪辅助稳固装置
- 下一篇:一种高效自动卸砖机
- 信息记录介质、信息记录方法、信息记录设备、信息再现方法和信息再现设备
- 信息记录装置、信息记录方法、信息记录介质、信息复制装置和信息复制方法
- 信息记录装置、信息再现装置、信息记录方法、信息再现方法、信息记录程序、信息再现程序、以及信息记录介质
- 信息记录装置、信息再现装置、信息记录方法、信息再现方法、信息记录程序、信息再现程序、以及信息记录介质
- 信息记录设备、信息重放设备、信息记录方法、信息重放方法、以及信息记录介质
- 信息存储介质、信息记录方法、信息重放方法、信息记录设备、以及信息重放设备
- 信息存储介质、信息记录方法、信息回放方法、信息记录设备和信息回放设备
- 信息记录介质、信息记录方法、信息记录装置、信息再现方法和信息再现装置
- 信息终端,信息终端的信息呈现方法和信息呈现程序
- 信息创建、信息发送方法及信息创建、信息发送装置