【技术实现步骤摘要】
基于同态加密的快速模乘运算方法和模乘器
[0001]本专利技术涉及密码学中格密码算法领域,尤其涉及基于同态加密的快速模乘运算方法及架构。
技术介绍
[0002]格密码是一种基于格上困难问题的公钥密码体制。格密码系统中算法的并行度高,效率相对较高,速度也更快,同时具有强安全性保障,能够抵抗量子计算机攻击的“抗量子”密码体系。
[0003]同态加密是一种特殊的加密方式,能够实现密文间的计算功能。同态加密可以实现无密钥方对密文的计算,既可以减少通信代价,也可以提高信息安全性。利用格密码系统,可以构造可行的同态加密系统。为保证良好的加密和计算效果,需要实现大整数模数上的快速模乘计算。
[0004]传统的Barrett模乘等算法,存在下述问题:1)涉及多次高位宽整数的乘法,乘法复杂度较高;2)在特殊数域中算法运行速度较慢。
技术实现思路
[0005]本专利技术目的在于克服现有技术中,整数模乘计算中涉及多次高位宽整数的乘法,乘法计算复杂度高,计算速度慢的问题,提出了基于同态加密的快速模乘运算方法及架构,以 ...
【技术保护点】
【技术特征摘要】
1.一种基于同态加密的快速模乘运算方法,其特征在于,包括如下步骤:步骤1、接收输入的被乘数a、被乘数b、模数Q、指数v1和指数v,其中被乘数a和被乘数b为任意小于模数Q的自然数,模数Q=2
v
‑
k*2
v1
+1;指数v1和指数v均为正整数,且指数v1<指数v;步骤2、计算被乘数a与被乘数b之积,并作为第一计算结果;步骤3、将所述第一计算结果右移v位,得到第二计算结果;步骤4、将模数Q右移v1‑
1位后与第二计算结果相乘,得到的积左移v1‑
1位后加上第二计算结果,获得第三计算结果;步骤5、计算第一计算结果和第二计算结果的差,得到第四计算结果;步骤6、判断所述第四计算结果是否小于模数Q的2倍;若不小于,则将第四计算结果赋值给第一计算结果,转到步骤3;若小于,则继续判断是否小于模数Q;若是,输出第四计算结果;若否,将第四计算结果减去模数Q,然后输出。2.一种基于同态加密的快速模乘运算方法,其特征在于,包括以下步骤:步骤1、输入被乘数a、被乘数b和模数Q,计算被乘数a*b的积,输出第一计算结果r1=a*b;其中,被乘数a和被乘数b可为任意小于模数Q的自然数,模数2
v
‑
k*2
v1
+1,v1和v为指数,只需满足均为正整数且指数v1<指数v的要求;步骤2、将第一计算结果r1右移v位,得到第二计算结果r2=(r1>>v),其中>>表示右移操作;步骤3、计算需要被约减的量,即第三计算结果,第三计算结果r3=(r2*(Q>>(v1‑
...
【专利技术属性】
技术研发人员:李丽,王鑫宇,傅玉祥,邵心语,宋文清,何书专,李伟,
申请(专利权)人:南京大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。