物联传媒 旗下网站
登录 注册
RFID世界网 >  技术文章  >  其他  >  正文

带椭圆曲线密码算法ECC的智能卡

作者: 明华澳汉
来源:RFID世界网
日期:2005-06-01 10:18:28
摘要:带椭圆曲线密码算法ECC的智能卡
    关键字: ECC  智能卡  密码算法  

1  背景简介
  随着通讯网络特别是Internet的高速发展,利用网络作为信息交流和信息处理变得越来越普遍,社会的传统事务和业务运作模式受到前所未有的冲击。目前,无论是国家政府还是企业都正融入这场网络革命中,从其原来的传统经营模式向网络模式演化。未来的电子政务、电子商务、电子业务将成为不可逆转的发展趋势。在与日俱增的网络活动中,人们越来越关心信息安全这个问题。这集中体现在:
(1)网络的身份认证——确认网络客户的真实身份
(2)信息和数据的保密性——个人或系统机密信息和数据保护
(3)信息和数据完整性——防止不合法的数据修改
(4)不可抵赖性——网络环境下行为的事后的不可抵赖(数字签名)
  信息安全中最核心的技术是密码技术,基本上可分为序列密码、对称密码(又称分组密码)、非对称密码(又称公钥密码)三种。
非对称密码算法是支撑解决以上所涉的四个关键方面的问题的核心。目前越来越流行的是基于PKI体系模型的解决方案。在PKI体系模型中,客户端需要一较好的个人信息安全载体,智能卡或智能密码钥匙将是一较理想的方式,都必须支持公钥算法,而ECC是最适合使用在这一资源受限制的客户端产品中。

2 椭圆曲线密码算法ECC
  自公钥密码问世以来,学者们提出了许多种公钥加密方法,它们的安全性都是基于复杂的数学难题。根据所基于的数学难题来分类,有以下三类系统目前被认为是安全和有效的:(1)大整数因子分解系统(代表性的有RSA),(2)有限域(数学中的一种代数结构)离散对数系统(代表性的有DSA),(3)有限域椭园曲线离散对数系统(ECC)。当前最著名、应用最广泛的公钥系统RSA是由Rivet、Shamir、Adelman提出 的(简称为RSA系统),它的安全性是基于大整数素因子分解的困难性,而大整数因子分解问题是数学上的著名难题,至今没有有效的方法予以解决,因此可以确保RSA算法的安全性。RSA系统是公钥系统的最具有典型意义的方法,大多数使用公钥密码进行加密和数字签名的产品和标准使用的都是RSA算法。RSA方法的优点主要在于原理简单,易于使用。但是,随着分解大整数方法的进步及完善、计算机速度的提高以及计算机网络的发展(可以使用成千上万台机器同时进行大整数分解),作为RSA加解密安全保障的大整数要求越来越大。为了保证RSA使用的安全性,其密钥的位数一直在增加,比如,目前一般认为RSA需要1024位以上的字长才有安全保障。但是,密钥长度的增加导致了其加解密的速度大为降低,硬件实现也变得越来越难以忍受,这对使用RSA的应用带来了很重的负担,对进行大量安全交易的电子商务更是如此,从而使得其应用范围越来越受到制约。DSA(Data Signature Algorithm)是基于有限域离散对数问题的数字签名标准,它仅提供数字签名,不提供数据加密功能。安全性更高、算法实现性能更好的公钥系统椭圆曲线加密算法ECC(Elliptic Curve Cryptography)基于有限域上椭圆曲线的离散对数计算困难性。人类研究椭圆曲线已有百年以上的历史,但真正把其应用到密码学中是1985年由Koblitz(美国华盛顿大学)和Miller(IBM公司) 两人提出。定义在有限域(Fp 或F(2m))的椭圆曲线(y2=x3+ax+b)上的点(x,y),再加上无穷点O,如按一定的规则运算(估且称为乘法)将组成一个群(数学中的一种代数结构)。有限域上椭圆曲线乘法群也有相对应的离散对数计算困难性问题。因此,许多公开密码系统都是基于此问题发展出来的,如类似ELGamal,DSA等密码系统的ECES,ECDSA。

