分享到:

研发图
联络我们 | 访客留言 |
论 文 专 利 著 作 项 目 ZigBee 与 Uwb动态 技术FAQ
 
 
HFC 接入双向认证技术探讨

•  蒋小宇 重庆邮电学院 硕士研究生
•  金  纯 重庆邮电学院 教授 博士
•  崔晓荣 重庆广播电视网络传输有限责任公司 总工程师

   摘 要: 本文探讨一种基于非对称密码体制、单向散列函数、数字证书和数字签名的HFC接入双向认证方案。在本方案中,认证服务器无需存储和查找客户端公钥,且运营商具有自签名的顶级证书服务器,无需借助第三方颁发证书。最后对本方案做了简要的性能分析。

   关键词: HFC 非对称密码体制 数字签名 单向散列函数 双向认证


该论文发表于《有线电视技术》2005年第8期(总第176期)刊号:ISSN1008-5351/CN11-4021/TN

1 安全认证的重要性

    当前广播电视领域正在发生一场巨大的数字化变革。在我国,有线数字电视正在快速发展,各地方都在积极推进有线数字电视的整体平移。同时,HFC网络的双向化改造也取得了很大进步。在采取限制单个光节点下的用户数以及将CMTS前移等措施后,回传漏斗噪声得到有效抑制,HFC接入技术进入实用化。随着网络数字化、智能化的发展,"三网融合"将是一个必然的发展趋势,这将进一步促进信息的综合化和增值业务的开发和应用。从某种意义上来说,广播电视网已经不再是单纯的"电视网"了,而是一种综合信息网络。信息的融合是社会发展的需要和必然。随着信息化进程的推进,网络综合业务能力得到充分的关注,信息网络应综合图像、声音、文字,综合广播电视、通信、计算机数据,适应用户的各种需求,具备海量信息库,灵活多变的信息处理方式,保证高质量、大容量、高速传输通道。另一方面,随着数字电视机顶盒计算能力(Computer Power)的增强,机顶盒将有可能成为"家庭网关"。家庭中其它所有信息设备都可以通过无线或者有线方式与机顶盒相连,然后通过机顶盒访问外部网络(机顶盒可以预留RJ-45接口和RJ-11接口等)。Philips已经宣布支持使用蓝牙无线技术将机顶盒与PDA、手机等设备相连,这样PDA和手机就可以作为电视遥控器,也可以通过机顶盒上网。在传统的广电网络中,由于其特殊的网络性质和单向广播业务,没有采用安全认证。随着数字电视技术的发展和有线电视网络双向化改造,HFC网络不仅仅传输广播电视信号,同时也是用户宽带接入的重要方式,HFC网络将承载语音、图像、数据等多媒体综合业务。在传输的双向化、信息的综合化趋势下,一种可靠的,介于内容提供商、网络运营商和用户之间的认证方案尤为重要。

2 非对称密码体制与数字签名

    在对称密码体制中,加密密钥和解密密钥是相同的,这使得对称密码体制有很多缺陷。比如,如果有n个人互相通信,那么就需要n(n-1)/2个密钥,这给密钥的管理和分配带来很大的问题。对称密码体制也不支持数字签名和不可否认性。

    非对称密码体制的基本思想是加密密钥和解密密钥不同,由其中一个密钥推导另一个密钥在计算上是不可行的(指以人类现在和今后相当长的时间内拥有的计算能力,在有效的时间内不能计算出结果)。一对彼此独立、但又在数学上彼此相关的密钥KP、KS总是一起生成,其中KP公开,称为公钥,KS保密,称为私钥。加密算法E和解密算法D是分开的。非对称密码体制的特点如下:

•  用公钥加密的数据,只能由与其对应的私钥解密,而不能用原公钥解密;反之,用私钥加密的数据,只能由与其对应的公钥解密,而不能由原私钥解密。即,设加密算法为E,解密算法为D,KP是公钥,KS是KP对应的与私钥,明文为X,则有:

002

004

006

008

•  非对称密码体制不存在对称秘密体制中的密钥分配问题和保存问题。N个用户相互通信只需要2N个密钥。

•  非对称秘密体制支持以下功能:

•  机密性(Confidentiality):保证非授权人员不能非法获取信息;

