[发明专利]Dilithium算法的实现方法和装置在审
申请号: | 201911230381.1 | 申请日: | 2019-12-04 |
公开(公告)号: | CN112910649A | 公开(公告)日: | 2021-06-04 |
发明(设计)人: | 程朝辉;周枭淳 | 申请(专利权)人: | 深圳奥联信息安全技术有限公司 |
主分类号: | H04L9/32 | 分类号: | H04L9/32 |
代理公司: | 深圳市智胜联合知识产权代理有限公司 44368 | 代理人: | 齐文剑 |
地址: | 518101 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | dilithium 算法 实现 方法 装置 | ||
本发明揭示了一种Dilithium算法的实现方法和装置,该方法包括:选择Dilithium算法的参数,所述参数包括n、c、k、l、d、ω、η、β、q、γ1、γ2,其中,n=256,c=60,k=5,l=4,d=14,ω=96,η=3,β=175,q为22比特的素数且q=1mod 512;γ1是满足[log2(2(γ1‑β)‑1)]=18,γ2是大于245760且整除(q‑1)的整数;依据所述参数和所述Dilithium算法生成签名密钥对,以及对消息M进行签名。本发明实施例通过选择合适的参数,并利用选择的参数和Dilithium算法生成签名密钥对以及对消息M进行签名,可以在保证安全性的同时减少密钥对长度和签名长度,从而实现Dilithium算法的高效性和安全性。
技术领域
本发明涉及到数据签名领域,特别是涉及到一种Dilithium算法的实现方法和装置。
背景技术
随着量子计算机的发展,传统的数字签名算法如非对称加密算法RSA、基于椭圆曲线数字签名算法ECDSA等面临被破解的风险。Dilithium是一种基于模格的数字签名算法,该算法涉及多个参数,参数的不同选择将对算法的安全性和相关效率有较大影响;现有技术中一般采用随机选择参数的方法,难以确保Dilithium算法的高效性和安全性,虽然现有技术中也有推荐的128量子比特安全的参数,其仍然存在上述问题。
发明内容
鉴于上述问题,本发明提出了一种Dilithium算法的实现方法和装置以便提供克服上述问题或者至少部分地解决上述问题。
为了实现上述发明目的,本发明提出一种Dilithium算法的实现方法,包括:
选择Dilithium算法的参数,所述参数包括n、c、k、l、d、ω、η、β、q、γ1、γ2,其中,n=256,c=60,k=5,l=4,d=14,ω=96,η=3,β=175,q为22比特的素数且q=1 mod 512;γ1满足γ2是大于245760且整除(q-1)的整数;
依据所述参数和所述Dilithium算法生成签名密钥对,以及对消息M进行签名。
可选地,所述q=2101249,所述γ1=131072,所述γ2=262656;或者,所述q=3072001,所述γ1=131072,所述γ2=256000;或者,所述q=3686401,所述γ1=131072,所述γ2=245760;或者,所述q=3870721,所述γ1=131072,所述γ2=258048。
可选地,所述方法还包括:
对接收的消息M和签名进行验签,所述签名采用以上任一示例所述的Dilithium算法的实现方法进行签名。
可选地,所述依据所述参数和所述Dilithium算法生成签名密钥对,以及对消息M进行签名的步骤,包括:
计算ρ←{0,1}256;
计算K←{0,1}256;
计算
计算
计算t:=As1+s2;
计算(t1,t0):=Power2Roundq(t,d);
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳奥联信息安全技术有限公司,未经深圳奥联信息安全技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911230381.1/2.html,转载请声明来源钻瓜专利网。