掌桥专利:专业的专利平台
掌桥专利
首页

授权管理方法和系统、授权管理设备和嵌入式设备

文献发布时间:2023-06-19 11:22:42


授权管理方法和系统、授权管理设备和嵌入式设备

技术领域

本发明属于算法授权技术领域,具体是涉及到一种授权管理方法和系统、授权管理设备和嵌入式设备。

背景技术

随着计算机软件与硬件技术的高速发展,人工智能异军突起,各种人工智能算法被开发并集成在嵌入式设备中,此时需要一种对嵌入式设备中算法进行加密保护与授权管理的方法。但现有的嵌入式设备中算法授权方法都是以授权管理为主,重要数据保护为辅,主要存在以下问题:1)只提供授权管理,不能有效保护算法本身,算法完全在嵌入式设备的处理器上运行,即使使用代码加壳或者混淆技术,也容易被反编译。2)只在握手阶段或者安装阶段进行鉴权处理,存在着被攻击、被破解的风险。3)嵌入式设备采用单向认证,安全性不高。

发明内容

本发明提供一种授权管理方法和系统、授权管理设备和嵌入式设备,以解决现有技术的授权管理方法存在算法关键数据保护不到位、授权过程不完善以及安全性不高等问题。

基于上述目的,第一方面,本发明提供一种授权管理方法,包括PIN码双向认证和时间有效性认证;

所述PIN码双向认证包括:

嵌入式设备获取授权信息项,生成第一双向认证PIN码、第二双向认证PIN码和单向认证PIN码,向授权管理设备发送双向认证挑战指令;所述双向认证挑战指令中包含加密所述第一双向认证PIN码得到的双向认证PIN码密文;

所述授权管理设备接收所述嵌入式设备发送的所述双向认证挑战指令,读取数据存储区中的双向认证挑战PIN码,并与解密所述双向认证PIN码密文得到的第一双向认证PIN码进行比较;

若相等,则所述授权管理设备读取所述数据存储区中的双向认证响应PIN码,向所述嵌入式设备发送双向认证响应指令;所述双向认证响应指令中包含加密所述双向认证响应PIN码得到的认证响应PIN码密文;

所述嵌入式设备接收所述授权管理设备发送的所述双向认证响应指令,并将所述第二双向认证PIN码与解密所述认证响应PIN码密文得到的双向认证响应PIN码进行比较;

若相等,所述嵌入式设备向所述授权管理设备发送第一认证确认指令,进入所述时间有效性认证;

所述授权管理设备接收所述嵌入式设备发送的第一认证确认指令,确定所述PIN码双向认证通过,进入所述时间有效性认证;

所述时间有效性认证包括:

所述嵌入式设备向所述授权管理设备发送时间有效性认证请求;所述时间有效性认证请求中包含设备当前时间;

所述授权管理设备接收所述时间有效性认证请求,读取所述数据存储区中的授权起止时间,在检测到所述设备当前时间位于所述授权起止时间内,向所述嵌入式设备发送第二认证确认指令,进入运行阶段的授权检测;

所述嵌入式设备接收所述授权管理设备发送的第二认证确认指令,进入运行阶段的授权检测。

优选地,所述运行阶段的授权检测包括PIN码单向认证,所述PIN码单向认证包括:

所述授权管理设备向所述嵌入式设备发送单向认证请求;

所述嵌入式设备接收所述授权管理设备发送的所述单向认证请求,向所述授权管理设备发送单向认证响应指令;所述单向认证响应指令中包含加密所述单向认证PIN码得到的单向认证PIN码密文;

所述授权管理设备接收所述嵌入式设备发送的单向认证响应指令,读取所述数据存储区中的单向认证PIN码,并与解密所述单向认证PIN码密文得到的所述单向认证PIN码进行比较,若相等,则所述PIN码单向认证通过,所述授权管理设备恢复正常运行。

优选地,所述PIN码单向认证,还包括:

所述授权管理设备获取随机函数产生的随机数,在所述随机数符合第一预设条件时,向所述嵌入式设备发送所述单向认证请求。