•  确认(Authentication):保证对方属于所声称的实体;

•  数据完整性(Data integrity):保证信息内容不被篡改;

•  不可抵赖性(Non-repudiation):发送者不能事后否认他发送过消息。

    非对称秘密体制的安全性是基于复杂的数学难题。对于某种数学难题,借助现有计算能力得出答案的时间越长,那么基于这种数学难题的密码体制就越安全。

    根据所基于的数学难题来分,有以下三类系统目前被国际公认为是安全和有效的:

•  整数因子分解系统(RSA);

•  离散对数系统(DSA);

•  椭圆曲线离散对数系统(ECC)。

    数字签名的方法如下:

    用户首先对待签名的文件施行某种散列算法(Hashing Algorithm),得到一个散列值。原文有任何改动,散列值将会有所不同。然后使用用户的私钥对此散列值加密。由于世界上只有用户本人知道其私钥,因此用户一旦用其私钥对散列值加密后,就相当于签名了。值得说明的是,实际的数字签名还涉及到数字证书,以防止替换公钥攻击;为了把一个普通的数字签名变成一个具有不可否认性的数字签名,必须在创建散列值之前把进行数字签名的时间编码到文件中,这就需要一个时钟基准(如和 NIST 原子钟同步的一个时钟)。

3 双向认证方案

    首先需要在运营商架设一台证书服务器。证书服务器有自己的公钥KCP和私钥KCS,同时证书服务器也有一张自签名的顶级证书,以防止它的公钥被黑客替换。在用户申请开通服务时,证书服务器为用户颁发一张数字证书,并对证书进行数字签名,以防止证书内容被篡改。颁发证书的时候为用户创建了公钥KUP、私钥KUS ,其中KUS由用户保存且保密,KUP公开。证书的内容如图1所示。

009

    运营商架设一台或多台AAA Server(Authentication, Authorization, Accounting, 认证、授权、计费服务器),它负责认证、授权和计费。AAA Server有自己的私钥KSS 、公钥KSP和加密算法D、解密算法E。同时,它也拥有一张证书服务器颁发的数字证书。

    认证过程如图2所示。用户开机或者请求某种业务时,发起相应的认证过程,即向AAA Server发送认证开始请求。AAA Server收到请求后,向用户发送证书请求,要求用户出示数字证书。然后用户将自己的数字证书发送给AAA Server。

    AAA Server收到证书后,有三件事情需要证明:

•  该数字证书是运营商数字证书服务器所颁发;

•  该数字证书未被篡改过;

•  该证书确实为出示证书者所有。

    对于前面两项,AAA Server只需验证数字证书上证书服务器的数字签名即可得到证明。具体方法是用证书服务器的公钥KCP解密数字签名,然后再用公开的单向散列函数求证书的散列值,并比较二者,如果相同,验证通过,不相同,验证失败。

    为了证明该证书确实为证书出示者所有,AAA Server生成一个大的随机数R,并使用用户的公钥KUP(数字证书中包含KUP ,因此服务器无需预先存储用户公钥,也无需查找数据库,这有利于加快处理速度)将R

014

加密,得到 016 。为了防止R在传输过程中被黑客截获并修改,使得合法用户得不到正确的认证。AAA Server先使用一个公开的单向散列函数H作用于R,得到H(R),然后用服务器的私钥KSS对H(R)进行加密(数字签名)。最后将 018 发送给用户。

客户收到 019 后,首先应该验证R在传输过程中是否被篡改过。方法如下:首先,客户端使用AAA Server的公钥KSP解开 021 ,即:

023

再用客户端私钥KUS解密 025 ,即:

027

    然后再用公开的单向散列函数H(必须与AAA Server使用的H相同),求 R ′的散列值H(R ′)。如果在传输过程中R被篡改过,即R ′≠R,那么根据散列函数的性质,必然有:H(R ′)≠H(R), 从而发现R被修改过这一事实。

    如果上面的操作证明R未被修改,那么客户端接下来的工作是设法将解密得到的R ′不被篡改地传回AAA Server,以便AAA Server进行鉴别。为了防止在将R ′传回给AAA Server的过程中,被黑客捕获并篡改,使得合法用户不能通过认证。在回传R ′时,先对R ′施以单向散列函数H,得到R ′的一个散列值H(R ′)。然后使用用户的私钥KUS对H(R ′)进行加密(数字签名),最后将R ′和加密后的H(R ′)一起,即 028 回传给AAA Server。这里R′可以明文传输,无需加密,因为R是随机数,每次都不一样,黑客即使获得R′也不能对认证过程构成威胁。

