一种温控类程序的防逆向破解方法和系统技术方案

技术编号:15823021 阅读:23 留言:0更新日期:2017-07-15 05:07
本发明专利技术涉及一种温控类程序的防逆向破解方法,方法包括以下步骤:S1.采样温度数据并保存到数组中;S2.对温度数据进行综合性的数据运算,得到关于温度的评价数据;S3.进行比较分析,如果在系统的预估范围内,则进入步骤S4,否则进入步骤S5;S4.对读取到的温度数据进行核心算法运算,并将运算结果输出,然后进入步骤S6;S5.对读取到的温度数据进行干扰算法运算,并将运算结果输出,然后进入步骤S6;S6.接收步骤S4或S5输出的数据并进行处理。本发明专利技术还涉及一种温控类程序的防逆向破解系统,包括输入信号模块、监控模块、分析判断模块、核心算法模块、干扰算法模块和输出控制模块。

【技术实现步骤摘要】
一种温控类程序的防逆向破解方法和系统
本专利技术涉及单片机的核心算法保护领域,尤其涉及一种温控类程序的防逆向破解方法和系统。
技术介绍
现有的电子产品研发投入越来越大,叠代越来越快,很多工厂因为缺少研发投入和技术沉淀,便通过抄袭硬件和破解芯片代码的方式达到快速量产的目的,严重的破坏了市场的公平和损害了研发公司的利益。为了防止未经授权访问和拷贝芯片内的程序,大部分芯片都带有加密锁定位或加密字节,以保护单片机的代码。目前芯片的破解主要有以下两种方式:非侵入式和侵入式。侵入式利用芯片设计或编程时序中的漏洞对芯片进行破解,随着芯片技术的发展,目前这种情况少之又少。侵入式的方式是破坏芯片封装,利用半导体测试设备等仪器找到芯片保护点并进行修复,然后利用特殊编程器读出烧录文件。以上两种方式都只能针对被选定的项目进行逐一破解,且得到的都为二进制文件,无法有效的还原成原代码,也就无法获取代码中的核心算法,更无法有效应用到新项目,对研发公司的伤害仅限于当前项目,不会造成持续性损失。但是目前市场上开始出现了软件逆向工程破解方法,此种破解往往是行业内对这类产品非常熟悉的竞争对手所采用的,采用模拟芯片的正常工作状态,对芯片的输入状态进行多种状态维度的模拟,记录核心算法对于输入信号的处理结果,从而逆向推理出核心算法,达到破解技术的目的,例如:输入1得到2,输入2可以得到4,就可以间接推理出算法为乘于2。此种破解方式因为可以完整推理出核心算法,造成的破坏远远大于单纯项目程序的破解,破坏性持续深远,破解后可以直接追上被破解公司的技术水平,这也是公司最不愿意面对的。现有的温控类程序的工作模式为:核心算法根据输入信号的逻辑状态,进行运算,然后直接输出控制信号。在这种工作模式下,破解人员可以罗列出输入信号的各种可能信号状态,然后不停的尝试强行置入信号,并观察输出信号的反馈情况,逆向推理出核心算法,从而提取出程序的核心部分,然后进行抄袭和应用。中国专利公开号CN103761456A,公开日2014年4月30日,专利技术的名称为一种单片机核心代码防破解的方法,该申请案公开了一种将单片机内核心代码以密文形式存在特定的存储区域,MPU内存保护模块产生一个中断,在中断中,采用AES模块将密文代码解密成明文代码,CRC校验正确后,将明文代码回传到特定存储区域,中断返回,单片机执行特定存储区域的明文代码,代码执行完毕后,AES模块将特定存储区域的明文代码加密成密文代码,CRC校验正确后,将密文代码回传到特定存储区域。其不足之处在于:算法需要分区域存储并加密,执行时又需要解密和校验,极其浪费程序空间,而且算法复杂并不适用于大多数的单片机应用,更重要的是以上方法无法保护软件逆向破解的方式。简而言之,以上专利是把核心算法切块并且加密保存,无法防止逆向破解。
技术实现思路
本专利技术旨在提供一种温控类程序的防逆向破解方法和系统,以解决现有的无法防止温控类程序的核心算法被逆向破解的问题。为此,本专利技术采用如下技术方案:一种温控类程序的防逆向破解方法,包括以下步骤:S1.采样温度数据并保存到数组中,然后进入步骤S2;S2.对保存在数组中的温度数据和当时的控制信号进行综合性的数据运算,得到关于温度的评价数据,然后进入步骤S3;S3.对S2步骤得到的评价数据与预估工作数据进行比较,如果在预估范围内,则视为正常工作,进入步骤S4,否则,视为在破解工作状态中,进入步骤S5。S4.对读取到的温度数据进行核心算法运算,计算出所处的工作状态及所需要的对应加热功率和加热时间,并将运算结果输出,然后进入步骤S6。S5.对读取到的温度数据进行干扰算法运算,并将运算结果输出,然后进入步骤S6。S6.接收步骤S4或S5输出的数据,并进行处理。进一步地,所述评价数据包括:温度的连续性系数、温度的变化趋势、温度的变化系数和温度的长周期波动系数的一种或几种的组合。进一步地,所述干扰算法包括简单控制算法或自毁算法。一种温控类程序的防逆向破解系统,包括输入信号模块、监控模块、分析判断模块、核心算法模块、干扰算法模块和输出控制模块,其中:输入信号模块,用于采样温度数据并保存到数组;监控模块,用于对保存在数组中的温度数据和当时的控制信号进行综合性的数据运算,得到关于温度的评价数据;分析判断模块,用于对监控模块得到的评价数据与预估工作数据进行比较,如果在预估范围内,则视为正常工作,并反馈给核心算法模块,否则,视为在破解工作状态中,并反馈给干扰算法模块;核心算法模块,用于对读取到的温度数据进行核心算法运算,计算出所处的工作状态及所需要的对应加热功率和加热时间,并将运算结果输出至输出控制模块;干扰算法模块,对读取到的温度数据进行干扰算法运算,并将运算结果输出至输出控制模块;输出控制模块,用于将核心算法模块或干扰算法模块输出的数据进行处理。进一步地,所述评价数据包括:温度的连续性系数、温度的变化趋势、温度的变化系数和温度的长周期波动系数的一种或几种的组合。进一步地,所述干扰算法包括简单控制算法或自毁算法。本专利技术采用以上技术方案,具有的有益效果是,本专利技术可以实时监测单片机是否处在合理且符合实际使用的状态,一量发现不在以上合理状态,立即停用单片机中的核心算法,然后输出干扰算法或者自毁算法,达到保护核心算法的目的,提高逆向破解难度和成本。附图说明图1示出了根据本专利技术实施例的温控类程序的防逆向破解方法的流程图;图2示出了根据本专利技术实施例的温控类程序的防逆向破解系统的示意框图。具体实施方式为进一步说明各实施例,本专利技术提供有附图。这些附图为本专利技术揭露内容的一部分,其主要用以说明实施例,并可配合说明书的相关描述来解释实施例的运作原理。配合参考这些内容,本领域普通技术人员应能理解其他可能的实施方式以及本专利技术的优点。图中的组件并未按比例绘制,而类似的组件符号通常用来表示类似的组件。现结合附图和具体实施方式对本专利技术进一步说明。参照图1,描述一种温控类程序的防逆向破解方法。该方法包括以下步骤:S1.采样温度数据并保存到数组中,然后进入步骤S2。S2.对保存在数组中的温度数据和当时的控制信号进行综合性的数据运算,得到关于温度的评价数据,然后进入步骤S3。其中,控制信号是指控制加热器件的信号,例如是否触发加热,当前的加热功率控制在多少和/或加热时间多长等。关于温度的评价数据可包括温度的连续性系数、温度的变化趋势、温度的变化系数和温度的长周期波动系数的一种或几种的组合。这是因为温控类的逆向破解往往会采用以下几个测试行为:1、输入信号往往会通过电阻箱或者直流电源替代原先的输入信号,方便破解时控制,且精准不过调。2、破解者为了更快测试,会快速调整变化值,输入信号就会出现阶越性或断续性,不符合温控类产品的温度周期变化特性。因此,可以计算出温度的连续性系数并将其作为评价数据。3、为了逻辑推演,破解才往往一边调整输入信号一边观察控制信号,此时很容易出现控制信号明明在全功率加热,可是输入的信号出现温度下降状态,不符合整机的常规工作方向。温控类产品正常加热时,温度在经历过短暂降低后都会讯速上升,不会出现不断降低温度的情况。因此,可以计算出温度的变化趋势和变化系数并将其作为评价数据。4、整机的工作状态有一个合理的温度波动范围,也可以理解为长时间的一个加热频本文档来自技高网
...
一种温控类程序的防逆向破解方法和系统