优选地,所述运行阶段的授权检测还包括关键子模块嵌入,所述关键子模块嵌入包括:

所述嵌入式设备向所述授权管理设备发送关键子模块嵌入指令;所述关键子模块嵌入指令包括加密请求关键子模块标识和输入数据得到的关键子模块标识密文和输入数据密文;

所述授权管理设备接收所述嵌入式设备发送的所述关键子模块嵌入指令,根据解密所述请求关键子模块标识密文得到的请求关键子模块标识调用所述关键子模块,并将解密所述输入数据密文得到的输入数据输入至所述关键子模块,得到所述关键子模块运行后的输出数据;

所述授权管理设备向所述嵌入式设备发送关键子模块响应指令;所述关键子模块响应指令包括加密响应关键子模块标识和所述输出数据得到的响应关键子模块标识密文和输出数据密文;

所述嵌入式设备接收到所述授权管理设备发送的所述关键子模块响应指令,将解密所述响应关键子模块标识密文得到的所述响应关键子模块标识与所述请求关键子模块标识进行比较,若相等,则获取解密所述输出数据密文得到的所述输出数据。

优选地,所述嵌入式设备与所述授权管理设备之间设置有指令交互的超时机制和回复机制;

所述超时机制是指,所述嵌入式设备在发送一条请求后开始计时,若在预设时间内未收到所述授权管理设备的回复指令,将再次发送所述请求,直至多次未收到所述回复指令后,确定所述授权管理设备掉线,所述嵌入式设备停止运行;

所述回复机制是指,所述嵌入式设备与所述授权管理设备在执行完每条指令后,向对方发送包含状态码的回复指令。

第二方面,本发明提供一种授权管理设备,包括程序存储区和数据存储区;

所述程序存储区包含初始化模块、第一授权模块、反调试分析模块和至少一个关键子模块;其中,

所述初始化模块,用于对所述授权管理设备进行初始化处理;

所述第一授权模块,用于执行所述授权管理设备在授权认证过程和授权检测过程中的授权相关功能;

所述反调试分析模块,用于实现所述授权管理设备的反调试分析功能,监测所述授权管理设备是否被调试;

所述关键子模块,用于执行嵌入式设备算法中的关键子模块功能;

所述数据存储区包括静态数据存储区和动态数据存储区;其中,

所述静态数据存储区,用于存储所述初始化模块运行时的初始化数据、授权信息和所述嵌入式设备算法中的关键数据;

所述动态数据存储区,用于存储所述授权管理设备运行期间产生的临时数据。

优选地,所述关键数据包括算法中的模型文件、模型参数;

所述授权信息包括由授权起止日期、嵌入式设备的硬件信息和算法版本构成的授权基础信息,所述授权基础信息包括对称加密算法的密钥、双向认证挑战PIN码、双向认证响应PIN码、单向认证PIN码。

优选地,所述反调试分析模块实现所述授权管理设备的反调试分析功能的过程,包括:

所述授权管理设备接收所述嵌入式设备发送的初始化完成状态,所述授权管理设备启动运行进入反调试状态;

所述授权管理设备记录交互日志,并启动所述反调试分析模块;所述交互日志包含所述授权管理设备与所述嵌入式设备之间的交互指令和交互时间;

通过所述反调试分析模块循环读取所述交互日志中的相邻两条所述交互指令,并对相邻两条所述交互指令的间隔时间和前后顺序进行分析检测,得到分析检测结果;

在所述分析检测结果为异常时,发送告警状态码至所述嵌入式设备,并记录告警次数;

在告警次数达到设定阈值时,所述授权管理设备停止运行进入自锁状态。

第三方面,本发明提供一种嵌入式设备,其特征在于,所述嵌入式设备运行至少一个算法;所述算法包括程序和数据;

所述数据包括基本数据和关键数据;

所述程序包括第二授权模块和至少一个关键子模块;其中,

所述第二授权模块,用于执行所述嵌入式设备在授权认证过程和授权检测过程中的授权相关功能。

第四方面,本发明提供一种授权管理系统,包括第二方面所述的授权管理设备,以及第三方面所述的嵌入式设备,所述授权管理设备与所述嵌入式设备建立有通信连接。

