The invention discloses a method and a system for constructing a data encryption and decryption algorithm based on ARM instructions, relating to the technical field of data encryption and decryption. The method includes: setting the addition operation, the operation of addition operations based on the ARM instruction to realize the addition operation; set subtraction operation, the subtraction operation based on the ARM instruction to realize the subtraction operation; set the left shift operation, the left shift operation ARM instruction to realize the logic of the data operation based on the left; right set operations, the right operation based on the ARM instruction to realize the logic of the data shift operation; random combination using the above set up the basic operations, construct the encryption algorithm based on ARM instruction. The invention can effectively avoid the data encryption and decryption algorithm being maliciously cracked, and improve the security of data encryption and decryption.
【技术实现步骤摘要】
一种基于ARM指令构造数据加解密算法的方法及系统
本专利技术涉及数据加解密
,具体来讲是一种基于ARM(移动端的CPU处理器)指令构造数据加解密算法的方法及系统。
技术介绍
目前,在移动端程序中都会对比较重要的数据进行加密或者解密。现有的加解密算法大多都采用比较成熟的公开的算法,虽然公开算法本身是安全的,但是带来的问题则是HACK(黑客)也可以获取到同样的加解密算法来对数据进行解密,从而获取到原始的数据。例如,对于直播APP(Application,应用程序)来说,每个房间的观看人数的数据是比较关键的数据,通常的做法是服务器会发送请求验证数据给客户端,客户端回复服务器正确的数据则表明是一个正常的客户端登录到这个房间;如果回复的数据是错误的则认为是一个非法的伪造用户。但实际应用中,此方法的弊端是HACK可以通过直播APP来获取到直播APP回复服务器数据的计算方法,从而可以将功能移植到性能较好的服务器来计算正确的回复数据,而在性能更好的服务器甚至可以同一时间伪造大量的虚假用户登录到房间。由此可见,现有的加解密算法还是可能会遭到HACK的破解,安全性较低,进而使得应用中的某些数据还是可能会被机器程序来利用伪造。因此,如何有效避免数据加解密被恶意破解,提高数据的加解密的安全性,是本领域技术人员亟待解决的问题。
技术实现思路
本专利技术的目的是为了克服上述
技术介绍
的不足,提供一种基于ARM指令构造数据加解密算法的方法及系统,能有效避免数据加解密被恶意破解,提高数据加解密的安全性。为达到以上目的,本专利技术采取的技术方案是:提供一种基于ARM指令构造数据加解密算法的 ...
【技术保护点】
一种基于ARM指令构造数据加解密算法的方法,其特征在于,包括以下步骤:S1:设置用于构造加解密算法的加法运算操作,所述加法运算操作基于ARM指令实现加法操作;S2:设置用于构造加解密算法的减法运算操作,所述减法运算操作基于ARM指令实现减法操作;S3:设置用于构造加解密算法的左移运算操作,所述左移运算操作基于ARM指令实现数据逻辑左移操作;S4:设置用于构造加解密算法的右移运算操作,所述右移运算操作基于ARM指令实现数据逻辑右移操作;S5:利用设置好的加法运算操作、减法运算操作、左移运算操作、右移运算操作进行随机组合,构造出加密算法;并根据构造出的加密算法,生成与该加密算法对应的解密算法。
【技术特征摘要】
1.一种基于ARM指令构造数据加解密算法的方法,其特征在于,包括以下步骤:S1:设置用于构造加解密算法的加法运算操作,所述加法运算操作基于ARM指令实现加法操作;S2:设置用于构造加解密算法的减法运算操作,所述减法运算操作基于ARM指令实现减法操作;S3:设置用于构造加解密算法的左移运算操作,所述左移运算操作基于ARM指令实现数据逻辑左移操作;S4:设置用于构造加解密算法的右移运算操作,所述右移运算操作基于ARM指令实现数据逻辑右移操作;S5:利用设置好的加法运算操作、减法运算操作、左移运算操作、右移运算操作进行随机组合,构造出加密算法;并根据构造出的加密算法,生成与该加密算法对应的解密算法。2.如权利要求1所述的基于ARM指令构造数据加解密算法的方法,其特征在于,步骤S1具体包括以下操作:S101:定义一个宏的加法运算操作符;S102:为所述加法运算操作符设置ARM指令,使得所述加法运算操作符按照设置的ARM指令完成加法操作;其中,所述加法运算操作符按照设置的ARM指令完成加法操作的具体流程为:执行寄存器切割为半字后执行半字加法;读取CPSR寄存器的值;分离出溢出标志;检查前面的半字加法的结果是否有溢出;判断标志寄存器中的零标志Z是否等于0;将溢出计入最终结果。3.如权利要求1所述的基于ARM指令构造数据加解密算法的方法,其特征在于,步骤S2具体包括以下操作:S201:定义一个宏的减法运算操作符;S202:为所述减法运算操作符设置ARM指令,使得该减法运算操作符按照设置的ARM指令完成减法操作;其中,所述减法运算操作符按照设置的ARM指令完成减法操作的具体流程为:执行寄存器切割为半字后执行半字减法;读取CPSR寄存器的值;分离出借位标志;检查前面的半字减法的结果是否有借位;判断标志寄存器中的零标志Z是否等于1;将借位计入最终结果。4.如权利要求1所述的基于ARM指令构造数据加解密算法的方法,其特征在于,步骤S3具体包括以下操作:S301:设定执行左移运算操作的进入条件;S302:定义一个宏的左移运算操作符;S303:为所述左移运算操作符设置ARM指令,使得所述左移运算操作符在满足设定的进入条件时按照设置的ARM指令完成数据逻辑左移操作,并在移位后利用空闲指令槽执行一次函数切割。5.如权利要求1所述的基于ARM指令构造数据加解密算法的方法,其特征在于,步骤S4具体包括以下操作:S401:设定执行右移运算操作的进入条件;S402:定义一个宏的右移运算操作符;S403:为所述右移运算操作符设置ARM指令,使得所述右移运算操作符在满足设定的进入条件时按照设置的ARM指令完成数据逻辑右移操作,并在移位后利用空闲指令槽执行一次函数切割。6.一种基于ARM指令构造数据加解密算法的系统,其特征在于:该系统包括加法运算设置单元、减法运算设置单元、左移运算设置单元、右移运算设...
【专利技术属性】
技术研发人员:周志刚,胡卫谊,
申请(专利权)人:武汉斗鱼网络科技有限公司,
类型:发明
国别省市:湖北,42
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。