CN111614456B - 一种针对sm4算法的多方协同加密方法 - Google Patents
一种针对sm4算法的多方协同加密方法 Download PDFInfo
- Publication number
- CN111614456B CN111614456B CN202010373340.4A CN202010373340A CN111614456B CN 111614456 B CN111614456 B CN 111614456B CN 202010373340 A CN202010373340 A CN 202010373340A CN 111614456 B CN111614456 B CN 111614456B
- Authority
- CN
- China
- Prior art keywords
- participants
- tau
- encryption
- key
- cooperative
- 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/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明属于信息安全技术领域,尤其涉及一种针对SM4算法的多方协同加/解密方法与介质。参与方为τ(τ≥2)个可信实体,表示为P1,...,Pτ。该方法主要包括密钥与消息分配、S盒协同计算,协同生成轮密钥和协同加、解密。本发明产生的有益效果如下:1.本发明实现了SM4算法的协同加/解密运算,数据加密由多方共同参与,有效防止权利集中,使得该方法与系统更适用于分布式场景下的应用。2.本发明使用了基于安全两方计算的乘加转换器来保证交互时双方的数据隐私,进一步增强了系统的安全性。
Description
技术领域
本发明属于信息安全技术领域,尤其涉及一种针对SM4算法的多方协同加/解密方法及介质。
背景技术
SM4算法是一种32轮迭代非平衡Feistel结构的分组加密算法,其设计简洁、资源利用率高、模块实现容易,具有安全高效的特点,主要应用于无线局域网的实时通信。
为了防止权力过于集中,越来越多的应用开始在分布式背景下实现。安全多方计算能有效解决分布式场景中一组互不信任的参与方之间保护隐私的协同计算问题,通过分割秘密或协同操作等方法,达到风险分散和容忍入侵的目的,提高相关方案在分布式场景中的适用性,极大地提高方案的安全性和稳定性。
发明内容
本发明设计了一种针对SM4算法的多方协同加/解密方法与系统,参与方各自持有一部分密钥,并通过安全多方计算协同生成轮密钥、完成数据的加/解密。该方法能有效解决分布式网络通信中数据加密的高效性、安全性与稳定性等问题。
本发明的上述技术问题主要是通过下述技术方案得以解决的:
一种针对SM4算法的多方协同加/解密方法,其特征在于,包括:
步骤1、密钥管理中心生成相关密钥与并进行消息分配,具体是:
密钥管理中心产生加/解密密钥key,再将密钥分成τ份并分发给τ个参与方,使得等式成立;密钥管理中心将每一轮使用的系统向量Cj分成τ份并分发给τ个参与方,使得等式成立;用户将明文M分成τ份并分发给τ个参与方,使得等式 成立;
步骤2、参与方进行S盒协同计算,具体是每个参与方与其他τ-1个参与方两两交互联合计算各自S盒的输出,其中i∈{0,…,31},表示执行的轮数;
步骤3、参与方协同生成轮密钥,具体是:τ个参与方协同计算出各自的轮密钥;
步骤4、参与方协同进行加/解密。
在上述的一种针对SM4算法的多方协同加/解密方法,定义Pα和Pβ分别是第α个协同加/解密参与方和第β个协同加/解密参与方,其中α,β∈{1,…,τ},步骤2具体包括:
步骤2.1、Pα的S盒输入为其中j∈{0,…,3},表示双方均有4个S盒,可以并行执行运算,也可以串行执行运算;计算并随机选择其中A∈GL(8,2),(Ci)j∈GF(28)且为系统向量,其余的参与方也执行与Pα相同的操作;
在上述的一种针对SM4算法的多方协同加/解密方法,步骤3具体包括
步骤3.2、从i=0到i=31,循环执行以下操作:
在上述的一种针对SM4算法的多方协同加/解密方法,步骤4中,
加密具体包括:
步骤4.01、Pα拥有部分明文Mα=(X0 α,X1 α,X2 α,X3 α),轮密钥rki α;
步骤4.02、从i=0到i=31,循环执行以下操作:
解密具体包括:
步骤4.11、Pα拥有部分明文Mα=(X0 α,X1 α,X2 α,X3 α),轮密钥rki α;
步骤4.12、从i=0到i=31,循环执行以下操作:
一种计算机存储介质,其特征在于,存储有计算机程序,运行计算机程序包括以下步骤:
步骤1、密钥管理中心生成相关密钥与并进行消息分配,具体是:
密钥管理中心产生加/解密密钥key,再将密钥分成τ份并分发给τ个参与方,使得等式成立;密钥管理中心将每一轮使用的系统向量Cj分成τ份并分发给τ个参与方,使得等式成立;用户将明文M分成τ份并分发给τ个参与方,使得等式 成立;
步骤2、参与方进行S盒协同计算,具体是每个参与方与其他τ-1个参与方两两交互联合计算各自S盒的输出,其中i∈{0,…,31},表示执行的轮数;
步骤3、参与方协同生成轮密钥,具体是:τ个参与方协同计算出各自的轮密钥;
步骤4、参与方协同进行加/解密。
在上述的一种计算机存储介质,定义Pα和Pβ分别是第α个协同加/解密参与方和第β个协同加/解密参与方,其中α,β∈{1,…,τ},步骤2具体包括:
步骤2.1、Pα的S盒输入为其中j∈{0,…,3},表示双方均有4个S盒,可以并行执行运算,也可以串行执行运算;计算并随机选择其中A∈GL(8,2),(Ci)j∈GF(28)且为系统向量,其余的参与方也执行与Pα相同的操作;
在上述的一种计算机存储介质,步骤3具体包括
步骤3.2、从i=0到i=31,循环执行以下操作:
在上述的一种计算机存储介质,步骤4中,
加密具体包括:
步骤4.01、Pα拥有部分明文Mα=(X0 α,X1 α,X2 α,X3 α),轮密钥rki α;
步骤4.02、从i=0到i=31,循环执行以下操作:
解密具体包括:
步骤4.11、Pα拥有部分明文Mα=(X0 α,X1 α,X2 α,X3 α),轮密钥rki α;
步骤4.12、从i=0到i=31,循环执行以下操作:
因此,本发明具有如下优点:1.本发明实现了SM4算法的协同加/解密运算,数据加密由多方共同参与,有效防止权利集中,使得该方法与系统更适用于分布式场景下的应用。2.本发明使用了基于安全两方计算的乘加转换器来保证交互时双方的数据隐私,进一步增强了系统的安全性。
附图说明
图1是本发明实施例的S盒协同计算交互过程示意图。
图2是本发明实施例的数据加密过程示意图。
具体实施方式
下面通过实施例,并结合附图,对本发明的技术方案作进一步具体的说明。
实施例:
本发明利用SM4算法中的S盒协同计算达到多方协同加/解密的目的,通过以下技术方案实现:参与方为τ个可信实体,表示为P1,...,Pτ。每个参与方与其他τ-1个参与方两两交互联合计算各自S盒的输出,其中i∈{0,...,31},表示执行的轮数。以Pα和Pβ为例,其中α,β∈{1,...,τ}。Pα的S盒输入为其中j∈{0,...,3},表示双方均有4个S盒并行执行运算。Pα计算随机选择其他τ-1个参与方也执行与Pα相同的操作。为基于安全两方计算的乘加转换器,每两个参与方之间均需调用一次该乘加转换器,τ个参与方则调用次。以Pα和Pβ为例,Pα输入Pβ输入 输出(di αβ)j给Pα,输出(di βα)j给Pβ。其中
在完成所需的所有乘加转换器调用之后,Pα计算
并将发送给剩下的τ-1个参与方。其余的参与方也执行与Pα相同的操作,这样每个参与方最后都能算出Pα计算再计算其余的参与方也执行与Pα相同的操作。Pα的S盒输出为其余的参与方也输出各自的结果。最终各参与方利用各自S 盒的输出值,协同生成轮密钥以及密文。
本文中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。
Claims (1)
1.一种针对SM4算法的多方协同加密方法,其特征在于,包括:
步骤1、密钥管理中心生成相关密钥与并进行消息分配,具体是:
密钥管理中心产生加密密钥key,再将密钥分成τ份并分发给τ个协同加密参与方,使得等式成立;密钥管理中心将每一轮使用的系统向量Cj分成τ份并分发给τ个协同加密参与方,使得等式 成立;用户将明文M分成τ份并分发给τ个协同加密参与方,使得等式成立,其中i∈{0,…,31},表示执行的轮数;
步骤2、协同加密参与方进行S盒协同计算,具体是每个协同加密参与方与其他τ-1个参与方两两交互联合计算各自S盒的输出;
步骤3、协同加密参与方协同生成轮密钥,具体是:τ个协同加密参与方协同计算出各自的轮密钥;
步骤4、协同加密参与方协同进行加密;
定义Pα和Pβ分别是第α个协同加密参与方和第β个协同加密参与方,其中α,β∈{1,…,τ},步骤2具体包括:
步骤2.1、Pα的S盒输入为其中j∈{0,…,3},表示第α个协同加密参与方有4个S盒,并行执行运算,或者串行执行运算;计算并随机选择其中A∈GL(8,2),(Ci)j∈GF(28)且为系统向量,其余的参与方也执行与Pα相同的操作;
步骤3具体包括
步骤3.2、从i=0到i=31,循环执行以下操作:
步骤4中,
加密具体包括:
步骤4.01、Pα拥有部分明文Mα=(X0 α,X1 α,X2 α,X3 α),轮密钥rki α;
步骤4.02、从i=0到i=31,循环执行以下操作:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010373340.4A CN111614456B (zh) | 2020-05-06 | 2020-05-06 | 一种针对sm4算法的多方协同加密方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010373340.4A CN111614456B (zh) | 2020-05-06 | 2020-05-06 | 一种针对sm4算法的多方协同加密方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111614456A CN111614456A (zh) | 2020-09-01 |
CN111614456B true CN111614456B (zh) | 2022-04-01 |
Family
ID=72203075
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010373340.4A Active CN111614456B (zh) | 2020-05-06 | 2020-05-06 | 一种针对sm4算法的多方协同加密方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111614456B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116915406B (zh) * | 2023-09-14 | 2023-12-01 | 北京电子科技学院 | 电子投标文件的协同解密开标方法、存储介质及电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104579636A (zh) * | 2015-02-16 | 2015-04-29 | 滨州职业学院 | 一种超高速实现sm4算法的系统及其运行方法 |
CN106712930A (zh) * | 2017-01-24 | 2017-05-24 | 北京炼石网络技术有限公司 | 一种sm4加密方法及装置 |
CN110855425A (zh) * | 2019-10-25 | 2020-02-28 | 武汉大学 | 一种轻量级多方协同sm9密钥生成、密文解密方法与介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017101122A1 (zh) * | 2015-12-18 | 2017-06-22 | 深圳市振华微电子有限公司 | 管用分离的计算机加密锁 |
-
2020
- 2020-05-06 CN CN202010373340.4A patent/CN111614456B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104579636A (zh) * | 2015-02-16 | 2015-04-29 | 滨州职业学院 | 一种超高速实现sm4算法的系统及其运行方法 |
CN106712930A (zh) * | 2017-01-24 | 2017-05-24 | 北京炼石网络技术有限公司 | 一种sm4加密方法及装置 |
CN110855425A (zh) * | 2019-10-25 | 2020-02-28 | 武汉大学 | 一种轻量级多方协同sm9密钥生成、密文解密方法与介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111614456A (zh) | 2020-09-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110008717B (zh) | 支持隐私保护的决策树分类服务系统及方法 | |
CN108667625B (zh) | 协同sm2的数字签名方法 | |
CN112104619B (zh) | 基于外包密文属性加密的数据访问控制系统和方法 | |
CN110414981B (zh) | 一种支持ZKPs的同态加密方法和区块链交易金额加密方法 | |
CN112383388B (zh) | 一种基于云计算大数据的双秘钥加密系统及方法 | |
CN101399660A (zh) | 协商组群密钥的方法和设备 | |
Rawat et al. | Efficient extended diffie-hellman key exchange protocol | |
Chang et al. | Privacy-preserving federated learning via functional encryption, revisited | |
CN113765662A (zh) | 一种基于sm2算法的签名及解密方法和系统 | |
CN115174116A (zh) | 一种数据包签名与验签系统 | |
CN111614456B (zh) | 一种针对sm4算法的多方协同加密方法 | |
CN114124347A (zh) | 一种基于区块链的安全多方计算方法及系统 | |
CN112152808B (zh) | 一种基于sm2算法的多方协同数字签名方法 | |
CN113869499A (zh) | 一种高效的不经意神经网络转化方法 | |
CN117353912A (zh) | 基于双线性映射的三方隐私集合交集基数计算方法及系统 | |
CN117370927A (zh) | 基于区块链的安全多方计算融合方法及系统 | |
CN117034287A (zh) | 基于隐私计算互联互通技术的多方联合建模安全增强方法 | |
CN107294972B (zh) | 基于身份的广义多接收者匿名签密方法 | |
CN110048852A (zh) | 基于非对称密钥池的量子通信服务站数字签密方法和系统 | |
Li et al. | An efficient privacy-preserving bidirectional friends matching scheme in mobile social networks | |
CN116055152A (zh) | 一种基于格的访问控制加解密方法及系统 | |
CN113343261B (zh) | 一种基于门限审计的交易隐私保护方法 | |
CN115603896A (zh) | 优化mpc下aes加密的隐私保护方法及系统 | |
CN115834038A (zh) | 基于国家商用密码算法的加密方法及装置 | |
CN113849831A (zh) | 一种基于sm2算法的两方协同签名和解密方法及系统 |
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 |