本发明提供的授权管理方法和系统、授权管理设备和嵌入式设备,在嵌入式设备启动阶段,通过PIN码双向认证和时间有效性认证结合的授权认证方式,提高了算法授权安全性和可靠性,结合后续嵌入式设备运行阶段的授权检测,对授权只在握手阶段或者安装阶段执行进行补充堵漏。同时,本发明通过将嵌入式设备算法中的关键数据存储在授权管理设备中,并且将嵌入式设备中算法的关键子模块置于授权管理设备中运行,能够有效保护嵌入式设备中算法。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明一实施例中授权管理方法的流程图;

图2为本发明一实施例中PIN码单向认证的流程图;

图3为本发明一实施例中关键子模块嵌入的流程图;

图4为本发明一实施例中授权管理设备的示意图;

图5为本发明一实施例中反调试分析功能的实现过程的示意图;

图6为本发明一实施例中嵌入式设备的示意图;

图7为本发明一实施例中授权管理系统的示意图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

在一实施例中,如图1所示,提供一种授权管理方法,该授权管理方法可以应用于如图7所示的授权管理系统中。该授权管理方法可以包含嵌入式设备启动阶段与授权管理设备的授权认证过程以及嵌入式设备运行阶段与授权管理设备的授权检测过程。

在本实施例中,嵌入式设备启动阶段与授权管理设备的授权认证过程,包括以下步骤:

首先,嵌入式设备与授权管理设备进行双向PIN码认证,其包括以下步骤:

步骤S101,嵌入式设备获取授权信息项,生成第一双向认证PIN码、第二双向认证PIN码和单向认证PIN码,向授权管理设备发送双向认证挑战指令;该双向认证挑战指令中包含加密第一双向认证PIN码得到的双向认证PIN码密文。

也即,在嵌入式设备启动并初始化完成后,对多个授权信息项进行不同组合,利用MD5数字摘要算法生成第一双向认证PIN码、第二双向认证PIN码、单向认证PIN码,并分别对第一双向认证PIN码和单向认证PIN码进行DES加密得到双向认证PIN码密文,再将包含双向认证PIN码密文的双向认证挑战指令发送至授权管理设备。其中,多个授权信息项为三个或三个以上的授权信息项。

步骤S102,授权管理设备接收嵌入式设备发送的双向认证挑战指令,读取数据存储区中的双向认证挑战PIN码,并与解密双向认证PIN码密文得到的第一双向认证PIN码进行比较。

也即,授权管理设备接收到包含双向认证PIN码密文的双向认证挑战指令,对双向认证PIN码密文进行解密得到第一双向认证PIN码,检测第一双向认证PIN码是否与数据存储区的双向认证挑战PIN码相等;若相等,则继续执行步骤S103,否则双向PIN码认证失败,终止启动阶段的授权认证。

步骤S103,若相等,则授权管理设备读取数据存储区中的双向认证响应PIN码,向嵌入式设备发送双向认证响应指令;该双向认证响应指令中包含加密双向认证响应PIN码得到的认证响应PIN码密文。

也即,授权管理设备读取数据存储区中的双向认证响应PIN码,并对双向认证响应PIN码进行DES加密得到认证响应PIN码密文,再向嵌入式设备发送包含认证响应PIN码密文的双向认证响应指令。

步骤S104,嵌入式设备接收授权管理设备发送的双向认证响应指令,并将第二双向认证PIN码与解密认证响应PIN码密文得到的双向认证响应PIN码进行比较。

也即,嵌入式设备接收到包含认证响应PIN码密文的双向认证响应指令,对认证响应PIN码密文进行解密得到解密后的双向认证响应PIN码,检测解密后的双向认证响应PIN码和第二双向认证PIN码是否相等,若相等,则继续执行时间有效性认证,否则双向PIN码认证失败,终止启动阶段的授权认证。

步骤S105,若相等,嵌入式设备向授权管理设备发送第一认证确认指令,进入时间有效性认证。

步骤S106,授权管理设备接收嵌入式设备发送的第一认证确认指令,确定PIN码双向认证通过,进入时间有效性认证。

