基于ECC算法的Intranet身份认证系统设计

更新时间:2023-07-21 04:30:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

基于ECC算法的Intranet身份认证系统设计

赵 琦1, 王 威1, 柳增寿2

(1.北京航空航天大学 电子信息工程学院 ,北京 100083; 2.北京海泰方圆科技有限公司 , 北京 100085)

【摘 要】身份认证是保障信息安全的关键一环,是提供访问控制的第一步。本文介绍了ECC算法和身份认证的相关理论,提出一种基于ECC算法的身份认证系统方案,其适用于Intranet内联网之中,使用混合密码体制和软硬件协同的工作方式,提供高速、安全可靠的身份认证服务。

【关键词】ECC算法;PKI机制;身份认证;数字签名

【中图分类号】TP393 【文献标识码】A 【文章编号】1002-0802(2007)08-0210-03

The Design of Identity System on Intranet Based on ECC Algorithm

ZHAO Qi, WANG Wei, LIU Zeng-shou

(1.Beihang University, Beijing 100083,Chian; 2. Hataifangyuan Ltd, Beijing 100085, China)

【Abstract】The identity authorization is a key part of information security, and it is also the first step of access controlling. This paper introduces the ECC algorithm and the identity authorization theory, and then proposes a new identity authorization scheme based on the ECC algorithm, which can be used well in Intranet, the new scheme provides a high speed, safer and more credible service, by using mixed crypto system and the Soft-hardware co-design.

【Key words】ECC;PKI Identity; authentication; digital Signature

0 引言

随着互联网的推广,来自网络信息安全的威胁也逐渐引起了各方面的关注。身份认证是信息安全的重要组成部分,是企业信息安全的保障。

而对于企业内部的内联网络Intranet来说,具有信息量大的特点,其主要威胁来自于非授权用户的非法访问,因此它对数据完整性的要求很高。Intranet需要最快的速度提供最高的安全性。保证信息的机密性、完整性和有效性。

本文针对Intranet环境,提出一种身份认证系统方案,其核心算法采用ECC算法,在保证系统安全性的前提下,提高系统速度,采用软硬件协同的方式进行身份验证,具有安全性高、速度快、灵活性好、适用性强的特点。

[1]

椭圆曲线的定义: 椭圆曲线源自于椭圆积分,是由

Weierstrass方程(维尔斯特拉斯,Karl Theodor Wilhelm Weierstrass,1815-1897), y2z+a1xyz+a3yz2 =x3+a2x2z +a4xz2+a6z3,所确定的平面曲线。

在椭圆曲线中,真正具有密码实用价值的主要是基于二元域GF(2n)和素数域GF(p)的椭圆曲线。

在SECI及IEEE P1363ECC[1]工作草案中,所定义的二元域上椭圆曲线用到六个参量[1]: T=(p,a,b,G,n,f)。(p,a,b用来确定一条椭圆曲线,G为基点,n为点G的阶,h是椭圆曲线上所有的点的个数m与n相除的整数部分)

这几个参量取值的选择,直接影响了加密的安全性。p越大越安全,但相应的计算速度会变慢,200位左右可以满足一般安全要求;

但目前对于椭圆曲线的参数取值还没有一个标准来规范。 ECC所基于的数学问题的困难性被公认是目前已知的公钥密码体制当中每位提供加强密度最高的一种体制。数学问题越难,意味着越小的密钥尺寸能产生等价的安全性。

因此,和传统的公钥密码体制RSA相比,ECC具有以下

[2]

特点:

1 ECC与身份认证

1.1椭圆曲线密码体制(ECC)

椭圆曲线密码体制(ECC,Elliptic Curve Cryptosystem)是1985年由N.Koblitz和V.Miller分别独立提出。

椭圆曲线密码(ECC)是基于椭圆曲线离散对数问题密码算法的总称。一个具体的椭圆曲线密码算法总是建立在一条具体的椭圆曲线上的。

(1) 安全性能更高:如表1所示, ECC和RSA相比,单位bit的安全强度更高。

收稿日期:2007-06-25。

作者简介:赵 琦(1966-),女,副教授,主要研究方向为信息安全、测控系统等;王 威(1983-),男,硕士研究生,主要研究方向为信

息安全;柳增寿(1973-),男,主要研究方向为信息安全。

211

(2) 计算量小和处理速度快:密钥长度缩短使得ECC的计算量大大减小,总速度比RSA快很多。同时ECC系统的密钥生成速度比RSA快百倍。

(3) 存储空间小:在同等安全条件下,ECC所占的存储空间要小得多。

(4) 带宽要求低:但应用于短消息时,ECC带宽要求低很多。

表1 三种公钥密码体制的参数比较

RSA DSA ECC

系统参数(比特)

N/a 2208 481

公开密钥(比特)

1088 1024 161

私有密钥(比特)

2048 160 160

[3]

所以RSA算法的安全性不是很高。

