CN110011794A - 密码机密钥属性的测试方法 - Google Patents
密码机密钥属性的测试方法 Download PDFInfo
- Publication number
- CN110011794A CN110011794A CN201910288500.2A CN201910288500A CN110011794A CN 110011794 A CN110011794 A CN 110011794A CN 201910288500 A CN201910288500 A CN 201910288500A CN 110011794 A CN110011794 A CN 110011794A
- Authority
- CN
- China
- Prior art keywords
- key
- index
- result
- calculation function
- attribute
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Computer Security & Cryptography (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种密码机密钥属性的测试方法,包括:密码机根据测试设备发送的导入密钥指令,将第一索引、密钥以及第一密钥属性进行导入;导入成功后,测试设备发送下一条导入密钥指令,第一索引为索引初始值+1,第一密钥属性为密钥属性初始值+1;重复上述步骤,直至导入所有待导入的第一索引;密码机根据验证指令中待验证的第二索引对应的密钥以及待验证的运算功能信息进行计算,测试设备根据计算后的第一结果进行验证,判断与第二索引对应的密钥是否具备该运算功能,并在与第二索引对应的第二密钥属性中进行记录。本发明提供的密码机密钥属性的测试方法测试流程简单,便于统计,提高了测试的全面性、测试质量以及灵活性。
Description
技术领域
本发明是关于密码机测试,特别是关于一种密码机密钥属性的测试方法。
背景技术
密钥属性是密码机存储密钥设计中一个极为重要的部分,它是密码机访问密钥及利用密钥进行运算的关键。对密码机密钥属性的权限管理及控制能保证密码机存储密钥的安全性。所以对密码机密钥属性进行测试非常重要。
密钥属性主要包括运算属性和功能属性,运算属性包含密码机密钥是否可加密、是否可解密、是否可计算MAC、是否可进行分散运算,功能属性包含密码机密钥是否可导入、是否可导出、是否可作为保护密钥。
常规的测试方法是在导入密钥时给要导入的密钥设置对应的密钥属性,然后再验证导入的密钥属性是否正确。具体的,通常用1字节长度的字符串表示密钥属性,其中高4bit表示密钥的功能属性,如‘1000’表示可作为保护密钥,‘0100’表示可导出,‘0010’表示可导入;低4bit表示密钥的运算属性,如‘1000’表示可加密,‘0100’表示可解密,‘0010’表示可进行MAC运算,‘0001’表示可进行分散运算,例如导入密钥时将密钥属性设置为0X28(‘00101000’),则表示导入的密钥可导入且可做加密运算,密码机导入该密钥后再分别验证密钥的可导入和可加密功能是否具备。
基于此本申请的发明人发现,使用上述方法对密钥属性进行测试,逐条遍历并分别验证运算过程复杂,并且不利于对测试结果进行统计。
公开于该背景技术部分的信息仅仅旨在增加对本发明的总体背景的理解,而不应当被视为承认或以任何形式暗示该信息构成已为本领域一般技术人员所公知的现有技术。
发明内容
本发明的目的在于提供一种密码机密钥属性的测试方法,其能够简化验证运算,便于统计。
为实现上述目的,本发明提供了一种密码机密钥属性的测试方法,包括:测试设备发送导入密钥指令,其中,所述导入密钥指令包括:第一索引、与所述第一索引对应的密钥以及与所述第一索引对应的第一密钥属性,所述第一密钥属性用于标识与所述密钥具备的运算功能,且为预设的密钥属性初始值,所述第一索引为预设的索引初始值;密码机接收所述导入密钥指令,并将所述第一索引、与所述第一索引对应的密钥以及与所述第一索引对应的第一密钥属性进行导入;密码机导入成功后,向测试设备反馈导入成功信息;测试设备发送下一条导入密钥指令,其中,所述下一条导入密钥指令中的第一索引为所述索引初始值+1,密钥为下一待导入的密钥值,第一密钥属性为所述密钥属性初始值+1;密码机接收所述下一条导入密钥指令,并将所述下一条导入密钥指令进行导入,重复上述步骤,直至导入所有待导入的第一索引、密钥以及第一密钥属性;密码机接收验证指令,其中,所述验证指令包括:待验证的第二索引以及待验证的运算功能信息;密码机根据所述待验证的第二索引对应的密钥以及待验证的运算功能信息进行计算,得到计算后的第一结果;将所述第一结果发送至测试设备;测试设备对所述第一结果进行验证,判断与所述第二索引对应的密钥是否具备该运算功能,并在与第二索引对应的第二密钥属性中进行记录。
在一优选的实施方式中,所述下一条导入密钥指令中的密钥与当前的导入密钥指令中的密钥值相同。
在一优选的实施方式中,所述待验证的运算功能信息包括:MAC运算信息、加密运算信息、解密运算信息中的一种,验证指令还包括:待运算的数据,所述密码机根据所述待验证的第二索引对应的密钥以及待验证的运算功能信息进行计算,得到计算后的第一结果包括:根据所述第二索引,密码机判断与所述第二索引对应的密钥属性是否具备与所述验证指令对应的运算功能;若具备与所述验证指令对应的运算功能,则获取与所述第二索引对应的密钥;使用该与所述第二索引对应的密钥以及所述运算功能信息对所述待运算的数据进行计算,将所述计算后的结果作为第一结果。
在一优选的实施方式中,所述测试设备对所述第一结果进行验证,判断与所述第二索引对应的密钥是否具备该运算功能,并在与第二索引对应的第二密钥属性中进行记录包括:测试设备使用所述第二索引对应的密钥对待运算的数据进行与待验证的运算功能信息对应运算;若所述运算结果与所述第一结果一致,则判断所述第二索引对应的密钥具备该运算功能,并将所述第二索引的第二密钥属性中与该运算对应位次记录为1,其中,第二密钥属性包括八位,每一位用于标识密钥是否具备的一种运算功能。
在一优选的实施方式中,若待验证的运算功能信息为MAC运算功能信息、加密运算功能信息、解密运算功能信息中的一种,且测试设备对所述第一结果进行验证,判断与所述第二索引对应的密钥具备该运算功能,则在与第二索引对应的第二密钥属性中进行记录之后还包括:获取第二索引对应的第二密钥属性的记录;判断与所述第二索引对应的第二密钥属性的记录中是否具备分散功能;若不具备分散功能,则发送分散功能验证指令,其中,所述分散功能验证指令包括:所述第二索引、分散次数、分散因子、所述待运算的数据;根据所述第二索引,密码机判断与所述第二索引对应的第一密钥属性是否具备分散功能;若具备所述分散功能,则获取与所述第二索引对应的密钥;使用分散因子对所述第二索引对应的密钥进行分散次数次加密;使用该加密结果对所述待运算的数据进行与待验证的运算功能信息对应运算,将所述运算后的结果作为第二结果,并发送给测试设备;测试设备使用所述第二索引对应的密钥、分散次数以及分散因子对待运算的数据进行运算;若所述测试设备的运算结果与所述第二结果一致,则判断所述第二索引对应的密钥具备分散功能,并将所述第二索引的第二密钥属性中与分散功能对应位次记录为1。
在一优选的实施方式中,所述待验证的运算功能信息还包括导出功能指令以及保护密钥的索引;所述密码机根据所述待验证的第二索引对应的密钥以及待验证的运算功能信息进行计算,得到计算后的第一结果包括:根据所述第二索引,密码机判断与所述第二索引对应的密钥属性是否具备与所述验证指令对应的运算功能;若具备与所述验证指令对应的运算功能,则根据所述保护密钥的索引获取预设的保护密钥,以及根据所述第二索引,获取与所述第二索引对应的密钥;使用该预设的保护密钥对与所述第二索引对应的密钥进行加密,将所述加密后的结果作为第一结果。
在一优选的实施方式中,所述待验证的运算功能信息还包括:保护密钥功能指令,所述验证指令还包括:待运算的数据,所述密码机根据所述待验证的第二索引对应的密钥以及待验证的运算功能信息进行计算,得到计算后的第一结果包括:根据所述第二索引,密码机判断与所述第二索引对应的密钥属性是否具备与所述验证指令对应的运算功能;若具备与所述验证指令对应的运算功能,则根据所述第二索引,获取与所述第二索引对应的密钥;使用该第二索引对应的密钥对所述待运算的数据进行加密,将所述加密后的结果作为第一结果。
在一优选的实施方式中,所述待验证的运算功能信息还包括:导入功能指令以及第三密钥,所述验证指令还包括待运算的数据;所述密码机根据所述待验证的第二索引对应的密钥以及待验证的运算功能信息进行计算,得到计算后的第一结果包括:根据所述第二索引,密码机判断与所述第二索引对应的密钥属性是否具备与所述验证指令对应的运算功能;若具备与所述验证指令对应的运算功能,则将所述第三密钥导入所述第二索引的存储区域;若返回导入成功信息,则获取与所述第二索引对应的密钥;使用该与所述第二索引对应的密钥对所述待运算的数据进行加/解密,将所述加/解密后的结果作为第一结果。
在一优选的实施方式中,在所述测试设备发送导入密钥指令之前,还包括:接收保护密钥设置指令,其中,所述保护密钥设置报文信息中包括保护密钥索引、保护密钥以及保护密钥属性;对所述保护密钥索引、所述保护密钥以及所述保护密钥属性进行导入。
在一优选的实施方式中,所述测试方法还包括:测试设备在完成所有密钥的验证之后,按照第二索引将所述第二密钥属性与第一密钥属性进行对比;将对比结果进行输出。
与现有技术相比,根据本发明的密码机密钥属性的测试方法,通过对运算结果的反向验证,更加精确的判断出当前导入密钥的密钥属性是否正确;当导入不能再次导入的密钥无需格式化操作;测试流程简单,便于统计;提高了测试的全面性、测试质量以及灵活性。
附图说明
图1是根据本发明一实施方式的密码机密钥属性的测试方法的流程图。
图2是根据本发明另一实施方式的密码机密钥属性的测试方法的流程图。
具体实施方式
下面结合附图,对本发明的具体实施方式进行详细描述,但应当理解本发明的保护范围并不受具体实施方式的限制。
除非另有其它明确表示,否则在整个说明书和权利要求书中,术语“包括”或其变换如“包含”或“包括有”等等将被理解为包括所陈述的元件或组成部分,而并未排除其它元件或其它组成部分。
如图1所示,其为根据本发明一优选实施方式的密码机密钥属性的测试方法的流程图,本方法通过测试设备对密码机进行测试,该方法包括步骤S1-S9。
步骤S1,测试设备发送导入密钥指令,其中,所述导入密钥指令包括:第一索引、与所述第一索引对应的密钥以及与所述第一索引对应的第一密钥属性,所述第一索引为预设的索引初始值,所述第一密钥属性为预设的密钥属性初始值。
其中,所述第一密钥属性用于标识与所述密钥具备的运算功能,索引初始值可以预先设置,即从哪条索引实现密钥的导入。第一密钥属性初始值也可以预先设置,通常设置为0X00。
在步骤S1之前,还可以包括:接收保护密钥设置指令,其中,所述保护密钥设置报文信息中包括保护密钥索引、保护密钥以及保护密钥属性;对所述保护密钥索引、所述保护密钥以及所述保护密钥属性进行导入。
当密码机接收导入密钥指令或者其他指令是,可以根据保护密钥对指令中的密文进行解密。
步骤S2,密码机接收所述导入密钥指令,并将所述第一索引、与所述第一索引对应的密钥以及与所述第一索引对应的第一密钥属性进行导入。
具体的,本实施例中密码机根据测试设备发送的导入密钥指令进行导入。每发送一条指令进行一次第一索引、密钥以及与第一密钥属性的导入。
步骤S3,密码机导入成功后,向测试设备反馈导入成功信息。
步骤S4,测试设备发送下一条导入密钥指令,其中,所述下一条导入密钥指令中的第一索引为所述索引初始值+1,所述下一条导入密钥指令中的密钥为下一待导入的密钥值,第一密钥属性为所述密钥属性初始值+1。
其中,所述下一条导入密钥指令中的密钥与当前导入密钥指令中的密钥值可以相同也可以不相同。
步骤S5,密码机接收所述下一条导入密钥指令,并将所述下一条导入密钥指令进行导入,重复上述步骤,直至导入所有待导入的第一索引、密钥以及第一密钥属性。
步骤S6,密码机接收验证指令,其中,所述验证指令包括:待验证的第二索引以及待验证的运算功能信息。
待验证的第二索引为想要进行验证密钥对应的索引,待验证的运算功能信息为想要对该密钥进行何种功能的验证,包括算法、以及运算中需要的参数等。
步骤S7,密码机根据所述待验证的第二索引对应的密钥以及待验证的运算功能信息进行计算,得到计算后的第一结果;
步骤S8,将所述第一结果发送至测试设备;
步骤S9,测试设备对所述第一结果进行验证,判断与所述第二索引对应的密钥是否具备该运算功能,并在与第二索引对应的第二密钥属性中进行记录。
由此,本实施例提供的密码机密钥属性的测试方法,通过对运算结果的反向验证,更加精确的判断出当前导入密钥的密钥属性是否正确;当导入不能再次导入的密钥无需格式化操作;测试流程简单,便于统计;提高了测试的全面性、测试质量以及灵活性。
在一种实现方式中,所述待验证的运算功能信息包括MAC运算信息、加密运算信息、解密运算信息中的一种,验证指令还包括:待运算的数据。
步骤S7具体包括:步骤S71-步骤S73。
步骤S71,根据所述第二索引,密码机判断与所述第二索引对应的第一密钥属性是否具备与所述验证指令对应的运算功能。
步骤S72,若与所述第二索引对应的第一密钥属性不具备与所述验证指令对应的运算功能,则返回权限不足。
步骤S73,若与所述第二索引对应的第一密钥属性具备与所述验证指令对应的运算功能,则获取与所述第二索引对应的密钥;
步骤S74,使用该与所述第二索引对应的密钥以及所述运算功能信息对所述待运算的数据进行计算,将所述计算后的结果作为第一结果。
在一种实现方式中,步骤S9,具体包括:步骤S91以及步骤S92。
步骤S91,测试设备使用所述第二索引对应的密钥对待运算的数据进行与待验证的运算功能信息对应运算。
具体的,待验证的运算功能信息包括运算指令以及与运算指令对应的算法,测试设备根据运算指令以及算法,使用所述第二索引对应的密钥对待运算的数据进行运算。
步骤S92,若所述运算结果与所述第一结果一致,则判断所述第二索引对应的密钥具备该运算功能,并将所述第二索引的第二密钥属性中与该运算对应位次记录为1,其中,第二密钥属性包括八位,每一位用于标识密钥是否具备的一种运算功能。
当下一条导入密钥指令中的密钥与当前导入密钥指令中的密钥值相同时,测试设备对验证结果进行判定时,只需要执行一次步骤S91,然后预存该结果,之后每次将密码机反馈的计算结果和预存的结果进行对比,就可以判定与所述第二索引对应的密钥是否具备该运算功能。若对比结果一致,则说明与所述第二索引对应的密钥具备该运算功能。
当下一条导入密钥指令中的密钥与当前导入密钥指令中的密钥值不相同时,测试设备对计算结果进行判定时,每一次判定都需要执行步骤S91,将密码机反馈的计算结果和测试设备计算的结果进行对比,就可以判定与所述第二索引对应的密钥是否具备该运算功能。若对比结果一致,则说明与所述第二索引对应的密钥具备该运算功能。
如果步骤S92判断所述第二索引对应的密钥具备加密功能,则置密钥属性低4bit第一位为‘1’,否则为0;如果步骤S92判断所述第二索引对应的密钥具备解密功能,则置密钥属性低4bit第二位为‘1’,否则为0;如果步骤S92判断所述第二索引对应的密钥具备MAC计算功能,则置密钥属性低4bit第三位为‘1’,否则为0;如果步骤S92判断所述第二索引对应的密钥具备分散运算功能,则置密钥属性低4bit第四位为‘1’,否则为0;如果步骤S92判断所述第二索引对应的密钥具备保护密钥功能,则置密钥属性高4bit第一位为‘1’,否则为0;如果步骤S92判断所述第二索引对应的密钥具备密钥导出功能,则置密钥属性高4bit第二位为‘1’,否则为0;如果步骤S92判断所述第二索引对应的密钥具备密钥导入功能,则置密钥属性高4bit第三位为‘1’,否则为0;将上述结果拼成1字节的完整值作为第二密钥属性。
如图2所示,其为根据本发明另一优选实施方式的密码机密钥属性的测试方法的流程图,在一种实现方式中,若待验证的运算功能信息为MAC运算功能信息、加密运算功能信息、解密运算功能信息中的一种,且步骤S9中判断与所述第二索引对应的密钥具备该运算功能,则步骤S9之后还包括:
步骤S101,获取第二索引对应的第二密钥属性的记录;
步骤S102,判断与所述第二索引对应的第二密钥属性的记录中是否具备分散功能。
步骤S103,若不具备分散功能,则发送分散功能验证指令,其中,所述分散功能验证指令包括:所述第二索引、分散次数、分散因子、所述待运算的数据。
若具备分散功能,则不进行分散功能验证。
步骤S104,根据所述第二索引,密码机判断与所述第二索引对应的第一密钥属性是否具备分散功能。
具体的,判断与所述第二索引对应的第一密钥属性的分散功能标识位是否为1。若不是1则说明不具备分散功能则返回权限不足。
步骤S105,若具备所述分散功能,则获取与所述第二索引对应的密钥;
步骤S106,使用分散因子对所述第二索引对应的密钥进行分散次数次加密;
步骤S107,使用该加密结果对所述待运算的数据进行与待验证的运算功能信息对应运算,将所述运算后的结果作为第二结果,并发送给测试设备。
步骤S108,测试设备使用所述第二索引对应的密钥、分散次数以及分散因子对待运算的数据进行运算。
具体的,运算的算法与密码机中算法相同,使用分散因子对所述第二索引对应的密钥进行分散次数次加密,使用该加密结果对所述待运算的数据进行与待验证的运算功能信息对应运算。例如,待验证的运算功能信息为加密运算功能信息,则步骤S107中,使用该加密结果对所述待运算的数据进行与加密运算,将加密运算后的结果作为第二结果。相应的,步骤108,测试设备使用分散因子对所述第二索引对应的密钥进行分散次数次加密,使用该加密结果对所述待运算的数据进行加密运算。将测试设备加密运算后的结果与第二结果进行对比。
步骤S109,若测试设备的运算结果与所述第二结果一致,则判断所述第二索引对应的密钥具备分散功能,并将所述第二索引的第二密钥属性中与分散功能对应位次记录为1。
由此可以实现分散功能的检测。
在一种实现方式中,所述待验证的运算功能信息还包括导出功能指令以及保护密钥的索引,步骤S7具体可以包括:步骤S74-步骤S76。
步骤S74,根据所述第二索引,密码机判断与所述第二索引对应的密钥属性是否具备与所述验证指令对应的运算功能;
步骤S75,若具备与所述验证指令对应的运算功能,则根据所述保护密钥的索引获取预设的保护密钥,以及根据所述第二索引,获取与所述第二索引对应的密钥;
步骤S76,使用该预设的保护密钥对与所述第二索引对应的密钥进行加密,将所述加密后的结果作为第一结果。
在一种实现方式中,所述待验证的运算功能信息还包括:保护密钥功能指令,所述验证指令还包括待运算的数据,步骤S7具体可以包括:步骤S77-步骤S79。
步骤S77,根据所述第二索引,密码机判断与所述第二索引对应的密钥属性是否具备与所述验证指令对应的运算功能;
步骤S78,若具备与所述验证指令对应的运算功能,则根据所述第二索引,获取与所述第二索引对应的密钥;
步骤S79,使用该第二索引对应的密钥对所述待运算的数据进行加密,将所述加密后的结果作为第一结果。
在一种实现方式中,所述待验证的运算功能信息还包括:导入功能指令以及第三密钥,所述验证指令还包括待运算的数据,步骤S7具体可以包括:步骤S701-步骤S704。
步骤S701,根据所述第二索引,密码机判断与所述第二索引对应的密钥属性是否具备与所述验证指令对应的运算功能;
步骤S702,若具备与所述验证指令对应的运算功能,则将所述第三密钥导入所述第二索引的存储区域;
步骤S703,若返回导入成功信息,则获取与所述第二索引对应的密钥;
步骤S704,使用该与所述第二索引对应的密钥对所述待运算的数据进行加/解密,将所述加/解密后的结果作为第一结果。
密码机将所述第一结果发送至测试设备。
测试设备对所述第一结果进行验证,判断与所述第二索引对应的密钥是否具备该运算功能,若判断所述第二索引对应的密钥具备该运算功能,则将所述第二索引的第二密钥属性中与该运算对应位次记录为1。
在一种实现方式中,所述测试方法还可以包括:测试设备在完成所有密钥的验证之后,按照第二索引将所述第二密钥属性与第一密钥属性进行对比;将对比结果进行输出。
与导入前的第一密钥属性值做比对,如果二者值一致,则表明当前的密钥属性设置正确,用黑色字体显示且记录日志中,如不一致,则表明当前的密钥属性设置不正确,用红色字体显示且记录在日志中,当导入属性无实际意义时也要重点标明,可以建议开发人员在导入密钥时做限制;直到密钥属性值累加到‘FF’,循环结束,记录测试结果,统计出执行过程中错误的地方,高亮显示。
由此,本实施例提供的密码机密钥属性的测试方法,通过对运算结果的反向验证,更加精确的判断出当前导入密钥的密钥属性是否正确;当导入不能再次导入的密钥无需格式化之后才能继续测试,提高了测试的全面性、测试质量以及灵活性。并且简化验证运算过程,利于对测试结果进行统计。
本领域内的技术人员应明白,本申请的实施例可提供为方法、***、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
前述对本发明的具体示例性实施方案的描述是为了说明和例证的目的。这些描述并非想将本发明限定为所公开的精确形式,并且很显然,根据上述教导,可以进行很多改变和变化。对示例性实施例进行选择和描述的目的在于解释本发明的特定原理及其实际应用,从而使得本领域的技术人员能够实现并利用本发明的各种不同的示例性实施方案以及各种不同的选择和改变。本发明的范围意在由权利要求书及其等同形式所限定。
Claims (10)
1.一种密码机密钥属性的测试方法,其特征在于,包括:
测试设备发送导入密钥指令,其中,所述导入密钥指令包括:第一索引、与所述第一索引对应的密钥以及与所述第一索引对应的第一密钥属性,所述第一密钥属性用于标识与所述密钥具备的运算功能,且为预设的密钥属性初始值,所述第一索引为预设的索引初始值;
密码机接收所述导入密钥指令,并将所述第一索引、与所述第一索引对应的密钥以及与所述第一索引对应的第一密钥属性进行导入;
密码机导入成功后,向测试设备反馈导入成功信息;
测试设备发送下一条导入密钥指令,其中,所述下一条导入密钥指令中的第一索引为所述索引初始值+1,密钥为下一待导入的密钥值,第一密钥属性为所述密钥属性初始值+1;
密码机接收所述下一条导入密钥指令,并将所述下一条导入密钥指令进行导入,重复上述步骤,直至导入所有待导入的第一索引、密钥以及第一密钥属性;
密码机接收验证指令,其中,所述验证指令包括:待验证的第二索引以及待验证的运算功能信息;
密码机根据所述待验证的第二索引对应的密钥以及待验证的运算功能信息进行计算,得到计算后的第一结果;
将所述第一结果发送至测试设备;
测试设备对所述第一结果进行验证,判断与所述第二索引对应的密钥是否具备该运算功能,并在与第二索引对应的第二密钥属性中进行记录。
2.如权利要求1所述的测试方法,其特征在于,所述下一条导入密钥指令中的密钥与当前的导入密钥指令中的密钥值相同。
3.如权利要求1所述的测试方法,其特征在于,所述待验证的运算功能信息包括:MAC运算信息、加密运算信息、解密运算信息中的一种,验证指令还包括:待运算的数据,
所述密码机根据所述待验证的第二索引对应的密钥以及待验证的运算功能信息进行计算,得到计算后的第一结果包括:
根据所述第二索引,密码机判断与所述第二索引对应的密钥属性是否具备与所述验证指令对应的运算功能;
若具备与所述验证指令对应的运算功能,则获取与所述第二索引对应的密钥;
使用该与所述第二索引对应的密钥以及所述运算功能信息对所述待运算的数据进行计算,将所述计算后的结果作为第一结果。
4.如权利要求3所述的测试方法,其特征在于,所述测试设备对所述第一结果进行验证,判断与所述第二索引对应的密钥是否具备该运算功能,并在与第二索引对应的第二密钥属性中进行记录包括:
测试设备使用所述第二索引对应的密钥对待运算的数据进行与待验证的运算功能信息对应运算;
若所述运算结果与所述第一结果一致,则判断所述第二索引对应的密钥具备该运算功能,并将所述第二索引的第二密钥属性中与该运算对应位次记录为1,其中,第二密钥属性包括八位,每一位用于标识密钥是否具备的一种运算功能。
5.如权利要求4所述的测试方法,其特征在于,若待验证的运算功能信息为MAC运算功能信息、加密运算功能信息、解密运算功能信息中的一种,且测试设备对所述第一结果进行验证,判断与所述第二索引对应的密钥具备该运算功能,则在与第二索引对应的第二密钥属性中进行记录之后还包括:
获取第二索引对应的第二密钥属性的记录;
判断与所述第二索引对应的第二密钥属性的记录中是否具备分散功能;
若不具备分散功能,则发送分散功能验证指令,其中,所述分散功能验证指令包括:所述第二索引、分散次数、分散因子、所述待运算的数据;
根据所述第二索引,密码机判断与所述第二索引对应的第一密钥属性是否具备分散功能;
若具备所述分散功能,则获取与所述第二索引对应的密钥;
使用分散因子对所述第二索引对应的密钥进行分散次数次加密;
使用该加密结果对所述待运算的数据进行与待验证的运算功能信息对应运算,将所述运算后的结果作为第二结果,并发送给测试设备;
测试设备使用所述第二索引对应的密钥、分散次数以及分散因子对待运算的数据进行运算;
若所述测试设备的运算结果与所述第二结果一致,则判断所述第二索引对应的密钥具备分散功能,并将所述第二索引的第二密钥属性中与分散功能对应位次记录为1。
6.如权利要求1所述的测试方法,其特征在于,所述待验证的运算功能信息还包括导出功能指令以及保护密钥的索引;
所述密码机根据所述待验证的第二索引对应的密钥以及待验证的运算功能信息进行计算,得到计算后的第一结果包括:
根据所述第二索引,密码机判断与所述第二索引对应的密钥属性是否具备与所述验证指令对应的运算功能;
若具备与所述验证指令对应的运算功能,则根据所述保护密钥的索引获取预设的保护密钥,以及根据所述第二索引,获取与所述第二索引对应的密钥;
使用该预设的保护密钥对与所述第二索引对应的密钥进行加密,将所述加密后的结果作为第一结果。
7.如权利要求1所述的测试方法,其特征在于,所述待验证的运算功能信息还包括:保护密钥功能指令,所述验证指令还包括:待运算的数据,
所述密码机根据所述待验证的第二索引对应的密钥以及待验证的运算功能信息进行计算,得到计算后的第一结果包括:
根据所述第二索引,密码机判断与所述第二索引对应的密钥属性是否具备与所述验证指令对应的运算功能;
若具备与所述验证指令对应的运算功能,则根据所述第二索引,获取与所述第二索引对应的密钥;
使用该第二索引对应的密钥对所述待运算的数据进行加密,将所述加密后的结果作为第一结果。
8.如权利要求1所述的测试方法,其特征在于,所述待验证的运算功能信息还包括:导入功能指令以及第三密钥,所述验证指令还包括待运算的数据;
所述密码机根据所述待验证的第二索引对应的密钥以及待验证的运算功能信息进行计算,得到计算后的第一结果包括:
根据所述第二索引,密码机判断与所述第二索引对应的密钥属性是否具备与所述验证指令对应的运算功能;
若具备与所述验证指令对应的运算功能,则将所述第三密钥导入所述第二索引的存储区域;
若返回导入成功信息,则获取与所述第二索引对应的密钥;
使用该与所述第二索引对应的密钥对所述待运算的数据进行加/解密,将所述加/解密后的结果作为第一结果。
9.如权利要求1所述的测试方法,其特征在于,在所述测试设备发送导入密钥指令之前,还包括:
接收保护密钥设置指令,其中,所述保护密钥设置报文信息中包括保护密钥索引、保护密钥以及保护密钥属性;
对所述保护密钥索引、所述保护密钥以及所述保护密钥属性进行导入。
10.如权利要求4所述的测试方法,其特征在于,所述测试方法还包括:
测试设备在完成所有密钥的验证之后,按照第二索引将所述第二密钥属性与第一密钥属性进行对比;
将对比结果进行输出。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910288500.2A CN110011794B (zh) | 2019-04-11 | 2019-04-11 | 密码机密钥属性的测试方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910288500.2A CN110011794B (zh) | 2019-04-11 | 2019-04-11 | 密码机密钥属性的测试方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110011794A true CN110011794A (zh) | 2019-07-12 |
CN110011794B CN110011794B (zh) | 2021-08-13 |
Family
ID=67170997
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910288500.2A Active CN110011794B (zh) | 2019-04-11 | 2019-04-11 | 密码机密钥属性的测试方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110011794B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111130926A (zh) * | 2019-12-03 | 2020-05-08 | 中国建设银行股份有限公司 | 适用于加密机的状态监控方法、***、装置及存储介质 |
CN111526016A (zh) * | 2020-04-26 | 2020-08-11 | 南方电网科学研究院有限责任公司 | 一种密码算法的参数配置方法及装置 |
CN112269698A (zh) * | 2020-11-02 | 2021-01-26 | 北京智芯微电子科技有限公司 | 密码机测试装置及用其进行密码机测试的方法 |
CN113032265A (zh) * | 2021-03-25 | 2021-06-25 | 深圳忆联信息***有限公司 | 非对称加密算法测试方法、装置、计算机设备及存储介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101493870A (zh) * | 2008-12-17 | 2009-07-29 | 武汉大学 | 可信平台模块测试装置 |
CN102111265A (zh) * | 2011-01-13 | 2011-06-29 | 中国电力科学研究院 | 一种电力***采集终端的安全芯片加密方法 |
CN103441895A (zh) * | 2013-08-22 | 2013-12-11 | 成都卫士通信息产业股份有限公司 | 一种自动化密码机测试***及其工作方法 |
CN103701599A (zh) * | 2013-12-12 | 2014-04-02 | 珠海市金邦达保密卡有限公司 | 安全设备、加密机、安全设备操作***及操作方法 |
CN103729943A (zh) * | 2013-03-15 | 2014-04-16 | 福建联迪商用设备有限公司 | 一种将传输密钥导入kms***的方法及*** |
CN105847088A (zh) * | 2016-05-18 | 2016-08-10 | 浪潮电子信息产业股份有限公司 | 一种基于云服务的虚拟机性能测试*** |
CN105871540A (zh) * | 2016-03-24 | 2016-08-17 | 北京江南天安科技有限公司 | 一种基于宿主机的密码机及密码运算实现方法 |
US20160315768A1 (en) * | 2015-04-22 | 2016-10-27 | Alibaba Group Holding Limited | Method, apparatus, and system for cloud-based encryption machine key injection |
US20160330035A1 (en) * | 2015-05-05 | 2016-11-10 | ShoCard, Inc. | User Identification Management System and Method |
CN206313784U (zh) * | 2016-12-16 | 2017-07-07 | 北京江南博仁科技有限公司 | 一种加密机测试*** |
-
2019
- 2019-04-11 CN CN201910288500.2A patent/CN110011794B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101493870A (zh) * | 2008-12-17 | 2009-07-29 | 武汉大学 | 可信平台模块测试装置 |
CN102111265A (zh) * | 2011-01-13 | 2011-06-29 | 中国电力科学研究院 | 一种电力***采集终端的安全芯片加密方法 |
CN103729943A (zh) * | 2013-03-15 | 2014-04-16 | 福建联迪商用设备有限公司 | 一种将传输密钥导入kms***的方法及*** |
CN103441895A (zh) * | 2013-08-22 | 2013-12-11 | 成都卫士通信息产业股份有限公司 | 一种自动化密码机测试***及其工作方法 |
CN103701599A (zh) * | 2013-12-12 | 2014-04-02 | 珠海市金邦达保密卡有限公司 | 安全设备、加密机、安全设备操作***及操作方法 |
US20160315768A1 (en) * | 2015-04-22 | 2016-10-27 | Alibaba Group Holding Limited | Method, apparatus, and system for cloud-based encryption machine key injection |
US20160330035A1 (en) * | 2015-05-05 | 2016-11-10 | ShoCard, Inc. | User Identification Management System and Method |
CN105871540A (zh) * | 2016-03-24 | 2016-08-17 | 北京江南天安科技有限公司 | 一种基于宿主机的密码机及密码运算实现方法 |
CN105847088A (zh) * | 2016-05-18 | 2016-08-10 | 浪潮电子信息产业股份有限公司 | 一种基于云服务的虚拟机性能测试*** |
CN206313784U (zh) * | 2016-12-16 | 2017-07-07 | 北京江南博仁科技有限公司 | 一种加密机测试*** |
Non-Patent Citations (2)
Title |
---|
MARK LOCHER: ""The multi-entity decision graph decision ontology: A decision ontology for fusion support"", 《2017 20TH INTERNATIONAL CONFERENCE ON INFORMATION FUSION (FUSION)》 * |
张玉清: ""云计算环境安全综述"", 《软件学报》 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111130926A (zh) * | 2019-12-03 | 2020-05-08 | 中国建设银行股份有限公司 | 适用于加密机的状态监控方法、***、装置及存储介质 |
CN111130926B (zh) * | 2019-12-03 | 2021-12-03 | 中国建设银行股份有限公司 | 适用于加密机的状态监控方法、***、装置及存储介质 |
CN111526016A (zh) * | 2020-04-26 | 2020-08-11 | 南方电网科学研究院有限责任公司 | 一种密码算法的参数配置方法及装置 |
CN111526016B (zh) * | 2020-04-26 | 2022-12-23 | 南方电网科学研究院有限责任公司 | 一种密码算法的参数配置方法及装置 |
CN112269698A (zh) * | 2020-11-02 | 2021-01-26 | 北京智芯微电子科技有限公司 | 密码机测试装置及用其进行密码机测试的方法 |
CN113032265A (zh) * | 2021-03-25 | 2021-06-25 | 深圳忆联信息***有限公司 | 非对称加密算法测试方法、装置、计算机设备及存储介质 |
CN113032265B (zh) * | 2021-03-25 | 2023-08-08 | 深圳忆联信息***有限公司 | 非对称加密算法测试方法、装置、计算机设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110011794B (zh) | 2021-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110011794A (zh) | 密码机密钥属性的测试方法 | |
CN103366102B (zh) | 用于内容传输和分配的数字版权管理*** | |
CN103368740B (zh) | 绑定内容到智能存储装置的数字版权管理***、装置和方法 | |
CN103246842B (zh) | 用于验证和数据加密的方法和设备 | |
EP2506488B1 (en) | Secure dynamic on-chip key programming | |
US20190245686A1 (en) | Secure crypto system attributes | |
US7676678B2 (en) | Method for signing a data package and signing apparatus | |
CN109067814B (zh) | 媒体数据加密方法、***、设备及存储介质 | |
CN112598827B (zh) | 智能锁认证方法、安全芯片、智能锁及其管理*** | |
CN106571951A (zh) | 审计日志获取、生成、验证方法、***及装置 | |
CN106101150B (zh) | 加密算法的实现方法和*** | |
CN110868287A (zh) | 一种认证加密密文编码方法、***、装置及存储介质 | |
CN106845283A (zh) | 半导体装置 | |
US20090024849A1 (en) | Information acquisition device, information acquisition method, and information acquisition program | |
JPWO2011152065A1 (ja) | コントローラ、制御方法、コンピュータプログラム、プログラム記録媒体、記録装置及び記録装置の製造方法 | |
CN109635610A (zh) | Rfid标签数据的读写***及方法 | |
CN108418834A (zh) | 一种物联网设备身份验证方法 | |
CN109388961A (zh) | 存储设备的安全控制方法及存储设备 | |
JP2016507196A (ja) | 認証および鍵交換のための方法およびデバイス | |
EP2064830A1 (en) | Method and apparatus for inserting authenication code, and method and apparatus for using data through authenication | |
CN109064596A (zh) | 密码管理方法、装置及电子设备 | |
CN113722741A (zh) | 数据加密方法及装置、数据解密方法及装置 | |
CN112532374A (zh) | 一种检测silc认证加密算法抵御差分故障攻击的方法 | |
CN112134693B (zh) | 密钥加密存储方法、获取方法及其装置 | |
CN116599750A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |