改进的滑动窗口模幂计算方法

文档序号:7821818阅读:1178来源:国知局
改进的滑动窗口模幂计算方法
【专利摘要】本发明涉及密码学、信息安全领域,为提出一种提高效率的预计算方法,能够有效降低滑动窗口算法的计算复杂度,为此,本发明采取的技术方案是,改进的滑动窗口模幂计算方法,包括如下步骤:首先需要确定一个最大窗口长度d,窗口定义为对数字按位进行划分的分组,每个分组的位数不大于d,然后根据具体策略将指数e划分为零窗口与非零窗口;计算时扫描指数遇到零窗口则进行模平方操作,遇到非零窗口先进行模平方操作,再从预计算存储值中获取相应模幂值进行模乘操作。本发明主要应用于数据处理及机要通信。
【专利说明】改进的滑动窗口模幂计算方法

【技术领域】
[0001] 本发明涉及密码学、信息安全领域;主要用于提高公钥密码体系中大数模幂计算 的计算效率。具体讲,涉及改进的滑动窗口模幂计算方法。 技术背景
[0002] 公钥密码体制是目前应用非常广泛的一种密码体制。在信息系统安全中,特别是 在数字签名、认证和密钥分配与管理中,公钥密码都扮演着必不可少的角色。公钥密码体 制的产生源自对称密码中存在的两个问题。第一个是密钥的分配问题,对称密码需要通信 双方共享同一个密钥,而且需要一个密钥分配中心,第二个就是数字签名的问题。Diffie和 Heilman于1976年提出了一种思想从根本上异于之前的所有密码体制。
[0003] 公钥密码体制属于非对称密码,依赖于一个加密密钥和一个不同的解密密钥。一 个完整的公钥密码体制加解密过程大致包含六个要素:公钥、私钥、加密算法、解密算法、明 文、密文。
[0004] 在这种密码体制中,所有用户都可以获得其他用户的公钥,而每个用户各自产生 并保留私钥,不需同特定用户共享。用户保持私钥的安全性,那么信息的交换都是安全的。 用户可以随时更换私钥,只需将更换后伴随产生的公钥分发替换旧的公钥。
[0005]Diffie和Heilman提出的这种新的密码思想使得密码学家们竞相提出了许多算 法试图满足公钥密码体制的性质,但是其中的很多算法都是不健全的。1977年,MIT的三 位科学家RonRivest、AdiShamir和LenAdleman提出了以他们三人姓氏首字母命名的 算法--RSA算法,并于1978年发表。RSA算法是目前应用最为广泛的公钥密码方案之一, 也是第一个能同时用于信息加解密与数字签名的算法。RSA算法的安全性基于这样一个事 实--计算两个大质数的乘积十分容易,而将两个大质数的乘积进行因数分解十分困难。 也就是说,如果一个大数只包含两个大的质因数,那么对其进行因数分解将十分困难。但由 于公钥密码在加解密时所进行的模幂计算运算复杂,速度缓慢,而公钥密码加解密算法的 速度主要取决于模幂与模乘算法的效率高低,这就使得模幂算法的计算效率成为了公钥密 码体系的瓶颈,因此如何实现快速的模幂算法是密码学界普遍关注的问题。
[0006] 模幂的研究对象是:假设N、M、e都为k位的二进制大整数,k很大(如k>256) 时,快速计算:

【权利要求】
1. 一种改进的滑动窗口模幕计算方法,其特征是,包括如下步骤:首先需要确定一个 最大窗口长度d,然后根据具体策略将指数e划分为零窗口序列Zi,…,Zi与非零窗口序列 计算时扫描指数遇到零窗口则进行模平方操作,遇到非零窗口先进行模平方操 作,再从预计算存储值中获取相应模幕值进行模乘操作;其中,给出滑动窗口法的窗口划分 策略具体为;用ZW表示零窗口,NW表示非零窗口,窗口长度设定为d : 初始状态S为ZW : 当S = ZW时,扫描第1位,若是0,归入ZW,S = ZW ;若是1,归入新的NW,S = NW ; 当S = NW时,扫描d-1位,将本NW结束在最后一位非零位设为i位,本次扫描的i+1 至d-1位归入ZW,S = ZW。
2. 如权利要求1所述的改进的滑动窗口模幕计算方法,其特征是,所述改进的滑动窗 口模幕计算方法进一步细化为: 输入;M、e、n、d ; 输出;C = ]\r mod n ; 其中,M代表要发送的消息,用二进制数字表示,e表示指数,n表示模数,d表示滑动窗 口的最大长度,C为计算结果,mod代表模运算,即求M6除W n所得的余数; (1) 将滑动窗口的最大长度设置为d ; (2) 根据W下策略由左至右划分指数e : (2. 1)初始状态S为零窗口状态用ZW表示,非零窗口状态用NW表示; (2.。当S = ZW时,扫描1位,若是0,归入ZW,S = ZW ;若是1,归入新的NW,S = NW ; (2. 3)当S = NW时,向后扫描d-1位,并向前回溯至第一个非零位,设为i,将本次扫描 的第1位至第i位(包括i)归入当前的NW,将第i+1至d-1位归入ZW,S = ZW ; (2. 4)循环化2)和(2. 3),直到扫描完指数e的所有位,最终得到非零窗口F,,… ,Fs,和零窗口 Zi,Z2,…,Zk,其中S得到的表示扫描非零窗口的数量,k表示扫描得到的零窗 口的数量; (3) 根据W下策略对非零窗口进行预计算,得出加法链: (3. 1)对F2,…,F杰升序排列且每个值只记一次,得到序列W。= W。1,"。2,…,Wm; (3. 2)保存 a〇= W M,计算 t〇= W 若t〇已在W〇中出现或t〇= 1,则在W冲删去Wm,得到Wi=Wm,W〇2,…, 否则在W。中用t。替换Wm,得到Wi=W〇i,W〇2,…,W〇H,t。; (3. 3) w上一步中得到的Wh序列为输入,重复化1)-(3. 2)步骤,直至Wi中只剩下一 个元素Wii; (3. 4)用任何一种计算可行的方法求出Wii的一条加法链,得到a。心,…,屯; 化5)对A = a。,a。…,a杰升序排列; (4) 使用加法链A = a。,a。…,屯,计算的值,其中F i为非零窗口,i = 1,2,…,S ; 妨初始C = M",i从2到S做循环: (5. 1)C = (C*MM)mod n ; (6) 对零窗口 Zi,Z2,…,Zk,i从1到k做循环: (6.1)0 =〔61111〇(1。,该里&=2。山为窗口!^的长度; (7) 输出密文C。
3.如权利要求2所述的改进的滑动窗口模幕计算方法,其特征是,随着指数长度的增 力口,滑动窗口的长度也应当相应增加W获得更好地计算效率;当指数长度为3时,滑动窗口 的长度应为4位,而指数长度增加到1024时,滑动窗口长度选择为6为,指数长度为4096 时,滑动窗口长度为7。
【文档编号】H04L9/30GK104468100SQ201410726861
【公开日】2015年3月25日 申请日期:2014年12月3日 优先权日:2014年12月3日
【发明者】孙达志, 杨博为, 李晓红 申请人:天津大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1