目前,国外广泛应用公开密钥基础设施(PKI),利用密码学理论对要传输的数字信息进行加密和签名,保证了信息传输的机密性、真实性、完整性和不可抵赖性。PKI的核心采用RSA算法进行加密运算,在电子商务领域有着广泛而成功的应用,但随着椭圆曲线算法的出现,ECC其自身不同于RSA算法的优点使其越来越受人们的关注。

2 ECC算法在Intranet身份认证中的应用设计

内联网络Intranet是在统一行政管理和安全控制管理之下,采用Internet的标准技术和应用系统建设成的网络,可以看作是一种“专用Internet”,相对于Internet强调网络的互连和通信,Intranet则更强调企业内部的信息交流和协同工作,如何在保证效率的同时,保障Intranet的安全是我们面临的一个难题。

如上节所述,公开密钥基础设施(PKI)广泛应用于Internet的电子商务与电子政务身份认证。但目前PKI机制多采用RSA算法进行加解密和签名,其算法的速度比较慢,安全级别不够,无法满足Intranet协同工作的要求。

本文依据PKI理论框架,提出一种新的模型,针对开放通信系统中的加密文件传输的实现问题提出了一种实现方法。该方法提供软硬件协同工作保障的安全,使得密钥系统的建立、传递更加可靠。

未解决系统的速度问题,本文拟采用ECC算法代替RSA进行加解密和电子签名,设计基于PKI机制的Intranet身份认证系统。

在这个加密通信中,如果有一个入侵者H,他只能看到Ep(a,b)、K、G、C1、C2 而通过K、G 求K或通过C2、G求r都是相对困难的。因此,H无法得到A、B

椭圆曲线密码体制可以应用在公钥密码(如RSA)的所有应用中,如椭圆曲线加密体制(如ECES)、数字签名体制(如ECSA、ECDSA、Schnorr)、密钥交换协议(如ECKEP、Diffie-Hellman)等。

由于ECC在安全性、实现代价和应用效率上较RSA密码都有明显的优势,目前已经被多家国际标准组织所接受,如IEEE、ANSI、ISO、IETF、ATM 等,它们所开发的椭圆曲线标准的文档有:IEEE P1363 P1363a、ANSI X9.62 X9.63、ISO/IEC14888 等。ECC替代RSA密码,成为行业或组织的公钥密码标准的趋势已经形成,并已有国家(美国、日本、韩国和欧洲一些国家)在国家密码标准中采用ECC密码体制。

但由于椭圆曲线的参数选择很多,目前国际上还缺乏一种通用的标准,这一方面也限制了ECC的推广和应用。 1.2 身份认证与公钥密码体制

在计算机科学中,身份是授予权限的基础,也是构成某个保护域的名称系统的必要组成部分。身份认证就是将某个身份与某个实体进行绑定,是防止主动攻击的主要方法。

在身份认证系统中,起关键作用的是其中的加密体系。它的密码体制分为对称密码体制和非对称密码体制。非对称密码体制是指在加密过程中,密钥被分为一对:公开密钥(a public-key), 可以被任何人知道, 用于加密或验证签名;私钥(private-key), 只能被消息的接收者或签名者知道,用于解密或签名。这对密钥具有这样一个特点:当知道密钥对中的一个密钥时,要检测出另一个密钥,在计算上是不可在这个系统中,每个通信实体都有一个加密密钥和一能的。

个紧密相关的解密密钥.通信的双方只要知道对方的公钥,就可以进行安全的通信。

RSA算法是1977年提出的,旨在解决DES等对成算法的秘密密钥,在利用公开信道传输分发时的难题。它是第一个比较完善的公开密钥算法,也是国际公认的比较理想的公钥密码体制。它既能用于加密也能用于数字签名。其核心算法是基于大整数幂剩余计算,其计算复杂性使得RSA公钥密码计算速度非常缓慢,在海量数据系统中难以达到实际应用的理想效果。

目前用国际上公认的对于RSA算法最有效的攻击方法有一般数域筛(NFS)方法去破译和攻击RSA算法,由于求解和攻破RSA算法是一种亚指数级别运算难度的,破解难度不高。

[4]

[5]

[3]

图1 利用ECC算法进行Intranet身份认证模型 A与在本文提出的模型中,假设通信的是A与B双方,B处在同一个Intranet中。此内联网络内部有一个密钥管

理中心(KMC)。事先约定密码体制:采用混合密钥体制,即文本加解密采用对称算法AES,而密钥的传输与签名验签都采用非对称算法ECC 。

整个系统包括KMC(Key Manage Center)密钥管理中心、服务器、硬件加密设备Usb Key等部分组成(如图1)。

在PKI体制中,采用证书管理公钥,通过第三方可信任机构CA(Certificate Authority)把用户公钥和用户其他

212

标识信息捆绑在一起,在网络上验证用户身份。本模型借鉴PKI体制,每一个终端用户设备无需事先存有对方公钥信息,只需获取KMC授予的相关信息和公钥即可直接与网络中其它授权用户进行通信。