【技术保护点】
一种温控类程序的防逆向破解方法,其特征在于,包括以下步骤:S1.采样温度数据并保存到数组中,然后进入步骤S2;S2.对保存在数组中的温度数据和当时的控制信号进行综合性的数据运算,得到关于温度的评价数据,然后进入步骤S3;S3.对S2步骤得到的评价数据与预估工作数据进行比较,如果在预估范围内,则视为正常工作,进入步骤S4,否则,视为在破解工作状态中,进入步骤S5;S4.对读取到的温度数据进行核心算法运算,计算出所处的工作状态及所需要的对应加热功率和加热时间,并将运算结果输出,然后进入步骤S6;S5.对读取到的温度数据进行干扰算法运算,并将运算结果输出,然后进入步骤S6;S6.接收步骤S4或S5输出的数据,并进行处理。

【技术特征摘要】
1.一种温控类程序的防逆向破解方法,其特征在于,包括以下步骤:S1.采样温度数据并保存到数组中,然后进入步骤S2;S2.对保存在数组中的温度数据和当时的控制信号进行综合性的数据运算,得到关于温度的评价数据,然后进入步骤S3;S3.对S2步骤得到的评价数据与预估工作数据进行比较,如果在预估范围内,则视为正常工作,进入步骤S4,否则,视为在破解工作状态中,进入步骤S5;S4.对读取到的温度数据进行核心算法运算,计算出所处的工作状态及所需要的对应加热功率和加热时间,并将运算结果输出,然后进入步骤S6;S5.对读取到的温度数据进行干扰算法运算,并将运算结果输出,然后进入步骤S6;S6.接收步骤S4或S5输出的数据,并进行处理。2.如权利要求1所述的温控类程序的防逆向破解方法,其特征在于,所述评价数据包括:温度的连续性系数、温度的变化趋势、温度的变化系数和温度的长周期波动系数的一种或几种的组合。3.如权利要求1所述的温控类程序的防逆向破解方法,其特征在于,所述干扰算法包括简单控制算法或自毁算法。4.一种温控类程序的防逆向破解系统,其特征在于:包括信号输入模...

【专利技术属性】
技术研发人员:刘家斌刘全喜魏肃刘双春柴智
申请(专利权)人:厦门芯阳科技股份有限公司
类型:发明
国别省市:福建,35

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

1