CN114139175A - 一种高效的私钥可否认编辑方法 - Google Patents
一种高效的私钥可否认编辑方法 Download PDFInfo
- Publication number
- CN114139175A CN114139175A CN202111315413.5A CN202111315413A CN114139175A CN 114139175 A CN114139175 A CN 114139175A CN 202111315413 A CN202111315413 A CN 202111315413A CN 114139175 A CN114139175 A CN 114139175A
- Authority
- CN
- China
- Prior art keywords
- algorithm
- key
- private key
- ciphertext
- msk
- 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.)
- Pending
Links
Images
Classifications
-
- 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/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
- G06F7/582—Pseudo-random number generators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
- G06F7/588—Random number generators, i.e. based on natural stochastic processes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种高效的私钥可否认编辑方法。本发明需要发送者与接收者共享相同的私钥,能在提供给攻击者密钥生成随机数或私钥的情况下将密文否认为编辑后明文的加密结果。本发明提出的私钥接收者可否认编辑方案满足双方案可否认性,即存在两套密码算法,其中否认算法支持否认密文但正常算法不支持。本发明的私钥接收者可否认编辑方案的密文长度和否认密钥长度比传统方案分别短一倍以上。提出的私钥可否认编辑方案主要基于本发明设计的高效单密钥私钥函数加密方案,以获得短的密文及否认密钥长度。通过公知的转换方法,本发明也将提出的私钥可否认编辑方案从接收者可否认性转换为发送者可否认性,但要求发送者与接收者额外一轮的交互。
Description
技术领域
本发明属于密码学中的加密领域,涉及使用函数加密中的相关技术,具体表现为一种高效的私钥可否认编辑方法,即使在发送方/接收方被强制给出密钥生成随机数或加密随机数的情况下,能够将密文中的明文否认为另一个编辑后的明文。
背景技术
在1997年美密会上,Canetti等人引入了可否认加密(Deniable Encryption)的概念,使得即使发送者/接收者在加密通信之后,仍然能产生“否认”的(但与真实值不可区分的)随机数/私钥,打开密文为另一个不同的明文。可否认加密方案可从非交互的概念自然推广到交互的概念(在交互的情况,可否认加密也称为可否认交互通信)。可否认加密加强了传统的安全通信,使得即使发送者/接收者在之后被强迫泄露明文、随机数或私钥,仍然能够保证通信消息的机密性。可否认加密的一个直接应用是抑制投票贿选,其可否认性保证即使恶意实体贿赂了投票人,也无法确认投票是否满足指定要求。可否认加密满足非承诺性(Non-committing),从而可应用到自适应的安全多方计算协议中。此外,可否认加密保证了在选择打开攻击下的安全性,也蕴含了不可强制安全多方计算(Incoercible MPC)的存在性。
Canetti等人提出了两类可否认性:第一种是完全可否认性,即发送者和接收者运行一套预先指定的密钥生成和加解密算法,过后可否认密文为其他的明文。第二种是双方案可否认性(也称为多分布可否认性),允许有两套密钥生成和加解密算法,其中一套为可否认算法,另一套为正常算法,使得在可否认算法下加密的一个明文能被否认为在正常算法下加密的另一个明文。
我们自然期望设计满足完全可否认性的可否认加密方案。然而,设计该类加密方案是一个长期的公开问题。直到2014年,Sahai和Waters才解决该公开问题,基于不可区分混淆设计了发送者完全可否认的公钥可否认加密方案。Bendlin等人在2011年给出了关于接收者完全可否认性的不可能结果:不存在满足该类可否认性的可否认公钥加密方案,即任何接收者完全可否认的方案要求交互通信。然而,设计接收者完全可否认的交互方案一直保持是公开问题,直到2020年。具体地,Canetti等人给出了一个突破性的结果,基于压指数安全的不可区分混淆设计了双方完全可否认的可否认交互加密方案,不仅允许发送者和接收者可以否认密文,而且当否认的明文不同时保证无法区分谁在欺骗。尽管满足完全可否认性的可否认加密方案的公开问题已得到初步解决,然而已知的构造都依赖于不可区分混淆,即仅从理论上给出了完全可否认方案的解决方法,没有考虑其效率问题。本发明集中于设计具体高效的可否认加密方案,从而考虑更弱的可否认性—双方案可否认性。
在1997年,Canetti等人基于半透明集合设计了发送者可否认的双方案可否认公钥加密方案,其中半透明集合能够通过陷门置换和Hard-core谓词获得。如果我们用RSA陷门置换实例化该可否认加密方案,那么对于128比特安全等级,该方案每加密1个比特需要800字节的通信和256次RSA加密运算。从而,该可否认加密方案的效率仍然偏低。在2011年,O'Neill 等人一般化该设计思想,从双半透明集合设计了双方可否认的双方案可否认公钥加密方案,而且基于LWE困难假设提出了双半透明集合的实例。当他们的方案获得了更强的可否认性 (即允许发送者和接收者均能否认密文),但他们方案的效率比Canetti等人给出的方案更低。
与发送者可否认加密方案比较,接收者可否认加密方案可能更被期望获得,也更难设计。根据Nielsen在2002年给出的不可能结果,接收者可否认加密方案的私钥至少需要跟明文一样长。为了解决该问题,目前有两种方法,其中一种方法是由Goldwasser等人在2017年提出的可否认编辑(Deniable Edit)方法,即限制否认后的明文为m′=Edit(m,e),其中m为原始的明文和e为编辑描述。从而,私钥长度与编辑描述长度|e|成线性关系,独立于明文的长度|m|。在许多的应用中,我们只需要否认明文m中的部分内容,而不是全部内容,使得可否认编辑已经足够满足这些应用的需求。如果定义和那么可否认编辑方案直接变为标准的可否认加密方案(尽管失去了效率优势)。因此,可否认编辑可以看作是可否认加密的一般化。尽管可否认编辑方法一定程度上限制了否认的能力,但是它提供了设计具体高效可否认加密方案的有效途径。
可否认加密可分为公钥可否认加密(发送者仅知道公钥,接收者生成公私钥)和私钥可否认加密(发送者和接收者共享相同的密钥)。一般而言,私钥可否认加密比公钥可否认加密更加高效。然而,上述大部分不可能结果不仅适用于公钥可否认加密,也同样适用于私钥可否认加密,使得私钥可否认加密并没有比公钥可否认加密更容易设计。目前,所有公知的可否认加密方案都是从理论上设计,没有考虑其具体效率。本发明以设计具体高效的可否认编辑方案为主要目标,致力于设计满足双方案可否认性的私钥可否认编辑方案(除非显示说明,本发明后续内容提及的可否认性均为双方案可否认性)。
发明内容
本发明的目的在于提供一种高效的私钥可否认编辑方法,具有密文长度短、否认密钥长度最优、解密速度快、否认算法计算效率高等特点和优势。
本发明的技术方案为:
一种私钥接收者可否认编辑方法DE=(Gen,Enc,Dec,DenGen,DenEnc,DenDec,Deny),其特征在于,包括以下两套加密方法:
·正常模式下私钥加密方法,由以下算法组成:
1)正常密钥生成算法DE.Gen(1λ):输入安全参数1λ,输出一个私钥sk;
2)正常加密算法DE.Enc(sk,m):输入私钥sk和明文m∈{0,1}n,输出一个密文c,其中正整数n表示明文m的长度;
3)正常解密算法DE.Dec(sk,c):输入私钥sk和密文c,输出明文m;
·否认模式下私钥加密方法,由以下算法组成:
1)否认密钥生成算法DE.DenGen(1λ):输入安全参数1λ,输出一个否认密钥dk;
2)否认加密算法DE.DenEnc(dk,m):输入否认密钥dk和明文m∈{0,1}n,输出一个可否认密文c,其中正整数n表示明文m的长度;
3)否认解密算法DE.DenDec(dk,c):输入否认密钥dk和密文c,输出明文m;
4)否认算法DE.Deny(dk,c,e):输入否认密钥dk、密文c和编辑描述e∈{0,1}l,输出一个随机数rc,e满足:skc,e←DE.Gen(1λ;rc,e)和Edit(m,e)=DE.Dec(skc,e,c),其中DE.Gen(1λ;rc,e)表示用随机数rc,e生成一个满足安全参数λ的私钥skc,e, Edit:{0,1}n×{0,1}l→{0,1}n为公知的有效编辑函数,输入明文m∈{0,1}n和编辑描述e∈{0,1}l,输出编辑后的明文Edit(m,e),以及正整数l表示编辑描述长度。
对于否认模式下的密文c,即使在接收者受到胁迫必须给出密钥生成随机数的情况下,接收者可以利用否认算法,通过给出“伪造”的随机数rc,e,将密文c加密的明文m否认为另一个编辑后的明文Edit(m,e);胁迫者可以验证:通过随机数rc,e和正常密钥生成算法产生的私钥skc,e可以通过正常解密算法解密密文c为明文Edit(m,e)。即当接收者受到胁迫时,将该随机数rc,e发送给胁迫者;胁迫者通过该随机数rc,e和正常密钥生成算法生成私钥skc,e,然后通过私钥skc,e和正常解密算法对否认模式下的密文c进行解密,得到编辑后的明文Edit(m,e)。
进一步的,私钥接收者可否认编辑方法是通过关于函数FEdit、具有特殊加解密功能的单密钥私钥函数加密方案FE=(Setup,Gen,Enc,Dec,SEnc,SDec)设计;对于编辑函数Edit:{0,1}n×{0,1}l→{0,1}n,FEdit:{0,1}n+λ+l×{0,1}λ+l→{0,1}n定义如下:
其中正整数λ为安全参数,n,l为正整数,m∈{0,1}n、y∈{0,1}λ+l和k∈{0,1}λ+l为字符串;私钥函数加密方案中加解密算法囊括了函数FEdit的计算,从而包含了以上判断条件的执行;私钥接收者可否认编辑方法构造如下:
·正常密钥生成算法DE.Gen(1λ):随机选取y∈{0,1}λ+l,对于每个i∈{1,2,…,λ+l},随机选取输出私钥其中对于集合I,符号{xw}w∈I表示w1,…,wn∈I表示集合I中的所有元素;
·正常加密算法DE.Enc(sk,m):随机选取k∈{0,1}λ+l,执行FE的特殊加密算法 c←FE.SEnc(sk,(m,k)),输出密文c;
·正常解密算法DE.Dec(sk,c):执行FE解密算法m←FE.Dec(sk,c),然后输出明文m;
·否认密钥生成算法DE.DenGen(1λ):执行FE的初始化算法msk←FE.Setup(1λ),输出否认密钥dk=msk;
·否认加密算法DE.DenEnc(dk,m):解析dk=msk,随机选取k∈{0,1}λ+l,执行FE的加密算法c←FE.Enc(msk,(m,k)),输出密文c;
·否认解密算法DE.DenDec(dk,c):解析dk=msk,执行FE的特殊解密算法 m←FE.SDec(msk,c),输出明文m,其中仅运行算法FE.SDec(msk,c)中输出m的步骤,不执行输出k的步骤;
·否认算法DE.Deny(dk,c,e):解析dk=msk,执行FE的特殊解密算法 (m,k)←FE.SDec(msk,c),计算执行FE的密钥生成算法 sky←FE.Gen(msk,y),输出rc,e=sky。
进一步的,针对函数FEdit:{0,1}n+λ+l×{0,1}λ+l→{0,1}n、具有特殊加解密功能的单密钥私钥函数加密方案FE=(Setup,Gen,Enc,Dec,SEnc,SDec)可通过公知的伪随机函数PRF以及混淆电路方案GC=(Garble,Encode,Eval,Decode)设计;通过公知的方法将函数FEdit表示为电路 CEdit,FE=(Setup,Gen,Enc,Dec,SEnc,SDec)构造如下:
·初始化算法FE.Setup(1λ):输入安全参数1λ,随机选取msk←{0,1}λ,输出主私钥msk。
·密钥生成算法FE.Gen(msk,y):输入主私钥msk和y∈{0,1}λ+l,解析对于每个w2∈I2,计算输出其中I2表示由电路CEdit中第二部分电路输入线构造的集合(即输入y∈{0,1}λ+l对应的电路输入线),表示输入y对应电路输入线w2的比特,对于任意的字符串a,b,a||b 表示a与b的级联,对于任意的密钥key∈{0,1}λ和消息m∈{0,1}λ,PRF(key,m)表示公知的伪随机函数计算。
·加密算法FE.Enc(msk,x):输入主私钥msk和x=(m,k)∈{0,1}n+λ+l,执行以下步骤:
1)随机选取r←{0,1}λ,计算key:=PRF(msk,r);
·解密算法FE.Dec(sk,c):输入函数私钥sk和密文c,执行以下步骤:
4)输出FEdit(x,y)←Decode(d,Z),其中根据以上函数FEdit的定义,可知DE.Dec调用该解密算法后将输出m=FEdit(x,y)。
·特殊加密算法FE.SEnc(sk,x):输入私钥sk和x=(m,k)∈{0,1}n+λ+l,执行以下步骤:
·特殊解密算法FE.SDec(msk,c):输入主私钥msk和密文c,执行以下步骤:
2)计算key:=PRF(msk,r);
6)输出x=(m,k)。
进一步的,混淆电路方案GC=(Garble,Encode,Eval,Decode)可由公知的方法构造,包括半门设计方法(Samee Zahur,Mike Rosulek,and David Evans.Two halves makea whole: Reducing data transfer in garbled circuits using half gates.InAdvances in Cryptology-Eurocrypt 2015,Part II,volume 9057of LNCS,pages 220-250.Springer,2015.)、切割与控制方法(Mike Rosulek and Lawrence Roy.Three halvesmake a whole beating the half-gates lower bound for garbled circuits.InAdvances in Crypology-CRYPTO 2021,volume 12825of LNCS,pages 94-124.SpringerInternational Publishing,2021.)等。为保证本发明方法描述的完备性,在说明书下文的第四节给出了基于半门设计方法的混淆电路方案具体构造。
进一步的,私钥接收者可否认编辑方法DE能转换为私钥发送者可否认编辑方法DE′,具体表现为:
·在正常模式下,发送者运行DE.Gen(1λ)生成私钥sk,并与接收者共享该私钥sk;在否认模式下,发送者运行DE.DenGen(1λ)生成否认密钥dk,并与接收者共享该密钥dk;
·在正常模式下,接收者随机选取s∈{0,1}n和运行正常加密算法c1←DE.Enc(sk,s),然后发送密文c1给发送者,其中正整数n表示明文或随机数长度;在收到密文c1后,发送者运行正常解密算法s←DE.Dec(sk,c1)和计算密文然后发送c2给接收者;最后,接收者计算明文
·在否认模式下,接收者随机选取s∈{0,1}n和运行否认加密算法c1←DE.DenEnc(dk,s),然后发送c1给发送者;在收到c1后,发送者运行否认解密算法s←DE.DenDec(dk,c1)和计算密文然后发送c2给接收者;最后,接收者计算明文发送者可以运行否认算法rc,e←DE.Deny(dk,c1,e),将明文m否认为编辑后的明文 Edit(m,e)。具体而言,当发送者受到胁迫时,他能将随机数rc,e发送给胁迫者;胁迫者利用随机数rc,e并运行正常密钥生成算法DE.Gen(1λ;rc,e)获得一个私钥skc,e,然后运行正常解密算法DE.Dec(skc,e,c1)获得编辑后的随机数Edit(s,e),进一步计算明文其中e∈{0,1}l表示编辑描述。
与现有技术相比,本发明的积极效果为:
具有显著更短的密文、最优的否认密钥长度、计算效率高等优势,可高效地否认密文加密的明文为另一个编辑后的明文。
附图说明
图1为本发明的正常模式下的算法流程图。
图2为本发明的否认模式下的算法流程图。
图3为私钥发送者可否认编辑方案流程图。
具体实施方式
具体来说,本发明包括以下四个方面的内容:
一、预备知识
1.符号
本发明用λ或1λ表示安全参数。对于两个字符串a,b,a||b表示它们的级联。符号|x|表示字符串x的长度。对于字符串x∈{0,1}*,xi表示x的第i个比特,lsb(x)表示x的最低比特。符号x←S表示从有限集合S中均匀随机采样x;x←D表示根据分布D采样x。对于(随机)算法A,本发明用y←A(x)表示关于输入x运行算法A和获得输出y;用符号y←A(x;r)指定算法A所使用的随机数r。本发明用negl(·)表示一个未指定的可忽略函数,即对于任意的常数c≥0,negl(λ)=o(λ-c),其中o表示公知的高阶无穷小渐进符号。对于集合S,符号{xw}w∈S表示和w1,…,wn∈S表示集合S中的所有元素。
对于布尔电路C,根据公知的拓扑序,本发明对电路的每条线进行编号,使得每条线都有唯一标识的索引(假设从1开始编号)。电路C由一系列门组成,每个门可表达为(α,β,γ,T),其中α,β是门输入线索引、γ是门输出线索引和T∈{XOR,AND}是门类型。符号I表示电路输入线索引的集合,O表示电路输出线索引的集合和W表示AND门输出线索引的集合。当考虑两个输入x,y时,本发明用I1和I2分别表示x和y对应的电路输入线索引集合,满足 I=I1∪I2成立。
2.单密钥私钥函数加密定义
·初始化算法FE.Setup(1λ):输入安全参数1λ,输出一个主私钥msk;
·解密算法FE.Dec(sky,c):输入函数私钥sky和密文c,输出函数值f(x,y);
·特殊加密算法FE.SEnc(sky,m):输入函数私钥sky和明文m,输出一个密文c;
·特殊解密算法FE.SDec(msk,c):输入主私钥msk和密文c,输出一个明文x。
Pr[f(x,y)=FE.Dec(sky,FE.Enc(msk,x))cmsk←FE.Setup(1λ),sky←FE.Gen(msk,y)]=1,
其中Pr[X]表示事件X发生的概率。
在安全性方面,本发明要求:攻击者可以询问任意明文在主私钥msk下加密的密文,但至多获得单个函数私钥sky,然后攻击者不能区分FE.Enc(msk,x0)与FE.Enc(msk,x1),其中 f(x0,y)=f(x1,y)。
在特殊加密性方面,本发明要求:对于任意明文m,攻击者不能区分FE.Enc(msk,m)与FE.SEnc(sky,m),即使攻击者能够获得函数私钥sky。在特殊解密性方面,本发明要求对于每个安全参数λ和明文以下成立:
Pr[FE.SDec(msk,FE.Enc(msk,x))=x|msk←FE.Setup(1λ)]=1。
3.伪随机函数
伪随机函数(Pseudorandom Function)PRF:{0,1}λ×{0,1}λ→{0,1}λ:输入一个随机的密钥key和一个消息m,输出一个函数值τ=PRF(key,m)。在安全性方面,本发明要求PRF的输出与均匀随机的值计算不可区分。伪随机函数是公知的标准函数。
二、私钥可否认编辑方案
为体现本发明的优势和特点,下面通过高效的私钥可否认编辑方案为具体实施例对本发明做进一步说明。
对于多项式时间的编辑函数Edit:{0,1}n×{0,1}l→{0,1}n:输入明文m∈{0,1}n和编辑描述 e∈{0,1}l,输出编辑后的明文Edit(m,e),其中正整数n和l分别表示明文长度和编辑描述长度。本发明提出的私钥可否认编辑方案DE=(Gen,Enc,Dec,DenGen,DenEnc,DenDec,Deny)由以下算法组成:
·正常模式下三个算法:
1)正常密钥生成算法DE.Gen(1λ):输入安全参数1λ,输出一个私钥sk;
2)正常加密算法DE.Enc(sk,m):输入私钥sk和明文m∈{0,1}n,输出一个密文c;
3)正常解密算法DE.Dec(sk,c):输入私钥sk和密文c,输出明文m。
·否认模式下四个算法:
1)否认密钥生成算法DE.DenGen(1λ):输入安全参数1λ,输出一个否认密钥dk;
2)否认加密算法DE.DenEnc(dk,m):输入否认密钥dk和明文m∈{0,1}n,输出一个可否认密文c;
3)否认解密算法DE.DenDec(dk,c):输入否认密钥dk和密文c,输出明文m;
4)否认算法DE.Deny(dk,c,e):输入否认密钥dk、密文c和编辑描述e∈{0,1}l,输出一个随机数rc,e满足:skc,e←DE.Gen(1λ;rc,e)和Edit(m,e)=DE.Dec(skc,e,c)。
在正确性方面,本发明要求对于每个安全参数λ和明文m∈{0,1}n,以下成立:
Pr[DE.Dec(sk,DE.Enc(sk,m))=m|sk←DE.Gen(1λ)]=1-negl(λ),
Pr[DE.DenDec(dk,DE.DenEnc(dk,m))=m|dk←DE.DenGen(1λ)]=1-negl(λ)。
在选择明文安全性方面,本发明要求私钥加密方案(DE.Gen,DE.Enc,DE.Dec)以及(DE.DenGen,DE.DenEnc,DE.DenDec)满足公知的选择明文安全性,即在攻击者可以选择任意多项式数量明文,然后获得对应的密文情况下,攻击者仍然不能区分明文m0与m1加密后的挑战密文。
在接收者编辑可否认性方面,本发明要求:即使在攻击者可以选择任意多项式数量明文,然后获得对应的正常密文或可否认密文,并可获得密钥生成的随机数/私钥情况下,攻击者仍然不能区分直接加密Edit(m,e)获得的正常密文与明文m的否认密文。
本发明提出的私钥接收者可否认编辑方案是基于单密钥私钥函数加密方案设计。当采用本发明提出的高效单密钥私钥函数加密方案(见下一节),本发明设计的私钥接收者可否认编辑方案将获得比Goldwasser等人提出方案显著更短的密文长度和否认密钥长度。此外,与 Goldwasser等人提出方案比较,本发明设计的私钥接收者可否认编辑方案更多支持否认算法输出密钥生成的随机数(即支持随机数否认,而不是更弱的私钥否认),并简化了正常模式下密钥生成算法。
对于编辑函数Edit:{0,1}n×{0,1}l→{0,1}n,定义函数FEdit:{0,1}n+λ+l×{0,1}λ+l→{0,1}n如下:
其中m∈{0,1}n和k∈{0,1}λ+l。给定关于函数FEdit以及参数n1=n+λ+l、n2=λ+l和n3=n的单密钥私钥函数加密方案FE=(Setup,Gen,Enc,Dec,SEnc,SDec),本发明提出的私钥接收者可否认编辑方案构造如下:
2)正常加密算法DE.Enc(sk,m):随机选取k∈{0,1}λ+l,执行FE的特殊加密算法 c←FE.SEnc(sky,(m,k)),输出密文c;
3)正常解密算法DE.Dec(sk,c):执行FE解密算法m←FE.Dec(sk,c),然后输出明文m;
4)否认密钥生成算法DE.DenGen(1λ):执行FE的初始化算法msk←FE.Setup(1λ),输出否认密钥dk=msk;
5)否认加密算法DE.DenEnc(dk,m):解析dk=msk,随机选取k∈{0,1}λ+l,执行FE的加密算法c←FE.Enc(msk,(m,k)),输出密文c;
6)否认解密算法DE.DenDec(dk,c):解析dk=msk,执行FE的特殊解密算法 m←FE.SDec(msk,c),输出明文m,其中仅运行算法FE.SDec(msk,c)中输出m的步骤,不执行输出k的步骤;
7)否认算法DE.Deny(dk,c,e):解析dk=msk,执行FE的特殊解密算法 (m,k)←FE.SDec(msk,c),计算执行FE的密钥生成算法 sky←FE.Gen(msk,y),输出rc,e=sky。
通过利用Canetti等人提出的转换方法,本发明将私钥接收者可否认编辑方案DE转换为私钥发送者可否认编辑方案DE′,具体表现为:
1)在正常模式下,发送者运行DE.Gen(1λ)生成私钥sk,并与接收者共享该私钥sk;在否认模式下,发送者运行DE.DenGen(1λ)生成否认密钥dk,并与接收者共享该密钥dk;
2)在正常模式下,接收者随机选取s∈{0,1}n和运行加密算法c1←DE.Enc(sk,s),然后发送密文c1给发送者;在收到密文c1后,发送者运行解密算法s←DE.Dec(sk,c1)和计算密文然后发送c2给接收者;最后,接收者计算明文
3)在否认模式下,接收者随机选取s∈{0,1}n和运行否认加密算法c1←DE.DenEnc(dk,s),然后发送c1给发送者;在收到c1后,发送者运行否认解密算法s←DE.DenDec(dk,c1)和计算密文然后发送c2给接收者;最后,接收者计算明文发送者可以运行否认算法rc,e←DE.Deny(dk,c1,e),将明文m否认为编辑后的明文 Edit(m,e)。根据可否认编辑方案DE的接收者可否认性,Edit(s,e)=DE.Dec(skc,e,c1),其中skc,e←DE.Gen(1λ;rc,e);从而,等式成立,使得私钥可否认编辑方案DE′满足发送者可否认性。
图3给出了私钥发送者可否认编辑方案DE′的流程图。
三、高效的单密钥私钥函数加密方案
为体现本发明的特点和优势,下面通过高效的单密钥私钥函数加密方案为具体实施例对本发明做进一步说明。
本发明提出的单密钥私钥函数加密方案是基于伪随机函数PRF:{0,1}λ×{0,1}λ→{0,1}λ以及混淆电路方案GC=(Garble,Encode,Eval,Decode)设计。对于任意多项式时间函数(其布尔电路表示为Cf),本发明提出的单密钥私钥函数加密方案FE=(Setup,Gen,Enc,Dec,SEnc,SDec)构造如下:
·初始化算法FE.Setup(1λ):输入安全参数1λ,随机选取msk←{0,1}λ,输出主私钥msk。
1)随机选取r←{0,1}λ,计算key:=PRF(msk,r);
·解密算法FE.Dec(sky,c):输入函数私钥sky和密文c,执行以下步骤:
4)输出FEdit(x,y)←Decode(d,Z)。
7)输出密文c=(r,GCEdit,d,X,{cw}w∈I2)。
·特殊解密算法FE.SDec(msk,c):输入主私钥msk和密文c,执行以下步骤:
2)计算key:=PRF(msk,r);
四、高效的混淆电路方案
为体现本发明的特点和优势,下面通过高效的混淆电路方案为具体实施例对本发明做进一步说明。本发明提出的私钥可否认编辑方案基于单密钥私钥函数加密方案设计,而单密钥私钥函数加密方案的设计依赖于混淆电路方案。
一个混淆电路方案GC=(Garble,Encode,Eval,Decode)可由公知的方法构造,包括半门设计方法、切割与控制方法等。
为保证本发明方法描述的完备性,下文给出了基于半门方法的混淆电路方案具体构造。给定一个公知的哈希函数H:{0,1}2λ→{0,1}λ(满足循环相关强健安全性;可通过随机置换高效实现,可采用公知的分组密码实现随机置换),本实施例给出以下混淆电路方案GC=(Garble,Encode,Eval,Decode):
1)随机选取△←{0,1}λ,满足lsb(△)=1,其中对于任意的字符串S,lsb(S)表示其最低比特位;
3)根据公知的电路拓扑序,对于每个电路门(α,β,γ,T),其中α,β为门输入线、γ为门输出线和T∈{XOR,AND}表示门类型,计算如下:
3)输出(X,Y);
·计算算法Eval(GCEdit,(X,Y)):输入混淆电路GCEdit和输入编码(X,Y),执行以下步骤:
2)根据公知的电路拓扑序,对于每个电路门(α,β,γ,T),计算如下:
以上混淆电路方案实质上是Zahur等人提出的半门混淆电路方案从单个输入x到两个输入(x,y)的简单扩展。以上混淆电路方案满足正确性,即Decode(d,Z)=C(x,y);同时满足不可区分安全性,即攻击者不能区分与对于任意的输入x0和x1。
本发明不局限于以上实施方式,对于本领域的普通技术人员,在不脱离本发明原理与方法的前提下,还可以做出若干改进或变形,这些改进和变形也视为本发明的保护范围之内。本说明书中未详细描述的内容属于本领域专业技术人员公知的现有技术。
Claims (10)
1.一种高效的私钥可否认编辑方法,其特征在于,包括:
1)正常模式下私钥加密方法:
i.正常密钥生成算法DE.Gen(1λ):输入安全参数1λ,输出一个私钥sk;
ii.正常加密算法DE.Enc(sk,m):输入私钥sk和明文m∈{0,1}n,输出一个密文c,其中正整数n表示明文m的长度;
iii.正常解密算法DE.Dec(sk,c):输入私钥sk和密文c,输出明文m;
2)否认模式下私钥加密方法:
i.否认密钥生成算法DE.DenGen(1λ):输入安全参数1λ,输出一个否认密钥dk;
ii.否认加密算法DE.DenEnc(dk,m):输入否认密钥dk和明文m∈{0,1}n,输出一个可否认密文c,其中正整数n表示明文m的长度;
iii.否认解密算法DE.DenDec(dk,c):输入否认密钥dk和密文c,输出明文m;
2.如权利要求1所述的方法,其特征在于,当接收者受到胁迫时,将该随机数rc,e发送给胁迫者;胁迫者通过该随机数rc,e和正常密钥生成算法生成私钥skc,e,然后通过私钥skc,e和正常解密算法对否认模式下的密文c进行解密,得到编辑后的明文Edit(m,e)。
3.如权利要求1或2所述的方法,其特征在于,否认密钥生成算法DE.DenGen(1λ)通过执行初始化算法msk←FE.Setup(1λ),输出否认密钥dk=msk;其中FE.Setup(1λ)的算法流程为:根据安全参数1λ,随机选取msk←{0,1}λ,输出msk。
4.如权利要求3所述的方法,其特征在于,否认加密算法DE.DenEnc(dk,m)随机选取k∈{0,1}λ+l,执行加密算法c←FE.Enc(msk,(m,k)),输出密文c;其中FE.Enc(msk,(m,k))的算法流程为:
10.一种私钥发送者可否认编辑方法,其特征在于,
·在正常模式下,发送者生成私钥sk,并与接收者共享该私钥sk;在否认模式下,发送者生成否认密钥dk,并与接收者共享该密钥dk;
·在正常模式下,接收者随机选取s∈{0,1}n和运行正常加密算法用私钥sk加密s获得密文c1,然后发送密文c1给发送者,其中正整数n表示明文或随机数长度;在收到密文c1后,发送者运行正常解密算法用私钥sk解密密文c1获得随机数s,计算密文然后发送c2给接收者;最后,接收者计算明文
·在否认模式下,接收者随机选取s∈{0,1}n和运行否认加密算法用否认密钥dk加密s获得密文c1,然后发送c1给发送者;在收到c1后,发送者运行否认解密算法用否认密钥dk解密密文c1获得随机数s,计算密文然后发送c2给接收者;最后,接收者计算明文
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111153516 | 2021-09-29 | ||
CN2021111535166 | 2021-09-29 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114139175A true CN114139175A (zh) | 2022-03-04 |
Family
ID=80393322
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111315413.5A Pending CN114139175A (zh) | 2021-09-29 | 2021-11-08 | 一种高效的私钥可否认编辑方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114139175A (zh) |
-
2021
- 2021-11-08 CN CN202111315413.5A patent/CN114139175A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2018153317A1 (zh) | 一种基于混沌数谱的数字化混沌密码方法 | |
Kiayias et al. | Traitor tracing with constant transmission rate | |
KR101205109B1 (ko) | 메시지 인증 방법 | |
Joux | Authentication failures in NIST version of GCM | |
JPH0918469A (ja) | 暗号通信装置、システム及び暗号装置 | |
Mihaljević et al. | An approach for stream ciphers design based on joint computing over random and secret data | |
Oleiwi et al. | Overview and Performance Analysis of Encryption Algorithms | |
JP2009088641A (ja) | 送受信方法、通信システムおよび送信装置 | |
CN110932863B (zh) | 一种基于编码的广义签密方法 | |
US7321658B2 (en) | Padding application method ensuring security of cryptosystem and encryptor/decryptor | |
CN114139175A (zh) | 一种高效的私钥可否认编辑方法 | |
KR100388059B1 (ko) | 비대칭키 암호 알고리즘을 이용한 데이터 암호화 시스템및 그 방법 | |
Katti et al. | On the security of key-based interval splitting arithmetic coding with respect to message indistinguishability | |
JP2004246350A (ja) | 暗号化装置および復号化装置、並びにこれらを備えた暗号システム、暗号化方法および復号化方法 | |
Wang et al. | Anti-quantum generalized signcryption scheme based on multivariate and coding | |
CN111865578A (zh) | 一种基于sm2的多接收方公钥加密方法 | |
Jin et al. | Low transmission overhead for polar coding physical-layer encryption | |
AlDerai et al. | A Study of Image Encryption/Decryption by Using Elliptic Curve Cryptography ECC | |
JP2002252610A (ja) | 暗号装置および復号装置並びに公開鍵暗号方式および公開鍵復号方式 | |
JPH1091066A (ja) | 擬似ランダムビット列生成器及びそれを使用する暗号通信方法 | |
JP2000004223A (ja) | 暗号・認証システム | |
CN114139174A (zh) | 一种可否认编辑到预先计划可否认加密的转换方法 | |
Balmahoon et al. | Information Leakage of Correlated Source Coded Sequences over Wiretap Channel | |
Zwick | Uses of One Time Pad in Hybrid Algorithms | |
Chandra et al. | Modular Encryption Algorithm for Secure Data Transmission |
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 |