KMC作为公认的第三方机构,实现下列功能:生成密钥:生成ECC加解密密钥;储存密钥:储存各Server生成的密钥;安装密钥:安装各ECC密钥至各个电子钥匙Key中;发放公钥:储存并发放公钥。

Key(电子钥匙)是一种USB安全设备,具有存储密钥、随机生成一次性随机密钥和硬件加密功能。密钥存储在Key中不允许导出,避免了密码运输和在公共硬件中存储带来的安全隐患。USB Key作为双因素认证终端设备,代替了原来通用的只有口令的认证方式。

整性,不可篡改,运算速度快,防止逆向工程。在硬件加密方面,USB Key以智能卡芯片为基础,内置芯片操作系,利用算法IP核,作为终端加密认证设备,直接从系统和硬件层面提供安全保护,确保关键信息特别是根密钥安全地保存在硬件设备中。

在USB Key中,由随机数发生器,生成一次性随机密钥,在各Server端生成AES加密密钥。这样基本可以做到“一次一密”,大大提高了数据加密的强度。

本模型是根据PKI进行部分修改得到,使用ECC对AES的密钥进行加密,并使用椭圆曲线数字签名算法ESDSA。

由于ECC还无法支持标准的数字证书,在本模型中,使用类似功能的数字信封,将密文、使用ECC加密后的AES密钥和签名打包,再通过网络传输。

为了加快系统的速度,提高系统的安全性,本模型提出海量数据加密采用对称加密算法中的AES算法,替代传统的DES算法。

AES算法即高级加密标准——Rijndael算法。速度快,安全强度高,是新兴的对称密钥加密算法。

在信息安全领域,ECC算法签名以其密钥长度小、安全

性能高、整个数字签名耗时小,使其在智能终端应用中有很

大的发展潜力,比如掌上电脑、移动手机等中能有更好的表现。而在内联网络中,ECC算法也保证了其协同工作的实时性,使用ECC算法加密敏感性级别较高的数据(如密钥),速度上能够满足大数据量要求,而且安全性更高,能很好的保障系统的安全。

图2 发送端加密、签名过程

在系统的发送端,Key插在服务器A上,利用其中的随机数生成器,生成AES密钥中密钥,将明文m加密成密文C。用Key中的ECC私钥加密AES密钥,与密文C、数字签名一起打包成数字信封(如图2)。

数字信封压缩为一个包,由发送端的服务器A发通过开放式通信网络发送到接收端服务器

B。

3 结语

在信息安全领域,仅靠单一技术手段构成的安全体系往往是脆弱的,软硬件协同工作是目前的流行趋势,可以提高安全性。 ECC算法是目前正在组建兴起的非对称加密算法,在很多领域开始逐渐替代传统的RSA算法。

本文通过分析ECC算法,比较了ECC算法与RSA算法,并提出用于Intranet的新模型,本模型采用软硬件协同的方式,基于混合加密体制,使用速度快而安全性高的ECC算法进行加解密、签名与验证签名,充分的和PKI体制透明的融合,对内联网内的信息建立起良好的保护的屏障。大大加快了系统加解密速度,提高了安全性,可以在安全性要求较高的企业、军队、实验室中提供Intranet的身份认证,保证信息的机密性、完整性和可用性。

参考文献

[1] IEEE P1363.Standard for Public_Key Cryptography:Working Draft

[EB/OL].http :///, 1998-08.

[2] Schoof R. Elliptic curves over finite fields and the

computation of square roots mod p[J]. Mathematics of Computation. 1985, 44(170): 483~494

[3] Darrel Hankerson . 椭圆曲线密码学导论[M].电子工业出版社.2005 [4] 冯登国.密码学原理与实践[M].北京:电子工业出版社.2003. [5] ANDREW NASH,WILLIAM DUANE,CELIA JOSEPH.et al..公钥基

础设施(PKI)实现和管理电子安全[M].清华大学出版社.2002.

图3 接受端解密、验证签名过程

数字信封通过Intranet传输,传给服务器B。在接收端,将数字信封解压缩查找KMC中得到的发送端A的ECC公钥,用其解码,得到文本AES加密的密钥,将密文C解密成明文M,再将明文M进行Hash运算,比较其结果与数字信封中的数字签名S,确认文件未被篡改和丢失,保证其数据完整性(如图3)。

本模型采用软硬件协同工作的方式,适用于基于Intranet的系统机构内部的身份认证。

在信息安全中,密钥管理可以定义为密钥的产生、记录、传抄、分配、安装、存储、变更、销毁和控制过程。任何一个步骤都可能导致密码系统的泄密,而实践表明对密钥和密钥管理的攻击比对算法的攻击更加常见也更加有效。在本模型中,根密钥保存在硬件设备USB Key中,使得密钥数据绝不以任何明文形式出现在加密设备之外,还可以保护数据完

213

本文来源:https://www.bwwdw.com/article/0ru1.html

Top