CN112737779B - 一种密码机服务方法、装置、密码机及存储介质 - Google Patents
一种密码机服务方法、装置、密码机及存储介质 Download PDFInfo
- Publication number
- CN112737779B CN112737779B CN202011613204.4A CN202011613204A CN112737779B CN 112737779 B CN112737779 B CN 112737779B CN 202011613204 A CN202011613204 A CN 202011613204A CN 112737779 B CN112737779 B CN 112737779B
- Authority
- CN
- China
- Prior art keywords
- key
- cryptographic
- cipher
- service
- algorithm
- 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
Images
Classifications
-
- 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/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- 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/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
-
- 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/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- 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/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3263—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
本申请提供一种密码机服务方法、装置、密码机及存储介质,用于改善无法使用国密密码算法和国密密码设备应用接口标准作为区块链密码服务提供者BCCSP为区块链节点提供密码服务的问题。该方法包括:接收区块链节点发送的密钥请求,密钥请求包括目标密码算法类型;若目标密码算法类型是国密密码设备应用接口标准,则加载国密密码算法实例,并使用国密密码算法实例生成密钥、密钥对应的公钥和密钥对应的密钥标识,然后密码机向区块链节点发送密钥标识,以使区块链节点根据密钥标识向密码机请求密码服务。
Description
技术领域
本申请涉及信息安全和区块链的技术领域,具体而言,涉及一种密码机服务方法、装置、密码机及存储介质。
背景技术
区块链密码服务提供者(Blockchain Cryptographic Service Provider,BCCSP)是指为区块链节点提供密钥生成、导入密钥、导出密钥、数字签名、签名验证、哈希运算、加密和解密等一系列管理功能的进程服务或者网络服务,具体可以由服务器提供,具体例如:提供非对称密钥的签名和验签功能,以及提供密钥加密和解密功能等等。
椭圆曲线数字签名算法(Elliptic Curve Digital Signature Algorithm,ECDSA),是一种基于椭圆曲线密码学(ECC)的公开密钥加密算法。
高级加密标准(Advanced Encryption Standard,AES),在密码学中又称Rijndael加密法,是一种常用且替代原先的数据加密标准(Data Encryption Standard,DES)的区块加密标准,已经被多方分析且广为全世界所使用。
安全散列算法(Secure Hash Algorithm,SHA)是一个密码散列函数家族,是FIPS所认证的安全散列算法;SHA能计算出一个数字消息所对应到的,长度固定的字符串(又称消息摘要)的算法。
目前的BCCSP支持的软密码算法包括:ECDSA/AES/SHA256,支持的密码机接口标准包括:PKCS11;公钥密码标准(The Public-Key Cryptography Standards,PKCS),是由RSA数据安全公司及其合作伙伴制定的一组公钥密码学标准。然而,目前的BCCSP仅能够支持的软密码算法都是使用国际密码算法的,在实践过程中发现,无法使用国密算法和国密密码设备应用接口标准作为BCCSP为区块链节点提供密码服务。
发明内容
本申请实施例的目的在于提供一种密码机服务方法、装置、密码机及存储介质,用于改善无法使用国密算法和国密密码设备应用接口标准作为BCCSP为区块链节点提供密码服务的问题。
本申请实施例提供了一种密码机服务方法,应用于密码机,包括:接收区块链节点发送的密钥请求,密钥请求包括目标密码算法类型;若目标密码算法类型是国密密码算法,则加载国密密码算法实例,并使用国密密码算法实例生成密钥、密钥对应的公钥和密钥对应的密钥标识,然后向区块链节点发送密钥标识,以使区块链节点根据密钥标识向密码机请求密码服务。在上述的实现过程中,通过接收区块链节点发送的密钥请求;然后,在目标密码算法类型是国密密码算法的情况下,加载国密密码算法实例,并使用国密密码算法实例生成密钥、密钥对应的公钥和密钥对应的密钥标识,然后向区块链节点发送密钥标识,使得区块链节点可以根据密钥标识向密码机请求密码服务;从而实现了使用国密密码算法的密码机作为BCCSP对区块链节点提供密码服务,改善了无法使用国密密码算法和国密密码设备应用接口标准作为BCCSP为区块链节点提供密码服务的问题。
可选地,在本申请实施例中,在接收区块链节点发送的密钥请求之后,还包括:若目标密码算法类型是国际密码算法,则加载国际密码算法实例,并使用国际密码算法实例生成密钥、密钥对应的公钥和密钥对应的密钥标识,向区块链节点发送密钥标识。在上述的实现过程中,通过加载国际密码算法实例,并使用国际密码算法实例生成密钥、密钥对应的公钥和密钥对应的密钥标识,向区块链节点发送密钥标识,从而避免了没有配置使用国密密码算法就无法生成密钥、密钥对应的公钥和密钥对应的密钥标识,有效地提高了对区块链节点提供密码服务的兼容性和鲁棒性。
可选地,在本申请实施例中,在向区块链节点发送密钥标识之后,还包括:接收区块链节点发送的密码服务请求,密码服务请求包括:目标应用接口标准、待处理数据和密钥标识;若目标应用接口标准是国密密码设备应用接口标准,则根据待处理数据和密钥标识生成密码服务响应,并以国密密码设备应用接口标准的方式向区块链节点发送密码服务响应。在上述的实现过程中,通过根据待处理数据和密钥标识生成密码服务响应,并以国密密码设备应用接口标准的方式向区块链节点发送密码服务响应,从而有效地以国密密码设备应用接口标准为区块链节点提供密码相关服务。
可选地,在本申请实施例中,在接收区块链节点发送的密码服务请求之后,还包括:若目标应用接口标准是国际密码设备应用接口标准,则根据待处理数据和密钥标识生成密码服务响应,并以国际密码设备应用接口标准的方式向区块链节点发送密码服务响应。在上述的实现过程中,通过根据待处理数据和密钥标识生成密码服务响应,并以国际密码设备应用接口标准的方式向区块链节点发送密码服务响应,从而有效地以国际密码设备应用接口标准为区块链节点提供密码相关服务。
可选地,在本申请实施例中,密码服务响应包括:签名服务响应、验签服务响应、哈希服务响应、加密服务响应和/或解密服务响应;根据待处理数据和密钥标识生成密码服务响应,包括:从密钥信息表中查找到密钥标识对应的密钥;根据密钥标识对应的密钥和待处理数据生成密码服务响应生成签名服务响应、验签服务响应、哈希服务响应、加密服务响应和/或解密服务响应。在上述的实现过程中,通过根据密钥标识对应的密钥和待处理数据生成密码服务响应生成签名服务响应、验签服务响应、哈希服务响应、加密服务响应和/或解密服务响应,从而有效地为区块链节点提供了签名服务、验签服务、加密服务和/或解密服务。
本申请实施例还提供了一种密码机服务方法,应用于区块链节点,包括:根据目标密码算法类型生成密钥请求;向密码机发送密钥请求,以使密码机返回目标密码算法类型对应的密钥标识;接收密码机发送的密钥标识;在需要密码服务时,根据密钥标识向密码机请求密码服务。在上述的实现过程中,通过区块链节点向密码机发送密钥请求,以使密码机返回目标密码算法类型对应的密钥标识,并接收密码机发送的密钥标识,从而使得区块链节点在需要密码服务时,可以根据密钥标识向密码机请求密码服务。
可选地,在本申请实施例中,根据密钥标识向密码机请求密码服务,包括:获取目标应用接口标准和待处理数据,并根据密钥标识、目标应用接口标准和待处理数据生成密码服务请求;向密码机发送密码服务请求;方法还包括:接收密码机返回的密码服务响应。在上述的实现过程中,通过区块链节点向密码机发送密码服务请求,并接收密码机返回的密码服务响应,从而使得区块链节点在需要密码服务时,可以根据密钥标识向密码机请求密码服务。
本申请实施例还提供了一种密码机服务装置,应用于密码机,包括:数据请求接收模块,用于接收区块链节点发送的密钥请求,密钥请求包括目标密码算法类型;国密数据生成模块,用于若目标密码算法类型是国密密码算法,则加载国密密码算法实例,并使用国密密码算法实例生成密钥、密钥对应的公钥和密钥对应的密钥标识,然后向区块链节点发送密钥标识,以使区块链节点根据密钥标识向密码机请求密码服务。
可选地,在本申请实施例中,密码机服务装置,还包括:国际数据生成模块,用于若目标密码算法类型是国际密码算法,则加载国际密码算法实例,并使用国际密码算法实例生成密钥、密钥对应的公钥和密钥对应的密钥标识,向区块链节点发送密钥标识。
可选地,在本申请实施例中,密码机服务装置,还包括:服务请求接收模块,用于接收区块链节点发送的密码服务请求,密码服务请求包括:目标应用接口标准、待处理数据和密钥标识;国密响应发送模块,用于若目标应用接口标准是国密密码设备应用接口标准,则根据待处理数据和密钥标识生成密码服务响应,并以国密密码设备应用接口标准的方式向区块链节点发送密码服务响应。
可选地,在本申请实施例中,密码机服务装置,还包括:国际响应发送模块,用于若目标应用接口标准是国际密码设备应用接口标准,则根据待处理数据和密钥标识生成密码服务响应,并以国际密码设备应用接口标准的方式向区块链节点发送密码服务响应。
可选地,在本申请实施例中,密码服务响应包括:签名服务响应、验签服务响应、哈希服务响应、加密服务响应和/或解密服务响应;国密响应发送模块,包括:密钥查找模块,用于从密钥信息表中查找到密钥标识对应的密钥;响应生成模块,用于根据密钥标识对应的密钥和待处理数据生成密码服务响应生成签名服务响应、验签服务响应、哈希服务响应、加密服务响应和/或解密服务响应。
本申请实施例还提供了一种密码机服务装置,应用于区块链节点,包括:密钥请求生成模块,用于根据目标密码算法类型生成密钥请求;密钥请求发送模块,用于向密码机发送密钥请求,以使密码机返回目标密码算法类型对应的密钥标识;密钥标识接收模块,用于接收密码机发送的密钥标识;密码服务请求模块,用于在需要密码服务时,根据密钥标识向密码机请求密码服务。
可选地,在本申请实施例中,密码服务请求模块,包括:密码请求生成模块,用于获取目标应用接口标准和待处理数据,并根据密钥标识、目标应用接口标准和待处理数据生成密码服务请求;密码请求发送模块,用于向密码机发送密码服务请求;密码机服务装置,还包括:密码响应接收模块,用于接收密码机返回的密码服务响应。
本申请实施例还提供了一种密码机,包括:处理器和存储器,存储器存储有处理器可执行的机器可读指令,机器可读指令被处理器执行时执行如上面描述的方法。
本申请实施例还提供了一种存储介质,该存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如上面描述的方法。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出的本申请实施例提供的密码机服务方法的流程示意图;
图2示出的本申请实施例提供的区块链节点根据密钥标识请求密码机服务的流程示意图;
图3示出的本申请实施例提供的区块链节点与密码机进行交互的流程示意图;
图4示出的本申请实施例提供的Fabric-CA为区块链节点生成证书的示意图;
图5示出的本申请实施例提供的区块链集群交易过程的示意图;
图6示出的本申请实施例提供的密码机服务装置的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整的描述。
在介绍本申请实施例提供的密码机服务方法之前,先介绍本申请实施例中所涉及的一些概念:
软件开发工具包(Software Development Kit,SDK),是指软件工程师为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件时的开发工具的集合;该软件开发工具包括广义上指辅助开发某一类软件的相关文档、范例和工具的集合;这里地工具例如是软件开发工具包中的数据接口,调研该数据接口可以连接服务器获得相应的结果,这里的软件开发工具包的语言有很多种,例如:Java语言、GO语言和Python语言等等。
Hyperledger(超级账本)Fabric是面向企业的分布式账本平台,引入权限管理,设计上支持可插拔、可扩展,是首个面向联盟链场景的开源项目。Hyperledger Fabric中的身份验证模块,区块链中的默克尔树(Merkle Tree)等很多功能中,都广泛使用密码算法。Fabric又被称为Hyperledger Fabric,是一个分布式账本解决方案的平台,其基础是提供高度机密性、弹性、灵活性和可扩展性的模块化体系结构,也是一个活动的超级账本项目,Fabric可以运行于区块链节点上并提供分布式账本服务。Fabric-SDK-GO是运行于用户终端设备上的客户端程序,为用户提供访问区块链上的分布式账本服务。Fabric-CA是指为区块链节点提供认证服务的程序,可以运行于认证服务器上。
需要说明的是,本申请实施例提供的密码机服务方法可以被密码机执行,这里的密码机是指硬件上使用外设部件互连标准(Peripheral Component Interconnect,PCI)/PCI-Express密码卡用于密钥管理和密码运算,集成在工控机上供其调用的密码设备;此处的密码卡具有密钥管理和密码计算功能,通过网络等接口对外提供服务,密码机在技术上符合国家标准GM/T 0030-2014《服务器密码机技术规范》,接口标准符合规范GM/T 0018-2012《密码设备应用接口规范》。密码机在物理环境安全上,具有访问控制机制或其他安全机制的环境,防止密钥泄露或储存其他秘密数据泄露。密码机在物理防护上,使用物理手段保护硬件密码设备及密钥和敏感信息。密码机使用三层密钥防护体系自上而下逐层保护的分层保护原则;密码机支持的功能包括算法服务、密钥管理、用户管理、设备管理、审计管理等,提供数据加解密、签名或签名验证等密码服务。
在介绍本申请实施例提供的密码机服务方法之前,先介绍该密码机服务方法适用的应用场景,这里的应用场景包括但不限于:使用该密码机服务方法为区块链节点生成密钥,然后为区块链节点提供密钥标识等,区块链节点可以通过该密钥标识获得密码机提供的加密服务、解密服务、签名服务和验签服务等等与密码相关的服务。当然在具体的实践过程中,还可以使用该密码机服务方法增强Hyperledger Fabric程序或Fabric平台程序的功能,提高Hyperledger Fabric程序或Fabric平台程序的兼容性等等;密码机也可以为其它设备生成公钥和密钥,并提供密钥标识和密码服务;此处的其它设备包括但不限于:用户终端设备和服务器等等。
请参见图1示出的本申请实施例提供的密码机服务方法的流程示意图;该密码机服务方法的主要思路是,通过密码机接收区块链节点发送的密钥请求;然后,在目标密码算法类型是国密密码算法的情况下,加载国密密码算法实例,并使用国密密码算法实例生成密钥、密钥对应的公钥和密钥对应的密钥标识,然后向区块链节点发送密钥标识,使得区块链节点可以根据密钥标识向密码机请求密码服务;从而实现了使用国密密码算法和国密密码设备应用接口标准的密码机作为BCCSP对区块链节点提供密码服务,改善了无法使用国密密码算法和国密密码设备应用接口标准作为BCCSP为区块链节点提供密码服务的问题;上述的密码机服务方法可以包括:
步骤S110:密码机接收区块链节点发送的密钥请求,密钥请求包括目标密码算法类型。
区块链节点(Block-Chain Node),是指在区块链网络中运行的节点服务器或者节点设备,例如:可以执行计算机程序的电子设备等。
密钥请求是指请求密码机生成用于加密解密的标识字符串,密钥请求中包括目标密钥算法类型;其中,密码机可以生成公钥和私钥,但是并不向区块链节点发送公钥和私钥,而是发送公钥和私钥对应的密钥标识,即区块链节点可以发送密钥标识来使用密钥相关的服务,上述的密钥又被称为私钥,该私钥是公钥是相对应的。
目标密码算法类型,是指区块链节点需要使用的密码算法类型,此处的目标密码算法类型是从密码机能够支持的密码算法类型中选择的;其中,密码机能够支持的密码算法类型包括:国密密码算法和国际密码算法,这两者密码算法的具体定义和例子将在下面进行详细地描述。
上述的步骤S110的实施方式例如:区块链节点根据目标密码算法类型生成密钥请求,并通过传输控制协议(Transmission Control Protocol,TCP)或者用户数据报协议(User Datagram Protocol,UDP)向密码机发送密钥请求;密码机通过TCP协议或者UDP协议接收区块链节点发送的密钥请求,密钥请求可以包括目标密码算法类型。
在步骤S110之后,执行步骤S120:若目标密码算法类型是国密密码算法,则密码机加载国密密码算法实例,并使用国密密码算法实例生成密钥、密钥对应的公钥和密钥对应的密钥标识,然后向区块链节点发送密钥标识,以使区块链节点根据密钥标识向密码机请求密码服务。
国密密码算法,一种使用形式是国密软算法(Guo Mi Soft Ware,GMSW),是指使用国密密码软算法标准实现的加密和解密算法;国密密码算法包括:SM2算法、SM3算法和SM4算法;其中,SM2算法是非对称加密算法,SM2算法中包括使用私钥进行签名的签名(sign)函数和使用公钥对签名进行验证的验签(verify)函数,因此,在使用国密密码算法进行签名时,可以使用SM2算法中的签名函数,在使用国密密码算法进行验签时,可以使用SM2算法中的验签函数;SM3算法是哈希函数,在使用国密密码算法生成信息摘要时,可以使用SM3算法中的哈希函数;SM4算法是对称加密算法,因此,在使用国密密码算法进行对称加解密运算时,可以使用SM4算法进行对称加解密运算。
上述的步骤S120的实施方式例如:密码机目标密码算法类型是否是国密密码算法;若目标密码算法类型是国密密码算法,则密码机加载国密密码算法实例,密码机使用国密密码算法实例生成密钥、密钥对应的公钥和密钥对应的密钥标识,然后向区块链节点发送密钥标识;区块链节点接收密码机发送的密钥标识,在需要密码服务时,区块链节点根据密钥标识向密码机请求密码服务。
可选地,在步骤S110之后,执行步骤S130:若目标密码算法类型是国际密码算法,则密码机加载国际密码算法实例,并使用国际密码算法实例生成密钥、密钥对应的公钥和密钥对应的密钥标识,向区块链节点发送密钥标识。
国际密码算法,使用国际标准实现的加密和解密算法;其中,国际上通用的加解密算法,包括但不限于:ECDSA算法、AES算法和SHA256算法等等。
上述的步骤S130的实施方式例如:密码机判断目标密码算法类型是否是国际密码算法;若目标密码算法类型是国际密码算法,则密码机加载国际密码算法实例,并使用国际密码算法实例生成密钥、密钥对应的公钥和密钥对应的密钥标识,然后向区块链节点发送密钥标识;区块链节点接收密码机发送的密钥标识,在需要密码服务时,区块链节点根据密钥标识向密码机请求密码服务。
在上述的实现过程中,通过接收区块链节点发送的密钥请求;然后,在目标密码算法类型是国密密码算法的情况下,加载国密密码算法实例,并使用国密密码算法实例生成密钥、密钥对应的公钥和密钥对应的密钥标识,然后向区块链节点发送密钥标识,使得区块链节点可以根据密钥标识向密码机请求密码服务;从而实现了使用国密密码算法的密码机作为BCCSP对区块链节点提供密码服务,改善了无法使用国密密码算法和国密密码设备应用接口标准作为BCCSP为区块链节点提供密码服务的问题。
请参见图2示出的本申请实施例提供的区块链节点根据密钥标识请求密码机服务的流程示意图;可选地,在本申请实施例中,密码机在向区块链节点发送密钥标识之后,还可以为区块链节点提供密码服务,即区块链节点可以根据密钥标识请求密码机服务,该实施方式包括:
步骤S210:密码机接收区块链节点发送的密码服务请求,密码服务请求包括:目标应用接口标准、待处理数据和密钥标识。
目标应用接口标准,是指区块链节点需要使用的应用接口标准,此处的目标应用接口标准是从密码机能够支持的应用接口标准中选择的;其中,密码机能够支持的应用接口标准包括:国密密码设备应用接口标准(可以简称为SDF)和国际密码设备应用接口标准(例如:PKCS11等等)。
上述步骤S210的实施方式例如:区块链节点在需要对数据加密、解密、签名或者验签时,可以将需要加密、解密、签名或验签的数据作为待处理数据,然后获取目标应用接口标准和待处理数据,并根据密钥标识、加密接口标准和待处理数据生成密码服务请求,最后,区块链节点向密码机发送密码服务请求。密码机接收区块链节点发送的密码服务请求,并从密码服务请求中解析出加密接口标准、待处理数据和密钥标识;其中,此处的待处理数据是指需要加密、解密、签名或验签的数据。
在步骤S210之后,执行步骤S220:若目标应用接口标准是国密密码设备应用接口标准,则密码机根据待处理数据和密钥标识生成密码服务响应,并以国密密码设备应用接口标准的方式向区块链节点发送密码服务响应。
国密密码设备应用接口标准,是指密码设备制定统一的应用接口标准,通过该接口调用密码设备,向上层提供基础密码服务,实现国密密码算法的功能;此处的国密密码设备应用接口标准就是密码设备接口标准规范(GMT 0018-2012密码设备应用接口规范)定义的接口标准。其中,国密密码算法包括:SM2算法、SM3算法和SM4算法;SM2算法是非对称加解密算法,可以用于密钥生成、密钥导入、密钥导出、签名、验签、加密和解密等等;SM3算法可以用于执行哈希运算和获取哈希结果;SM4算法是对称加解密算法,可以用于密钥生成、密钥导入、密钥导出、加密和解密等。
上述步骤S220的实施方式可以包括:判断目标应用接口标准是否是国密密码设备应用接口标准;若是,则密码机根据国密密码设备应用接口标准、待处理数据和密钥标识生成密码服务响应,并以国密密码设备应用接口标准的方式向区块链节点发送密码服务响应;其中,密码服务响应包括:签名服务响应、验签服务响应、哈希服务响应、加密服务响应和/或解密服务响应;该密码服务响应还可以包括:密钥生成响应、密钥导入响应和/或密钥导出响应,还可以包括哈希运算响应等等。
步骤S221:密码机从密钥信息表中查找到密钥标识对应的密钥。
密钥信息表,是指存储密钥标识与非对称加密算法中的公钥和密钥的关联关系的信息表,该信息表也可以存储密钥标识与对称加密算法中的密钥的关联关系;该密钥信息表可以是文件系统中的配置信息表,也可以是关系型数据库中的数据表,也可以是非关系型数据库中的数据表,也可以是缓存数据库中的数据表,也可以是计算机的物理存储设备。
上述步骤S221的实施方式例如:密码机判断从缓存数据库的密钥信息表中是否查找到密钥标识对应的密钥;若否,则从关系型数据库或者非关系型数据库的密钥信息表中查找该密钥标识对应的密钥;判断是否从关系型数据库或者非关系型数据库的密钥信息表中查找该密钥标识对应的密钥;若否,则从文件系统中的配置信息表中查找该密钥标识对应的密钥。
步骤S222:密码机根据密钥标识对应的密钥和待处理数据生成密码服务响应生成签名服务响应、验签服务响应、哈希服务响应、加密服务响应和/或解密服务响应。
其中,上述步骤S222的实施方式有很多种,包括但不限于如下几种:
第一种实施方式,根据待处理数据和密钥标识生成密码服务响应生成签名服务响应或验签服务响应,并向区块链节点发送签名服务响应或验签服务响应。其中,生成签名服务响应的具体过程例如:密码机从密钥信息表中查找到密钥标识对应的密钥,并使用该密钥以国密密码算法SM2对待处理数据进行签名,生成密码机国密标准的签名,然后将密钥标识、待处理数据和密码机国密标准的签名封装为签名服务响应。生成验签服务响应的具体过程例如:密码机从密钥信息表中查找到密钥标识对应的公钥,也可以查找到密钥标识对应的私钥,再根据该密钥计算出对应的公钥;然后,使用公钥以国密密码算法SM2对待处理数据进行验签,获得验签结果,并将密钥标识、待处理数据和验签结果封装为验签服务响应。
第二种实施方式,根据待处理数据和密钥标识生成密码服务响应生成加密服务响应或解密服务响应,并向区块链节点发送加密服务响应或解密服务响应。其中,生成加密服务响应的具体过程例如:密码机从密钥信息表中查找到密钥标识对应的密钥,并使用密钥对待处理数据进行加密,获得密文数据,然后将密钥标识、密文数据和密码机国密标准封装为加密服务响应。生成解密服务响应的具体过程例如:密码机从密钥信息表中查找到密钥标识对应的密钥,也可以查找到密钥标识对应的密钥,再根据该密钥计算出对应的公钥;然后,对待处理数据进行解密,获得明文数据;然后将密钥标识、明文数据和密码机国密标准封装为解密服务响应。
第三种实施方式,根据待处理数据和密钥标识生成密码服务响应生成密钥生成响应、密钥导入响应和/或密钥导出响应,并向区块链节点发送密钥生成相应、密钥导入响应和/或密钥导出响应。其中,生成密钥生成响应的具体过程例如:从待处理数据中解析出需要生成密钥的数量和长度等密钥信息,并根据该密钥信息以密码机国密标准(例如密码机国密标准中的SM2算法和SM4算法)生成至少一对公钥和私钥,使用密钥标识对应的私钥对生成的至少一对公钥和私钥进行加密,获得密文数据,然后将密钥标识、密文数据和密码机国密标准封装为密钥生成响应;以使该区块链节点将密钥生成响应中的密文数据发送给其它区块链节点,然后其它区块链节点可以将该密文数据发送给密码机,从而获得上述的至少一对公钥和私钥。生成密钥导入响应的具体过程例如:从待处理数据中解析出多对公私钥,并验证公钥和私钥是否是以密码机国密标准(例如密码机国密标准中的SM2算法)生成的,若是,则将多对公私钥存储至密码机上。生成密钥导出响应的具体过程与生成密钥导入响应的具体过程是相对应的,因此,此处不再赘述生成密钥导出响应的具体过程。
在上述的实现过程中,通过根据待处理数据和密钥标识生成密码服务响应,并向区块链节点发送密码服务响应,从而有效地以密码机的国密密码设备应用接口标准为区块链节点提供密码相关服务。
可选地,密码机还可以根据待处理数据和密钥标识生成密码服务响应生成哈希运算响应,其具体过程为:使用密钥标识对应的哈希函数(例如密码机国密标准的SM3算法中的哈希函数)对待处理数据进行哈希运算,获得哈希运算结果,并将哈希运算结果和密钥标识封装为哈希运算响应,然后向区块链节点发送哈希运算响应。
可选地,在步骤S210之后,执行步骤S230:若目标应用接口标准是国际密码设备应用接口标准,则根据待处理数据和密钥标识生成密码服务响应,并以国际密码设备应用接口标准的方式向区块链节点发送密码服务响应。
其中,在具体的实施过程中,上述的国际密码设备应用接口标准可以采用PKCS11标准,即公钥密码标准(The Public-Key Cryptography Standards,PKCS)第11版的标准。
可以理解的是,上述的步骤S230的实施原理和实施方式与步骤S220的实施原理和实施方式是类似的,区别仅在于,使用的密码机的应用接口标准不同,步骤S220使用的是密码机的国密密码设备应用接口标准,而步骤S230使用的是密码机的国际密码设备应用接口标准,因此,这里不再对该步骤的实施方式和实施原理进行说明,如有不清楚的地方,可以参考对步骤S220的描述。在上述的实现过程中,通过根据待处理数据和密钥标识生成密码服务响应,并以国际密码设备应用接口标准的方式向区块链节点发送密码服务响应,从而有效地以密码机国际标准为区块链节点提供密码相关服务。
请参见图3示出的本申请实施例提供的区块链节点与密码机进行交互的流程示意图;该密码机服务方法可以应用于区块链节点,该方法可以包括:
步骤S310:区块链节点根据目标密码算法类型生成密钥请求。
步骤S320:区块链节点向密码机发送密钥请求。
上述步骤S310和步骤S320的实施方式例如:区块链节点将目标密码算法类型封装为密钥请求,并通过传输层安全性(Transport Layer Security,TLS)协议或者安全套接层(Secure Sockets Layer,SSL)协议向密码机发送密钥请求。
步骤S330:密码机接收区块链节点发送的密钥请求,根据该密钥请求中的目标密码算法类型生成密钥、密钥对应的公钥和密钥对应的密钥标识,然后向区块链节点发送密钥标识。
其中,该步骤S330的实施原理和实施方式与步骤S110至步骤S130的实施原理和实施方式是类似的,因此,这里不再对该步骤的实施方式和实施原理进行说明,如有不清楚的地方,可以参考对步骤S110至步骤S130的描述。
步骤S340:区块链节点接收密码机发送的密钥标识。
步骤S350:区块链节点在需要密码服务时,根据密钥标识向密码机请求密码服务。
上述步骤S340至步骤S350的实施方式例如:区块链节点通过TLS协议或者SSL协议接收密码机发送的密钥标识,在需要密码服务时,区块链节点获取国密密码设备应用接口标准和待处理数据,并根据密钥标识和待处理数据以目标应用接口标准的方式生成并发起密码服务请求,包括:区块链节点获取国密密码设备应用接口标准,从区块链节点本地存储或者其它存储设备中获取待处理数据,或者,接收其它设备发送的待处理数据;并根据本地存储的密钥标识、获取的国密密码设备应用接口标准和待处理数据生成密码服务请求,然后以国密密码设备应用接口标准的方式向密码机发送密码服务请求。
在上述的实现过程中,通过区块链节点向密码机发送密钥请求,以使密码机返回目标密码算法类型对应的密钥标识,并接收密码机发送的密钥标识,从而使得区块链节点在需要密码服务时,可以根据密钥标识向密码机请求密码服务。
步骤S360:密码机接收区块链节点发送的密码服务请求,密码服务请求包括:目标应用接口标准、待处理数据和密钥标识,并根据待处理数据和密钥标识生成密码服务响应,并以国密密码设备应用接口标准的方式向区块链节点发送密码服务响应。
其中,该步骤S360的实施原理和实施方式与步骤S210至步骤S230的实施原理和实施方式是类似的,因此,这里不再对该步骤的实施方式和实施原理进行说明,如有不清楚的地方,可以参考对步骤S210至步骤S230的描述。
步骤S370:区块链节点接收密码机返回的密码服务响应。
上述步骤S370的实施方式例如:区块链节点通过TLS协议或者SSL协议接收密码机返回的密码服务响应。在上述的实现过程中,通过区块链节点向密码机发送密码服务请求,并接收密码机返回的密码服务响应,从而使得区块链节点在需要密码服务时,可以根据密钥标识向密码机请求密码服务。
请参见图4示出的本申请实施例提供的Fabric-CA为区块链节点生成证书的示意图;可选地,在密码机生成用于集群交易的公钥和私钥之前,还可以使用Fabric-CA(即认证服务器)来为区块链节点生成用于身份认证的证书,具体例如:区块链集群中的区块链节点向Fabric-CA发送未签名的证书请求文件,Fabric-CA接收未签名的证书请求文件后,使用Fabric-CA的私钥对未签名的证书请求文件进行签名,获得签名后的证书文件;然后,将Fabric-CA的公钥和签名后的证书文件发送给区块链集群中的区块链节点,以使区块链节点可以根据该证书文件进行交易活动,具体的交易获得的过程将在下面详细地进行描述。
上述的区块链集群一共包括四种区块链节点:客户端、共识节点、背书节点和提交节点;其中,客户端是指用户终端设备上的客户端程序,客户端上可以运行Fabric-SDK-GO程序,客户端可以通过Fabric-SDK-GO程序与密码机和区块链节点进行相互通信;共识节点、背书节点和提交节点均是区块链集群中的区块链节点,该区块链节点上可以运行Hyperledger Fabric程序或Fabric平台上的程序。上述区块链集群交易过程具体可以包括如下内容:
首先,客户端、共识节点、背书节点和提交节点均可以通过TLS协议或者SSL协议向Farbric-CA发送用于证书和密钥请求,该证书和密钥请求是用于请求Farbric-CA生成并返回证书和证书对应的密钥,从而使得客户端、共识节点、背书节点和提交节点均获得自己的证书和自己的密钥。同理地,请参见图5示出的本申请实施例提供的区块链集群交易过程的示意图;客户端、共识节点、背书节点和提交节点也都可以通过TLS协议或者SSL协议向密码机发送密钥请求,从而客户端、共识节点、背书节点和提交节点均获得自己的密钥标识,获得密钥标识的具体过程请参照上述步骤S110至步骤S130的描述,下面提到的签名、验签、加密和解密等具体过程请参照上述步骤S210至步骤S240的描述。
其次,客户端将交易数据和密钥标识以国密密码设备应用接口方式发送给密码机,密码机将交易签名结果发送给客户端,然后将交易和签名结果以国密TLS通信协议发送给背书节点。
接着,背书节点接收客户端发送的交易,然后,模拟执行交易从而获得交易模拟执行结果,然后向密码机发送密钥标识和模拟执行结果,以使密码机根据密钥标识查找到对应的SM2算法密钥,并使用SM2算法密钥对该交易模拟执行结果进行签名,将签名后交易模拟执行结果发送给背书节点;背书节点向客户端返回签名后的交易模拟执行结果,具体例如:将背书节点的密钥标识和交易模拟执行结果发送密码机,让密码机查找到密钥标识对应的密钥,并使用密钥对交易模拟执行结果进行签名,然后将签名后的交易模拟执行结果返回给背书节点。
然后,客户端将对背书节点发送的签名交易进行模拟执行,获得模拟执行结果,再将模拟执行结果进行打包,并将打包后的签名交易模拟执行结果以国密TSL协议或者SSL协议的通信方式发送给共识节点。
再然后,共识节点将收集客户端发送过来签名交易模拟执行结果进行排序,从而生成区块,不同的共识节点之间使用国密TSL协议或者SSL协议通信,进行区块共识,最后,将共识区块同步发送给提交节点。
最后,提交节点接收到共识节点发送过来的区块,使用SM2算法来验证区块中的每笔交易信息的合法性,若验证通过,则将共识区块存储在区块链同步文件中,并向区块链网络中的其它节点同步该区块。
请参见图6示出的本申请实施例提供的密码机服务装置的结构示意图。本申请实施例提供了一种密码机服务装置400,应用于密码机,包括:
数据请求接收模块410,用于接收区块链节点发送的密钥请求,密钥请求包括目标密码算法类型。
国密数据生成模块420,用于若目标密码算法类型是国密密码算法,则加载国密密码算法实例,并使用国密密码算法实例生成密钥、密钥对应的公钥和密钥对应的密钥标识,然后向区块链节点发送密钥标识,以使区块链节点根据密钥标识向密码机请求密码服务。
可选地,在本申请实施例中,密码机服务装置,还包括:
国际数据生成模块,用于若目标密码算法类型是国际密码算法,则加载国际密码算法实例,并使用国际密码算法实例生成密钥、密钥对应的公钥和密钥对应的密钥标识,向区块链节点发送密钥标识。
可选地,在本申请实施例中,密码机服务装置,还包括:
服务请求接收模块,用于接收区块链节点发送的密码服务请求,密码服务请求包括:目标应用接口标准、待处理数据和密钥标识。
国密响应发送模块,用于若目标应用接口标准是国密密码设备应用接口标准,则根据待处理数据和密钥标识生成密码服务响应,并以国密密码设备应用接口标准的方式向区块链节点发送密码服务响应。
可选地,在本申请实施例中,密码机服务装置,还包括:
国际响应发送模块,用于若目标应用接口标准是国际密码设备应用接口标准,则根据待处理数据和密钥标识生成密码服务响应,并以国际密码设备应用接口标准的方式向区块链节点发送密码服务响应。
可选地,在本申请实施例中,密码服务响应包括:签名服务响应、验签服务响应、哈希服务响应、加密服务响应和/或解密服务响应;国密响应发送模块,包括:
密钥查找模块,用于从密钥信息表中查找到密钥标识对应的密钥。
响应生成模块,用于根据密钥标识对应的密钥和待处理数据生成密码服务响应生成签名服务响应、验签服务响应、哈希服务响应、加密服务响应和/或解密服务响应。
本申请实施例还提供了一种密码机服务装置,应用于区块链节点,包括:
密钥请求生成模块,用于根据目标密码算法类型生成密钥请求。
密钥请求发送模块,用于向密码机发送密钥请求,以使密码机返回目标密码算法类型对应的密钥标识。
密钥标识接收模块,用于接收密码机发送的密钥标识。
密码服务请求模块,用于在需要密码服务时,根据密钥标识向密码机请求密码服务。
可选地,在本申请实施例中,密码服务请求模块,包括:
密码请求生成模块,用于获取目标应用接口标准和待处理数据,并根据密钥标识、目标应用接口标准和待处理数据生成密码服务请求。
密码请求发送模块,用于向密码机发送密码服务请求。
密码机服务装置,还包括:密码响应接收模块,用于接收密码机返回的密码服务响应。
应理解的是,该装置与上述的密码机服务方法实施例对应,能够执行上述方法实施例涉及的各个步骤,该装置具体的功能可以参见上文中的描述,为避免重复,此处适当省略详细描述。该装置包括至少一个能以软件或固件(firmware)的形式存储于存储器中或固化在装置的操作系统(operating system,OS)中的软件功能模块。
本申请实施例提供的一种密码机,包括:处理器和存储器,存储器存储有处理器可执行的机器可读指令,机器可读指令被处理器执行时执行如上的方法。
本申请实施例还提供了一种存储介质,该存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如上的方法;其中,该存储介质可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static Random AccessMemory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable ProgrammableRead-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable ProgrammableRead Only Memory,简称EPROM),可编程只读存储器(Programmable Red-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。
本申请实施例提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其他的方式实现。以上所描述的装置实施例仅是示意性的,例如,附图中的流程图和框图显示了根据本申请实施例的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以和附图中所标注的发生顺序不同。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这主要根据所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以使用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请实施例中的各个实施例的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
以上的描述,仅为本申请实施例的可选实施方式,但本申请实施例的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请实施例揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请实施例的保护范围之内。
Claims (8)
1.一种密码机服务方法,其特征在于,应用于密码机,包括:
接收区块链节点发送的密钥请求,所述密钥请求包括目标密码算法类型;
若所述目标密码算法类型是国密密码算法,则加载国密密码算法实例,并使用所述国密密码算法实例生成密钥、所述密钥对应的公钥和所述密钥对应的密钥标识,然后向所述区块链节点发送所述密钥标识,以使所述区块链节点根据所述密钥标识向所述密码机请求密码服务;
接收区块链节点发送的密码服务请求,所述密码服务请求包括:目标应用接口标准、待处理数据和所述密钥标识;
若所述目标应用接口标准是国密密码设备应用接口标准,则根据所述待处理数据和所述密钥标识生成密码服务响应,并以所述国密密码设备应用接口标准的方式向所述区块链节点发送所述密码服务响应。
2.根据权利要求1所述的方法,其特征在于,在所述接收区块链节点发送的密钥请求之后,还包括:
若所述目标密码算法类型是国际密码算法,则加载国际密码算法实例,并使用所述国际密码算法实例生成密钥、所述密钥对应的公钥和所述密钥对应的密钥标识,向所述区块链节点发送所述密钥标识。
3.根据权利要求2所述的方法,其特征在于,在所述接收区块链节点发送的密码服务请求之后,还包括:
若所述目标应用接口标准是国际密码设备应用接口标准,则根据所述待处理数据和所述密钥标识生成密码服务响应,并以所述国际密码设备应用接口标准的方式向所述区块链节点发送所述密码服务响应。
4.根据权利要求2所述的方法,其特征在于,所述密码服务响应包括:签名服务响应、验签服务响应、哈希服务响应、加密服务响应和/或解密服务响应;所述根据所述待处理数据和所述密钥标识生成密码服务响应,包括:
从密钥信息表中查找到所述密钥标识对应的密钥;
根据所述密钥标识对应的密钥和所述待处理数据生成密码服务响应生成所述签名服务响应、所述验签服务响应、所述哈希服务响应、所述加密服务响应和/或所述解密服务响应。
5.一种密码机服务方法,其特征在于,应用于区块链节点,包括:
根据目标密码算法类型生成密钥请求;
向密码机发送所述密钥请求,以使所述密码机返回所述目标密码算法类型对应的密钥标识;
接收所述密码机发送的所述密钥标识;
在需要密码服务时,根据所述密钥标识向所述密码机请求密码服务;
所述根据所述密钥标识向所述密码机请求密码服务,包括:
获取目标应用接口标准和待处理数据,并根据所述密钥标识、所述目标应用接口标准和所述待处理数据生成密码服务请求;
向所述密码机发送所述密码服务请求;
所述方法还包括:
接收所述密码机返回的密码服务响应。
6.一种密码机服务装置,其特征在于,应用于密码机,包括:
数据请求接收模块,用于接收区块链节点发送的密钥请求,所述密钥请求包括目标密码算法类型;
国密数据生成模块,用于若所述目标密码算法类型是国密密码算法,则加载国密密码算法实例,并使用所述国密密码算法实例生成密钥、所述密钥对应的公钥和所述密钥对应的密钥标识,然后向所述区块链节点发送所述密钥标识,以使所述区块链节点根据所述密钥标识向所述密码机请求密码服务;接收区块链节点发送的密码服务请求,所述密码服务请求包括:目标应用接口标准、待处理数据和所述密钥标识;若所述目标应用接口标准是国密密码设备应用接口标准,则根据所述待处理数据和所述密钥标识生成密码服务响应,并以所述国密密码设备应用接口标准的方式向所述区块链节点发送所述密码服务响应。
7.一种密码机,其特征在于,包括:处理器和存储器,所述存储器存储有所述处理器可执行的机器可读指令,所述机器可读指令被所述处理器执行时执行如权利要求1至4任一所述的方法。
8.一种计算机可读存储介质,其特征在于,该存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至4任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011613204.4A CN112737779B (zh) | 2020-12-30 | 2020-12-30 | 一种密码机服务方法、装置、密码机及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011613204.4A CN112737779B (zh) | 2020-12-30 | 2020-12-30 | 一种密码机服务方法、装置、密码机及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112737779A CN112737779A (zh) | 2021-04-30 |
CN112737779B true CN112737779B (zh) | 2023-04-21 |
Family
ID=75611850
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011613204.4A Active CN112737779B (zh) | 2020-12-30 | 2020-12-30 | 一种密码机服务方法、装置、密码机及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112737779B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113254960A (zh) * | 2021-05-26 | 2021-08-13 | 杭州云象网络技术有限公司 | 采用go语言实现硬件密码接口的方法、介质及装置 |
CN113254961A (zh) * | 2021-05-26 | 2021-08-13 | 杭州云象网络技术有限公司 | 基于go语言封装调用硬件国密密码接口的方法 |
CN113452521B (zh) * | 2021-06-28 | 2022-11-04 | 杭州云象网络技术有限公司 | 区块链国密适配方法、国密适配器、系统和装置 |
CN113472783B (zh) * | 2021-06-30 | 2023-04-07 | 杭州云象网络技术有限公司 | 区块链密码证书服务方法、系统、存储介质及装置 |
CN113626842A (zh) * | 2021-08-10 | 2021-11-09 | 鼎链数字科技(深圳)有限公司 | 基于密码卡实现密码服务的区块链系统及存储介质 |
CN113873029B (zh) * | 2021-09-24 | 2023-12-12 | 奇安信科技集团股份有限公司 | 密码服务监控方法、服务器、密码机、系统和存储介质 |
CN114258018B (zh) * | 2021-11-12 | 2024-04-09 | 中国南方电网有限责任公司 | 密钥管理方法、装置、计算机设备及存储介质 |
CN114116059B (zh) * | 2021-11-26 | 2023-08-22 | 北京江南天安科技有限公司 | 多级链式解压缩结构密码机的实现方法及密码计算设备 |
CN114301597B (zh) * | 2021-12-13 | 2024-02-09 | 零信技术(深圳)有限公司 | 密钥验证方法、设备及可读存储介质 |
CN115062094B (zh) * | 2021-12-30 | 2024-03-29 | 昆明理工大学 | 一种基于Fabric的关系型数据库内容同步方法 |
CN115913564B (zh) * | 2022-10-18 | 2024-07-09 | 鼎铉商用密码测评技术(深圳)有限公司 | 区块链产品的安全检测方法、系统、设备及可读存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104917741A (zh) * | 2014-07-19 | 2015-09-16 | 国家电网公司 | 一种基于usbkey的明文文档公网安全传输系统 |
CN111010283A (zh) * | 2019-12-20 | 2020-04-14 | 北京同邦卓益科技有限公司 | 用于生成信息的方法和装置 |
CN111818032A (zh) * | 2020-06-30 | 2020-10-23 | 腾讯科技(深圳)有限公司 | 基于云平台的数据处理方法、装置及计算机程序 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102307096B (zh) * | 2011-08-26 | 2013-10-16 | 武汉理工大学 | 一种基于伪rsa密钥的新近公开密钥加密算法的数据加密系统 |
CN109150549A (zh) * | 2018-10-26 | 2019-01-04 | 北京中宇万通科技股份有限公司 | 一种基于国产密码算法实现区块链密码安全服务的方法 |
CN109981297B (zh) * | 2019-04-11 | 2022-06-28 | 百度在线网络技术(北京)有限公司 | 区块链处理方法、装置、设备及存储介质 |
CN110247757B (zh) * | 2019-04-19 | 2022-07-19 | 中国工商银行股份有限公司 | 基于国密算法的区块链处理方法、装置及系统 |
CN110048855B (zh) * | 2019-04-23 | 2022-03-15 | 东软集团股份有限公司 | 国密算法的引入方法及调用方法、及装置、设备、Fabric平台 |
CN110992030A (zh) * | 2019-12-03 | 2020-04-10 | 银清科技有限公司 | 基于超级账本fabric的交易方法及系统 |
CN111147245A (zh) * | 2020-01-08 | 2020-05-12 | 江苏恒为信息科技有限公司 | 一种区块链中使用国家密码进行加密的算法 |
CN111371562A (zh) * | 2020-02-27 | 2020-07-03 | 华信咨询设计研究院有限公司 | 超级账本Fabric-SDK国密算法扩展改造方法 |
CN111858768B (zh) * | 2020-07-27 | 2023-06-16 | 苏州区盟链数字科技有限公司 | 一种优化区块链可信节点与共识算法的装置 |
-
2020
- 2020-12-30 CN CN202011613204.4A patent/CN112737779B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104917741A (zh) * | 2014-07-19 | 2015-09-16 | 国家电网公司 | 一种基于usbkey的明文文档公网安全传输系统 |
CN111010283A (zh) * | 2019-12-20 | 2020-04-14 | 北京同邦卓益科技有限公司 | 用于生成信息的方法和装置 |
CN111818032A (zh) * | 2020-06-30 | 2020-10-23 | 腾讯科技(深圳)有限公司 | 基于云平台的数据处理方法、装置及计算机程序 |
Also Published As
Publication number | Publication date |
---|---|
CN112737779A (zh) | 2021-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112737779B (zh) | 一种密码机服务方法、装置、密码机及存储介质 | |
US20240007308A1 (en) | Confidential authentication and provisioning | |
CN110750803B (zh) | 数据提供和融合的方法及装置 | |
CN111416807B (zh) | 数据获取方法、装置及存储介质 | |
CN103118027B (zh) | 基于国密算法建立tls通道的方法 | |
US20220108028A1 (en) | Providing cryptographically secure post-secrets-provisioning services | |
CN110401615B (zh) | 一种身份认证方法、装置、设备、系统及可读存储介质 | |
CN110677240A (zh) | 通过证书签发提供高可用计算服务的方法及装置 | |
KR20210134655A (ko) | 보안 시스템 및 관련 방법 | |
US20080148062A1 (en) | Method for the secure storing of program state data in an electronic device | |
CN110889696A (zh) | 一种基于sgx技术的联盟区块链秘钥存储方法、装置、设备及介质 | |
CN112351037B (zh) | 用于安全通信的信息处理方法及装置 | |
CN110740038B (zh) | 区块链及其通信方法、网关、通信系统和存储介质 | |
CN111131416A (zh) | 业务服务的提供方法和装置、存储介质、电子装置 | |
CN114143117B (zh) | 数据处理方法及设备 | |
CN111241492A (zh) | 一种产品多租户安全授信方法、系统及电子设备 | |
CN111614621A (zh) | 物联网通信方法和系统 | |
KR102282788B1 (ko) | 트랜잭션에 포함된 평문 데이터의 변경을 지원하는 블록체인 시스템 | |
CN109905384B (zh) | 数据迁移方法及系统 | |
CN117155549A (zh) | 密钥分发方法、装置、计算机设备和存储介质 | |
CN114142995B (zh) | 面向区块链中继通信网络的密钥安全分发方法及装置 | |
CN115378587A (zh) | 密钥获取方法、装置、设备及可读存储介质 | |
US11570008B2 (en) | Pseudonym credential configuration method and apparatus | |
KR100848966B1 (ko) | 공개키 기반의 무선단문메시지 보안 및 인증방법 | |
CN113890768A (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 |