在上述步骤中,DES加密、解密的密钥提前烧录在嵌入式设备和授权管理设备中,密钥不在通信中传输,可以减少被破解的风险。

在本实施例中,在嵌入式设备启动阶段,嵌入式设备向授权管理设备发送双向认证挑战指令;授权管理设备接收到双向认证挑战指令之后,触发授权管理设备PIN码认证,在授权管理设备PIN码认证通过后向嵌入式设备发送双向认证响应指令;嵌入式设备接收到双向认证响应指令之后,触发嵌入式设备PIN码认证,在嵌入式设备PIN码认证通过后,向授权管理设备发送第一认证确认指令,从而完成PIN码双向认证,本实施例通过PIN码双向认证提高了嵌入式设备的算法授权安全性和可靠性。此外,结合授权管理设备实施例可知,嵌入式设备算法中的关键数据存储至授权管理设备中,并且嵌入式设备算法中的关键子模块在授权管理设备中运行,实现了嵌入式设备算法保护,进一步提高了算法授权安全性和可靠性。

其次,授权管理设备对嵌入式设备进行时间有效性认证,其包括以下步骤:

步骤S201,嵌入式设备向授权管理设备发送时间有效性认证请求;时间有效性认证请求中包含设备当前时间。

步骤S202,授权管理设备接收时间有效性认证请求,读取数据存储区中的授权起止时间,在检测到设备当前时间位于授权起止时间内,向嵌入式设备发送第二认证确认指令,进入运行阶段的授权检测。

也即,授权管理设备收到包含设备当前时间的时间有效性认证请求后,判断设备当前时间是否在授权起止时间内,若是,则授权管理设备向嵌入式设备发送第二认证确认指令,并进入运行阶段的授权检测过程,否则双向PIN码认证失败,终止启动阶段的授权认证。

步骤S203,嵌入式设备接收授权管理设备发送的第二认证确认指令,进入运行阶段的授权检测。

进一步的,为了增加数据传输的可靠性,嵌入式设备发送的设备当前时间,进行DES加密。

在本实施例中,在嵌入式设备启动阶段,嵌入式设备向授权管理设备发送时间有效性认证请求;授权管理设备接收到时间有效性认证请求之后,触发时间有效性认证,在时间有效性认证通过后向嵌入式设备发送第二认证确认指令,进入运行阶段的授权检测,从而完成时间有效性认证。本实施例的时间有效性认证可以有效防止修改或者伪造嵌入式设备的系统时间,结合上述PIN码双向认证可以进一步提高算法授权的安全性和可靠性。此外,结合后续运行阶段的授权检测,对授权只在握手阶段或者安装阶段执行进行补充堵漏。

且在本实施例中,嵌入式设备运行阶段与授权管理设备的授权检测过程,包括以下步骤:

首先,结合图2所示,嵌入式设备与授权管理设备进行PIN码单向认证,其包括以下步骤:

S301,授权管理设备向嵌入式设备发送单向认证请求。

作为优选,授权管理设备获取随机函数产生的随机数,在随机数符合第一预设条件时,向嵌入式设备发送单向认证请求

其中,随机数符合第一预设条件是指随机数r与整数a取模得到的结果y等于零,且a为2。具体的,授权管理设备利用随机函数,例如RAND函数得到一个随机数r,再将随机数与整数a进行取模得到结果y,若结果y等于零,则发送单向认证请求到嵌入式设备,否则不发送单向认证请求到嵌入式设备。

步骤S302,嵌入式设备接收授权管理设备发送的单向认证请求,向授权管理设备发送单向认证响应指令;该单向认证响应指令中包含加密单向认证PIN码得到的单向认证PIN码密文。

步骤S303,授权管理设备接收嵌入式设备发送的单向认证响应指令,读取数据存储区中的单向认证PIN码,并与解密单向认证PIN码密文得到的单向认证PIN码进行比较,若相等,则PIN码单向认证通过,授权管理设备恢复正常运行,否则PIN码单向认证失败,授权管理设备恢复停止运行。

