CN110502359A - 一种公开密钥密码算法协处理器自检的方法 - Google Patents

一种公开密钥密码算法协处理器自检的方法 Download PDF

Info

Publication number
CN110502359A
CN110502359A CN201910761886.4A CN201910761886A CN110502359A CN 110502359 A CN110502359 A CN 110502359A CN 201910761886 A CN201910761886 A CN 201910761886A CN 110502359 A CN110502359 A CN 110502359A
Authority
CN
China
Prior art keywords
self
chip microcontroller
test
value
ciphertext
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201910761886.4A
Other languages
English (en)
Other versions
CN110502359B (zh
Inventor
李立
焦英华
李凌浩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ZHAOXUN HENGDA MICROELECTRONICS TECHNOLOGY (BEIJING) Co Ltd
Original Assignee
ZHAOXUN HENGDA MICROELECTRONICS TECHNOLOGY (BEIJING) Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ZHAOXUN HENGDA MICROELECTRONICS TECHNOLOGY (BEIJING) Co Ltd filed Critical ZHAOXUN HENGDA MICROELECTRONICS TECHNOLOGY (BEIJING) Co Ltd
Priority to CN201910761886.4A priority Critical patent/CN110502359B/zh
Publication of CN110502359A publication Critical patent/CN110502359A/zh
Application granted granted Critical
Publication of CN110502359B publication Critical patent/CN110502359B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/24Resetting means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0721Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/076Error or fault detection not based on redundancy by exceeding limits by exceeding a count or rate limit, e.g. word- or bit count limit
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Debugging And Monitoring (AREA)
  • Microcomputers (AREA)

Abstract

本发明实施例涉及一种公开密钥密码算法协处理器自检的方法,其特征在于,所述方法包括:单片机上电复位时,从系统区获取验证明文生成第一明文,获取验证密文生成第一密文,获取自检次数门限生成第一门限,获取自检状态机生成第一状态机;根据第一门限、第一状态机,对协处理器进行第一错误状态验证操作;按随机功能参数生成方法生成第一自检功能参数;根据第一自检功能参数,进行第一验证密钥获取操作;根据第一自检功能参数,进行第一功能验证操作;当第一功能验证执行成功之后,单片机对协处理进行第一自检状态重置操作。

Description

一种公开密钥密码算法协处理器自检的方法
技术领域
本发明涉及单片机技术领域,特别涉及一种公开密钥密码算法协处理器自检的方法。
背景技术
公开密钥密码算法协处理器在安全计算单片机上已被广泛使用,主要用于利用非对称算法进行数据加解密与签名验签方面。如果公开密钥密码算法协处理器出现功能错误,则会导致基于公开密钥密码算法协处理器生成的数据出错,进一步导致单片机所属上层应用执行错误。常见的单片机在应用公开密钥密码算法协处理器时,都是通过上位应用进行计算前后的比对才能发现片上公开密钥密码算法协处理器出现功能问题。因为上位应用不是每一步都会对数据进行算法核对,这不仅仅不能及时反馈单片机上公开密钥密码算法协处理器的工作状态,还容易导致处于错误工作状态的公开密钥密码算法协处理器被误用。
发明内容
本发明的目的,就是针对现有技术的缺陷,提供一种公开密钥密码算法协处理器自检的方法,在设备每次进行上电复位时根据自检功能参数对公开密钥密码算法协处理器进行功能选择性主动自检,一旦自检发生错误则单片机重复上电复位自检流程进行再次功能自检。本发明方法设置自检次数门限,当连续自检错误次数超过自检次数门限之后,单片机对公开密钥密码算法协处理器进行关停处理。
实现上述目的,本发明提供了一种公开密钥密码算法协处理器自检的方法,包括:
单片机上电复位时,所述单片机从系统区获取验证明文生成第一明文,获取验证密文生成第一密文,获取自检次数门限生成第一门限,获取自检状态机生成第一状态机;
所述单片机根据所述第一门限、第一状态机,对协处理器进行第一错误状态验证操作;
当所述第一错误状态验证执行成功之后,所述单片机按随机功能参数生成方法生成第一自检功能参数;
所述单片机根据所述第一自检功能参数,进行第一验证密钥获取操作,具体的:当所述第一自检功能参数的值为0时,所述单片机从所述系统区获取验证公钥生成第一公钥;当所述第一自检功能参数的值为1时,所述单片机从所述系统区获取验证私钥生成第一私钥;
所述单片机根据所述第一自检功能参数,进行第一功能验证操作,具体的:当所述第一自检功能参数的值为0时,所述单片机根据所述第一公钥、第一明文、第一密文,对所述协处理器进行第一加密功能验证操作;当所述第一自检功能参数的值为1时,所述单片机根据所述第一私钥、第一明文、第一密文,对所述协处理器进行第一解密功能验证操作;
当所述第一功能验证执行成功之后,所述单片机对所述协处理进行第一自检状态重置操作。
进一步的,所述单片机从系统区获取验证明文生成第一明文,获取验证密文生成第一密文,获取自检次数门限生成第一门限,获取自检状态机生成第一状态机,之前,还包括:
所述单片机在系统区设置所述验证公钥、验证私钥、验证明文、验证密文、自检次数门限、自检状态机。
进一步的,所述单片机根据所述第一门限、第一状态机,对协处理器进行第一错误状态验证操作,具体包括:
所述单片机根据所述第一门限的值对所述第一状态机进行比对:当所述第一状态机的值小于或等于所述第一门限的值时,所述第一错误状态验证执行成功。
进一步的,所述单片机按随机功能参数生成方法生成第一自检功能参数,具体包括:
所述单片机使用随机数发生器,生成第一随机数;
所述单片机根据所述第一随机数,提取所述第一随机数的最低比特位的值,生成所述第一自检功能参数。
进一步的,所述单片机根据所述第一公钥、第一明文、第一密文,对所述协处理器进行第一加密功能验证操作,具体包括:
所述单片机初始化第一临时密文;
所述单片机根据所述第一公钥,使用所述协处理器对所述第一明文进行加密处理,生成所述第一临时密文;
当所述第一临时密文的值与所述第一密文的值相等时,所述第一加密功能验证执行成功。
进一步的,所述单片机根据所述第一私钥、第一明文、第一密文,对所述协处理器进行第一解密功能验证操作,具体包括:
所述单片机初始化第一临时明文;
所述单片机根据所述第一私钥,使用所述协处理器对所述第一密文进行解密处理,生成所述第一临时明文;
当所述第一临时明文的值与所述第一明文的值相等时,所述第一解密功能验证执行成功。
进一步的,所述方法还包括:
当所述第一错误状态验证执行失败之后,所述单片机进行第一自检错误处理操作;
当所述第一加密功能验证执行失败之后,所述单片机进行第二自检错误处理操作;
当所述第一解密功能验证执行失败之后,所述单片机进行第二自检错误处理操作。
优选的,所述单片机进行第一自检错误处理操作,具体包括:
所述单片机退出所述协处理器的自检流程,并对所述协处理器进行使用关停处理。
优选的,所述单片机进行第二自检错误处理操作,具体包括:
所述单片机退出所述协处理器的自检流程,并设置所述系统区中的所述自检状态机的值加1;
在当所述自检状态机的值设置成功之后,所述单片机进行重启操作。
进一步的,所述单片机对所述协处理进行第一自检状态重置操作,具体包括:
所述单片机设置所述系统区中的所述自检状态机的值为0。
本发明提供的一种公开密钥密码算法协处理器自检的方法,在单片机上电复位过程中对公开密钥密码算法协处理器进行主动自检。在单片机对公开密钥密码算法协处理器进行功能检验之前,单片机通过识别自检次数门限与自检状态机的关系,鉴别在当前上电复位过程中,公开密钥密码算法协处理器是否为可工作状态:如果是则继续执行后续功能检验流程,如果不是则直接退出自检流程并对公开密钥密码算法协处理器进行使用功能关停操作。确认公开密钥密码算法协处理器的可工作状态之后,单片机进入功能检验阶段,该阶段单片机为提高自检效率,特设置随机自检功能参数。该参数在每次上电复位中只产生一次,取值为二选一方式,通过对该参数取值的鉴别识别当前上电复位过程中对公开密钥密码算法协处理器的功能检验具体是加密功能检验还是解密功能检验。在单片机对公开密钥密码算法协处理器成功执行完功能检验之后,将自检状态机进行回零重置处理,以免在后续重启过程中被自检流程误判导致协处理器被错误关停。
附图说明
图1为本发明实施例一提供的一种公开密钥密码算法协处理器自检的方法示意图。
图2为本发明实施例二提供的一种公开密钥密码算法协处理器自检的方法示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
本发明实施例一,如图1提供一种公开密钥密码算法协处理器自检的方法示意图所示,方法包括以下步骤:
步骤11,单片机上电复位时,单片机从系统区获取验证明文生成第一明文,获取验证密文生成第一密文,获取自检次数门限生成第一门限,获取自检状态机生成第一状态机。
此处,系统区的数据都是预置的,一般验证公钥、验证私钥、验证密文、验证明文作为关键自检核验参数,为以防遭到篡改,通常在单片机生产数据初始化时被直接预置进支持一次性写操作的系统区部分;自检次数门限与自检状态机属于可变更数据,尤其自检状态机更是每次自检过程都会被重置或者改写一次,所以这两个参数都是被预置在支持多次写操作的系统区。自检次数门限的值,就是连续自检错误的最大限制值;自检状态机的值,就是发生连续自检错误的次数。例如,当自检次数门限的值为3,自检状态机的值为2时,说明:协处理器连续自检错误的最大次数是3次,当前已经连续错误两次,如果再错一次则单片机会认为协处理器功能失常对之进行关停处理。
步骤12,单片机根据第一门限、第一状态机,对协处理器进行第一错误状态验证操作。
具体包括:单片机根据第一门限的值对第一状态机进行比对:当第一状态机的值小于或等于第一门限的值时,则一错误状态验证执行成功。
此处,单片机在启动功能自检之前,对协处理器的当前自检错误状态进行判断。如果当前连续自检错误状态未超出自检次数门限,则允许执行后续自检流程,即第一功能验证。
步骤13,当第一错误状态验证执行成功之后,单片机按随机功能参数生成方法生成第一自检功能参数,
具体包括:步骤131,单片机使用随机数发生器,生成第一随机数;
步骤132,单片机根据第一随机数,提取第一随机数的最低比特位的值,生成第一自检功能参数。
此处,之所以设置第一自检功能参数,是因为对于公开密钥密码算法协处理器来说,做一次加密与解密的时间并不短,如果在每次上电复位都对协处理进行加密与解密双功能全验证的话,会导致单片机上电复位周期加长,在一些具体的应用中由于对单片机上电复位时间是有要求的,所以为了兼顾安全自检的必需性与实际应用的兼容性,特此设置了这个参数,并以此提供了一张随机功能自检的方式。具体的,因为协处理器的主要功能就是加密和解密,所以第一自检功能参数的取值自然就是二选一的模式。所以就用选用了一个随机数的一个指定比特位的随机值作为这个参数的设定值。
步骤14,单片机根据第一自检功能参数,进行第一验证密钥获取操作,具体的:当第一自检功能参数的值为0时,单片机从系统区获取验证公钥生成第一公钥;当第一自检功能参数的值为1时,单片机从系统区获取验证私钥生成第一私钥。
此处,因为公开密钥密码算法协处理使用的公钥与私钥数据长度都不短,为了不至于浪费冗余的时间在取值上,特根据上述第一自检功能参数的取值来决定对特定密钥的获取,这样在每次自检流程中都能节省出一次大数据读的时间来。
步骤15,单片机根据第一自检功能参数,进行第一功能验证操作,
具体包括:步骤151,当第一自检功能参数的值为0时,单片机根据第一公钥、第一明文、第一密文,对协处理器进行第一加密功能验证操作,
具体包括:步骤1511,单片机初始化第一临时密文;
步骤1512,单片机根据第一公钥,使用协处理器对第一明文进行加密处理,生成第一临时密文;
步骤1513,当第一临时密文的值与第一密文的值相等时,第一加密功能验证执行成功,转至步骤16。
此处,是单片机对协处理执行的加密功能自检。公开密钥密码算法的加密原则,是使用公钥对明文进行加密生成密文。此处的检查,是使用第一公钥对第一明文进行加密生成过程密文:第一临时密文;再使用从系统区获得的预置密文(第一密文)与计算出的第一临时密文进行比对,在二者相等的情况下说明协处理器当前的加密功能是正常的。
步骤152,当第一自检功能参数的值为1时,单片机根据第一私钥、第一明文、第一密文,对协处理器进行第一解密功能验证操作,
具体包括:步骤1521,单片机初始化第一临时明文;
步骤1522,单片机根据第一私钥,使用协处理器对第一密文进行解密处理,生成第一临时明文;
步骤1523,当第一临时明文的值与第一明文的值相等时,第一解密功能验证执行成功,转至步骤16。
此处,是单片机对协处理执行的解密功能自检。公开密钥密码算法的解密原则,是使用私钥对密文进行解密生成明文。此处的检查,是使用第一私钥对第一密文进行解密生成过程明文:第一临时密文;再使用从系统区获得的预置明文(第一明文)与计算出的第一临时明文进行比对,在二者相等的情况下说明协处理器当前的解密功能是正常的。
步骤16,当第一功能验证执行成功之后,单片机对协处理进行第一自检状态重置操作。
此处,当本次自检成功之后,单片机认为协处理工作状态正常,则应对自检状态机的值进行回零重置处理。
本发明实施例二,如图2提供一种公开密钥密码算法协处理器自检的方法示意图所示,方法包括以下步骤:
步骤21,单片机上电复位时,单片机从系统区获取验证明文生成第一明文,获取验证密文生成第一密文,获取自检次数门限生成第一门限,获取自检状态机生成第一状态机。
此处,系统区的数据都是预置的,一般验证公钥、验证私钥、验证密文、验证明文作为关键自检核验参数,为以防遭到篡改,通常在单片机生产数据初始化时被直接预置进支持一次性写操作的系统区部分;自检次数门限与自检状态机属于可变更数据,尤其自检状态机更是每次自检过程都会被重置或者改写一次,所以这两个参数都是被预置在支持多次写操作的系统区。自检次数门限的值,就是连续自检错误的最大限制值;自检状态机的值,就是发生连续自检错误的次数。例如,当自检次数门限的值为3,自检状态机的值为2时,说明:协处理器连续自检错误的最大次数是3次,当前已经连续错误两次,如果再错一次则单片机会认为协处理器功能失常对之进行关停处理。
步骤22,单片机根据第一门限、第一状态机,对协处理器进行第一错误状态验证操作。
具体包括:单盘及判断第一状态机的值是否大于第一门限的值,如果第一状态机的值大于第一门限的值,则第一错误状态验证执行失败,转至步骤410;如果第一状态机的值小于或等于第一门限的值,则一错误状态验证执行成功,转至步骤23。
此处,单片机在启动功能自检之前,对协处理器的当前自检错误状态进行判断。如果当前连续自检错误状态未超出自检次数门限,则允许执行后续自检流程,即第一功能验证。如果已经超出门限,则此处下一步应进入第一自检错误处理流程,即:单片机退出协处理器的自检流程,并对协处理器进行使用关停处理。
步骤23,当第一错误状态验证执行成功之后,单片机按随机功能参数生成方法生成第一自检功能参数,
具体包括:步骤231,单片机使用随机数发生器,生成第一随机数;
步骤232,单片机根据第一随机数,提取第一随机数的最低比特位的值,生成第一自检功能参数。
此处,之所以设置第一自检功能参数,是因为对于公开密钥密码算法协处理器来说,做一次加密与解密的时间并不短,如果在每次上电复位都对协处理进行加密与解密双功能全验证的话,会导致单片机上电复位周期加长,在一些具体的应用中由于对单片机上电复位时间是有要求的,所以为了兼顾安全自检的必需性与实际应用的兼容性,特此设置了这个参数,并以此提供了一张随机功能自检的方式。具体的,因为协处理器的主要功能就是加密和解密,所以第一自检功能参数的取值自然就是二选一的模式。所以就用选用了一个随机数的一个指定比特位的随机值作为这个参数的设定值。
步骤24,单片机根据第一自检功能参数,进行第一验证密钥获取操作,具体的:当第一自检功能参数的值为0时,单片机从系统区获取验证公钥生成第一公钥;当第一自检功能参数的值为1时,单片机从系统区获取验证私钥生成第一私钥。
此处,因为公开密钥密码算法协处理使用的公钥与私钥数据长度都不短,为了不至于浪费冗余的时间在取值上,特根据上述第一自检功能参数的取值来决定对特定密钥的获取,这样在每次自检流程中都能节省出一次大数据读的时间来。
步骤25,单片机根据第一自检功能参数,进行第一功能验证操作,
具体包括:步骤251,当第一自检功能参数的值为0时,单片机根据第一公钥、第一明文、第一密文,对协处理器进行第一加密功能验证操作,
具体包括:步骤2511,单片机初始化第一临时密文;
步骤2512,单片机根据第一公钥,使用协处理器对第一明文进行加密处理,生成第一临时密文;
步骤2513,单片机判断第一临时密文的值与第一密文的值是否相等,如果第一临时密文的值与第一密文的值相等,则第一加密功能验证执行成功,也即是第一功能验证执行成功,转至步骤26;如果第一临时密文的值与第一密文的值不相等,则第一加密功能验证执行失败,也即是第一功能验证执行失败,转至步骤420。
此处,是单片机对协处理执行的加密功能自检。公开密钥密码算法的加密原则,是使用公钥对明文进行加密生成密文。此处的检查,是使用第一公钥对第一明文进行加密生成过程密文:第一临时密文;再使用从系统区获得的预置密文(第一密文)与计算出的第一临时密文进行比对。在二者相等的情况下说明协处理器当前的加密功能是正常的,在二者不相等的情况下说明协处理器当前的加密功能失常,需要进入第二自检错误处理流程进行下一步处理:单片机退出协处理器的自检流程,并设置系统区中的自检状态机的值加1;在当自检状态机的值设置成功之后,单片机进行重启操作。
步骤252,当第一自检功能参数的值为1时,单片机根据第一私钥、第一明文、第一密文,对协处理器进行第一解密功能验证操作,
具体包括:步骤2521,单片机初始化第一临时明文;
步骤2522,单片机根据第一私钥,使用协处理器对第一密文进行解密处理,生成第一临时明文;
步骤2523,单片机判断第一临时明文的值与第一明文的值是否相等,如果第一临时明文的值与第一明文的值相等,则第一解密功能验证执行成功,也即是第一功能验证执行成功,转至步骤26;如果第一临时明文的值与第一明文的值不相等,则第一解密功能验证执行失败,也即是第一功能验证执行失败,转至步骤420。
此处,是单片机对协处理执行的解密功能自检。公开密钥密码算法的解密原则,是使用私钥对密文进行解密生成明文。此处的检查,是使用第一私钥对第一密文进行解密生成过程明文:第一临时密文;再使用从系统区获得的预置明文(第一明文)与计算出的第一临时明文进行比对。在二者相等的情况下说明协处理器当前的解密功能是正常的;在二者不相等的情况下说明协处理器当前的解密功能失常,需要进入第二自检错误处理流程进行下一步处理:单片机退出协处理器的自检流程,并设置系统区中的自检状态机的值加1;在当自检状态机的值设置成功之后,单片机进行重启操作。
步骤26,当第一功能验证执行成功之后,单片机对协处理进行第一自检状态重置操作。
此处,当本次自检成功之后,单片机认为协处理工作状态正常,则应对自检状态机的值进行回零重置处理。
步骤410,单片机退出协处理器的自检流程,并对协处理器进行使用关停处理。
此处,为前面提到的第一自检错误处理。一般导致该错误发生的原因是单片机对协处理器做自检操作时,发现连续出错次数已经超过自检次数门限。
步骤420,单片机退出协处理器的自检流程,并设置系统区中的自检状态机的值加1;在当自检状态机的值设置成功之后,单片机进行重启操作。
此处,为前面提到的第二自检错误处理。一般导致该错误发生的原因是单片机对协处理器做自检操作时,发现协处理器的基础功能核验出现错误。
本发明提供的一种公开密钥密码算法协处理器自检的方法,在单片机上电复位过程中对公开密钥密码算法协处理器进行主自检。本发明方法主要分为三部分处理,功能检验前、功能检验、功能检验后。所谓功能检验前是指在单片机对公开密钥密码算法协处理器进行功能检验之前,单片机通过识别自检次数门限与自检状态机的关系,鉴别在当前上电复位过程中,公开密钥密码算法协处理器是否为可工作状态:如果是则继续执行后续功能检验流程,如果不是则直接退出自检流程并对公开密钥密码算法协处理器进行使用功能关停操作。所谓功能检验,是确认公开密钥密码算法协处理器的可工作状态之后,单片机进入功能检验阶段,该阶段单片机为提高自检效率,特设置随机自检功能参数。该参数在每次上电复位中只产生一次,取值为二选一方式,通过对该参数取值的鉴别识别当前上电复位过程中对公开密钥密码算法协处理器的功能检验具体是加密功能检验还是解密功能检验。在单片机对公开密钥密码算法协处理器成功执行完功能检验之后,将自检状态机进行回零重置处理,以免在后续重启过程中被自检流程误判导致协处理器被错误关停。所谓功能检验后,不仅包括对正确功能检验的后续处理,还包括对错误检验的后续处理,诸如文中所述第一、第二自检错误处理流程等。
专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种公开密钥密码算法协处理器自检的方法,其特征在于,所述方法包括:
单片机上电复位时,所述单片机从系统区获取验证明文生成第一明文,获取验证密文生成第一密文,获取自检次数门限生成第一门限,获取自检状态机生成第一状态机;
所述单片机根据所述第一门限、第一状态机,对协处理器进行第一错误状态验证操作;
当所述第一错误状态验证执行成功之后,所述单片机按随机功能参数生成方法生成第一自检功能参数;
所述单片机根据所述第一自检功能参数,进行第一验证密钥获取操作,具体的:当所述第一自检功能参数的值为0时,所述单片机从所述系统区获取验证公钥生成第一公钥;当所述第一自检功能参数的值为1时,所述单片机从所述系统区获取验证私钥生成第一私钥;
所述单片机根据所述第一自检功能参数,进行第一功能验证操作,具体的:当所述第一自检功能参数的值为0时,所述单片机根据所述第一公钥、第一明文、第一密文,对所述协处理器进行第一加密功能验证操作;当所述第一自检功能参数的值为1时,所述单片机根据所述第一私钥、第一明文、第一密文,对所述协处理器进行第一解密功能验证操作;
当所述第一功能验证执行成功之后,所述单片机对所述协处理进行第一自检状态重置操作。
2.根据权利要求1所述方法,其特征在于,所述单片机从系统区获取验证明文生成第一明文,获取验证密文生成第一密文,获取自检次数门限生成第一门限,获取自检状态机生成第一状态机,之前,还包括:
所述单片机在系统区设置所述验证公钥、验证私钥、验证明文、验证密文、自检次数门限、自检状态机。
3.根据权利要求1所述方法,其特征在于,所述单片机根据所述第一门限、第一状态机,对协处理器进行第一错误状态验证操作,具体包括:
所述单片机根据所述第一门限的值对所述第一状态机进行比对:当所述第一状态机的值小于或等于所述第一门限的值时,所述第一错误状态验证执行成功。
4.根据权利要求1所述方法,其特征在于,所述单片机按随机功能参数生成方法生成第一自检功能参数,具体包括:
所述单片机使用随机数发生器,生成第一随机数;
所述单片机根据所述第一随机数,提取所述第一随机数的最低比特位的值,生成所述第一自检功能参数。
5.根据权利要求1所述方法,其特征在于,所述单片机根据所述第一公钥、第一明文、第一密文,对所述协处理器进行第一加密功能验证操作,具体包括:
所述单片机初始化第一临时密文;
所述单片机根据所述第一公钥,使用所述协处理器对所述第一明文进行加密处理,生成所述第一临时密文;
当所述第一临时密文的值与所述第一密文的值相等时,所述第一加密功能验证执行成功。
6.根据权利要求1所述方法,其特征在于,所述单片机根据所述第一私钥、第一明文、第一密文,对所述协处理器进行第一解密功能验证操作,具体包括:
所述单片机初始化第一临时明文;
所述单片机根据所述第一私钥,使用所述协处理器对所述第一密文进行解密处理,生成所述第一临时明文;
当所述第一临时明文的值与所述第一明文的值相等时,所述第一解密功能验证执行成功。
7.根据权利要求1所述方法,其特征在于,所述方法还包括:
当所述第一错误状态验证执行失败之后,所述单片机进行第一自检错误处理操作;
当所述第一加密功能验证执行失败之后,所述单片机进行第二自检错误处理操作;
当所述第一解密功能验证执行失败之后,所述单片机进行第二自检错误处理操作。
8.根据权利要求7所述方法,其特征在于,所述单片机进行第一自检错误处理操作,具体包括:
所述单片机退出所述协处理器的自检流程,并对所述协处理器进行使用关停处理。
9.根据权利要求7所述方法,其特征在于,所述单片机进行第二自检错误处理操作,具体包括:
所述单片机退出所述协处理器的自检流程,并设置所述系统区中的所述自检状态机的值加1;
在当所述自检状态机的值设置成功之后,所述单片机进行重启操作。
10.根据权利要求1所述方法,其特征在于,所述单片机对所述协处理进行第一自检状态重置操作,具体包括:
所述单片机设置所述系统区中的所述自检状态机的值为0。
CN201910761886.4A 2019-08-16 2019-08-16 一种公开密钥密码算法协处理器自检的方法 Active CN110502359B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910761886.4A CN110502359B (zh) 2019-08-16 2019-08-16 一种公开密钥密码算法协处理器自检的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910761886.4A CN110502359B (zh) 2019-08-16 2019-08-16 一种公开密钥密码算法协处理器自检的方法

Publications (2)

Publication Number Publication Date
CN110502359A true CN110502359A (zh) 2019-11-26
CN110502359B CN110502359B (zh) 2022-11-22

Family

ID=68588222

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910761886.4A Active CN110502359B (zh) 2019-08-16 2019-08-16 一种公开密钥密码算法协处理器自检的方法

Country Status (1)

Country Link
CN (1) CN110502359B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110991129A (zh) * 2019-12-18 2020-04-10 山东华翼微电子技术股份有限公司 一种基于fpga的密码协处理器全自动仿真验证方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170085369A1 (en) * 2015-09-21 2017-03-23 Nxp B.V. Method and system for detecting fault attacks
CN106878100A (zh) * 2015-12-11 2017-06-20 全球能源互联网研究院 一种椭圆曲线公钥密码安全协处理器的测试方法及系统
US20180267868A1 (en) * 2017-03-15 2018-09-20 International Business Machines Corporation Maintaining system reliability in a cpu with co-processors

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170085369A1 (en) * 2015-09-21 2017-03-23 Nxp B.V. Method and system for detecting fault attacks
CN106878100A (zh) * 2015-12-11 2017-06-20 全球能源互联网研究院 一种椭圆曲线公钥密码安全协处理器的测试方法及系统
US20180267868A1 (en) * 2017-03-15 2018-09-20 International Business Machines Corporation Maintaining system reliability in a cpu with co-processors

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
王剑非等: "用于加解密流程控制的协处理器", 《计算机系统应用》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110991129A (zh) * 2019-12-18 2020-04-10 山东华翼微电子技术股份有限公司 一种基于fpga的密码协处理器全自动仿真验证方法
CN110991129B (zh) * 2019-12-18 2023-09-08 山东华翼微电子技术股份有限公司 一种基于fpga的密码协处理器全自动仿真验证方法

Also Published As

Publication number Publication date
CN110502359B (zh) 2022-11-22

Similar Documents

Publication Publication Date Title
CN111095213B (zh) 嵌入式程序的安全引导方法、装置、设备及存储介质
CN101978377B (zh) 用于控制受保护操作模式期间的系统访问的方法和装置
CN101351807B (zh) 用于把嵌入式安全芯片与计算机相关联的方法和系统
CN101256613B (zh) 无需制造者和用户知道彼此的加密信息的安全处理器系统
TWI384356B (zh) 用於驗證電腦系統之方法與系統
CN108573144A (zh) 安全的执行上下文数据
Arnold et al. The IBM PCIXCC: A new cryptographic coprocessor for the IBM eServer
US20060080537A1 (en) Illegal analysis / falsification preventing system
CN107506663A (zh) 基于可信bmc的服务器安全启动方法
US8650655B2 (en) Information processing apparatus and information processing program
ES2866885T3 (es) Sistema y procedimiento para la vigilancia protegida criptográficamente de al menos un componente de un aparato o de una instalación
CN106548100B (zh) 集成电路以及用于保护集成电路的方法
CN111030824A (zh) 工业控制设备的识别系统、方法、介质及电子设备
Hoeller et al. Trusted platform modules in cyber-physical systems: On the interference between security and dependability
EP4319041A1 (en) Cipher card and root key protection method therefor, and computer readable storage medium
JPS5947646A (ja) 計算機デ−タ処理装置および方法
CN112948086A (zh) 一种可信plc控制系统
JP2007310688A (ja) マイクロコンピュータおよびそのソフトウェア改竄防止方法
CN108959980B (zh) 安全芯片的公钥防护方法及公钥防护系统
JP2564593B2 (ja) プログラムを機密保護し且つ機密保護されたプログラムを保全制御する方法
CN110502359A (zh) 一种公开密钥密码算法协处理器自检的方法
JPH08508352A (ja) データ処理システムのための安全臨界プロセッサおよび処理方法
CN110502380B (zh) 一种哈希算法协处理器自检的方法
CN110502379A (zh) 一种椭圆加密算法协处理器自检的方法
CN110502360B (zh) 一种高级加密标准协处理器自检的方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 100080, Beijing, Suzhou Street, Haidian District No. 20, building 2, on the north side of the four floor

Applicant after: Zhaoxun Hengda Technology Co.,Ltd.

Address before: 100080, Beijing, Suzhou Street, Haidian District No. 20, building 2, on the north side of the four floor

Applicant before: MEGAHUNT MICROELECTRONIC TECH. (BEIJING) Co.,Ltd.

GR01 Patent grant
GR01 Patent grant