|
|
| |||
|
您现在的位置是:武汉大学密码研究中心>>关于ECC | |||
|
椭圆曲线密码(ECC)是一种高安全性、高效率的公钥密码,具有加/解密、电子签名和密钥协商等重要的密码功能,可以安全且方便地满足各种信息网络中的用户身份识别、电子信息的真伪鉴别和保密传输等重要的信息安全需求,是信息安全领域的核心技术。 1978 年Rivest 、Shamir 和Adleman 提出了第一个比较完善的公钥密码体制, RSA 公钥密码体制,也是现在通用的公钥加密算法。 这种体制的安全性是建立在基于大整数因数分解的难题( IFP) 的基础上。但是,随着整数因子分解方法的不断完善、计算机速度的提高以及计算机网络的发展,作为RSA 加解密安全保障的大整数要求越来越大。 目前一般认为RSA 需要1024 位以上的字长才有安全保障。 但是,密钥长度的增加导致了其加解密的速度大大降低,硬件实现也变得越来越困难,这对使用RSA 的应用带来了很重的负担,从而使得其应用范围越来越受到制约。 还有一种比较安全的公钥密码是基于有限域上离散对数问题(DLP) 的难解性,比较典型的如美国政府数字签名算法DSA 。DSA 的安全性与RSA 相当。 1985年Neal Koblitz和Victor Miller分别独立提出基于ECDLP(椭圆曲线离散对数问题)的ECC密码系统,自此ECC在密码学界数学界引起了广泛的越来越热烈的研究兴趣。经过诸多知名密码学家和数学家近二十年的研究表明,ECC所基于的ECDLP较IFP和DLP(离散对数问题)更难解,目前人们能找到最有效的求解ECDLP的算法(Pollard rho)也是指数级时间复杂度的。而近几年数学家和密码学家们已经证明的一些结论暗示着ECDLP甚至可能不存在亚指数时间复杂度的求解算法,这暗示着ECC可能是唯一无法用亚指数算法破解的公钥密码。 1997年以来形成了一个研究热点,在理论上和实践上都取得了很大的进展,许多标准化组织已经或正在制定关于椭圆曲线的标准,同时也有许多的厂商已经或正在开发基于椭圆曲线的产品。 随着ECC算法的进一步发展,国际著名大公司纷纷采用ECC算法,如:ORACLE、COMPAQ、Digital Bond、3COM、RAINBOW、AT&T、BELLSOUTH、SYBASE、HP、MOTOROLA、SIEMENS等。 2000年10月,国际密码学界在德国ESSEN召开了学术大会(ECC2000),在这次会议上,来自世界各国的密码学家、数学家证明了对ECC算法的最快破解效率是高于亚指数级的,而RSA算法的最快破解效率是亚指数级的。ECC2000的召开进一步从学术上奠定了ECC算法的安全性,极大的推动了它在世界各国的应用。
ECC技术三个方面的发展引起了政府部门对ECC巨大影响的关注: 首先是ECC已经被多家著名国际标准组织所接受,成为行业或组织的公钥密码标准,如ANSI,ISO和NIST等。这些标准的制定对于在信息安全产业进行大规模销售市场运作有着决定性的意义。因为这些组织依赖自身的技术信誉不仅促进ECC技术的广泛推广,同时也确定了不同制造厂商之间的交流接口,规范了实现者的交互合作。并且已有许多国家(美国、日本、韩国和欧洲一些国家)在国家密码标准中采用ECC。下表列出了国际上采用ECC技术的一些重要标准。
在已知的公钥密码体制中,椭圆曲线密码体制具有每bit 最高强度的安全性,最快的处理速度和最低的开销,至今解决椭圆曲线离散对数最好的算法是完全指数时间算法。 而IFP 和DLP 都有亚指数时间算法,这意味着随着长度的增加,求解ECDLP 的难度比求解IFP 和DLP 的难度增加得快得多。 因此ECC仅需要更小的密钥长度就可以提供跟RSA 和DSA 相当的安全性。 研究证明 ,基于椭圆曲线上的密码体制使用160bit 的密钥提供的安全性相当于RSA 和DSA 使用1024bit 密钥提供的安全性,210bit 与2048bit 相当。 而且在私钥运算(签名和解密) 方面椭圆曲线上的密码体制要比RSA 和DSA 快很多,但它的签名验证和加密速度太慢。 另外,ECC 系统的密钥生成速度比RSA 快百倍以上。 同时,椭圆曲线资源丰富,同一个有限域上存在着大量不同的椭圆曲线,这为安全性增加了额外的保证。 国内外关于ECC实现技术的研究非常广泛,在无论是软件或硬件实现算法、特殊或一般ECC实现算法、还是素域或二元域上的实现算法,都有相当丰富的研究文献和成果。 另外,ECC从实现的角度来看也有更高的效率。因为其具有密钥短这一天然的优势,就比RSA有着更多的应用领域。由于椭圆曲线密码的密钥较短(如160位ECC的私钥长度仅为1024位RSA的1/6。4,160位公钥长度仅为1024位RSA的1/3。2),这可以为智能卡这类资源极度受限的嵌入式系统节省较多的存储空间,使得其它程序可利用更多的存储器来完成复杂的任务。而对于像芯片这样的实现方式,密钥短也能使整个生产的成本下降。在使用的过程中也会由于密钥短而得到更高的速度。
|
||||||||||||||||||||||||
|