一种数据加密标准协处理器自检的方法

文档序号:1744522 发布日期:2019-11-26 浏览:20次 >En<

阅读说明:本技术 一种数据加密标准协处理器自检的方法 (A kind of method of data encryption standards coprocessor self-test ) 是由 李立 焦英华 范振伟 于 2019-08-16 设计创作,主要内容包括:本发明实施例涉及一种数据加密标准协处理器自检的方法,其特征在于,所述方法包括:在系统区设置启动自检状态字、原始密钥、原始明文、原始密文、协处理器错误状态计数器;在当单片机进行上电复位时,根据启动自检状态字、原始密钥、原始明文、原始密文,对协处理器进行协处理器启动自检处理;在当在完成上电复位之后,根据上位机或上位应用的需求要对协处理器进行状态检查时,根据原始密钥、原始明文、原始密文,对协处理器进行协处理器主动自检处理。通过使用本发明方法,不但可以有常规复位自检与随时主动自检两种模式以供使用,还对自检失败做了鉴别处理,既保障了协处理器的稳定工作状态,也为使用者提供了及时便捷的预警处理手段。(The present embodiments relate to a kind of methods of data encryption standards coprocessor self-test, which is characterized in that the described method includes: starting self-test status word, primary key, original plaintext, original cipher text, coprocessor error status counter is arranged in system area;When single-chip microcontroller carries out electrification reset, according to starting self-test status word, primary key, original plaintext, original cipher text, coprocessor starting self-test processing is carried out to coprocessor;After completing electrification reset, when carrying out status checkout to coprocessor according to host computer or the demand of upper application, according to primary key, original plaintext, original cipher text, coprocessor active self-test processing is carried out to coprocessor.By using the method for the present invention, can not only there be conventional RESET self-test with the both of which of active self-test at any time for using, identification processing also has been done to fail self-test, has both ensured the steady-working state of coprocessor, timely and convenient early warning processing means are also provided for user.)

一种数据加密标准协处理器自检的方法

技术领域

本发明涉及单片机技术领域,特别涉及一种数据加密标准协处理器自检的方法。

背景技术

数据加密标准(Data Encryption Standard,缩写:DES)协处理器在安全计算单片机上已被广泛使用,主要用于提高单片机数据加密的能力。如果DES协处理器出现功能错误,则会导致基于DES计算的加解密数据出错,进一步导致单片机所属上层应用执行错误。

发明内容

本发明的目的,就是针对现有技术的缺陷,提供一种数据加密标准协处理器自检的方法,在单片机上电复位对DES协处理器进行启动自检操作,在单片机上电复位之后随时可发起对DES协处理器主动自检操作,当协处理器状态异常时会对上位机发出预警,当协处理器错误状态计数器的数值超过限定值时会立即停止DES协处理器工作。

实现上述目的,本发明提供了一种数据加密标准协处理器自检的方法,包括:

单片机在系统区设置启动自检状态字、原始密钥、原始明文、原始密文、协处理器错误状态计数器;

在当所述单片机进行上电复位时,所述单片机根据所述启动自检状态字、原始密钥、原始明文、原始密文,对协处理器进行协处理器启动自检处理,所述协处理器启动自检具体包括:

所述单片机从所述系统区获取所述启动自检状态字生成第一自检状态字,获取所述原始密钥生成第一密钥,获取所述原始明文生成第一明文,获取所述原始密文生成第一密文;当所述第一自检状态字的值为1时,所述单片机根据所述第一密钥、第一明文、第一密文,对所述协处理器进行第一自检处理;当所述第一自检成功之后,所述单片机将所述系统区中所述协处理器错误状态计数器设置为0,并执行开机启动流程;

在当所述单片机在完成上电复位之后,所述单片机根据上位机或上位应用的需求要对所述协处理器进行状态检查时,所述单片机根据所述原始密钥、原始明文、原始密文,对所述协处理器进行协处理器主动自检处理,所述协处理器主动自检具体包括:

所述单片机从所述系统区获取所述原始密钥生成第二密钥,获取所述原始明文生成第二明文,获取所述原始密文生成第二密文;所述单片机根据所述第二密钥、第二明文、第二密文,对所述协处理器进行第二自检处理;当所述第二自检成功之后,所述单片机将所述系统区中所述协处理器错误状态计数器设置为0,并向所述上位机或上位应用发送所述协处理器主动自检成功。

进一步的,所述方法还包括:

当所述第一自检状态字的值为0时,所述单片机退出所述协处理器启动自检流程,并执行开机启动流程。

进一步的,所述方法还包括:

当所述第一自检失败之后,所述单片机将所述系统区中所述协处理器错误状态计数器的值加1,所述单片机执行强制上电复位重启流程。

进一步的,所述方法还包括:

当所述第二自检失败之后,所述单片机将所述系统区中所述协处理器错误状态计数器的值加1,并向所述上位机或上位应用发送所述协处理器主动自检失败。

进一步的,所述方法还包括:

当所述协处理器错误状态计数器的值大于安全限定值时,所述单片机将所述协处理器的使用状态设置为失能,并向所述上位机或上位应用发送所述协处理器已失能。

进一步的,所述单片机根据所述第一密钥、第一明文、第一密文,对所述协处理器进行第一自检处理,具体包括:

所述单片机初始化第一临时明文、第一临时密文;

所述单片机根据所述第一密钥,使用所述协处理器对所述第一明文进行加密处理,生成所述第一临时密文;

当所述第一临时密文与所述第一密文相等时,所述单片机根据所述第一密钥,使用所述协处理器对所述第一密文进行解密处理,生成所述第一临时明文;

当所述第一临时明文与所述第一明文相等时,所述第一自检成功。

优选的,所述方法还包括:

当所述第一临时密文与所述第一密文不相等时,所述单片机退出第一自检处理流程,所述第一自检失败;

当所述第一临时明文与所述第一明文不相等时,所述单片机退出第一自检处理流程,所述第一自检失败。

进一步的,所述单片机根据所述第二密钥、第二明文、第二密文,对所述协处理器进行第二自检处理,具体包括:

所述单片机初始化第二临时明文、第二临时密文;

所述单片机根据所述第二密钥,使用所述协处理器对所述第二明文进行加密处理,生成所述第二临时密文;

当所述第二临时密文与所述第二密文相等时,所述单片机根据所述第二密钥,使用所述协处理器对所述第二密文进行解密处理,生成所述第二临时明文;

当所述第二临时明文与所述第二明文相等时,所述第二自检成功。

优选的,所述方法还包括:

当所述第二临时密文与所述第二密文不相等时,所述单片机退出第二自检处理流程,所述第二自检失败;

当所述第二临时明文与所述第二明文不相等时,所述单片机退出第二自检处理流程,所述第二自检失败。

本发明提供的一种数据加密标准协处理器自检的方法,在单片机上电复位时,如果启动自检状态字为1对DES协处理器进行启动自检,如果启动自检状态字不为1则跳过对DES协处理器的第一启动自检。在单片机上电复位之后,根据上位机或上位应用的需求要对DES协处理器进行状态检查时,单片机对DES协处理器启动第一主动自检。其中,第一启动自检、第一主动自检,都是从系统区获取预置的原始密钥、原始密文、原始明文,再通过使用原始密钥对原始明文进行加密生成临时密文、对原始密文进行解密生成临时明文,最后对原始明文与临时明文进行比对、原始密文与临时密文分别进行比对,比对成功之后则自检成功。如果自检不成功,本发明方法设置了协处理器错误状态计数器,每次自检成功该计数器的值回零,每次自检失败该计数器的值加1,当计数器的值超过限定值之后,单片机会停止DES协处理器的使用。

附图说明

图1为本发明实施例一提供的一种数据加密标准协处理器自检的方法示意图。

图2为本发明实施例二提供的一种数据加密标准协处理器自检的方法示意图。

具体实施方式

为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

本发明实施例一,如图1提供一种数据加密标准协处理器自检的方法示意图所示,方法包括以下步骤:

步骤11,单片机在系统区设置启动自检状态字、原始密钥、原始明文、原始密文、协处理器错误状态计数器。

步骤12,单片机根据当前执行自检的当前状态进行判断,当前状态为上电复位状态时,转至步骤131;当前状态为完成上电复位之后由上位机或上位应用发起主动自检需求状态时,转至步骤141。

步骤131,在当单片机进行上电复位时,单片机根据启动自检状态字、原始密钥、原始明文、原始密文,对协处理器进行协处理器启动自检处理,协处理器启动自检,

具体包括:步骤1311,单片机从系统区获取启动自检状态字生成第一自检状态字,获取原始密钥生成第一密钥,获取原始明文生成第一明文,获取原始密文生成第一密文;

步骤1312,当第一自检状态字的值为1时,单片机根据第一密钥、第一明文、第一密文,对协处理器进行第一自检处理,

具体包括:步骤13121,单片机初始化第一临时明文、第一临时密文;

步骤13122,单片机根据第一密钥,使用协处理器对第一明文进行加密处理,生成第一临时密文;

步骤13123,当第一临时密文与第一密文相等时,单片机根据第一密钥,使用协处理器对第一密文进行解密处理,生成第一临时明文;

步骤13124,当第一临时明文与第一明文相等时,第一自检成功。

