随着互联网的推广,来自网络信息安全的威胁也逐渐引起了各方面的关注。身份认证是信息安全的重要组成部分,是企业信息安全的保障。那么我们今天就来谈谈ECC加密算法在Intranet身份认证中的应用。

一、ECC加密算法与身份认证

1、ECC加密算法

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

椭圆曲线的定义:

椭圆曲线源自于椭圆积分,是由Weierstrass方程所确定的平面曲线。

在椭圆曲线中,真正具有密码实用价值的主要是基于二元域GF(2n)和素数域GF(p)的椭圆曲线。 在SECI工作草案中,所定义的二元域上椭圆曲线用到六个参量: _T=(p,a,b,G,n,f)。(p,a,b用来确定一条椭圆曲线,G为基点,n为点G的阶,h是椭圆曲线上所有的点的个数m与n相除的整数部分) _这几个参量取值的选择,直接影响了加密的安全性。p越大越安全,但相应的计算速度会变慢,200位左右可以满足一般安全要求;

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

ECC加密算法特点:

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

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

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

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

ECC加密算法可以应用在公钥密码(如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加密算法的推广和应用。

2、身份认证和公钥密码体制

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

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

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

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

二、 ECC加密算法在Intranet身份认证中的应用

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

如上节所述,公开密钥基础设施(PKI)广泛应用于Internet的电子商务与电子政务身份认证。但目前PKI机制多采用RSA加密算法进行加解密和签名,其算法的速度比较慢,安全级别不够,无法满足Intranet协同工作的要求。 我们依据PKI理论框架,提出一种新的模型,针对开放通信系统中的加密文件传输的实现问题提出了一种实现方法。该方法提供软硬件协同工作保障的安全,使得密钥系统的建立、传递更加可靠。

未解决系统的速度问题,我们拟采用ECC加密算法代替RSA进行加解密和电子签名,设计基于PKI机制的Intranet身份认证系统。 在这个加密通信中,如果有一个入侵者H,他只能看到Ep(,)ab、K、G、C1、C2 而通过K、G 求K或通过C2、G求r都是相对困难的。因此,H无法得到A、B间传送的明文信息。

在本文提出的模型中,假设通信的是A与B双方,A与B处在同一个Intranet中。此内联网络内部有一个密钥管理中心(KMC)。事先约定密码体制:采用混合密钥体制,即文本加解密采用对称算法AES,而密钥的传输与签名验签都采用非对称加密算法ECC 。

整个系统包括KMC(Key Manage Center)密钥管理中心、服务器、硬件加密设备Usb Key等部分组成(上图所示)。 在PKI体制中,采用证书管理公钥,通过第三方可信任机构CA把用户公钥和用户其他标识信息捆绑在一起,在网络上验证用户身份。本模型借鉴PKI体制,每一个终端用户设备无需事先存有对方公钥信息,只需获取KMC授予的相关信息和公钥即可直接与网络中其它授权用户进行通信。

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

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

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

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

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

本模型采用软硬件协同工作的方式,适用于基于Intranet的系统机构内部的身份认证。 在信息安全中,密钥管理可以定义为密钥的产生、记录、传抄、分配、安装、存储、变更、销毁和控制过程。任何一个步骤都可能导致密码系统的泄密,而实践表明对密钥和密钥管理的攻击比对算法的攻击更加常见也更加有效。

在本模型中,根密钥保存在硬件设备USB Key中,使得密钥数据绝不以任何明文形式出现在加密设备之外,还可以保护数据完整性,不可篡改,运算速度快,防止逆向工程。

在硬件加密方面,USB Key以智能卡芯片为基础,内置芯片操作系,利用算法IP核,作为终端加密认证设备,直接从系统和硬件层面提供安全保护,确保关键信息特别是根密钥安全地保存在硬件设备中。 在USB Key中,由随机数发生器,生成一次性随机密钥,在各Server端生成AES加密密钥。这样基本可以做到“一次一密”,大大提高了数据加密的强度。 本模型是根据PKI进行部分修改得到,使用ECC对AES的密钥进行加密,并使用椭圆曲线数字签名算法ESDSA。

由于ECC加密算法还无法支持标准的数字证书,在本模型中,使用类似功能的数字信封,将密文、使用ECC加密后的AES密钥和签名打包,再通过网络传输。 为了加快系统的速度,提高系统的安全性,本模型提出海量数据加密采用对称加密算法中的AES算法,替代传统的DES算法。 AES算法即高级加密标准——Rijndael算法。速度快,安全强度高,是新兴的对称密钥加密算法。

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

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

小知识之Intrane:

Intranet称为企业内部网,或称内部网,内网,是一个使用与因特网同样技术的计算机网络,它通常建立在一个企业或组织的内部并为其成员提供信息的共享和交流等服务,例如万维网,文件传输,电子邮件等。是Internet技术在企业内部的应用。它的核心技术是基于Web的计算。