上述步骤中的PIN码认证属于单向认证,认证过程相对较简单,留足时间和资源供嵌入式设备的算法执行其他操作。

在本实施例中,在嵌入式设备运行阶段,授权管理设备根据随机函数产生的随机值向授权管理设备发送PIN码认证请求,该种PIN码认证方式不仅是对现有授权管理方法的查漏补缺,更能实时保护嵌入式设备中的算法,提高算法授权安全性和可靠性。

其次,结合图3所示,关键子模块嵌入,其包括以下步骤:

步骤S401,嵌入式设备向授权管理设备发送关键子模块嵌入指令;该关键子模块嵌入指令包括加密请求关键子模块标识和输入数据得到的关键子模块标识密文和输入数据密文。

也即,提前将嵌入式设备算法的关键子模块烧录在授权管理设备中,当嵌入式设备的算法需要执行烧录在授权管理设备中的关键子模块时,以关键子模块的标识作为请求关键子模块标识,并分别对请求关键子模块标识及其输入数据进行DES加密得到请求关键子模块标识密文和输入数据密文,再向授权管理设备发送包含请求关键子模块标识密文和输入数据密文的关键子模块嵌入指令。

步骤S402,授权管理设备接收嵌入式设备发送的关键子模块嵌入指令,根据解密请求关键子模块标识密文得到的请求关键子模块标识调用关键子模块,并将解密输入数据密文得到的输入数据输入至关键子模块,得到关键子模块运行后的输出数据。

步骤S403,授权管理设备向嵌入式设备发送关键子模块响应指令;关键子模块响应指令包括加密响应关键子模块标识和输出数据得到的响应关键子模块标识密文和输出数据密文。

也即,授权管理设备将根据请求关键子模块标识调用的关键子模块的标识作为响应关键子模块标识,并分别对响应关键子模块标识及其输出数据进行DES加密,得到响应关键子模块标识密文及其输出数据密文,再向嵌入式设备发送包含响应关键子模块标识密文和输出数据密文的关键子模块响应指令。

步骤S404,嵌入式设备接收到授权管理设备发送的关键子模块响应指令,将解密响应关键子模块标识密文得到的响应关键子模块标识与请求关键子模块标识进行比较,若相等,则获取解密输出数据密文得到的输出数据。

也即,嵌入式设备接收到包含响应关键子模块标识密文和输出数据密文的关键子模块响应指令,对响应关键子模块标识密文和输出数据密文进行解密,得到响应关键子模块标识和输出数据,再检测响应关键子模块标识是否等于请求关键子模块标识,若相等,则获取输出数据,继续正常运行,否则关键子模块嵌入失败,停止运行。

上述步骤中的关键子模块具有代码简单、耗时短的特点,留足时间和资源供嵌入式设备中算法运行其他模块。

可理解的,加解密算法也可以采用其他的对称密钥加密算法,例如3DES算法、AES算法等,通过采用对称密钥加密算法可以使得嵌入式设备和授权管理设备同时具备安全性和高效性。安全性是指不容易被破解,高效性是指加解密速度快、效率高。

需要说明的是,上述授权检测过程中的PIN码单向认证和关键子模块嵌入两者完全独立,并非完成PIN码单向认证后马上执行关键子模块嵌入。

在本实施例中,在嵌入式设备运行阶段,通过将嵌入式设备中算法的关键数据存储在授权管理设备中,并且将嵌入式设备中算法的关键子模块置于授权管理设备中运行,可以有效保护嵌入式设备中算法,即使嵌入式设备中算法被反编译、反汇编也得不到完整的算法,结合单向PIN码认证,进一步实时保护嵌入式设备中算法,提高算法授权安全性和可靠性。

进一步的,嵌入式设备与授权管理设备之间设置有指令交互的超时机制和回复机制。

在本实施例中,超时机制是指,嵌入式设备在发送一条请求后开始计时,若在预设时间内未收到授权管理设备的回复(响应)指令,将再次发送请求,直至多次未收到回复(响应)指令后,确定授权管理设备掉线,嵌入式设备停止运行;