步骤1313,当第一自检成功之后,单片机将系统区中协处理器错误状态计数器设置为0,并执行开机启动流程。

步骤141,在当单片机在完成上电复位之后,单片机根据上位机或上位应用的需求要对协处理器进行状态检查时,单片机根据原始密钥、原始明文、原始密文,对协处理器进行协处理器主动自检处理,协处理器主动自检,

具体包括:步骤1411,单片机从系统区获取原始密钥生成第二密钥,获取原始明文生成第二明文,获取原始密文生成第二密文;

步骤1412,单片机根据第二密钥、第二明文、第二密文,对协处理器进行第二自检处理,

具体包括:步骤14121,单片机初始化第二临时明文、第二临时密文;

步骤14122,单片机根据第二密钥,使用协处理器对第二明文进行加密处理,生成第二临时密文;

步骤14123,当第二临时密文与第二密文相等时,单片机根据第二密钥,使用协处理器对第二密文进行解密处理,生成第二临时明文;

步骤14124,当第二临时明文与第二明文相等时,第二自检成功。

步骤1413,当第二自检成功之后,单片机将系统区中协处理器错误状态计数器设置为0,并向上位机或上位应用发送协处理器主动自检成功。

本发明实施例二,如图2提供一种数据加密标准协处理器自检的方法示意图所示,方法包括以下步骤:

步骤21,单片机在系统区设置启动自检状态字、原始密钥、原始明文、原始密文、协处理器错误状态计数器。

步骤22,在当单片机进行上电复位时,单片机从系统区获取启动自检状态字生成第一自检状态字,获取原始密钥生成第一密钥,获取原始明文生成第一明文,获取原始密文生成第一密文。

步骤23,单片机判断第一自检状态字的值是否为1,当第一自检状态字的值为1时转至步骤24,当第一自检状态字的值为0时转至步骤50,当第一自检状态字的值即不为1也不为0时转至步骤410。

步骤24,单片机初始化第一临时明文、第一临时密文。

步骤25,单片机根据第一密钥,使用协处理器对第一明文进行加密处理,生成第一临时密文。

步骤26,单片机判断第一临时密文与第一密文是否相等,如果第一临时密文与第一密文相等转至步骤27,如果第一临时密文与第一密文不相等转至步骤420。

步骤27,单片机根据第一密钥,使用协处理器对第一密文进行解密处理,生成第一临时明文。

步骤28,单片机判断第一临时明文与第一明文是否相等,如果第一临时明文与第一明文相等转至步骤29,如果第一临时明文与第一明文不相等转至步骤420。

步骤29,第一自检成功,单片机将系统区中协处理器错误状态计数器设置为0,并执行开机启动流程。

步骤50,所述单片机退出所述协处理器启动自检流程,并执行开机启动流程。

步骤410,所述单片机退出所述协处理器启动自检流程,并返回错误信息:自检状态字错误。

导致发生该类问题,一般都是因为自检状态字的值被修改成错误不可识别状态值。

步骤420,自检失败,单片机将系统区中协处理器错误状态计数器的值加1,单片机执行强制上电复位重启流程。

此处,如果是在上电复位之后,由上位机与上位应用发起的主动自检时,单片机将系统区中协处理器错误状态计数器的值加1的同时,还需向上位机与上位应用返回错误信息:主动自检失败;

另外,当协处理器错误状态计数器的值超过限定值之后,本步骤还会作出进一步处理操作:单片机将协处理器的使用状态设置为失能,并向上位机或上位应用发送协处理器已失能。

本发明提供的一种数据加密标准协处理器自检的方法,在单片机上电复位时,如果启动自检状态字为1对DES协处理器进行启动自检,如果启动自检状态字不为1则跳过对DES协处理器的第一启动自检。在单片机上电复位之后,根据上位机或上位应用的需求要对DES协处理器进行状态检查时,单片机对DES协处理器启动第一主动自检。其中,第一启动自检、第一主动自检,都是从系统区获取预置的原始密钥、原始密文、原始明文,再通过使用原始密钥对原始明文进行加密生成临时密文、对原始密文进行解密生成临时明文,最后对原始明文与临时明文进行比对、原始密文与临时密文分别进行比对,比对成功之后则自检成功。如果自检不成功,本发明方法设置了协处理器错误状态计数器,每次自检成功该计数器的值回零,每次自检失败该计数器的值加1,当计数器的值超过限定值之后,单片机会停止DES协处理器的使用。通过使用本发明方法,不但可以有常规复位自检与随时主动自检两种模式以供使用,还对自检失败做了鉴别处理,既保障了DES协处理器的稳定工作状态,也为使用者提供了及时便捷的预警处理手段。

专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。

以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

10页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种文本信息传输方法、装置及系统

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!