The invention provides an encryption and decryption device and an encryption and decryption method based on universal hash function. The encryption and decryption device includes: a discrete normal distribution generator, a key generator and an encryption/decryption device; the discrete normal distribution generator for generating a normal distribution and obtaining random variables according to the normal distribution; and the key generator for generating private information using at least one general hash function. Key S and public key A; the encryption/decryption device is used to output the encrypted ciphertext according to public key A and the text to be encrypted, or to output the decrypted original text according to private key S and the ciphertext to be decrypted. The invention can greatly reduce the complexity of storage and computation.
【技术实现步骤摘要】
一种加解密装置和基于通用散列函数的加解密方法
本申请涉及数据加解密
,尤其涉及一种加解密装置和基于通用散列函数的加解密方法。
技术介绍
随着互联网技术的蓬勃发展,通讯安全的重要性也与日俱增。在众多场合下,通讯双方都希望在利用公共信道的情况下进行保密通讯。例如,当用户向网上银行提交账号和密码时,用户希望这些信息在传递过程中是保密的,即任何第三方都无法窃听。当前正在被广泛使用的加密方法是公钥加密方法,此类方法的安全性是基于某些数学问题的算法复杂度。然而,随着科技的发展,特别是量子计算机的发展,公钥加密方法的安全性已经受到了威胁。因此,亟需开发更加安全可靠的抗量子计算的加密方法。在拥有量子计算机的条件下依然能够保持安全的密码学方法,即后量子密码学方法,在国内外已经受到广泛的关注。目前,各国政府已经在积极的推进后量子密码方法的标准。后量子密码学主要关注如下的四类方法:基于哈希的(hash-based)密码学方法、基于编码的(code-based)密码学方法、多元的(multivariate)密码学方法和基于格的(lattice-based)密码学方法。其中,当前人们最关注的是基于格的密码学方法。在基于格的密码学方法的具体实现中,其中的一个核心步骤是产生一个很大(例如,10Kbit*10Kbit)的随机矩阵,并用于加密和解密中。因此,这种方法必然引入了大量的存储要求和很高的计算复杂度要求。因此,事实上,存储和计算复杂度已经成为当前的后量子密码方法得到广泛应用的瓶颈。
技术实现思路
有鉴于此,本专利技术提供了一种加解密装置和基于通用散列函数的加解密方法,从而可以大大 ...
【技术保护点】
1.一种加解密装置,其特征在于,该装置包括:离散化的正态分布产生器、密钥生成器和加/解密器;所述离散化的正态分布产生器,用于生成一个正态分布
【技术特征摘要】
1.一种加解密装置,其特征在于,该装置包括:离散化的正态分布产生器、密钥生成器和加/解密器;所述离散化的正态分布产生器,用于生成一个正态分布并根据该正态分布得到随机变量;所述密钥生成器,用于使用至少一个通用散列函数生成私钥S和公钥A;所述加/解密器,用于根据公钥A和需加密的原文输出加密后的密文,或者用于根据私钥S和需解密的密文输出解密后的原文。2.根据权利要求1所述的装置,其特征在于,所述密钥生成器包括:S矩阵生成器、通用散列函数生成器、E矩阵生成器和密钥器;所述S矩阵生成器,用于以均匀分布的方式从整数环Zq上取一个n×l的矩阵,生成S矩阵,并将S矩阵作为私钥S;所述通用散列函数生成器,用于生成一个通用散列函数,并将该通用散列函数作为矩阵;所述E矩阵生成器,用于根据正态分布从整数环Zq上取一个l×m的矩阵,生成E矩阵;所述密钥器,用于根据S矩阵、矩阵和E矩阵计算得到公钥A。3.根据权利要求1所述的装置,其特征在于,所述密钥生成器包括:通用散列函数生成器、矩阵生成器、E矩阵生成器和密钥器;所述通用散列函数生成器,用于生成一个通用散列函数,将该通用散列函数作为S矩阵,并将S矩阵作为私钥S;所述矩阵生成器,用于以均匀分布的方式从整数环Zq上取一个n×m的矩阵,生成矩阵;所述E矩阵生成器,用于根据正态分布从整数环Zq上取一个l×m的矩阵,生成E矩阵;所述密钥器,用于根据S矩阵、矩阵和E矩阵计算得到公钥A。4.根据权利要求1所述的装置,其特征在于,所述密钥生成器包括:S矩阵生成器、矩阵生成器、通用散列函数生成器和密钥器;所述S矩阵生成器,用于以均匀分布的方式从整数环Zq上取一个n×l的矩阵,生成S矩阵,并将S矩阵作为私钥S;所述矩阵生成器,用于以均匀分布的方式从整数环Zq上取一个n×m的矩阵,生成矩阵;所述通用散列函数生成器,用于生成一个通用散列函数,将该通用散列函数作为E矩阵;所述密钥器,用于根据S矩阵、矩阵和E矩阵计算得到公钥A。5.根据权利要求1所述的装置,其特征在于,所述密钥生成器包括:S矩阵生成器、第一通用散列函数生成器、第二通用散列函数生成器和密钥器;所述S矩阵生成器,用于以均匀分布的方式从整数环Zq上取一个n×l的矩阵,生成S矩阵,并将S矩阵作为私钥S;所述第一通用散列函数生成器,用于生成第一通用散列函数,并将所述第一通用散列函数作为矩阵;所述第二通用散列函数生成器,用于生成第二通用散列函数,将所述第二通用散列函数作为E矩阵;所述密钥器,用于根据S矩阵、矩阵和E矩阵计算得到公钥A。6.根据权利要求1所述的装置,其特征在于,所述密钥生成器包括:第三通用散列函数生成器、第一通用散列函数生成器、第二通用散列函数生成器和密钥器;所述第三通用散列函数生成器,用于生成第三通用散列函数,并将所述第三通用散列函数作为S矩阵,并将S矩阵作为私钥S;所述第一通用散列函数生成器,用于生成第一通用散列函数,并将所述第一通用散列函数作为矩阵;所述第二通用散列函数生成器,用于生成第二通用散列函数,将所述第二通用散列函数作为E矩阵;所述密钥器,用于根据S矩阵、矩阵和E矩阵计算得到公钥A。7.一种基于通用散列函数的加解密方法,其特征在于,该方法包括:使用离散化的正态分布产生器生成一个正态分布并根据该正态分布得到随机变量;在密钥生成器中使用至少一个通用散列函数进行计算,生成私钥S和公钥A;将公钥A和需加密的原文输入加密器中,输出加密后的密文;或者,将私钥S和需解密的密文输入解密器中,输出解密后的原文。8.根据权利要求7所述的方法,其特征在于,所述使用离散化的正态分布产生器生成一个正态分布并根据该正态分布得到随机变量包括:使用离散化的正态分布产生器生成一个均值为0且标准差为并以q为参数离散化的正态分布从正态分布取出随机变量x;对随机变量x与1进行取模操作,得到余数r;对余数r与q的乘积进行取整操作,得到随机变量。9.根据权利要求7所述的方法,其特征在于,所述在密钥生成器中使用至少一个通用散列函数进行计算,生成私钥S和公钥...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。