CN113424492A - 更高效的后量子签名 - Google Patents
更高效的后量子签名 Download PDFInfo
- Publication number
- CN113424492A CN113424492A CN201980091523.2A CN201980091523A CN113424492A CN 113424492 A CN113424492 A CN 113424492A CN 201980091523 A CN201980091523 A CN 201980091523A CN 113424492 A CN113424492 A CN 113424492A
- Authority
- CN
- China
- Prior art keywords
- matrix
- vector
- trapdoor
- signature
- message
- 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
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/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/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3093—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving Lattices or polynomial equations, e.g. NTRU scheme
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Storage Device Security (AREA)
Abstract
公开了生成基于格的验证矩阵和签名向量的技术。方法使得生成装置能够对小工具矩阵进行采样,然后生成缩减的小工具矩阵。所述生成装置然后可以对陷门矩阵进行采样,并且使用所述陷门矩阵和所述缩减的小工具矩阵来生成验证矩阵。除接收消息之外,发送装置还可以从所述生成装置接收所述陷门矩阵和所述验证矩阵。所述发送装置然后可以使用所述陷门矩阵和所述验证矩阵来生成用于所述消息的签名向量。验证装置可以接收所述验证矩阵、所述消息和所述签名向量。所述验证装置可以使用所述验证矩阵和所述签名向量来验证所述消息。
Description
相关申请交叉引用
本申请是2019年2月8日提交的第62/803,325号美国临时申请的国际申请并且要求其申请日的权益,所述美国临时申请以全文引用的方式并入本文中。
背景技术
当今许多密码体制——例如RSA加密——基于质数分解或模幂运算等问题。这些问题对于常规计算机来说是难以解决的,但对于量子计算机来说可能不是难以解决的。因此,量子计算的新进展可能会使基于这些问题的密码体制不安全。需要基于传统计算机和量子计算机均难以解决的问题的新密码体制。
基于格的问题可以用作密码体制的基础。格问题的一个实例可以是短整数解问题,其涉及在点的n维格中寻找最短向量。格问题对于常规计算机和量子计算机两者可能均是难以解决的。然而,针对基于格的密码体制计算密码密钥可能是计算昂贵的,并且可能会产生大的密钥,所述大的密钥还会使得难以对消息进行签名和验证消息。因此,需要使基于格的密码更高效。
本公开的实施例单独地和共同地解决了这些和其它问题。
发明内容
本公开的一些实施例涉及生成基于格的密码验证密钥和相关联陷门矩阵的方法。生成装置可以生成小工具矩阵G。所述生成装置然后可以删除所述小工具矩阵G的第一l列以生成缩减的小工具矩阵F。然后,所述生成装置可以对分布进行采样以形成陷门矩阵R。所述陷门矩阵R可以充当秘密密钥以用于生成数字签名,并且可以是近似陷门。所述生成装置然后可以使用所述缩减的小工具矩阵F和所述陷门矩阵R来生成验证矩阵A。所述生成装置可以将所述验证矩阵A发送给一个或多个验证装置。如果数字签名x是使用所述陷门矩阵R生成的,则所述一个或多个验证装置可以使用所述验证矩阵A来验证发送装置生成的所述数字签名x,以对消息m进行签名。
本公开的其它实施例涉及生成基于格的签名的方法。发送装置可以接收消息m。所述消息可以是散列h(m),或所述发送装置可以对所述消息m进行散列以生成所述散列h(m)。所述发送装置还可以存储验证矩阵A和陷门矩阵R。所述发送装置可以使用所述验证矩阵A和所述陷门矩阵R来生成签名向量x。可以生成所述签名向量x,使得对于一些模数q和误差向量e,满足关系Ax=h(m)+e mod q。可以选择所述模数q以给出所期望水平的数据安全型(例如,选择q=224可以给出100位的安全性)。签名装置可以将所述消息m和所述签名向量x发送给验证装置。所述验证装置可以预先接收到所述验证矩阵A,或可以从所述发送装置接收所述验证矩阵A,并且可以使用所述验证矩阵A来验证所述签名向量x是由所述发送装置生成的。这可以允许所述验证装置验证所述消息m也来自所述发送装置。
本公开的其它实施例涉及验证基于格的签名的方法。验证装置可以存储验证矩阵A。所述验证装置还可以从发送装置接收消息m和签名向量x。所述消息可以是散列h(m),或所述验证装置可以对所述消息m进行散列以生成所述散列h(m)。所述验证装置可以通过对于一些模数q求解Ax=h(m)+e mod q来计算误差向量e并且量化所述误差向量e的大小。所述验证装置可以将所述误差向量e与阈值进行比较,并且在所述误差向量e小于所述阈值的情况下验证所述签名向量x。例如,如果误差向量e的长度小于所述散列h(m)的维度。
本公开的其它实施例涉及系统以及与上文所描述的方法相关联的计算机可读介质。
在下文参考附图和具体实施方式进一步详细描述本发明的这些和其它实施例。
附图说明
图1示出了根据一些实施例的系统的框图。
图2示出了根据一些实施例的用于基于格的验证矩阵和陷门生成的一般流程图。
图3示出了根据一些实施例的用于基于格的签名生成的一般流程图。
图4示出了根据一些实施例的用于基于格的签名的验证的一般流程图。
图5A-B示出了在基于格的签名系统中利用精确陷门和近似陷门的签名验证的简化图。
图6示出了根据一些实施例的具体参数的汇总表。
图7示出了根据一些实施例的验证矩阵生成和签名向量生成的算法。
图8示出了根据一些实施例的具体参数的另一表。
图9示出了根据一些实施例的具体参数的另一表。
图10示出了可结合根据一些实施例的系统和方法使用的示例计算机系统的框图。
具体实施方式
基于格的密码、基于格问题的密码可以提供尤其随着量子计算的开发稳健的密码解决方案,所述量子计算的开发可能会降低较多传统密码体制的效果。格问题包括例如非齐次短整数解(ISIS)问题,其涉及在点的n维格中寻找最短向量。非齐次短整数解(ISIS)问题要求找到满足关系A·x=y(mod q)的向量x。在此实例中,向量y可以是消息或消息的散列,并且向量x可以是与所述消息相关联的签名。格问题可能是计算上困难的——即使利用量子计算,这使得它们非常适用于密码应用程序。利用陷门矩阵可能会使得更易于解决格问题,所述陷门矩阵可以是使得难题(例如,ISIS问题)变简单或变得在合理时间内可计算的矩阵。在ISIS问题的实例中,陷门矩阵可以用于计算向量x而不需要求解等式。因此,在密码应用程序中,陷门可以充当秘密密钥。
陷门矩阵的不同构造可能会对作为密码体制的格问题的大小和有用性具有不同影响。精确解决ISIS问题的陷门矩阵可能会使得公钥(验证矩阵A)和私钥(陷门矩阵)非常大,且因此对于对消息进行签名和发送签名来说不太实用。
替代地,实施例可以使用近似陷门,所述近似陷门使对ISIS问题的解决方案变宽松以找到近似解决方案而不是精确解决方案,即A·x=y+e(mod q),误差向量为e。在误差向量较小的情况下,仍可以验证签名。具体地,小工具矩阵(其中列包括小底数的升幂的矩阵)可以用于寻找精确陷门矩阵,并且通过删除小工具矩阵的一些列,缩减的小工具矩阵可以用于寻找近似陷门矩阵。利用近似解决方案,签名x、陷门矩阵和验证矩阵A可以更小且因此更实用。
在实施例中,生成装置可以计算验证矩阵A和陷门矩阵R。充当公钥的验证矩阵A可以被分布或甚至是公共的。具体地,验证矩阵A可以发送给发送装置和验证装置,所述发送装置将发送已签名消息,所述验证装置将验证消息上的签名以认证发送装置。充当私钥的陷门矩阵R可以安全地发送给发送装置,从而使得发送装置生成签名。
I.引言
在过去的二十年里,基于格的密码已成为活跃的研究领域。所述基于格的密码既可以实现高级加密功能,例如完全同态加密[Gen09];又可以实现实用的后量子安全公钥加密和签名,如不断发展中的NIST后量子密码(PQC)标准化进程[AAAS+19]中所观察到的。大部分基于格的密码体制使用格陷门。那些密码体制包括:基本原语,例如公钥加密和签名方案[GGH97、HPS98、HHP+03、GPV08],以及高级原语,例如基于身份的加密[GPV08、ABB10、CHKP12]、基于属性的加密[GVW13]和分级编码[GGH15]。
在此项研究中,我们专注于用于Ajtai[Ajt96]定义的基于格的单向函数的陷门和其在数字签名[GPV08]中的应用。给定宽的随机矩阵A和目标向量y。非齐次短整数解(ISIS)问题要求找到短向量x作为y的原像,即A·x=y(mod q):
在没有陷门的情况下,找到短前像被证明与在最坏情况下[Ajt96]解决某些格问题一样困难。另一方面,用于矩阵A的陷门允许其拥有者高效地产生短前像。首先在[Ajt99]中给定用于Ajtai函数的陷门的明确构造,且所述构造稍后通过[AP11,MP12]简化。
为了在密码学中恰当使用格陷门,真正给陷门带来冲击的是Gentry、Peikert和Vaikuntanathan的研究[GPV08]。上述人员展示了如何从与陷门无关的分布中对短前像进行采样,而不是从可能泄漏关于陷门的信息的分布(正如攻击[GS02,NR06]在最初尝试构建基于格的签名[GGH97,HHP+03]时所观察到的)中对短前像进行采样。与陷门无关的前像采样算法允许[GPV08]安全地构建散列和签名(hash-and-sign)签名,如下所示:使矩阵A为公共验证密钥,使A的陷门为秘密签名密钥。为了对消息m进行签名,首先将其散列为向量y,接着使用陷门对短前像x进行采样作为签名。确保秘密签名密钥对签名隐藏,这是由于签名是从与陷门无关的分布产生的。
尽管设计讲究,但基于Ajtai函数的散列和签名签名会由于其较大的密钥大小和签名大小而在实际应用中效率低下。实际上,进入第二轮NIST PQC标准化[AAAS+19]的所有三个基于格的签名候选对象都是通过两种替代方法构建的——Falcon[FHK+18]基于NTRU格上的散列和签名范式;Dilithium[DKL+18]和qTESLA[ABB+19]基于拒绝采样方法[Lyu12,BG14]。用于三个候选对象的所建议参数产生了有竞争力的性能测量。例如,对于128位安全性,所有三个候选对象的公钥和签名的大小(分别)小于5kB和4kB。相比而言,对于基于Ajtai函数的散列和签名签名,根据[BB13,BFRS18,GPR+18]的实施基准,公钥和签名的大小超过35kB和25kB。
我们可以定义被称为近似陷门的格陷门的宽松概念,其可以用于近似而不是精确地解决ISIS问题。主要动机是提高基于Ajtai单向函数的散列和签名签名的效率。随着正确性要求的放宽,有可能生成用于Ajtai函数的较小公共矩阵、陷门和前像,它们转换成用于散列和签名签名方案的较小公钥、秘密密钥和签名。
本公开的实施例展示了Micciancio和Peikert[MP12]所提出的小工具陷门可以修改为近似陷门。具体地,我们展示了如何使用近似小工具陷门从与陷门无关的分布对前像进行采样。对分布的分析可以使用关于网格的离散高斯的线性变换。
我们的近似小工具陷门可以与现有优化技术一起使用,例如使用埃尔米特形式和在小工具中使用更大的底数,以根据RingLWE和RingSIS假设改进随机预言模型中的散列和签名签名的具体性能。我们展示了,对于100位安全性的估计,公钥和签名的大小可以减小到5kB和4.45kB,对于192位安全性的估计,公钥和签名的大小可以减小到11.25kB和9.38kB。所述减小到的大小更接近基于拒绝采样方法[Lyu12,BG14,DKL+18,ABB+19]的签名的大小。
A.示例密码上下文
图1示出了根据实施例的系统100的序列图。系统100可以包括生成装置105、发送装置115和验证装置125。系统100还可以包括攻击者135。系统100可以是根据本公开的实施例的使用签名生成和验证的系统。例如,在一个实施例中,发送装置115可以是发送消息以将资金从一个账户转移到另一账户的用户装置。验证装置125可以是验证消息以防止欺骗性转移的发行方。在另一实施例中,发送装置115可以是发送消息以请求访问安全数据库的装置。验证装置125可以是控制对安全数据库的访问且可以在授权访问之前验证消息的访问网关。在一些实施例中,生成装置105和发送装置115可以是相同装置。在其它实施例中,生成装置105和验证装置125可以是相同装置。
在步骤102,生成装置105可以生成验证密钥vk和秘密密钥sk。例如,验证密钥vk可以是验证矩阵A,并且秘密密钥sk可以是陷门矩阵R。生成装置105然后可以将验证密钥vk公开地发送给验证装置125。攻击者135也可以接收验证密钥vk。生成装置105还可以将秘密密钥sk私密地发送给发送装置115。
在步骤104,发送装置115可以接收消息m。发送装置115然后可以利用散列函数对消息进行散列以生成已散列消息h(m)。替代地,发送装置115可以生成消息m或可以接收散列h(m)。
在步骤106,发送装置115可以基于散列h(m)和秘密密钥sk生成签名sig。例如,发送装置115可以依据散列h(m)和秘密密钥sk生成签名sig。发送装置115可以生成签名sig,使得验证密钥vk和签名sig的乘积为已散列消息h(m)。
在步骤108,发送装置115可以将消息m和签名sig发送给验证装置125。攻击者135能够在发送消息m和签名sig时对其进行拦截。
在步骤110,攻击者135可以尝试修改消息m以生成欺骗性消息m′。攻击者135还可以尝试修改签名sig以生成欺骗性签名sig′。然而,因为攻击者135不具有对秘密密钥sk的访问权,因此其可能无法生成有效签名。因此,欺骗性签名sig′可能不是有效签名。攻击者135然后可以将欺骗性消息m′和欺骗性签名sig′发送给验证装置125。
在步骤112,验证装置125可以尝试验证来自发送装置115的消息m和来自攻击者135的欺骗性消息m′。例如,验证装置125可以将签名sig与验证密钥vk相乘,并且将结果与已散列消息h(m)进行比较。如果结果等于散列h(m),或在公认的阈值内,则消息m可能已经过验证。如果结果不等于已散列消息h(m),或在公认的阈值内,则消息m可能未经过验证。更一般地说,验证可以涉及消息、已散列消息、签名和/或验证密钥的函数。不是利用秘密密钥sk生成的签名可能不会产生有效结果且可能未经过验证。因此,验证装置125可以区分发送装置115发送的真实消息和攻击者135发送的欺骗性消息。
B.验证矩阵的生成
可以生成验证矩阵作为公钥,以验证签名。还可以生成陷门矩阵(作为私钥),所述陷门矩阵可以用于生成验证矩阵且可以用于生成签名。
图2示出了根据本公开的实施例的密钥生成过程的流程图。在一些实施例中,可以由生成装置(例如,图1中的105)完成密钥生成,所述生成装置还可以是发送装置。密钥可以是基于格的密码验证密钥。
在步骤202,生成装置可以生成小工具矩阵G。小工具矩阵G可以是其中所有条目是小正数b的幂的矩阵,所述小正数例如2、3、4或5。例如,小工具矩阵G的条目可以是2的升幂。小工具矩阵可以具有维度n×log q。n可以是安全性参数,例如64、128、256和512。q可以设置为在一些实施例中,模数q可以介于216到224之间。
在步骤204,生成装置可以通过删除选定列来缩减小工具矩阵G的维度以生成缩减的小工具矩阵F。例如,生成装置可以删除小工具矩阵G的第一列。例如,可以选择参数l介于0与之间,或介于0与log q之间。可以实验方式将l确定为提供所需安全性级别和密钥大小。l(所得较小缩减的小工具矩阵F)的较大值可以产生较小密钥,但也可能是较不安全的。l(所得较大缩减的小工具矩阵F)的较大值可以产生较大安全性,但具有较大密钥。例如,对于安全参数n=512和底数b=2,模数可以设置为q=224。然后,可以从0与12之间的范围选择l。
在步骤206,生成装置可以对分布进行采样以形成陷门矩阵R。例如,可以独立于具有小标准差的高斯分布而对陷门矩阵R的每个元素进行采样。陷门矩阵R还可以用于计算小矩阵D,其中因此,D可以是利用具有相同维度的单位矩阵垂直扩大的陷门矩阵R。小矩阵可以是其中每个条目小于n的矩阵。陷门矩阵R可以充当秘密密钥以用于生成数字签名。
在步骤208,生成装置可以生成验证矩阵A。生成装置可以首先基于均匀随机矩阵生成矩阵可以相等概率选择均匀随机矩阵中的每个元素。然后可以按从F、R和计算出A。因此,验证矩阵A是利用从表达式而得的矩阵扩大的矩阵
在步骤210,生成装置可以将验证矩阵A发送给发送装置(例如,图1中的115)。验证矩阵A可以充当公知的验证密钥。如果生成装置不是发送装置,则生成装置还可以将陷门矩阵R和/或小矩阵D发送给发送装置。例如,可以通过安全信道或使用秘密共享算法发送陷门矩阵R。安全信道可以包括例如利用SSH加密保护的因特网通信信道,或手动地将陷门矩阵R写入和发送给发送装置。
C.签名生成
图3示出了根据本公开的实施例的签名生成过程的流程图。签名可以是基于格的签名向量。在一些实施例中,签名生成可以由发送装置(例如,图1的发送装置115)完成。
在步骤302,发送装置可以接收消息m。在一些实施例中,发送装置可能已生成消息m。消息m可以是例如授权请求消息或支付交易消息。可以对消息m进行散列。发送装置可以对消息m进行散列以生成已散列消息h(m)。例如,发送装置可以采用消息m的模数。消息m和散列h(m)可以是向量。
在步骤304,发送装置可以存储验证矩阵A和陷门矩阵R。可以从生成装置接收验证矩阵A和陷门矩阵R。在一些实施例中,发送装置可以生成验证矩阵A和陷门矩阵R。发送装置可以接收小矩阵D,而不是陷门矩阵R,或除了所述陷门矩阵之外还接收所述小矩阵。可以例如通过安全信道或使用秘密共享算法来接收陷门矩阵R和验证矩阵A。安全信道可以包括例如利用SSH加密保护的因特网通信信道。
在步骤306,发送装置可以使用散列h(m)、验证矩阵A和陷门矩阵R生成签名向量x。发送装置可以首先对概率分布(例如,高斯分布)进行采样以形成扰动向量p。可以依据概率分布独立地对扰动向量p中的每个元素进行采样。发送装置然后可以计算格向量v=h(m)-Ap。然后可以使用格向量基于根据格向量v形成的格依据格高斯分布对中间向量z进行采样。格高斯分布可以是格上离散高斯分布,所述格具体地是由格向量v定义的格。然后,发送装置可以接着按依据中间向量z和陷门矩阵R的乘积生成签名向量x。扰动p可以防止攻击者基于消息签名对确定陷门矩阵R。由于可以依据与消息m或陷门矩阵R无关的分布对扰动p进行采样,因此所述扰动可以签名向量x对陷门矩阵R进行掩码。
在步骤308,发送装置可以发送消息m和签名向量x。所述消息和签名向量可以发送给验证装置。发送装置还可以将验证矩阵A发送给验证装置。验证装置然后可以验证消息m。验证装置可以用验证矩阵A乘以签名向量x,并且在结果与已散列消息匹配且误差较小的情况下,可以验证消息m。验证装置还可以验证签名向量x是由发送装置生成的。
D.签名验证
图4示出了利用验证矩阵A验证签名向量x的流程图。在一些实施例中,验证可以由验证装置(例如,图1中的验证装置125)完成。
在步骤402,验证装置可以存储验证矩阵A。可以从生成装置接收验证矩阵A。替代地,验证装置可以从发送装置接收验证矩阵A,或可以是公开可用的。替代地,验证矩阵A可以由验证装置生成。
在步骤404,验证装置可以从发送装置接收消息m和签名向量x。验证装置可以除消息m之外还接收已散列消息h(m),或者可以接收所述已散列消息而不是所述消息。验证装置可以对所述消息m进行散列以生成已散列消息h(m)。消息m和散列h(m)可以是向量。
在步骤406,验证装置可以使用验证矩阵A来验证签名向量x。为了验证签名向量x,验证装置可以通过对于一些模数q求解等式Ax=h(m)+e mod q来计算和误差向量e。具体地,由于Ax-h(m)=e mod q,因此验证装置可以利用验证矩阵A、签名向量x和散列h(m)来计算Ax-h(m),以确定误差向量e。对于安全性参数n,模数可以确定为例如,对于参数n=128,q可以为223。在一些实施例中,模数q可以选自216与224之间的范围。由于签名向量x和验证矩阵A是利用近似陷门生成的,因此乘积可能不会恰好是散列h(m),而替代地可以相差误差向量e。如果签名向量x已利用精确陷门生成,则误差向量e将为0。验证装置然后可以例如通过找到误差向量e的欧几里得长度且将误差向量e的大小与阈值进行比较来量化所述大小。在其它实施例中,可使用不同lp标准或无穷大范数来量化误差向量e的大小。
如果误差向量e小于阈值,则可以验证签名向量x。在一些实施例中,阈值可以是散列h(m)的维度(例如,散列h(m)的向量的维度)。在其它实施例中,可以选择所述阈值介于0与之间。例如,如果q=223,则阈值可以为212。如果误差向量e较大,这可以指示消息m没有利用从与验证矩阵A相同的陷门生成的签名向量x进行签名,因此消息m很可能是欺骗性的或以其它方式被破解。
在验证签名之后,验证装置可以作用于消息中的信息。作为一个实例,所述消息可以包括访问建筑物或场馆等安全区域的请求或访问可以驻存在联网计算机上的安全数据或其它资源的请求。在验证签名和消息之后,验证装置然后可以将指示发送给访问装置以允许访问。作为另一实例,所述消息可以包括建立发送装置与验证装置之间的安全连接的请求。在验证消息之后,验证装置可以例如通过执行密钥交换而建立安全连接。另外或替代地,验证装置可以对发送装置作出响应。响应可以包括信息,例如密码、加密密钥或访问令牌等安全数据。一些实施例可以应用于支付处理系统。例如,消息可以是支付请求消息,并且验证装置可以使用支付请求消息中的信息作为生成授权响应的一部分,所述生成例如通过将认证(验证)发送给处理网络或发送给使用认证来准备授权响应的授权服务器。
E.近似陷门
图5描绘了利用精确陷门方案和利用近似陷门方案的签名验证。图5A示出了用于验证利用精确陷门生成的签名的示例计算。图5B示出了用于验证利用近似陷门生成的签名的示例计算。
在图中5A,具有维度n×m的验证矩阵A可以乘以签名向量Sign(h(m),sk),所述签名向量是利用秘密密钥sk和已散列消息h(m)生成的。验证矩阵的每个条目可以为在一些实施例中,n可以是安全性参数,例如128。q可以设置为签名向量Sign(h(m),sk)具有维度m,并且选择所述签名向量以使得当其乘以验证矩阵A时,产生已散列消息。已散列消息是具有n维度的向量。通过对消息进行散列,n和m的大小可以是固定的而不是取决于消息的大小。应注意,如果m相对较大,则验证矩阵A和签名向量Sign(h(m),sk)均将较大。
图5B描绘了利用较小维度的验证矩阵A的效果。验证矩阵A现在可以具有维度n×m′,其中m′<n+m。使用近似陷门可以允许减小维度。由于m′较小,因此用于已散列消息的相关联签名向量(仍具有长度n)也较小。然而,通过使用近似陷门,矩阵相乘的乘积d可以是已散列消息h(m)加误差向量e。验证矩阵A可以构造成使得误差向量e较小,即误差向量e的长度小于n。因此,用于验证的条件是乘积d在已散列消息的已知误差范围内。欺骗性签名可以产生与已散列消息相差程度大的乘积d,且因此验证过程可能仍是安全的。
我们现在可以更详细地论述近似陷门与精确陷门之间的差。
A·x=y+z(mod q)
为了理解“陷门”这个词,我们可以说,如果没有陷门,就会难以解决近似版本的ISIS。在恰当的参数设置下,我们表明近似ISIS问题与标准ISIS问题一样困难,或不比LWE容易。减少广泛地使用埃尔米特形式(HNF)并且非常简单。
近似ISIS问题和近似陷门是其精确变体的自然归纳。实际上,这两个概念均已用于文献中,至少在非正式层面上是这样。例如,近似ISIS问题用于Bai等人的研究中。[BGLS19]用以改进精确ISIS问题的组合算法。
对于近似陷门,HNF中的公共矩阵的精确陷门——比方说A=[In|A′]的陷门,可以用作A′的近似陷门。此方法通常用于签名的实施方案中,以将公钥和签名的大小减小n维度。因此,我们的目标是与HNF方法相比进一步减小所述大小,同时保持陷门的质量,即至少不增大前像的范数。
实施例的一个贡献是表明Micciancio和Peikert[MP12]提出的小工具陷门(G-陷门)可以修改为近似陷门,以进一步减小公共矩阵、陷门和前像的大小。G-陷门的方面是具有底数b的特定“小工具”矩阵,
Micciancio和Peikert[MP12]展示了如何连同具有小范数的矩阵D生成随机矩阵A,使得A·D=G(mod q)。具体地,A可以设计成
我们观察到,如果我们从小工具矩阵G删除对应于b的较小幂的若干(比方说l)个条目,即假设以下F矩阵为缩减的小工具矩阵
然后,我们仍能够关于公共矩阵F解决ISIS问题,直到解的bl近似(即,误差向量的范数与bl成比例)。在A中用F替换G给出
然后,可以减小陷门R和公共矩阵A的维度。
给定公共矩阵A连同其近似G-陷门R,找到给定目标u的任意近似短前像非常简单,但对来自与陷门无关的分布的前像进行采样可能是有意义的。如所提及,在包括数字签名的许多陷门应用程序中涉及从与陷门无关的分布进行采样的能力。
我们提供对来自与陷门无关的分布的近似短前像进行采样的算法。所述算法自身可以根据[MP12]建立在基于扰动的离散高斯采样器上,但来自[MP12]的前像分布的分析不易一般化。我们对预像分布和近似误差分布的分析广泛地使用格分布的线性变换定理(参见隐式地用于[MP12,MP13,BPMW16]中的定理2.7)。
虽然我们的算法适用于目标图像并且不会引起分布的标准偏差的任何放大,但与陷门无关的分析仅适用于从均匀采样的目标图像u,而不是对[GPV08,MP12]中精确陷门的分析,所述分析能够说明所有的前像的分布。为了简要解释这个差距的原因,我们观察到,我们试图处理所有目标图像的方法需要明显增加线性变换定理(定理2.7)中所需的格交叉点的平滑参数。换句话说,所得前像的范数明显增大使得结果变得毫无意义。
尽管如此,从与陷门无关的分布对均匀目标的近似前像进行采样足以替代许多密码体制中精确格陷门的使用,包括散列和签名签名[GPV08]、IBE[GPV08,ABB10,CHKP12]、ABE[GVW13]和专用混淆方案[GKW17,WZ17],基于GGH15分级编码方案[GGH15]建立的专用约束PRF和可再用乱码电路[CC17,CVW18]。
我们现在解释使用我们的近似陷门与精确陷门和其它现有优化技术相比的效率增益,重点是签名应用程序。我们的目标是设置参数以实现以下“双赢”情境:1)节省前像大小(带宽);2)节省公共矩阵A的大小;3)保留或甚至增加具体安全性,其涉及前像的离散高斯宽度和误差项的范数。
让我们从理解节省对变量l的依赖性开始,所述变量即从小工具g删除的条目数量。在表1中,我们提供了[MP12]的精确G-陷门与本文中近似G-陷门采样器之间的参数比较。在这两种情况下,公共矩阵都以伪随机模式进行实例化。对于近似陷门,陷门的维度从nk减小到n(k-l)。公共矩阵和前像的维度m减小。前像分布的宽度s也随着m的减小而稍微减小。然而,图像中的误差因子的范数随着l增长。因此,在稍后论述的散列和签名签名的具体实例化中,我们需要将l的值与前像和误差的范数进行协调,这可以共同确定安全性估计。
我们的算法从[MP12,GM18]继承了O(log q)-空间、O(n log q)-时间G-前像采样子例程。因此,在扰动采样中节省的空间和时间与维度m的节省成正比。
让我们快速评论签名之外的应用程序。维度m的节省对于基于GGH15分级编码方案(实施于[HHSS17,CGM+18]中)建立的应用程序非常重要。在这些应用程序中,模数q与md成比例(其中是分级编码的“级别”数;较大的d支持更丰富的功能性)。因此,减小维度m将大大减小总体参数。
表1:参数的简单比较。
表1中的参数是根据固定格维度n、固定模数和固定底数b导出的。使得使得l指示从g(1≤l<k)删除的条目数量。然后,我们将m列为公共矩阵和前像的维度;将σ列为小工具前像分布的宽度;将列为最终前像分布的宽度(其中C>0为通用常数;τ为陷门中的条目的分布的宽度或子高斯参数);将v列为图像中的每个条目的误差的长度界限。应注意,一些实施例可以使用δ代替τ。
F.签名的示例参数
我们给出基于我们的近似陷门的散列和签名签名的概念证明实施方案。在随机预言模型中分析安全性,假设公钥的伪随机性为RingLWE的难度,签名的不可伪造性为RingSIS。在这里,我们提供了简短概述,并在第5.2节中保留了更多详细信息。
图6示出了根据一些实施例的具体参数的汇总表。我们首先要指出,散列和签名签名[BB13,BFRS18,GPR+18]的不同实施方案结果可能使用不同的方法来测量大小和安全性,并且并非所有细节都可以从本文中恢复。因此,我们还包括我们的精确陷门的参考实施方案作为公平比较。对于100位安全性的估计,我们根据模数q≈224和底数b=2的精确陷门的参考实施方案匹配在[BB13]中报告的参数。
我们的实施方案展示了,对于100位安全性的估计,公钥和签名的大小可以减小到5kB和4.45kB,对于192位安全性的估计,公钥和签名的大小可以减小到11.25kB和9.38kB。所述减小到的大小更接近基于拒绝采样方法[Lyu12,BG14,DKL+18,ABB+19]的签名的大小。作为参考,对于128位安全性的估计,用于qTESLA[ABB+19]的公钥和签名的大小为4.03kB和3.05kB,并且对于192位安全性,所述公钥和签名的大小为8.03kB和6.03kB。用于Dilithium[DKL+18]的大小甚至更小。我们应注意,我们的实施方案没有使用Dilithium[DKL+18]和qTESLA[ABB+19]之类的低水平优化。因此,期望在添加较低水平的优化后我们能获得更多的改进空间是合理的。由于使用了NTRU格,用于Falcon[FHK+18]的参数最小,因此所述参数与基于RingLWE的参数是不可比较的。
有许多关于Ajtai单向函数陷门的民间传说优化。我们论述了其中一些与我们的构造的比较和兼容性。在这些比较中,我们关注的是开头提到的“双赢”情景。
首先是来自HNF优化的近似陷门:A=[I|A′]。这勉强实现了“双赢”场景,只需稍微节省公钥和签名。我们的构造可以用于自动包括HNF优化的小工具陷门的伪随机模式,并另外节省约50%。
我们的方法也可以与小工具中的任何底数一起使用,包括大小为的大底数(所得小工具为),如模数较大时在[dPLS18]中使用的。这种构造有较大的高斯宽度这可能会损害具体的全性,并且在我们在第5节中实施的较小模数制度中可能是不可行的。具体地,对于较小模数,签名的高斯宽度大于模数,如基于本文和在我们的实验中所确认的。因此,我们使用适度地较大的底数b。
还可以尝试构造用于的短整数矩阵S(对应于等式(1)中的伪随机公钥),使得AS=G,并且希望此观点提供更好的近似陷门。此处,散列和签名签名方案为将返回Sz+p,其中p是扰动且z为G-格样本。然而,此矩阵S需要bl项。因此,此方法确实节省了公钥,但不会改进签名大小,且最重要的是,将高斯宽度增加了bl的因数。宽度的增加减小了底层SIS问题的具体安全性。实际上,为了实现公钥的相同节省,可以替代地直接将底数从小工具中的b增加到bl。
II.序言
在详细描述具体实例之前,我们可以描述可以在本公开的实施例中利用的基于格的密码体制的方面。
A.符号和术语。
在密码学中,安全性参数(表示为λ)是变量,其用于参数化加密算法或协议的计算复杂性,以及对手破坏安全性的概率。如果算法在λ上的(概率)多项式时间内运行,则所述算法是“高效的”。
当从集合S均匀地获取变量v时,我们将其表示为v←U(S)。我们使用≈s和≈c作为统计学上接近和计算上不可区分的缩写。对于相同载体上的两个分布D1、D2,我们表示以表示每个具有D1(x)∈[1±ε]D2(x)和D2(x)∈[1±ε]D1(x)。
设为实数、整数和正整数的集合。用表示对于n∈,[n]:=1,…,n。将中的向量(默认地以列形式表示)写为粗体小写字母,例如v。对于向量v,将由vi表示v的ith分量。对于整数底数b>1,我们将正整数的“b元(b-ary)”分解称为向量(q0,q1,…,qk-1)∈{0,…,b-1}k,其中且q=∑qibi。
矩阵写为粗体大写字母,例如A。A的第ith列向量指示为ai。向量的长度是范数或由其最大条目||V||∞:=maxi{|vi|}给定的无穷大范数。矩阵的长度是其最长列:||A||p:=maxi||Ai||p的范数。除非明确提及,否则默认地我们使用范数。当向量或矩阵被称作“小”或“短”时,除非明确提及,否则我们引用其范数而不是其维度。可以在必要时精确地参数化“小”或“短”阈值。符号[A B]、[A,B]和[A|B]均可以表示矩阵A与第二矩阵B水平地扩大或串接。符号可以表示矩阵A和B是垂直串接的,也可以被称作堆栈。
B.线性代数
设为规范底数其中条目为δ(j,k),其中当δ(j,k)=1时,j=k,否则为0。对于任意集合其跨度(表示为span(S))是包含S的的最小子空间。对于矩阵,其跨度是其列向量的跨度,写作span(M)。我们将矩阵转置写为Mt。设表示B的格拉姆-施密特正交化(Gram-Schmidt orthogonalization)。除非另有说明,否则假设有序底数B=[b1,…,bk]的GSO从左到右为
回忆M的奇异值分解(SVD),即其中连同是一体式,并且是包含M的奇异值的三角形矩阵。另外,设q=min{n,m}和Dq=diag(s1,…,sq)是包含M的奇异值{0≤si}的对角矩阵。然后,当n=m时,D=Dq,当m>n时,D=[Dq 0],并且在m<n的情况下
如果对于所有我们有对称矩阵是半正定的。如果所述对称矩阵是半正定的且表明则所述对称矩阵是正定的,∑>0。如果∑1-∑2是(半)正定的,我们认为∑1>∑2(≥)。这在半正定矩阵集合上形成偏序,对于常数我们通常将∑≥αI表示为∑≥α。对于任何半正定矩阵∑,我们将写为任何满秩矩阵T,使得∑=TTt。我们说T是∑的平方根。对于两个半正定矩阵∑1和∑2,我们将它们的块对角串接形成的半正定矩阵表示为设M*表示埃尔米特转置。具有SVDM=VDW的矩阵M的(穆尔-彭罗斯)伪逆是M+=WD+V*,其中D+是通过转置D和反转M的非零奇异值给定的。例如,对于协方差∑=s2I,T=sI且T+=s-1I。(使用∑的对角化为非球形、满秩情况∑>0给定了类似T+。)
C.格背景
下标s和c在省略时(分别)取1和0。
对于任何半正定∑=T·Tt,将非球形高斯函数定义为
此离散高斯分布可以被称为格高斯分布。
我们回顾平滑参数的定义和一些有用的事实。
定义2.1[平滑参数[MR07]]对于任何格Λ和正实数ε>0,平滑参数ηε(Λ)是最小实数s>0,使得ρ1/s(Λ*\{0})≤ε。
以下为非球形高斯的[GPV08,推论2.8]的一般化。
我们可以使用以下关于离散高斯线性变换T的一般定理。它指出,只要原始离散高斯对T的核心足够平滑,则由T变换的分布在统计上接近另一离散高斯。
D.小工具或G格
其中(q0,…,qk-1)∈{0,1,…,b-1}k是模数q的b元分解。当q=bk时,我们可以设置q0=q1=…=qk-2=0且qk-1=b。无论哪种方式,在编码理论的术语中,的整数陪集可以被视为作为校验矩阵gt的典型表现。这些陪集表示为其中u可以是任何陪集代表。的简单陪集代表是u的b元分解。的整数陪集通过直接和构造表达,其中由于以下问题SIS和LWE易于基于矩阵G[MP12]解决,因此我们可以将G称为小工具矩阵。
然后我们可以通过从小工具矩阵G中删除具有最小幂b的l列来形成缩减的小工具矩阵F。例如,如果l=1,则这对应于删除具有1的任何列。因此,缩减的小工具矩阵为
E.SIS和LWE
我们首先回顾短整数解(SIS)问题。
Ax=0 mod q。
Ax=y mod q。
引理2.10[基于最坏情况[Ajt96,MR07,GPV08]下格问题的(I)SIS难度]对于任何m=poly(n)、任何β>0和任何足够大的q≥β·poly(n),利用不可忽视的概率求解ISISn,m,q,β或ISISn,m,q,β(其中aryy是从均匀进行采样的)与利用压倒性概率求解任意n维格上的GapSVPγ和SIVPγ一样困难,因为一些近似因数γ=β·poly(n)。
所有(I)SIS问题和其变体承认埃尔米特形式(HNF),其中公共矩阵A具有形式[In|A′],其中(I)SIS问题的HNF变体与标准(I)SIS一样困难。这可以通过将重写为得见(我们可以利用n、q,使得以不可忽视的概率可逆)。
我们还可以回顾决策性容错学习(LWE)问题。
定义2.11[决策性容错学习[Reg09]]对于n,m∈和模数q≥2,秘密向量、公共矩阵和误差向量的分布LWE样本是从对s←θn、A←πn×m、e←χm进行采样且输出(A,yt:=stA+etmodq)获得的。
引理2.12[最坏情况[Reg09,Pei09,BLP+13,PRS17]下基于格问题的LWE的难度]对于任何m=poly(n)、q≤2poly(n),给定设其中对于近似因子如果存在分解LWEn,m,q,θ,π,χ的高效(可能的量子)算法,则会存在用于以压倒性概率解决任意n维格上GapSVPγ和SIVPγ的高效(可能的量子)算法。
下一个引理表明,具有从误差分布中采样的秘密的LWE与标准LWE一样困难。
(I)SIS和LWE问题具有类似性。有时谈论两个问题中的一个很方便,类似的结果紧接着适用于另一个问题。在高层次上,它们可以被认为是同样困难的,因为分解其中一个会在道义上分解另一个。但是仔细检查当前的减少状态表明LWE是比(I)SIS更强的假设。因为如果存在关于公共矩阵解决SIS问题的多项式时间算法,则我们可以简单地使用SIS解决方案x通过计算x和LWE挑战向量y的内乘积来解决决策性LWE问题;另一方面,考虑到解决LWE问题的多项式时间算法,我们知道解决SIS[SSTX09]的更棘手多项式时间量子算法。
III.用于AJTAI函数的近似陷门
||z||≤α和Ax=y+z(mod q)。
也就是说,给定验证矩阵A和消息(或散列)y,近似ISIS涉及找到签名向量x使得Ax=y且误差z小的问题。让我们注意,当界限α,β与模数q相比相对较小时,近似ISIS才是有意义的。同样,我们的定义选择允许零向量为有效的解决方案,这意味着当||y||≤α时,零向量实际上为解决方案。此选择并不造成问题,这是由于本申请中所关注的情况将处理从均匀地采样的所有或y。
||z||≤α且Ax=y+z(modq)。
为了理解近似陷门,我们认为对于那些没有陷门的人来说,近似ISIS问题是在适当的参数设置下的候选单向函数。
首先,我们观察到相当明显的减小,即近似ISIS的难度基于具有小范数秘密(例如,当秘密是从误差分布采样而得时)的决策性LWE的难度。在下面的定理陈述中,当范数符号应用于分布D时,即||D||,其指示最低值使得Prd←D[||d||<v]>1-negl(λ)。
证明。假设存在分解Approx.ISISn,m,q,α,β的多项式时间对手A,我们建立分解决策性LWE的多项式时间对手B。
||z||≤α且Ax=y+z(modq)。
应注意由于||y||>α,因此x≠0。
替代地,我们还可以证实,近似ISIS问题与标准ISIS一样困难。
定理3.4ISISn,n+m,g,β≥p Approx.ISISn,m,q,α+β,β;
ISISn,n+m,g,α+β≤p Approx.ISISn,m,q,α,β。
证明。减小经历ISIS和近似ISIS问题的HNF。我们将根据参数的恰当设置示出ISIS=HNF.ISIS=HNF.Approx.ISIS=Approx.ISIS。
回顾ISISn,m,q,β=HNF.ISISn,m,q,β,如在序言中所解释。同样,根据定义,对于任何α≥0,HNF.ISISn,m,q,β≥p HNF.Approx.ISISn,m,q,α,β。其仍然示出其余的连接。
引理3.5HNF.ISISn,m,q,a+β≤p HNF.Approx.ISISn,m,q,α,β。
证明。假设存在解决HNF.Approx.ISISn,m,q,α,β的多项式时间算法A,我们建立解决HNF.ISISn,m,q,α+β的多项式时间算法B。给定HNF.ISIS实例y,B将相同实例传到A,得到向量x,使得
[In|A]·x=y+z(modq)。
[In|A]·x′=y(modq),
并且||x′||≤α+β。因此,x′是HNF.ISIS的有效解。
引理3.6 HNF.Approx.ISISn,n+m,q,α,β≤p Approx.ISISn,m,q,α,β。
证明。假设存在解决Approx.ISISn,m,q,α,β的多项式时间算法A,我们建立解决HNF.Approx.ISISn,n+m,q,α,β的多项式时间算法B。给定 为HNF.Approx.ISIS实例,B将y传到A,得到短向量然后是HNF.Approx.ISIS实例的有效解。
引理3.7 HNF.Approx.ISISn,n+m,q,α,β≥p Approx.ISISn,m,q,α+β,β。
证明。假设存在解决HNF.Approx.ISISn,n+m,q,α,β的多项式时间算法A,我们建立解决Approx.ISISn,m,q,α+β,β的多项式时间算法B。给定Approx.ISIS实例B将y作为HNF.Approx.ISIS实例传到A,得到解使得
[In|A]·x=y+z(modq), (1)
其中||x||≤β,||z||≤α。
A·x2=y+z-x1(modq),
因此x2是Approx.ISISn,m,q,α+β,β的有效解。
定理3.4然后遵循上文引理。
以下陈述紧遵循引理3.7的证明。
推论3.8用于[I|A]的(α,β)近似陷门是用于A的(α+β,β)近似陷门。
引理3.9 HNF.Approx.ISISn,n+m,q,α,β≥p Approx.ISISn,m,q,2(α+β),β。
证明。假设存在解决HNF.Approx.ISISn,n+m,q,α,β的多项式时间算法A,我们建立解决Approx.ISISn,m,q,α+β,β的多项式时间算法B。给定Approx.ISIS实例B首先检查是否满足||y||≤α+β。如果满足,则找到y′=:y+Δy使得||y′||>α+β且||y′-y||≤α+β;如果不满足,则简单地设置y′:=y且Δy:=0。然后B将y′作为HNF.Approx.ISIS实例传到A,得到解使得
[In|A]·x=y′+z(modq), (2)
其中||x||≤β,||z||≤α。
A·x2=y+Δy+z-x1(modq),
因此x2是Approx.ISISn,m,q,2(α+β),β的有效解。
IV.近似小工具陷门
我们基于[MP12]的基于小工具的陷门生成和前像采样算法(没有标签矩阵)提出了近似陷门的实例。简单地说,我们示出了如何生成具有条目模数q的伪随机A以及具有小整数条目的近似陷门R。
在此节的其余部分,我们首先从[MP12]回顾精确G-陷门,接着呈现近似陷门生成算法和近似前像采样算法。最后,我们分析前像分布。分析广泛使用定理2.7(离散高斯的线性变换)。
A.从MP12回顾G-陷门
回顾MP12小工具格陷门技术:公共矩阵为
其中G是通常使用的小工具矩阵,并且R是具有小、随机条目的秘密陷门矩阵。A在统计上接近均匀随机或伪随机,这取决于的结构和χ的选择(在伪随机情况下,被选择为使得困难的分布)。本文中,由于所得公共矩阵A和前像具有较小维度,因此我们集中于伪随机情况。
单独使用陷门作为线性变换会泄露有关陷门的信息。因此,我们扰动样本以在统计上隐藏陷门。设∑p为定义为的正定矩阵,其中σ至少为可以将扰动离线计算为然后,我们将取决于p的陪集中的G-格向量采集为且最终,将前像设置为
B.近似G-陷门的算法
如引言中所提及,获得近似陷门的一个目标是使MP12算法与不具有低阶条目的小工具矩阵适应。设0<l<k为从小工具向量删除的低阶条目的数量。将所得近似小工具向量定义为设w=n(k-l)为近似小工具的列数量。然后,A的列数量将为m:=2n+w。
图7示出了用于生成陷门矩阵和验证矩阵以及从高斯小工具格分布对值采样的算法。
1.算法1:从小工具分布进行采样
算法1示出了用于基于从小工具矩阵导出的格从高斯分布对向量进行采样的算法。算法1采用来自的值v(v可以是向量的一个分量)。小工具采样算法还采用σ,其定义分布的宽度。此算法可以由发送装置执行,例如图1的发送装置115。另外,算法1的步骤可以执行为例如图3所述的签名生成过程的一部分。
在步骤702,发送装置可以从向量x删除第一l条目且采取向量x的前一k-l条目作为中间向量z。
在步骤703,采样算法可以返回中间向量z。
2.算法2:生成陷门矩阵
算法2示出了陷门矩阵生成算法。作为输入,此算法采用安全性参数λ。陷门生成可以由生成装置完成,例如图1的生成装置105。另外,算法2的步骤可以执行为例如图2所述的密钥生成过程的一部分。
在生成陷门矩阵之前,生成装置可以生成小工具矩阵G。小工具矩阵G可以是这样的矩阵,其中对于k幂每列包括底数b的升幂的一个值(例如,b=2)。k列可能有n个重复,具有b的升幂,从而产生n×k矩阵。在删除小工具矩阵G的具有k列的每个组的第一l列(具有最小幂的列)之后,生成装置可以接着生成具有维度n×w(其中w=n(k-l))的缩减的小工具矩阵F。关于小工具矩阵和缩减的小工具矩阵的生成的更多细节可见于节II.D中。
3.算法3:生成基于格的签名
算法3示出了签名生成算法。签名生成算法采用验证矩阵A、陷门矩阵R、消息向量u和分布宽度s作为输入。分布宽度s可以通过表1中的公式涉及分布宽度σ。签名生成可以由发送装置完成,例如图1的发送装置115。另外,算法3的步骤可以执行为例如图3所述的签名生成过程的一部分。
在步骤721,生成装置从高斯分布对扰动向量p进行采样。所述扰动向量p具有长度m。选择所述扰动的协方差来隐藏如在精确的基于小工具的陷门中的陷门,即
在步骤722,生成装置可以从消息u、验证矩阵A和扰动向量p形成格向量v。格向量v具有长度n且形成为v=u-Ap。
在步骤723,生成装置可以使用算法1的小工具采样算法对近似小工具前像向量z(即,中间向量)进行采样。小工具采样算法可以对用于格向量v的每个元素的向量z进行采样并将它们串接在一起,因此在总前像向量z中总共有n(k-l)个元素。
在步骤724,生成装置可以形成签名向量y,其是具有长度m=2n+w=2n+n(k-l)的向量。可以将扰动p添加到陷门矩阵R和前像向量x的乘积。陷门矩阵R的维度为2n×w,因此它可以堆叠在w×w单位矩阵上,从而得到2n+w×w矩阵的适当维度。此堆叠乘以长度为w的前像向量z,因此乘积是长度为2n+w=m的向量。
在步骤725,签名生成算法可以返回签名向量y。
此节的结果将在以下定理中进行概括。
定理4.1存在满足以下内容的概率性、多项式时间算法Approx.TrapGen(·)和Approx.SamplePre(·,·,·,·)。
2.设A利用上述近似陷门生成,approx.A-1(·)表示近似前像采样算法Approx.SamplePre(A,R,S,·)。以下两个分布在统计上不可区分:
以及
让我们注意,虽然前像采样算法适用于任何目标我们能够证明近似前像样本陪集对(y,u)隐藏了均匀目标上近似陷门R。这不同于[MP12]中的精确的基于小工具的陷门设置,其证明陷门对于每个固定u是隐藏的。在证明想法的概述中,当我们试图详细说明每一的前像分布时,我们将解释证明分解的情况。
C.分析用于均匀随机目标的前像和误差分布
此子节致力于证明定理4.1。
设表示全小工具矩阵G下的短前像u-Ap(modq),即Gx=u-Ap(modq)。证明的主要思想在于首先证明,对于任何(其是比我们所需的定理更强)算法4中产生的联合分布(p,x)在统计上接近然后将线性变换定理应用于(p,x)上以获得y和e的分布。然而,将线性变换定理直接应用于格陪集上会引起技术问题。也就是说,定理2.7所需的中间格交叉点ΛT具有较大的平滑参数。为了解决此问题,我们使用u是均匀随机的条件来证明(p,x)在统计上接近然后(p,x)的支持是因此我们可以应用线性变换定理来证明y和e的最终分布是与陷门无关的。
正式地,设letε=negl(λ)>0。我们首先证明三个引理。
通过引理4.2对u随机化得出接着,我们应用定理2.7。设Bq=[b1,…,bk]为节2中给定的的底数。然后,通过{b1,…,bl-1,el,…,ek-1}(回顾表示最简洁底数)生成L的核心并且是这些向量的所有整数组合的集合。ΛL涵盖L的核心并且由于对于所有i=1,…,l-1,因此ΛL的平滑参数最多为
设接着,我们分析表示在到的联合分布中截断(如算法1,GSAMP.CUT中)和返回y:=p+R′z的线性转换给定的分布。为简单起见,我们将G的列排为这使得我们能够对于L:=[Im|R′|0]以简单线性变换y=L(p,x)表示截断和卷积。
现在,我们确定ΛL的平滑参数。将nl零列添加到R′,以形成Rnk:=[R′|O]且通过以下方式旋转空间
我们现在准备好证明定理4.1。
应注意,等式u=v+Ap=Gx+Ap=Fz+e+Ap=AL(P,x)+e=Ay+e(modq)适用于所有混合理论。不同之处在于这些向量采样的次序和分布。在除最后一个混合理论之外的所有混合理论中,对于 以形式生成A。
引理4.2表明混合理论1和混合理论2在统计上接近。
引理4.3和4.4表明混合理论3和4在统计上接近。
D.从近似G-陷门到近似核心陷门
所述转换类似于[MP12]中适用于精确陷门的转换。写作A=[A1|A2],其中设为根据公共矩阵F的A1的近似短前像,即F·W=A1+E1(modq)。设为F的近似核心,即F·S=E2(modq)(E1和E2的范数均较小)。然后
因此,K为同时也作为近似陷门的m列(即,小于n+m)的A的近似核心。
V.利用近似陷门的散列和签名签名实例化
我们详细说明了[GPV08]中利用近似G-陷门而不是精确陷门实例化的散列和签名签名方案的细节。
构造5.1考虑到来自定理4.1的近似陷门采样器、建模为随机预言的散列函数H={Hλ:{0,1}*→Rλ},我们如下建立签名方案。
●Sig(R,m):签名算法可以检查之前是否已产生消息签名对(m,xm)。如果已产生,所述算法输出xm作为m的签名;如果未产生,则计算u=H(m),并且对近似前像xm←Approx.SamplePre(A,R,u,s)进行采样。所述算法输出xm作为签名并且将(m,xm)存储在表格中。
●Ver(A,m,x):验证算法检查是否满足||x||≤β和||A·x-H(m)||≤α。如果满足,所述算法输出接受,否则所述算法输出拒绝。
我们提供签名的概念证明实施方案。实施例可以使用利用不同维度n、模数q、底数b、以不同安全性级别(主要为约100位和192位安全性)的若干参数组。在每个参数组中,我们使用固定n、q、b,并且(根据我们的参考实施方案)比较精确陷门与近似陷门的使用。在图8和图9中,列出6个参数组。
我们首先解释我们如何进行安全性估计。对基于格的密码原语的具体安全性估计是非常活跃的研究领域,并且最近提出了更复杂的方法。这里我们使用相对简单的方法来估计公钥的伪随机性(以下称为“LWE安全性”),以及破解近似ISIS的难度(以下称为“AISIS安全性”)。让我们注意,我们的估计可能无法反映最新技术,但至少提供了精确陷门与近似陷门的参数的公平比较。
LWE安全性取决于对q、n以及陷门R的高斯宽度τ的选择。LWE安全性的估计是使用在线LWE位安全性估计器以BKZ作为缩减模型1[ACD+18]完成的。
对于近似ISIS问题,我们知道的唯一直接的密码分析结果是Bai等人的研究[BGLS19],但它并不明确适用于我们感兴趣的参数。替代地,我们按照引理3.5中的缩减通过ISISn,m,q,α+β来估计AISIS,其中α和β是误差z和前像x的l2范数的上限。我们基于BKZ在长度为α+β的格中寻找向量所需的运算次数来估计ISISn,m,q,α+β的安全性级别。另外,我们可以在A中丢弃列。我们选择只使用[BFRS18]中所完成的A的2n列,表示为A2n,这是因为Minkowski定理告诉我们具有足够短的向量。按照[APS15,ACD+18],我们使用筛选作为块大小为k的具有时间复杂性2.292k+16.4的SVP预言。对于维度为2n的格,期望BKZ返回长度为δ2ndet1/2n的向量。因此,我们发现获得对应于伪造签名的所需δ的最小块大小k。最后,我们使用启发式方法来确定k与δ之间的关系,并且我们将块大小为k、维度为2n的BKZ的总时间复杂性设置为 [Che13,APS15]。
对于100位安全性的估计,我们用于精确陷门、根据模数q≈224和底数b=2的参考实施方案匹配[BB13]中报告的参数(可以不同方式测量其它实施方案[BFRS18,GPR+18]中的参数)。我们还使用较小模数和较大底数来减小大小并增大安全性级别。图8和图9中的参数表明,对于q和b的所有选择,通过设置使用近似小工具陷门与使用精确陷门相比节省了大约一半的公钥和签名大小,甚至安全性估计也略有增加。
我们的实施方案展示了,对于100位安全性的估计,公钥和签名的大小可以减小到5kB和4.45kB,对于192位安全性的估计,公钥和签名的大小可以减小到11.25kB和9.38kB。所述减小到的大小仍大于、但更接近基于拒绝采样方法[Lyu12,BG14,DKL+18,ABB+19]的签名的大小。作为参考,对于128位安全性的估计,用于qTESLA[ABB+19]的公钥和签名的大小为4.03kB和3.05kB,并且对于192位安全性,所述公钥和签名的大小为8.03kB和6.03kB。
在安全性分析中,我们使用以下关于定理4.1中证明的Approx.SamplePre产生的分布的性质:
1.均匀随机图像的近似前像在统计上接近与A和R无关的分布Dpre。
2.对于均匀随机图像,误差向量e:=u-Ay(mod q)在统计上接近也与A和R无关的分布Dpre。
为了证明签名满足强EU-CMA安全性,我们可以在标准SIS假设的基础上,利用Ajtai函数的额外的“近抗碰撞性”性质。让我们注意,如果没有此性质,我们仍然可以基于近似ISIS问题的难度来证明签名方案满足静态安全性。
||x1||≤β且||x2||≤β且||Ax1-Ax2(mod q)||≤2α
||x1||≤β且||x2||≤β且||y:=Ax1-Ax2(mod q)||≤2α
证明。正确性遵循近似陷门的功能性。
一开始,B将Ajtai函数A发送给A作为签名方案的公钥。一旦A进行关于消息m的随机预言查询,B就对y←Dpre进行采样、计算u:=Ay+Derr(modq)作为关于m的随机预言响应。B然后向A回复u并将(m,u)存储在随机预言存储区中、将(m,y)存储在消息-签名对存储区中。一旦A对消息m进行签名查询(不妨假设之前已向随机预言查询m,因为如果并非如此,则B现在可以查询它),B在存储区中寻找(m,y)并且回复y作为签名。由于分布Dpre和Derr的性质以及在下真实公钥与随机不可区分的假设,B产生的签名和散列输出与真实的签名和散列输出是不可区分的。
在不失一般性的情况下,假设在A尝试伪造关于m*的签名之前,A已经查询关于m*的H。将B制备且存储在随机预言存储区中的对表示为(m*,u*),并且将签名存储区中的对表示为(m*,y*)。最后,A输出y作为关于m*的伪造签名。因此,我们具有||A(y-y*)(modq)||≤2α。仍要证明y≠y*,以便将它们用作近碰撞对。如果之前已向签名预言查询m*,则y≠y*定义为成功伪造;如果之前未向签名预言查询m*,则y*通过参数设置而具有最小熵,因此y≠y*的可能性极大。
VI.计算机系统
本文中提及的任何计算机系统都可利用任何合适数目个子系统。图10中示出计算机设备700中的此类子系统的实例。在一些实施例中,计算机系统包括单个计算机设备,其中子系统可以是计算机设备的组件。在其它实施例中,计算机系统可以包括多个计算机设备,每个计算机设备都是具有内部组件的子系统。计算机系统可以包括台式计算机和笔记本电脑、平板计算机、移动电话和其它移动装置。
图10中示出的子系统经由系统总线75互连。示出了额外子系统,例如打印机74、键盘78、存储装置79、耦合到显示适配器82的监视器76等。耦合到输入/输出(I/O)控制器71的外围装置和I/O装置可以通过本领域中已知的各种装置连接到计算机系统,所述装置例如是输入/输出(I/O)端口77(例如USB、)。例如,I/O端口77或外部接口81(例如以太网、Wi-Fi等)可以用于将计算机系统10连接到广域网,如因特网、鼠标输入装置或扫描仪。经由系统总线75的互连允许中央处理器73与每个子系统连通且控制来自系统存储器72或存储装置79(例如固定磁盘,如硬盘驱动器或光盘)的多个指令的执行,以及子系统之间的信息交换。系统存储器72和/或存储装置79可以体现计算机可读介质。另一子系统是数据收集装置85,例如照相机、麦克风、加速度计等。在本文中提及的任何数据可从一个组件输出到另一组件并且可输出到用户。
计算机系统可以包括多个相同组件或子系统,所述组件或子系统例如通过外部接口81、通过内部接口或经由可移除存储装置连接在一起,所述可移除存储装置可从一个组件连接和移除到另一组件。在一些实施例中,计算机系统、子系统或设备可通过网络通信。在此类情况下,一个计算机可以被视为客户端,且另一计算机可以被视为服务器,其中每台计算机可以是同一计算机系统的部分。客户端和服务器可以各自包括多个系统、子系统或组件。
实施例的各个方面可以使用硬件电路(例如,专用集成电路或现场可编程门阵列)和/或以模块化或集成方式借助大体上可编程处理器使用计算机软件以控制逻辑的形式实施。如本文所使用,处理器可以包括单核处理器、在同一集成芯片上的多核处理器,或在单个电路板上或联网的多个处理单元,以及专用硬件。基于本文中提供的公开内容和教示,本领域普通技术人员将知道并了解到使用硬件及硬件和软件的组合实施本发明的实施例的其它方式和/或方法。
本申请中描述的任何软件组件或功能可实施为使用例如Java、C、C++、C#、Objective-C、Swift的任何合适的计算机语言或例如Perl或Python的脚本语言使用例如常规的或面向对象的技术由处理器执行的软件代码。软件代码可以作为一系列指令或命令存储在计算机可读介质上以进行存储和/或发送。合适的非瞬态计算机可读介质可以包括随机存取存储器(RAM)、只读存储器(ROM)、硬盘驱动器等磁性介质、或光盘(CD)或数字通用光盘(DVD)等光学介质、快闪存储器等。计算机可读介质可以是此类存储或发送装置的任何组合。
此类程序也可以使用载波信号来编码和发送,所述载波信号适合于经由符合多种协议的有线、光学和/或无线网络来发送,包括因特网。因此,可以使用以此类程序编码的数据信号来创建计算机可读介质。以程序代码编码的计算机可读介质可与兼容装置一起封装或与其它装置分开提供(例如,通过因特网下载)。任何此类计算机可读介质可以驻存在单个计算机产品(例如,硬盘驱动器,CD或整个计算机系统)之上或其内部,并且可以存在于系统或网络内的不同计算机产品上或其内部。计算机系统可以包括用于向用户提供本文中提及的任何结果的监视器、打印机或其它合适显示器。
本文所描述的任何方法可完全或部分地通过计算机系统执行,所述计算机系统包括可被配置以执行所述步骤的一个或多个处理器。因此,实施例可以涉及配置成执行本文中所描述的任何方法的步骤、可能具有执行相应步骤或相应步骤群组的不同组件的计算机系统。尽管以编号的步骤呈现,但是本文中的方法步骤也可以同时执行或以不同的次序执行。另外,这些步骤的部分可与来自其它方法的其它步骤的部分一起使用。同样,一个步骤的全部或部分可以是可选的。另外,任何方法的任何步骤可以用模块、电路或用于执行这些步骤的其它手段来执行。
特定实施例的具体细节可按任何适合的方式组合而不脱离本发明实施例的精神和范围。然而,本发明的其它实施例可以涉及与每个个别方面或这些个别方面的特定组合相关的特定实施例。
上文对本发明的示例性实施方案的描述已经出于说明和描述的目的呈现。不旨在是详尽的,或将本发明局限到描述的精确形式,根据上文的教导许多修改和变形是可能的。选择和描述这些实施方案是为了最好地解释本发明的原理及其实际应用,从而使本领域的技术人员能够在各种实施方案中最好地利用本发明,并且进行适合于预期的特定用途的各种修改。
除非明确指示有相反的意思,否则叙述“一个/种”或“该/所述”旨在表示“一个/种或多个/种”。除非明确指示为相反情况,否则“或”的使用旨在表示“包括性的或”,而不是“排除性的或”。
本文中提及的所有专利、专利申请、公开和描述出于所有目的以引用方式全部并入本文。并非承认它们是现有技术。
VII.参考文献
[Ajt96]Miklós Ajtai.生成格问题的困难实例(扩展摘要)。STOC,第99-108页,1996。
[Ajt99]Miklós Ajtai.生成短基问题的困难实例。编者Jir Wiedermann、Petervan Emde Boas和Mogens Nielsen,1999年7月11-15日在捷克共和国布拉格召开的ICALP'99,第26届国际学术研讨会“自动化、语言和编程”,会议报告记录,LNCS第1644卷,第1-9页。Springer,1999。
[AAAS+19]Gorjan Alagic、Gorjan Alagic、Jacob Alperin-Sheriff、DanielApon、David Cooper、Quynh Dang、Yi-Kai Liu、Carl Miller、Dustin Moody、Rene Peralta等人,“关于第一轮NIST后量子密码标准化进程的状态报告”(Status Report on theFirst Round of the NIST Post-Quantum Cryptography Standardization Process)。美国商务部,美国国家标准与技术研究院,2019。
[APS15]Martin R.Albrecht、Rachel Player和Sam Scott。论容错学习的具体难度。“数学密码杂志(J.Mathematical Cryptology)”,9(3):169-203,2015。
[ACD+18]Martin R.Albrecht、Benjamin R.Curtis、Amit Deo、Alex Davidson、Rachel Player、Eamonn W.Postlethwaite、Fernando Virdia和Thomas Wunderer。估计所有{LWE,NTRU}方案!2018年9月5-7日在意大利阿马尔菲召开的SCN 2018,第11届国际会议--网络安全性与密码学,会议报告记录,第351-367页,2018。
[ABB+19]Erdem Alkim、Paulo S.L.M.Barreto、Nina Bindel、Patrick Longa和Jefferson E.Ricardini。基于格的数据签名方案qtesla(lattice-based digitalsignature scheme qtesla)。IACR密码研究预印本(IACR Cryptology ePrint Archive),2019:85,2019。
[ACPS09]Benny Applebaum、David Cash、Chris Peikert和Amit Sahai。快捷密码源于和基于困难学习问题的循环安全加密。编者Shai Halevi,2009年8月16-20日在美国加利福尼亚州圣塔芭芭拉市召开的第29届国际密码会议年会,密码学进展-CRYPTO 2009。会议报告记录,LNCS第5677卷,第595-618页。Springer,2009。
[BGLS19]Shi Bai、Steven D.Galbraith、Liangze Li和Daniel Sheffield。用于非齐次短整数解问题的改进组合算法。密码学杂志(J.Cryptology),32(1):35-83,2019。
[BB13]Rachid El Bansarkhani和Johannes A.Buchmann。基于格的签名方案的改进和高效实施方案。密码术的选定区,计算机科学讲义第8282卷,第48-67页。Springer,2013。
[BFRS18]Pauline Bert、Pierre-Alain Fouque、Adeline Roux-Langlois和Mohamed Sabt。基于环-sis/lwe的签名和IBE的实际实施方案。PQCrypto,计算机科学讲义第10786卷,第271-291页。Springer,2018。
[CC17]Ran Canetti和Yilei Chen。来自LWE的nc1的约束条件隐藏约束prf。EUROCRYPT(1),计算机科学讲义第10210卷,第446-476页,2017。
[Che13]Yuanmi Chen。全同态加密的网络与具体安全性降低(R′eduction de r′eseau et s′ecurit′e concr′ete du chiffrement compl′etement homomorphe)。博士论文,巴黎,7月,2013。
[dPLS18]del Pino、Vadim Lyubashevsky和Gregor Seiler。基于格的群签名和对自同构稳定性的零知识证明。2018年10月15-19日在加拿大多伦多召开的2018ACMSIGSAC计算机和通信安全会议的会议报告记录,CCS 2018,第574-591页,2018。
[DKL+18]L′eo Ducas、Eike Kiltz、Tancr`ede Lepoint、Vadim Lyubashevsky、Peter Schwabe、Gregor Seiler和Damien Stehl′e。晶体双锂:基于格的数字签名方案。IACR转换密码硬件嵌入式系统(Trans.Cryptogr.Hardw.Embed.Syst.),2018(1):238-268,2018。
[FHK+18]Pierre-Alain Fouque、Jeffrey Hoffstein、Paul Kirchner、VadimLyubashevsky、Thomas Pornin、Thomas Prest、Thomas Ricosset、Gregor Seiler、WilliamWhyte和Zhenfei Zhang。Falcon:ntru上快速傅里叶基于格的紧致签名(Fast-fourierlattice-based compact signatures over ntru),2018。
[Gen09]Craig Gentry。使用理想格的全同态加密。STOC,第169-178页,2009。
[GGH97]Oded Goldreich、Shafi Goldwasser和Shai Halevi。源自格缩减问题的公钥密码体制。1997年8月17-21日在美国加利福尼亚州圣塔芭芭拉市召开的第17届国际密码会议年会,密码学进展-CRYPTO'97,会议报告记录,第112-131页,1997。
[GGH15]Craig Gentry、Sergey Gorbunov和Shai Halevi。源自格的图诱导多线性映射。2015年3月23-25日在波兰华沙举行的TCC 2015,密码学理论-第12届密码学理论会议,第II部分,第498-527页,2015。
[GKW17]Rishab Goyal、Venkata Koppula和Brent Waters。可锁定混淆。FOCS,第612-621页,IEEE计算机学会,2017。
[GPV08]Craig Gentry、Chris Peikert和Vinod Vaikuntanathan。用于硬格的陷门和新密码构造。STOC,第197-206页,2008。
[GS02]Craig Gentry和Mike Szydlo。修改后的ntru签名方案的密码分析。关于密码技术的理论和应用的国际会议,第299-320页。Springer,2002。
[GVW13]Sergey Gorbunov、Vinod Vaikuntanathan和Hoeteck Wee。用于电路的基于属性的加密。STOC,第545-554页。ACM,2013。
[HHSS17]Shai Halevi、Tzipora Halevi、Victor Shoup和Noah Stephens-Davidowitz。使用图诱导编码实施bp混淆。关于计算机和通信安全的ACM会议,第783-798页。ACM,2017。
[Lyu12]Vadim Lyubashevsky。不具有陷门的格签名。EUROCRYPT,计算机科学讲义第7237卷,第738-755页。Springer,2012。
[MP12]Daniele Micciancio和Chris Peikert。用于格的陷门:更简单、更紧密、更快、更小。2012年4月15-19日在英国剑桥召开的关于密码技术的理论和应用的第31届国际会议年会,密码学进展-EUROCRYPT 2012。会议报告记录,第700-718页,2012。
[MR07]Daniele Micciancio和Oded Regev。基于高斯测量的最坏情况到平均情况减少。SIAM计算杂志(SIAM Journal on Computing),37(1):267-302,2007 2007
[PR06]Chris Peikert和Alon Rosen。基于环状格的最坏情况假设的高效抗碰撞散列。密码学理论,第145-166页。Springer,2006。
[Reg09]Oded Regev。论格、容错学习、随机线性编码和密码。J.ACM,56(6),2009。
[SSTX09]Damien Stehlé、Ron Steinfeld、Keisuke Tanaka和Keita Xagawa。基于理想格的高效公钥加密。关于密码的理论和应用以及信息安全的国际会议,第617-635页。Springer,2009。
Claims (33)
1.一种用以验证数字签名的方法,所述方法包括由生成装置执行以下操作:
生成小工具矩阵G,其中所述小工具矩阵G的列包括底数b的升幂;
生成缩减的小工具矩阵F,其中所述缩减的小工具矩阵F是通过删除所述小工具矩阵G的l个列而生成的;
对概率分布进行采样以形成陷门矩阵R,其中所述陷门矩阵充当秘密密钥以用于生成数字签名;
使用所述缩减的小工具矩阵F和所述陷门矩阵R生成验证矩阵A;以及
将所述验证矩阵A发送给验证装置,使得所述验证装置使用所述陷门矩阵R验证由发送装置生成的所述数字签名。
2.根据权利要求1所述的方法,其中所述小工具矩阵G的所述底数b为2。
3.根据权利要求1所述的方法,其中所述陷门矩阵R是从高斯分布采样的。
5.根据权利要求1所述的方法,其中对于模数q,l在0到(logbq)/2的范围内,并且其中所述模数q介于216与224之间。
6.根据权利要求1所述的方法,其中所述小工具矩阵G包括具有所述底数b的升幂的k列的n个重复,并且其中生成所述缩减的小工具矩阵F进一步包括从所述小工具矩阵G的每一组k个列删除具有所述底数b的最小幂的所述l个列。
7.根据权利要求1所述的方法,其中所述分布是高斯分布。
8.根据权利要求1所述的方法,其中所述验证矩阵A被发送给所述发送装置。
9.根据权利要求1所述的方法,其中所述验证矩阵A是公共的。
10.一种方法,其包括由发送装置执行以下操作:
接收消息m;
存储验证矩阵A和陷门矩阵R,其中所述陷门矩阵是通过对概率分布进行采样而生成的;
通过以下步骤生成签名向量x:(1)使用所述验证矩阵A以形成格向量v,(2)基于所述格向量v对来自分布的中间向量z进行采样,并且(3)根据所述中间向量z和所述陷门矩阵R的乘积形成所述签名向量x,使得所述签名向量x对于所述消息m、模数q和误差向量e的散列h(m)满足关系Ax=h(m)+e mod q;以及
将所述消息m和所述签名向量x发送给验证装置,其中所述验证装置存储所述验证矩阵A以用于验证所述签名向量x是由所述发送装置生成的。
12.根据权利要求11所述的方法,其中所述概率分布是高斯分布。
13.根据权利要求10所述的方法,其中所述模数q介于216与224之间。
14.根据权利要求10所述的方法,其中所述签名向量x是基于所述误差向量e的大小小于阈值而验证的。
15.根据权利要求14所述的方法,其中所述阈值是所述散列h(m)的维度。
16.根据权利要求15所述的方法,其中对于所述模数q,所述阈值为q/4。
17.根据权利要求14所述的方法,其中所述误差向量e的大小是所述误差向量e的欧几里得长度。
18.根据权利要求10所述的方法,其中所述发送装置从生成装置接收所述验证矩阵A。
19.根据权利要求10所述的方法,其中所述发送装置将所述散列h(m)发送给所述验证装置。
20.一种用于认证发送装置的方法,所述方法包括由验证装置执行以下操作:
存储验证矩阵A;
从所述发送装置接收消息m和签名向量x;
通过对于消息m和模数q的散列h(m)求解等式Ax=h(m)+e mod q来计算误差向量e;
量化所述误差向量e的大小;
将所述大小与阈值进行比较;以及
基于所述误差向量e的所述大小小于所述阈值而验证所述签名向量x。
21.根据权利要求20所述的方法,其中所述阈值是所述散列h(m)的维度。
22.根据权利要求20所述的方法,其中对于所述模数q,所述阈值为q/4。
23.根据权利要求20所述的方法,其中所述模数q介于216与224之间。
24.根据权利要求20所述的方法,其进一步包括从所述发送装置接收所述散列h(m)。
25.根据权利要求20所述的方法,其进一步包括通过将散列函数应用于所述消息m来生成所述散列h(m)。
26.根据权利要求20所述的方法,其中所述验证矩阵A是从所述发送装置接收到的。
27.根据权利要求20所述的方法,其中所述验证矩阵A是从生成装置接收到的,并且其中所述生成装置生成所述验证矩阵A。
28.根据权利要求20所述的方法,其中量化所述误差向量e的所述大小包括计算所述误差向量e的欧几里得长度。
29.一种包括计算机可读介质的计算机产品,所述计算机可读介质存储多个指令以用于控制计算机系统执行前述权利要求中任一项所述的方法。
30.一种系统,包括:
根据权利要求29所述的计算机产品;以及
一个或多个处理器,用于执行存储在所述计算机可读介质上的指令。
31.一种系统,其包括用于执行上述任何方法的装置。
32.一种系统,其包括被配置成执行上述任何方法的一个或多个处理器。
33.一种系统,其包括分别执行上述任何方法的步骤的模块。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962803325P | 2019-02-08 | 2019-02-08 | |
US62/803,325 | 2019-02-08 | ||
PCT/US2019/044753 WO2020162973A1 (en) | 2019-02-08 | 2019-08-01 | More efficient post-quantum signatures |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113424492A true CN113424492A (zh) | 2021-09-21 |
CN113424492B CN113424492B (zh) | 2023-01-24 |
Family
ID=71948255
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980091523.2A Active CN113424492B (zh) | 2019-02-08 | 2019-08-01 | 用以验证数字签名的系统和方法 |
Country Status (7)
Country | Link |
---|---|
US (2) | US11563586B2 (zh) |
EP (1) | EP3921974A4 (zh) |
JP (1) | JP7147073B2 (zh) |
CN (1) | CN113424492B (zh) |
CA (2) | CA3199161A1 (zh) |
SG (1) | SG11202108410PA (zh) |
WO (1) | WO2020162973A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102418016B1 (ko) * | 2019-11-28 | 2022-07-07 | 서울대학교산학협력단 | 래티스를 기반으로 하는 신원 기반 암호화 방법 |
WO2022071889A1 (en) * | 2020-10-01 | 2022-04-07 | Singapore University Of Technology And Design | Methods and apparatus for message authentication |
CN112468292B (zh) * | 2020-11-16 | 2022-09-23 | 南京大学 | 一种量子数字签名方法及系统 |
CN113407976B (zh) * | 2021-07-20 | 2022-08-02 | 北京百度网讯科技有限公司 | 数字签名方法、签名信息的验证方法、相关装置及电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104038347A (zh) * | 2014-06-30 | 2014-09-10 | 西安电子科技大学 | 基于高斯抽样的签名验证方法 |
US20170366358A1 (en) * | 2016-06-16 | 2017-12-21 | International Business Machines Corporation | Authentication Via Group Signatures |
KR101864932B1 (ko) * | 2016-06-09 | 2018-06-07 | 한국과학기술원 | 클라우드 환경에서 그룹 서명자용 래티스 기반 선형 준동형 서명 방법 및 장치 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8861716B2 (en) | 2010-03-30 | 2014-10-14 | International Business Machines Corporation | Efficient homomorphic encryption scheme for bilinear forms |
US20150326392A1 (en) * | 2014-05-06 | 2015-11-12 | Cavalry Storage, Inc. | Matrix-based cryptosystem |
CN104052607B (zh) * | 2014-06-30 | 2018-03-06 | 西安电子科技大学 | 基于非球面高斯抽样的签名验证方法 |
US10129029B2 (en) | 2016-06-16 | 2018-11-13 | International Business Machines Corporation | Proofs of plaintext knowledge and group signatures incorporating same |
KR101837338B1 (ko) * | 2017-02-16 | 2018-03-09 | 한양대학교 에리카산학협력단 | Vanet을 위한 클라우드 지원 조건부 프라이버시를 보호하는 인증 방법 및 시스템 |
-
2019
- 2019-08-01 CA CA3199161A patent/CA3199161A1/en active Pending
- 2019-08-01 SG SG11202108410PA patent/SG11202108410PA/en unknown
- 2019-08-01 JP JP2021546215A patent/JP7147073B2/ja active Active
- 2019-08-01 WO PCT/US2019/044753 patent/WO2020162973A1/en unknown
- 2019-08-01 CA CA3129118A patent/CA3129118C/en active Active
- 2019-08-01 CN CN201980091523.2A patent/CN113424492B/zh active Active
- 2019-08-01 EP EP19914310.8A patent/EP3921974A4/en active Pending
- 2019-08-01 US US17/429,317 patent/US11563586B2/en active Active
-
2022
- 2022-12-15 US US18/066,732 patent/US20230124617A1/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104038347A (zh) * | 2014-06-30 | 2014-09-10 | 西安电子科技大学 | 基于高斯抽样的签名验证方法 |
KR101864932B1 (ko) * | 2016-06-09 | 2018-06-07 | 한국과학기술원 | 클라우드 환경에서 그룹 서명자용 래티스 기반 선형 준동형 서명 방법 및 장치 |
US20170366358A1 (en) * | 2016-06-16 | 2017-12-21 | International Business Machines Corporation | Authentication Via Group Signatures |
Non-Patent Citations (2)
Title |
---|
DANIELE MICCIANCIO等: "Trapdoors for Lattices:Simpler, Tighter, Faster, Smaller", 《EUROCRYPT 2012》 * |
NICHOLAS GENISE等: "《Faster Gaussian Sampling for Trapdoor Lattices with Arbitrary Modulus》", 《EUROCRYPT 2018》 * |
Also Published As
Publication number | Publication date |
---|---|
JP7147073B2 (ja) | 2022-10-04 |
EP3921974A1 (en) | 2021-12-15 |
JP2022516381A (ja) | 2022-02-25 |
US20230124617A1 (en) | 2023-04-20 |
EP3921974A4 (en) | 2022-04-06 |
CN113424492B (zh) | 2023-01-24 |
SG11202108410PA (en) | 2021-08-30 |
US11563586B2 (en) | 2023-01-24 |
US20220045865A1 (en) | 2022-02-10 |
CA3129118C (en) | 2023-07-11 |
CA3129118A1 (en) | 2020-08-13 |
CA3199161A1 (en) | 2020-08-13 |
WO2020162973A1 (en) | 2020-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113424492B (zh) | 用以验证数字签名的系统和方法 | |
Liu et al. | An efficient privacy-preserving outsourced calculation toolkit with multiple keys | |
Wang et al. | Privacy-preserving public auditing for data storage security in cloud computing | |
Wang et al. | One-time proxy signature based on quantum cryptography | |
Yasuda et al. | New packing method in somewhat homomorphic encryption and its applications | |
CN109446828B (zh) | 一种安全多方计算方法及装置 | |
Li et al. | Efficient quantum blockchain with a consensus mechanism QDPoS | |
JP6970379B2 (ja) | 事前計算装置、方法、およびプログラム、並びにベクトル乗算装置、および方法 | |
Shang et al. | Full quantum one‐way function for quantum cryptography | |
Yan et al. | Efficient lattice‐based signcryption in standard model | |
Zhang et al. | Practical and efficient attribute-based encryption with constant-size ciphertexts in outsourced verifiable computation | |
Cambou | Password manager combining hashing functions and ternary PUFs | |
CN110266490B (zh) | 云存储数据的关键词密文生成方法及装置 | |
US8036378B2 (en) | System and method of authentication | |
Chand et al. | Digital signature scheme over lattices | |
Wu et al. | Bit-oriented quantum public-key cryptosystem based on bell states | |
Liu et al. | Secure and verifiable outsourcing protocol for non-negative matrix factorisation | |
Koo et al. | Reduction from module-SIS to ring-SIS under norm constraint of ring-SIS | |
Wang et al. | A blockchain consensus protocol based on quantum attack algorithm | |
Wang et al. | NOVA, a noncommutative-ring based unbalanced oil and vinegar signature scheme with key-randomness alignment | |
Silva et al. | A coherence-witnessing game and applications to semi-device-independent quantum key distribution | |
Yan et al. | Pre‐image sample algorithm with irregular Gaussian distribution and construction of identity‐based signature | |
Yang et al. | An Efficient Identity-Based Encryption With Equality Test in Cloud Computing | |
US20230171092A1 (en) | System and Method for Secure Detection of Similarity and Dissimilarity of Events | |
D’Anvers | Design and security analysis of lattice-based post-quantum encryption |
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 |