AAA Server收到 029 后,验证过程如下:

    首先验证R ′是否等于R。 如果R ′=R,说明该证书确实为其出示者所有,对用户的认证获得通过。

    如果R ′≠R,有两种可能,即要么用户提供的证书是假的,要么R ′在传输过程被人篡改过。要检查R ′是否被修改过,AAA Server只需验证用户的数字签名即可:

031

    如果R ′被篡改为R″(R″≠ R ′),则必然有H(R″)≠H( R ′),从而可以发现R ′在传输过程中被修改过。

    如果经过前面验证,R ′在传输过程中没有被修改,且R ′≠R,这说明用户所出示的数字证书非法,用户认证失败。

    至此, AAA Server对客户端认证完成。反方向的客户端对AAA Server的认证类似,不再详述。

    当双向认证完成后(事实上,可以是客户端被认证合法之后),AAA Server向SMS(Subscriber Management System,用户管理系统)发送用户通过认证,并请求该用户的业务信息。SMS收到请求后,查找该用户的业务信息,并发送给AAA Server。AAA Server据此对该用户授权、计费。

4 认证方案性能分析

    本认证方案采用了单向散列函数、非对称密码体制、数字证书、数字签名等信息安全技术。认证服务器无需存储用户公钥,也不需要查找相应数据库,处理速度快。

    有效性(Validity):在本认证方案过程中,要求用户出示了由运营商证书服务器颁发的数字证书,并对证书进行了三项验证,确保证书的有效性(为运营商证书服务器所颁发)、完整性(未被修改过)和真实性(确实为该用户所有)得到验证。在AAA Server方,我们认为没有必要向客户端出示其证书。客户端知道合法的AAA Server的公钥,只需验证自称是AAA Server的一方拥有该公钥对应的私钥即可,因为世界上有且仅有合法的AAA Server知道该私钥。

    完整性(Integrity):在认证消息传输过程中,我们始终坚持了消息可靠传输这一原则,对认证消息采取了保护措施。一旦认证消息在传输过程中被修改,消息到达对方时将被发现。

    不可否认性(Non-repudiation):本方案中所有认证消息都采用了发送方数字签名,使得发送方对自己发送的消息不可否认。

    可行性(Feasibility ):本认证方案采用的单向散列函数、非对称密码体制、数字证书等信息安全技术经过多年发展,已经比较成熟。单向散列函数有MD2、MD4、MD5、SHA系列、HAVAL-128以及RIPEMD等,其中MD4目前被认为不安全。非对称密码体制中最成功的是RSA。值得一提的是与RSA算法相关的基本专利已于2000年9月到期,这直接关系到系统成本。另外,本方案采用的数字证书是自己颁发的,运营商的证书服务器具有自签名的顶级证书,无需借助第三方证书机构。

    本方案的一个缺陷是,只解决运营商与客户端设备之间的认证,而不支持对用户个体的认证(这可以通过基于口令方式得认证)

5 结束语

    在广播电视数字化、业务多样化和 HFC大规模双向改造的条件下,内容提供商、网络运营商和用户之间的安全认证尤为重要。本套基于单向散列函数、非对称密码体制和数字证书的认证方案,具有高的有效性和可行性,能有效解决远程身份认证的问题。

参考文献:

[1] Andrew Nash, William Duane, Celia Joseph, Derek Brink: PKI: Implementing and Managing E-Security, McGraw-Hill Companies,2001.

[2] Rivest R. The MD5 Message Digest Igorithm[S]. RFC 1321,1992-04.

[3] IETF, RFC2246, The TLS Protocol Version 1.0, http://www.ietf.org/rfc/rfc2246.txt?number=2246, January 1999.

[4] Shimshon Berkovits, Santosh Chokhani, et al. Public Key Infrastructure Study(final version) [M]. Nation Institute of Standards and Technology, 1994.

上一页:蓝牙电话系统中的切换
下一页: 基于客户端主动认证的条件接收系统