回复机制是指,嵌入式设备与授权管理设备在执行完每条指令后,向对方发送包含状态码的回复(响应)指令。其中,所有回复(响应)指令的状态码并不相同。

在本实施例中,嵌入式设备在每次发送命令后都有回复机制与超时机制,进一步加强指令交互的可靠性,从而进一步提高算法授权可靠性。

在一实施例中,如图4所示,提供一种授权管理设备,该授权管理设备包括程序存储区100和数据存储区200。

在本实施例中,程序存储区100包含初始化模块101、第一授权模块102、反调试分析模块103和至少一个关键子模块104。

初始化模块101,用于对授权管理设备进行初始化处理,为授权模块102、反调试分析模块103和关键子模块104准备运行环境。

第一授权模块102,用于执行授权管理设备在授权认证过程和授权检测过程中的授权相关功能。

反调试分析模块103,用于实现授权管理设备的反调试分析功能,监测授权管理设备是否被调试。

关键子模块104,用于执行嵌入式设备算法中的关键子模块功能。

作为优选,第一授权模块102包括授权管理设备授权认证单元和授权管理设备授权检测单元。其中,授权管理设备授权认证单元,用于接收嵌入式设备发送的双向认证挑战指令,读取数据存储区中的双向认证挑战PIN码,并与解密双向认证PIN码密文得到的第一双向认证PIN码进行比较;读取数据存储区中的双向认证响应PIN码,向嵌入式设备发送双向认证响应指令;接收嵌入式设备发送的第一认证确认指令,确定PIN码双向认证通过,进入时间有效性认证。

授权管理设备授权认证单元,还用于接收时间有效性认证请求,读取数据存储区中的授权起止时间,在检测到设备当前时间位于授权起止时间内,向嵌入式设备发送第二认证确认指令,进入运行阶段的授权检测。

授权管理设备授权检测单元,用于向嵌入式设备发送单向认证请求;接收嵌入式设备发送的单向认证响应指令,读取数据存储区中的单向认证PIN码,并与解密单向认证PIN码密文得到的单向认证PIN码进行比较。

授权管理设备授权检测单元,还用于接收嵌入式设备发送的关键子模块嵌入指令,根据解密请求关键子模块标识密文得到的请求关键子模块标识调用关键子模块,并将解密输入数据密文得到的输入数据输入至关键子模块,得到关键子模块运行后的输出数据;向嵌入式设备发送关键子模块响应指令。

且在本实施例中,数据存储区200包括静态数据存储区201和动态数据存储区202。

静态数据存储区201,用于存储初始化模块运行时的初始化数据、授权信息和嵌入式设备算法中的关键数据;

动态数据存储区202,用于存储授权管理设备运行期间产生的临时数据。

作为优选,静态数据存储区201存储的关键数据包括但不限于人工智能算法中的模型文件、模型参数;授权信息包括但不限于由授权起止日期、嵌入式设备的硬件信息和算法版本等多个授权信息项构成的授权基础信息,该授权基础信息包括但不限于DES、3DES、AES等对称加密算法的密钥以及多个PIN码。该多个PIN码包括双向认证挑战PIN码、双向认证响应PIN码、单向认证PIN码,全部由MD5、SHA1等数字摘要算法根据授权信息中的多个授权信息项进行不同组合后执行摘要运算得到。

进一步的,授权管理设备在烧录初始化模块101、第一授权模块102、反调试分析模块103、关键子模块104、初始化数据、授权信息、关键数据后,物理破坏读写引脚及其电路,使得无法从外部读写授权管理设备内部的程序和数据,外部只能通过受限的指令与授权管理设备进行交互。

进一步的,结合图5所示,反调试分析模块103实现授权管理设备的反调试分析功能的过程,包括以下步骤:

步骤S501,授权管理设备接收嵌入式设备发送的初始化完成状态,授权管理设备启动运行进入反调试状态。

步骤S502,授权管理设备记录交互日志,并启动反调试分析模块103;该交互日志包含授权管理设备与嵌入式设备之间的交互指令和交互时间。

