CN111580956B - 一种密码卡及其密钥空间配置方法和密钥使用方法 - Google Patents
一种密码卡及其密钥空间配置方法和密钥使用方法 Download PDFInfo
- Publication number
- CN111580956B CN111580956B CN202010289237.1A CN202010289237A CN111580956B CN 111580956 B CN111580956 B CN 111580956B CN 202010289237 A CN202010289237 A CN 202010289237A CN 111580956 B CN111580956 B CN 111580956B
- Authority
- CN
- China
- Prior art keywords
- key
- configuration information
- card
- chip
- cipher
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 46
- 238000013468 resource allocation Methods 0.000 claims abstract description 41
- 238000004458 analytical method Methods 0.000 claims abstract description 15
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 11
- 238000004364 calculation method Methods 0.000 claims abstract description 11
- 238000013507 mapping Methods 0.000 claims description 16
- 238000012986 modification Methods 0.000 abstract description 3
- 230000004048 modification Effects 0.000 abstract description 3
- 230000006870 function Effects 0.000 description 7
- 238000007726 management method Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4022—Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/45—Structures or tools for the administration of authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0024—Peripheral component interconnect [PCI]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0026—PCI express
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Mathematical Physics (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种密码卡及其密钥空间配置方法和密钥使用方法,以及包含该密码卡的安全保密设备,涉及信息安全领域。该密码卡包括:用于获取密钥配置信息的密钥空间配置模块,用于为全部密钥分配片内资源的片内资源分配模块,用于对密码卡进行配置的片内配置信息存储与解析模块,用于计算待索引的密钥在密码卡的存储位置的密钥位置计算模块,用于调用密码算法单元进行密码运算的片内密码运算调用模块。本发明实现了灵活的配置和使用不同类型不同数量的密钥,解决了密码卡的硬件存储资源固定以及主控程序不易更改的问题,满足了密码卡在各应用场景下对密钥类型和密钥数目的需求。
Description
技术领域
本发明涉及信息安全领域,尤其涉及一种密码卡及其密钥空间配置方法和密钥使用方法,以及包含该密码卡的安全保密设备。
背景技术
PCI密码卡是底层的密码产品,以PCI局部总线或者PCI Express为接口,具有密码运算功能、密钥管理功能、物理随机数产生功能和设备自身安全保护措施的密码设备。不带电时,密钥以密文形式静态存储在PCI密码卡内部的非易失性存储芯片FLASH中。上电运算时,密钥解密放在PCI密码卡内部的SRAM空间,密钥只能在PCI密码卡内部访问。通过PCI/PCIE协议将明文密钥和主机端操作系统内存进行隔离,保证了密钥的安全性。
PCI密码卡的非易失性FLASH空间和SRAM空间大小是固定的,而负责密钥管理的模块一般集成在PCI密码卡的主控程序中,主控程序则烧写在PCI密码卡的程序芯片中,不易修改。而实际应用场景中,密钥类型和数目的需求是灵活多变的,例如:用户需要所有非易失性FLASH只存SM2密钥,或只存对称密钥,或SM2密钥存多一些其他类型密钥存少一些等,无法满足灵活的使用需求。
发明内容
本发明所要解决的技术问题是针对现有技术的不足,提供一种密码卡及其密钥空间配置方法和密钥使用方法,以及包含该密码卡的安全保密设备。
本发明解决上述技术问题的技术方案如下:
一种用于密码卡的密钥空间配置方法,包括:
密钥空间配置模块获取至少一个密钥的配置信息,并发送给片内资源分配模块;
所述片内资源分配模块接收到所述配置信息后,计算所述配置信息的合法性;
如果所述配置信息合法,则所述片内资源分配模块根据所述配置信息为全部所述密钥分配片内资源;
片内配置信息存储与解析模块将所述配置信息和资源分配信息存储在密码卡的预设区域;
当所述密码卡上电或复位后,所述片内配置信息存储与解析模块读取存储在所述密码卡的预设区域的配置信息和资源分配信息并解析,完成对所述密码卡的配置。
本发明提供的密钥空间配置方法,适用于PCI密码卡和密码芯片等密码卡,通过根据各种密钥的配置信息为密钥分配片内资源,然后将不同种类不同数量的密钥及其资源分配信息存储在密码卡的预设区域内,当密码卡上电或复位后,通过读取安全区域的数据进行密码卡配置,从而实现了灵活的配置密钥类型和密钥的数目,解决了密码卡的硬件存储资源固定以及主控程序不易更改的问题,满足了密码卡在各应用场景下对密钥类型和密钥数目的需求。
本发明解决上述技术问题的另一种技术方案如下:
一种用于密码卡的密钥使用方法,使用如上述技术方案所述的密钥空间配置方法配置后的密码卡进行密码运算,包括:
密钥位置计算模块获取密钥索引,根据所述密钥索引计算待索引的密钥在所述密码卡的预设区域的存储位置,并将所述存储位置发送给片内密码运算调用模块;
所述片内密码运算调用模块根据所述存储位置读取所述待索引的密钥,调用密码算法单元进行密码运算。
本发明提供的密钥使用方法,适用于PCI密码卡和密码芯片等密码卡,通过预先配置不同种类和不同数量的密钥,并存储在预设区域,当需要使用这些密钥时,只需要通过密钥索引,就能够找到这些密钥的存储位置,然后调用密码算法单元对这些密钥进行密码运算,实现了灵活的使用不同类型不同数量的密钥,解决了密码卡的硬件存储资源固定以及主控程序不易更改的问题,满足了密码卡在各应用场景下对密钥类型和密钥数目的需求。
本发明解决上述技术问题的另一种技术方案如下:
一种密码卡,包括:
密钥空间配置模块,用于获取至少一个密钥的配置信息,并发送给片内资源分配模块;
片内资源分配模块,用于接收到所述配置信息后,计算所述配置信息的合法性,如果所述配置信息合法,则根据所述配置信息为全部所述密钥分配片内资源;
片内配置信息存储与解析模块,用于将所述配置信息和资源分配信息存储在密码卡的预设区域,并当所述密码卡上电或复位后,读取存储在所述密码卡的预设区域的配置信息和资源分配信息并解析,完成对所述密码卡的配置;
密钥位置计算模块,用于获取密钥索引,根据所述密钥索引计算待索引的密钥在所述密码卡的预设区域的存储位置,并将所述存储位置发送给片内密码运算调用模块;
片内密码运算调用模块,用于根据所述存储位置读取所述待索引的密钥,调用密码算法单元进行密码运算。
本发明提供的密码卡,首先对不同种类不同数量的密钥进行密钥空间配置和片内资源分配,然后存储在密码卡的预设区域,再通过密钥索引找到这些密钥的存储位置,调用密码算法单元对这些密钥进行密码运算,实现了灵活的配置和使用不同类型不同数量的密钥,解决了密码卡的硬件存储资源固定以及主控程序不易更改的问题,满足了密码卡在各应用场景下对密钥类型和密钥数目的需求。
本发明解决上述技术问题的另一种技术方案如下:
一种安全保密设备,包括如上述技术方案所述的密码卡,或,使用如上述技术方案所述的密钥空间配置方法对密码卡进行配置,或,使用如上述技术方案所述的密钥使用方法进行密码运算。
本发明附加的方面的优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明实践了解到。
附图说明
图1为本发明密钥空间配置方法的实施例提供的流程示意图;
图2为本发明密钥使用方法的实施例提供的流程示意图;
图3为本发明密码卡的实施例提供的功能模块结构框架图。
具体实施方式
以下结合附图对本发明的原理和特征进行描述,所举实施例只用于解释本发明,并非用于限定本发明的范围。
本发明提供的密钥空间配置方法及密钥使用方法,适用于密码卡,本发明中的密码卡可以理解为带密码运算功能的卡、芯片等,例如,可以为PCI密码卡、ASIC芯片等,下面主要以PCI密码卡为例,进行说明。
对于本领域技术人员而言,其可以在不付出创造性劳动的前提下将本发明应用于其他具有密码运算功能的软硬件设备上,均属于本发明的保护范围,不再一一赘述。
如图1所示,为本发明密钥空间配置方法的实施例提供的流程示意图,该密钥空间配置方法用于密码卡,包括:
S11,密钥空间配置模块获取至少一个密钥的配置信息,并发送给片内资源分配模块。
应理解,配置信息指的是需要配置的密钥的类型、长度、数量和存储位置等信息。
例如,密钥的类型可以包括SM2密钥、RSA密钥和对称密钥等,那么密钥的配置信息可以为:a个SM2密钥,长度为b,存储在非易失性FLASH中,地址为x;c个RSA密钥,长度为d,存储在非易失性FLASH中,地址为y。
作为配置信息的一种可能获取实现方式,用户在应用层调用密钥空间配置模块接口对密码卡进行配置,可以通过预先编写的配置程序访问密钥空间配置模块,用户通过该模块可以设置密钥的配置信息。
这些配置信息可以通过预先编写的驱动程序传输给片内资源分配模块。
S12,片内资源分配模块接收到配置信息后,计算配置信息的合法性。
应理解,合法性指的是能否成功的根据配置信息配置片内资源,本领域技术人员可以根据实际需求设置合法性判断规则。
例如,可以通过判断配置信息的来源是否是预设来源,如果是,则可以认为配置信息合法,否则不合法,这样可以防止不明来源的指令对密码卡进行写操作。
又例如,还可以通过判断密码卡的片内资源是否能满足配置信息,从而判断是否合法,如果能够满足,则可以认为配置信息合法,否则不合法,这样能够保证成功配置。
S13,如果配置信息合法,则片内资源分配模块根据配置信息为全部密钥分配片内资源。
例如,可以分配非易失性FLASH、SRAM的存储空间等片内资源。
例如,假设配置信息为a个SM2密钥,长度为b,存储在非易失性FLASH中,地址为x;c个RSA密钥,长度为d,存储在非易失性FLASH中,地址为y,那么假设存储SM2密钥需要的存储空间大小为f,RSA密钥需要的存储空间大小为g,那么可以为SM2密钥分配大小为a*f的存储空间,为RSA密钥分配大小为c*g的存储空间。
应理解,如果非法,则直接返回错误信息。
S14,片内配置信息存储与解析模块将配置信息和资源分配信息存储在密码卡的预设区域。
需要说明的是,不带电时,密钥以密文形式静态存储在PCI密码卡内部的非易失性存储芯片FLASH中。上电运算时,密钥解密放在PCI密码卡内部的SRAM空间,密钥只能在PCI密码卡内部访问。通过PCI/PCIE协议将明文密钥和主机端操作系统内存进行隔离,保证了密钥的安全性。
密码芯片内部集成非易失性FLASH和SRAM,密钥保存在芯片内部的非易失性FLASH中,上电时明文密钥加载到芯片内部的SRAM中,片内SRAM与主机内存物理隔离,主机端操作系统无法获取密钥从而保证密钥的安全性。
因此,预设区域可以为PCI密码卡或密码芯片的非易失性FLASH中的预留安全区域,该区域的写操作需要经过验证,非法的写操作是被禁止的。
S15,当密码卡上电或复位后,片内配置信息存储与解析模块读取存储在密码卡的预设区域的配置信息和资源分配信息并解析,完成对密码卡的配置,配置完成后等待上层的密码运算业务。
经验证,本实施例提供的密钥空间配置方法,可以灵活的配置密钥类型和密钥的数目,如:512K的非易失性FLASH和512K的SRAM,可以配置最大支持4096对SM2密钥对或16384个对称密钥,密码运算的性能也没有减少,满足了密码芯片/PCI密码卡在各应用场景下对密钥类型和密钥数目的需求。
本实施例提供的密钥空间配置方法,适用于PCI密码卡和密码芯片等密码卡,通过根据各种密钥的配置信息为密钥分配片内资源,然后将不同种类不同数量的密钥及其资源分配信息存储在密码卡的预设区域内,当密码卡上电或复位后,通过读取安全区域的数据进行密码卡配置,从而实现了灵活的配置密钥类型和密钥的数目,解决了密码卡的硬件存储资源固定以及主控程序不易更改的问题,满足了密码卡在各应用场景下对密钥类型和密钥数目的需求。
可选地,在一些可能的实施方式中,片内资源分配模块接收到配置信息后,计算配置信息的合法性,具体包括:
片内资源分配模块接收到配置信息后,根据密码卡的内部资源占用情况计算配置信息的合法性,当密码卡的内部资源占用情况能够满足配置信息的需求时,则配置信息合法。
例如,内部资源占用情况可以为密码卡的存储空间占用情况,如果剩余的存储空间大小能够满足配置信息的需求,那么配置信息合法,可以通过编写插件的方式监控密码卡的资源占用情况,监控资源占用情况属于本领域技术人员能够实现的通用技术手段,还可以通过其他方式实现,在此不再赘述。
可选地,在一些可能的实施方式中,还包括:
片内配置信息存储与解析模块获取对预设区域的写操作,对写操作进行合法性判断,当写操作非法时,禁止写操作。
例如,可以判断对预设区域的写操作是否是片内配置信息存储与解析模块发起的,如果不是,则认为非法,禁止该写操作;或判断该写操作是否是密钥运算阶段发起的,如果是,则认为非法,禁止该写操作,使得该密码卡只能在配置阶段对预设区域进行写操作,防止在密钥运算时被攻击。
通过对写操作进行合法性判断,能够很好的保护密码卡,防止不安全的写入行为,提高密码卡的安全性。
可选地,在一些可能的实施方式中,配置信息包括:密钥类型、密钥长度、密钥数量和存储位置。
可以理解,在一些实施例中,可以包含如上述各实施方式的部分或全部可选实施方式。
如图2所示,为本发明密钥使用方法的实施例提供的流程示意图,该密钥使用方法使用如上述实施例的密钥空间配置方法配置后的密码卡进行密码运算,包括:
S21,密钥位置计算模块获取密钥索引,根据密钥索引计算待索引的密钥在密码卡的预设区域的存储位置,并将存储位置发送给片内密码运算调用模块。
S22,片内密码运算调用模块根据存储位置读取待索引的密钥,调用密码算法单元进行密码运算。
具体地,当用户需要进行密码运算时,可以通过应用程序调用密码芯片或PCI密码卡接口进行密码运算,接口根据标准要求输入密钥索引,密钥索引为标准接口形式,例如可以为(1,2,3…),而接口库内部的密钥位置计算模块会根据密钥索引和片内SRAM地址映射模块映射关系计算出密钥在SRAM中实际存储的地址并将地址发送片内密码运算调用模块,接口库通过驱动将密钥在SRAM中存储的物理地址传送给密码芯片或PCI密码卡,片内密码运算调用模块读取应用层传入的物理地址对应的SRAM中密钥数据并调用密码运算单元调用密码算法单元进行运算。
本实施例提供的密钥使用方法,适用于PCI密码卡和密码芯片等密码卡,通过预先配置不同种类和不同数量的密钥,并存储在预设区域,当需要使用这些密钥时,只需要通过密钥索引,就能够找到这些密钥的存储位置,然后调用密码算法单元对这些密钥进行密码运算,实现了灵活的使用不同类型不同数量的密钥,解决了密码卡的硬件存储资源固定以及主控程序不易更改的问题,满足了密码卡在各应用场景下对密钥类型和密钥数目的需求。
可选地,在一些可能的实施方式中,密钥位置计算模块获取密钥索引,根据密钥索引计算待索引的密钥在密码卡的预设区域的存储位置,具体包括:
密钥位置计算模块获取密钥索引,根据映射关系计算出密钥索引对应的密钥在预设区域中存储的物理地址;
其中,映射关系用于将密码卡的预设区域的地址映射到应用层,使得应用层能够直接操作片内SRAM地址。
应理解,可以在片内配置信息存储与解析模块将配置信息和资源分配信息存储在密码卡的预设区域后,通过片内SRAM地址映射模块建立映射关系,以便于通过密钥索引查找对应的密钥。
例如,假设密钥索引1对应的密钥地址为a,存储的密钥为RSA密钥,密钥索引2对应的密钥地址为b,存储的密钥为SM2密钥。那么当密钥位置计算模块获取的密钥索引为1时,直接将RSA密钥的物理地址a映射到应用层,使应用层能够直接操作预设区域。
可以理解,在一些实施例中,可以包含如上述各实施方式的部分或全部可选实施方式。
如图3所示,为本发明密码卡的实施例提供的功能模块结构框架图,该密码卡可以为PCI密码卡或密码芯片等,内部设置有存储介质及执行器,用于根据存储介质存储的计算机程序执行以下功能模块的功能,这些功能模块包括:
片内资源分配模块2,用于接收密钥空间配置模块1发送的配置信息,计算配置信息的合法性,如果配置信息合法,则根据配置信息为全部密钥分配片内资源;
其中,密钥空间配置模块1为应用层模块,用于获取至少一个密钥的配置信息,并发送给片内资源分配模块2;
片内配置信息存储与解析模块3,用于将配置信息和资源分配信息存储在密码卡的预设区域,并当密码卡上电或复位后,读取存储在密码卡的预设区域的配置信息和资源分配信息并解析,完成对密码卡的配置;
片内密码运算调用模块5,用于接收密钥位置计算模块4发送的待索引的密钥在密码卡的预设区域的存储位置,根据存储位置读取待索引的密钥,调用密码算法单元进行密码运算;
其中,密钥位置计算模块4为应用层模块,用于获取密钥索引,根据密钥索引计算待索引的密钥在密码卡的预设区域的存储位置,并将存储位置发送给片内密码运算调用模块5;
本实施例提供的密码卡,首先对不同种类不同数量的密钥进行密钥空间配置和片内资源分配,然后存储在密码卡的预设区域,再通过密钥索引找到这些密钥的存储位置,调用密码算法单元对这些密钥进行密码运算,实现了灵活的配置和使用不同类型不同数量的密钥,解决了密码卡的硬件存储资源固定以及主控程序不易更改的问题,满足了密码卡在各应用场景下对密钥类型和密钥数目的需求。
可选地,在一些可能的实施方式中,片内资源分配模块2具体用于接收到配置信息后,根据密码卡的内部资源占用情况计算配置信息的合法性,当密码卡的内部资源占用情况能够满足配置信息的需求时,则配置信息合法。
可选地,在一些可能的实施方式中,密钥位置计算模块4具体用于获取密钥索引,根据映射关系计算出密钥索引对应的密钥在预设区域中存储的物理地址;
其中,映射关系用于将密码卡的预设区域的地址映射到应用层。
可选地,在一些可能的实施方式中,片内配置信息存储与解析模块3还用于获取对预设区域的写操作,对写操作进行合法性判断,当写操作非法时,禁止写操作。
可选地,在一些可能的实施方式中,配置信息包括:密钥类型、密钥长度、密钥数量和存储位置。
可以理解,在一些实施例中,可以包含如上述各实施方式的部分或全部可选实施方式。
需要说明的是,上述各实施例是与在先方法实施例对应的产品实施例,对于产品实施例中各可选实施方式的说明可以参考上述各方法实施例中的对应说明,在此不再赘述。
本发明解决上述技术问题的另一种技术方案如下:
一种安全保密设备,包括如上述任意实施例的密码卡,或,使用如上述任意实施例的密钥空间配置方法对密码卡进行配置,或,使用如上述任意实施例的密钥使用方法进行密码运算。
以PCI密码卡为例,可以应用在需要密码运算和密钥管理等安全功能的、具有PCI局部总线或者PCI Express的通信设备、计算机设备、安全保密设备上。例如:虚拟专网设备、证书中心系统的有关设备、网络密码机、安全服务器、安全终端、安全管理中心和密钥管理设备等。PCI密码卡作为部署在应用端的重要安全设备,实现密钥生成、管理、保护、高速签名、验证、加密和解密操作,是信息安全产业链中最基本的、不可缺少的密码设备。
读者应理解,在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的方法实施例仅仅是示意性的,例如,步骤的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个步骤可以结合或者可以集成到另一个步骤,或一些特征可以忽略,或不执行。
上述方法如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (7)
1.一种用于密码卡的密钥空间配置方法,其特征在于,包括:
密钥空间配置模块获取至少一个密钥的配置信息,并发送给片内资源分配模块;
所述片内资源分配模块接收到所述配置信息后,计算所述配置信息的合法性;
如果所述配置信息合法,则所述片内资源分配模块根据所述配置信息为全部所述密钥分配片内资源;
片内配置信息存储与解析模块将所述配置信息和资源分配信息存储在密码卡的预设区域;
当所述密码卡上电或复位后,所述片内配置信息存储与解析模块读取存储在所述密码卡的预设区域的配置信息和资源分配信息并解析,完成对所述密码卡的配置;
不带电时,密钥以密文形式静态存储在PCI密码卡内部的非易失性存储芯片FLASH中,上电运算时,密钥解密放在PCI密码卡内部的SRAM空间;
其中,所述片内资源分配模块接收到所述配置信息后,计算所述配置信息的合法性,具体包括:
所述片内资源分配模块接收到所述配置信息后,根据密码卡的内部资源占用情况计算所述配置信息的合法性,当所述密码卡的内部资源占用情况能够满足所述配置信息的需求时,则所述配置信息合法;
所述片内配置信息存储与解析模块获取对所述预设区域的写操作,对所述写操作进行合法性判断,当所述写操作非法时,禁止所述写操作。
2.根据权利要求1所述的用于密码卡的密钥空间配置方法,其特征在于,所述配置信息包括:密钥类型、密钥长度、密钥数量和存储位置。
3.一种用于密码卡的密钥使用方法,其特征在于,使用如权利要求1至2中任一项所述的密钥空间配置方法配置后的密码卡进行密码运算,包括:
密钥位置计算模块获取密钥索引,根据所述密钥索引计算待索引的密钥在所述密码卡的预设区域的存储位置,并将所述存储位置发送给片内密码运算调用模块;
所述片内密码运算调用模块根据所述存储位置读取所述待索引的密钥,调用密码算法单元进行密码运算。
4.根据权利要求3所述的用于密码卡的密钥使用方法,其特征在于,密钥位置计算模块获取密钥索引,根据所述密钥索引计算待索引的密钥在所述密码卡的预设区域的存储位置,具体包括:
密钥位置计算模块获取密钥索引,根据映射关系计算出所述密钥索引对应的密钥在所述预设区域中存储的物理地址;
其中,所述映射关系用于将所述密码卡的预设区域的地址映射到应用层。
5.一种密码卡,其特征在于,包括:
密钥空间配置模块,用于获取至少一个密钥的配置信息,并发送给片内资源分配模块;
片内资源分配模块,用于接收到所述配置信息后,计算所述配置信息的合法性,如果所述配置信息合法,则根据所述配置信息为全部所述密钥分配片内资源;所述片内资源分配模块具体用于接收到所述配置信息后,根据密码卡的内部资源占用情况计算所述配置信息的合法性,当所述密码卡的内部资源占用情况能够满足所述配置信息的需求时,则所述配置信息合法;片内配置信息存储与解析模块,用于将所述配置信息和资源分配信息存储在密码卡的预设区域,并当所述密码卡上电或复位后,读取存储在所述密码卡的预设区域的配置信息和资源分配信息并解析,完成对所述密码卡的配置;
所述片内配置信息存储与解析模块获取对所述预设区域的写操作,对所述写操作进行合法性判断,当所述写操作非法时,禁止所述写操作;
密钥位置计算模块,用于获取密钥索引,根据所述密钥索引计算待索引的密钥在所述密码卡的预设区域的存储位置,并将所述存储位置发送给片内密码运算调用模块;
片内密码运算调用模块,用于根据所述存储位置读取所述待索引的密钥,调用密码算法单元进行密码运算;
不带电时,密钥以密文形式静态存储在PCI密码卡内部的非易失性存储芯片FLASH中,上电运算时,密钥解密放在PCI密码卡内部的SRAM空间。
6.根据权利要求5所述的密码卡,其特征在于,所述密钥位置计算模块具体用于获取密钥索引,根据映射关系计算出所述密钥索引对应的密钥在所述预设区域中存储的物理地址;
其中,所述映射关系用于将所述密码卡的预设区域的地址映射到应用层。
7.一种安全保密设备,其特征在于,包括如权利要求5至6中任一项所述的密码卡,或,使用如权利要求1至2中任一项所述的密钥空间配置方法对密码卡进行配置,或,使用如权利要求3或4所述的密钥使用方法进行密码运算。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010289237.1A CN111580956B (zh) | 2020-04-13 | 2020-04-13 | 一种密码卡及其密钥空间配置方法和密钥使用方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010289237.1A CN111580956B (zh) | 2020-04-13 | 2020-04-13 | 一种密码卡及其密钥空间配置方法和密钥使用方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111580956A CN111580956A (zh) | 2020-08-25 |
CN111580956B true CN111580956B (zh) | 2024-05-14 |
Family
ID=72126528
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010289237.1A Active CN111580956B (zh) | 2020-04-13 | 2020-04-13 | 一种密码卡及其密钥空间配置方法和密钥使用方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111580956B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113076532B (zh) * | 2021-03-25 | 2024-04-12 | 三未信安科技股份有限公司 | 一种自诊断的pci密码卡 |
CN114266035B (zh) * | 2022-03-02 | 2022-06-17 | 北京密码云芯科技有限公司 | 一种高性能密码卡及配置方法 |
CN115357953B (zh) * | 2022-10-21 | 2023-02-10 | 山东三未信安信息科技有限公司 | 一种密码卡密钥存储动态分布方法及系统 |
CN116074003B (zh) * | 2023-03-06 | 2023-06-20 | 中安云科科技发展(山东)有限公司 | 一种密码机动态多线程负载均衡方法、系统及密码机 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105337731A (zh) * | 2015-11-24 | 2016-02-17 | 北京三未信安科技发展有限公司 | 一种密码设备的改进及改进后数据同步方法及系统 |
CN106027235A (zh) * | 2016-05-13 | 2016-10-12 | 北京三未信安科技发展有限公司 | 一种pci密码卡和海量密钥密码运算方法及系统 |
US9893885B1 (en) * | 2015-03-13 | 2018-02-13 | Amazon Technologies, Inc. | Updating cryptographic key pair |
CN107994985A (zh) * | 2017-12-04 | 2018-05-04 | 山东渔翁信息技术股份有限公司 | 一种密码卡及对数据处理的方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106452771B (zh) * | 2016-10-10 | 2018-09-18 | 山东渔翁信息技术股份有限公司 | Jce调用密码卡实现内置rsa密钥运算的方法及装置 |
CN108075882A (zh) * | 2016-11-14 | 2018-05-25 | 航天信息股份有限公司 | 密码卡及其加解密方法 |
CN109145568A (zh) * | 2018-08-21 | 2019-01-04 | 西安得安信息技术有限公司 | 一种基于pci-e接口的全算法密码卡及其加密方法 |
CN109344664A (zh) * | 2018-08-21 | 2019-02-15 | 西安得安信息技术有限公司 | 一种基于fpga对数据进行算法处理的密码卡及其加密方法 |
CN109412810B (zh) * | 2019-01-03 | 2022-06-24 | 李维刚 | 一种基于标识的密钥生成方法 |
CN209625213U (zh) * | 2019-05-22 | 2019-11-12 | 神州龙芯(江苏)智能科技有限公司 | 一种基于ccp903t芯片的pci-e接口密码卡 |
CN110765438B (zh) * | 2019-10-24 | 2021-01-01 | 江苏云涌电子科技股份有限公司 | 一种高性能密码卡及其工作方法 |
CN110874296B (zh) * | 2019-11-12 | 2023-05-16 | 成都三零嘉微电子有限公司 | 一种安全芯片或密码卡程序下载、测试和密钥注入的系统 |
-
2020
- 2020-04-13 CN CN202010289237.1A patent/CN111580956B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9893885B1 (en) * | 2015-03-13 | 2018-02-13 | Amazon Technologies, Inc. | Updating cryptographic key pair |
CN105337731A (zh) * | 2015-11-24 | 2016-02-17 | 北京三未信安科技发展有限公司 | 一种密码设备的改进及改进后数据同步方法及系统 |
CN106027235A (zh) * | 2016-05-13 | 2016-10-12 | 北京三未信安科技发展有限公司 | 一种pci密码卡和海量密钥密码运算方法及系统 |
CN107994985A (zh) * | 2017-12-04 | 2018-05-04 | 山东渔翁信息技术股份有限公司 | 一种密码卡及对数据处理的方法 |
Non-Patent Citations (1)
Title |
---|
PKCS11标准下的密钥管理方式研究与实现;蒙智敏;刘军;;计算机安全;20121215(第12期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111580956A (zh) | 2020-08-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111580956B (zh) | 一种密码卡及其密钥空间配置方法和密钥使用方法 | |
CN111723383B (zh) | 数据存储、验证方法及装置 | |
CN100363855C (zh) | 密钥存储管理方法、装置及其系统 | |
EP2204008B1 (en) | Credential provisioning | |
CN100487715C (zh) | 一种数据安全存储系统和装置及方法 | |
KR101719381B1 (ko) | 저장 장치의 원격 액세스 제어 | |
CN110391906B (zh) | 基于区块链的数据处理方法、电子装置及可读存储介质 | |
CN105612715A (zh) | 具有可配置访问控制的安全处理单元 | |
CN110598429B (zh) | 数据加密存储和读取的方法、终端设备及存储介质 | |
CN108491724A (zh) | 一种基于硬件的计算机接口加密装置及方法 | |
CN105989304A (zh) | 一种文件存储方法、读取方法及装置 | |
CN107315966A (zh) | 固态硬盘数据加密方法及系统 | |
CN110266653B (zh) | 一种鉴权方法、系统及终端设备 | |
US20200044838A1 (en) | Data encryption method and system using device authentication key | |
KR20210132721A (ko) | 네트워크에 액세스 시의 보안 통신 | |
CN104104650A (zh) | 数据文件访问方法及终端设备 | |
CN112966254B (zh) | 用于主机与可信密码模块的安全通信方法及系统 | |
CN108234125B (zh) | 用于身份认证的系统和方法 | |
US20120243678A1 (en) | Data protection using distributed security key | |
CN104504309A (zh) | 应用程序数据加密的方法及终端 | |
CN108123917A (zh) | 一种物联网终端的认证凭证更新的方法及设备 | |
CN113569265B (zh) | 一种数据处理方法、系统及装置 | |
CN105635096B (zh) | 数据模块的访问方法、系统和终端 | |
WO2019037422A1 (zh) | 密钥及密钥句柄的生成方法、系统及智能密钥安全设备 | |
CN103905192A (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 |
Country or region after: China Address after: Room 1201, 12 / F, building 1, yard 34, Chuangyuan Road, Chaoyang District, Beijing 100102 Applicant after: Sanwei Xin'an Technology Co.,Ltd. Address before: 100102 room 1406, 14th floor, building 2, yard 16, Guangshun North Street, Chaoyang District, Beijing Applicant before: BEIJING SANSEC TECHNOLOGY DEVELOPMENT Co.,Ltd. Country or region before: China |
|
GR01 | Patent grant | ||
GR01 | Patent grant |