3 椭圆曲线加密算法ECC的优点
  椭圆曲线加密算法ECC与RSA方法相比有着很多技术优点:
  ●安全性能更高
  加密算法的安全性能一般通过该算法的抗攻击强度来反映。ECC和其他几种公钥系统相比,其抗攻击性具有绝对的优势。椭圆曲线的离散对数计算困难性(ECDLP)在计算复杂度上目前是完全指数级,而RSA 亚指数级的。这体现ECC比RSA的每bit安全性能更高。
  ●计算量小和处理速度快
  在一定的相同的计算资源条件下,虽然在RSA中可以通过选取较小的公钥(可以小到3)的方法提高公钥处理速度,即提高加密和签名验证的速度,使其在加密和签名验证速度上与ECC有可比性,但在私钥的处理速度上(解密和签名),ECC远比RSA、DSA快得多。因此ECC总的速度比RSA、DSA要快得多。同时ECC系统的密钥生成速度比RSA快百倍以上。因此在相同条件下,ECC则有更高的加密性能。
   ●存储空间占用小
   ECC的密钥尺寸和系统参数与RSA、DSA相比要小得多。160位 ECC与1024位 RSA、DSA有相同的安全强度。而210位 ECC则与2048bit RSA、DSA具有相同的安全强度。意味着它所占的存贮空间要小得多。这对于加密算法在资源受限环境上(如智能卡等)的应用具有特别重要的意义。
  ●带宽要求低
  当对长消息进行加解密时,三类密码系统有相同的带宽要求,但应用于短消息时ECC带宽要求却低得多。而公钥加密系统多用于短消息,例如用于数字签名和用于对对称系统的会话密钥传递。带宽要求低使ECC在无线网络领域具有广泛的应用前景。

4椭圆曲线加密算法ECC的相关标准
  ECC的这些特点使它在某些领域(如PDA、手机、智能卡)的应用将取代RSA,并成为通用的公钥加密算法。许多国际标准化组织(政府、工业界、金融界、商业界等)已将各种椭圆曲线密码体制作为其标准化文件向全球颁布。ECC标准大体可以分为两种形式:一类是技术标准,即描述以技术支撑为主的ECC体制,主要有IEEEP1363、ANSI X9.62、ANSI X9.63、SEC1、SEC2、FIP 186-2、ISO/IEC 14888-3。规范了ECC的各种参数的选择,并给出了各级安全强度下的一组ECC参数。另一类是应用标准,即在具体的应用环境中建议使用ECC技术,主要有ISO/IEC 15946、IETF PKIX、IETF TLS、WAP WTLS等。在标准化的同时,一些基于标准(或草案)的各种椭圆曲线加密、签名、密钥交换的软、硬件也相继问世。美国RSA数据安全公司在1997年公布了包含ECC的密码引擎工具包BSAFE 4.0; 以加拿大Certicom为首的安全公司和工业界联合也研制、生产了以椭圆曲线密码算法为核心的密码产品,还提出了各种安全条件下对椭圆曲线离散对数攻击的悬赏挑战。可以相信,ECC技术在信息安全领域中的应用会越来越广。

5带ECC算法的智能卡SmartCOS-PK(ECC)
  深圳市明华澳汉科技股份有限公司是一个专业从事智能卡科技和信息安全技术产品开发经营的高科技企业。公司有国内大型的智能卡生产基地,国内最大的智能卡市场推广、销售和服务网络,国内实力最强的智能卡安全技术研究开发机构。明华公司所开发的智能卡操作系统SmartCOS已经通过国家密码管理委员会、中国人民银行、各政府部门和国内外多个大型商业机构认证。海南信安数据系统有限公司是一家专业研究椭圆曲线算法ECC的专业公司。两家公司联合开发出了国内第一个带椭圆曲线算法的智能卡SmartCOS-PK(ECC)。随着电子政务、电子商务的高速发展,继在已支持RSA公钥算法的SmartCOS-PK版的基础上,再开发出了具有支持160bit/192bit ECC算法的SmartCOS-PK(ECC),并且支持256bit的ECC也将在2001年底推出。同时,还提供系统后台的ECC加密支持库,提供系统的ECC应用解决方案。明华-信安公司是国内首家推出带ECC算法智能卡的机构,使其在国内智能卡安全技术领域已处于领先地位,并在某些技术上已超越国际先进水平,体现了对国家科技跨越式发展策略和民族科技进步的突破性贡献。