跳至内容
深圳市捷比信实业有限公司 · 产品选型与采购咨询联系业务人员
合金电阻捷比信 · 专业器件主题站

椭圆曲线平行加速度的研究与讨论

2019年4月19日,如期启动了第十四届北京大学软微八组分协同实验室学术沙龙。这家技术沙龙专注于椭圆曲线平行加速度的研究。来自北京大学的沉庆妮教授,方跃健副教授,胡志林Trias胡志林以及软件与微电子学院的众多博士和硕士生参加了此次沙龙。方月健老师和博士生冯新宇分享了。前面我们提到过,与RSA公钥密码相比,椭圆曲线密码提供更高的每比特安全强度。具有160位密钥长度的椭圆曲线密码提供了安全强度,这等效于具有1024位密钥长度的RSA密码。提供的安全性。在这种情况下,优化操作具有重要意义,而并行加速是优化操作的一种方式。椭圆曲线加密的并行处理方法仍处于学术讨论阶段,是一个相对前沿的研究方向。从技术的角度来看,并行性具有诸如隐藏的安全隐患和明显的效率改进之类的问题,因此该技术尚未大规模应用。由于种种原因,即使对于以比特币为代表的加密货币之类的轻量级应用程序,也未采用并行加速。方月健老师首先提出了四种提高椭圆加密算法效率的方法,即多线程并行,GPU并行,专用硬件并行处理器和SSE指令加速。除介绍这四种方法外,方先生还从不同角度比较了它们的优缺点。例如,尽管GPU并行度每单位时间具有更高的总吞吐量,但是单个操作却不如CPU更好。尽管专用硬件可以更轻松地将点乘法转换为点加速度,但在反攻击和其他方面仍存在一些问题。博士生冯新宇从不同的论文中比较详细地选择了几种可以提高效率的算法。它们都从一个方程式开始:Q = KP。在该等式中,K是大整数,P等效于私钥,Q等效于公钥。所有这些算法都通过转换整数K来减少点运算的数量。如果要提高效率,必须找到一种快速计算K·P结果的方法。由于不能更改P,因此只能以K开头。下面是Feng Bo逐个对这些算法的简要说明:二进制算法:将K转换为二进制形式(即2的幂),并且然后执行回点计算和加点计算,通常与滑动窗口方法结合使用。窗口NAF方法:通过编码减少包含1的位数,从而减少添加的点数。但是有一个缺点,那就是它无法抵抗侧信道攻击。旁道攻击(SCA)是一种密码分析方法,通过分析密码设备泄漏的旁道信息来推断秘密密钥。滑动窗口方法:通过跳过位值0来减少点加法的数量。蒙哥马利:蒙哥马利型椭圆曲线定义为E:By2 = x3 + Ax2 + x。在此,A,B∈Fpn和B(A2 -4)≠0。欧几里得加成链是满足以下条件的加成链:如果vi = vi -1 + vj(j《 i- 1),然后vi +1 = vi + vi -1或vi +1 = vi + vj。可以通过折减来获得用于计算任何整数k的加法链,但是加法链的长度取决于所选的减法g。寻找最短加成链的问题是一个NP完全问题。 NP完全问题是世界上七个主要的数学问题之一。 NP的全名是非确定性多项式,这是多项式复杂度的非确定性问题。简单的方法是NP = P吗? ,问题在于这个问号,即NP是否等于P或NP不等于P。固定窗口方法:将i乘以P的i倍以减少点加法的次数。这种方法很容易理解。它会预先计算几种可能的情况,并直接使用它们来提高效率。沉先生提出了一些问题,例如是否可以将繁琐的工作(例如加密签名验证)留给体系结构而不是用户使用,以及并行性是否可以在多台机器之间分配等等,让所有人集思广益,将其作为方向。以供将来讨论。最后,除了从硬件入手之外,每个人都总结了加速的两个总体方向,一个是优化算法,另一个是拆分多线程。