步骤S503,通过反调试分析模块103循环读取交互日志中的相邻两条交互指令,并对相邻两条交互指令的间隔时间和前后顺序进行分析检测,得到分析检测结果;

步骤S504,在分析检测结果为异常时,发送告警状态码至嵌入式设备,并记录告警次数。

步骤S505,在告警次数达到设定阈值时,授权管理设备停止运行进入自锁状态。

可理解的,授权管理设备的反调试分析功能是指,在授权管理设备和嵌入式设备分别启动并完成初始化后,授权管理设备开始记录交互日志并启动反调试分析模块,通过反调试分析模块对交互日志进行相邻两个交互指令的前后顺序和相邻两个交互指令之间的时间间隔等分析检测,得到分析检测结果,在分析检测结果为异常时,判定存在调试行为,授权管理设备向嵌入式设备发出警告并记录警告次数,在警告次数达到设定阈值时,授权管理设备停止正常运行并进入自锁状态,自锁状态必须通过授权管理设备的提供商提供的一次性解锁程序才能解除。其中,交互日志包括嵌入式设备与授权管理设备之间的交互指令和交互时间。分析检测结果为异常是指相邻两个交互指令的时间间隔不符合要求,或者相邻两个交互指令的前后顺序不符合要求。

可理解的,嵌入式设备在每次发送命令后都触发超时机制,确保每一条指令在授权管理设备都能有效执行。另外,嵌入式设备和授权管理装置两者都有日志记录功能,也可以两者择其一实现日志记录,并启动反调试分析模块103,对日志实时进行分析检测,以防止用户调试与破解。

在本实施例中,授权管理设备记录交互指令并启动反调试分析模块103,通过反调试分析模块103实时对指令进行解析,判断授权是否在被调试或者嵌入式设备中的算法是否符合要求,若检测到调试行为,授权管理设备将自锁,从而使得嵌入式设备无法继续有效执行,进一步对嵌入式设备中算法和授权管理设备进行保护。

在一实施例中,如图6所示,提供一种嵌入式设备,该嵌入式设备运行至少一个算法;该算法包括程序和数据。

在本实施例中,该数据包括但不限于基本数据和关键数据。

该程序包括第二授权模块和至少一个关键子模块。其中,第二授权模块,用于执行嵌入式设备在授权认证过程和授权检测过程中的授权相关功能,且第二授权模块在嵌入式设备中运行;关键子模块在授权管理设备中运行。

作为优选,第二授权模块包括嵌入式设备授权认证单元和嵌入式设备授权检测单元。其中,嵌入式设备授权认证单元,用于嵌入式设备获取授权信息项,生成第一双向认证PIN码、第二双向认证PIN码和单向认证PIN码,向授权管理设备发送双向认证挑战指令;接收授权管理设备发送的双向认证响应指令,并将第二双向认证PIN码与解密认证响应PIN码密文得到的双向认证响应PIN码进行比较;向授权管理设备发送第一认证确认指令,进入时间有效性认证。

嵌入式设备授权认证单元,还用于向授权管理设备发送时间有效性认证请求;接收授权管理设备发送的第二认证确认指令,进入运行阶段的授权检测。

嵌入式设备授权检测单元,用于接收授权管理设备发送的单向认证请求,向授权管理设备发送单向认证响应指令。

嵌入式设备授权检测单元,还用于向授权管理设备发送关键子模块嵌入指令;接收到授权管理设备发送的关键子模块响应指令,将解密响应关键子模块标识密文得到的响应关键子模块标识与请求关键子模块标识进行比较,若相等,则获取解密输出数据密文得到的输出数据。

在一实施例中,如图7所示,提供一种授权管理系统,包括上述实施例中的授权管理设备和上述实施例中的嵌入式设备,授权管理设备与嵌入式设备建立有通信连接。

进一步的,授权管理设备独立于嵌入式设备,并通过I2C、GPIO、RS485三种通信方式中任一种通信方式与嵌入式设备建立通信连接。

所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本发明的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上的本发明的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明的保护范围之内。

相关技术
  • 授权管理方法和系统、授权管理设备和嵌入式设备
  • 一种嵌入式设备license授权管理方法
技术分类

06120112900806