一种无源光网络系统密钥交换的方法转让专利

申请号 : CN200810102032.7

文献号 : CN101247220B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 孙智溢

申请人 : 中兴通讯股份有限公司

摘要 :

本发明公开了一种无源光网络(PON)系统密钥交换的方法,该方法包括以下步骤:第一次密钥交换周期到,按照标准的密钥交换方法进行第一次密钥交换生成密钥,当新的密钥更新周期到来时,光线路终端(OLT)将自身所产生的随机数和密钥切换时间利用上次密钥交换生成的密钥进行加密后发送给光网络单元(ONU),ONU收到后,向OLT发送确认应答消息,然后OLT和ONU同时生成新密钥;当OLT收到ONU发来的确认应答消息,且密钥切换时间到达时,OLT和ONU同时切换至新密钥。利用本发明,能够在保证密钥交换安全性的基础上,通过减少密钥交换过程中下行物理层操作管理维护(PLOAM)交互消息的数目降低密钥交换失败的风险。

权利要求 :

1. 一种无源光网络PON系统密钥交换的方法,其特征在于,该方法包括以下步骤:A、第一次密钥交换周期到,按照标准的密钥交换方法进行第一次密钥交换生成密钥,新的密钥更新周期到来时,光线路终端OLT将自身所产生的第一随机数和密钥切换时间利用当前密钥进行加密后,放入密钥切换时间下行物理层操作管理维护PLOAM消息中发送给光网络单元ONU;

B、ONU收到OLT发来的密钥切换时间PLOAM消息,利用当前密钥进行解密并提取所述第一随机数和密钥切换时间后,向OLT发送确认应答消息;

C、OLT和ONU均利用所述第一随机数以及当前密钥,以相同的方式进行运算生成新密钥;

D、OLT收到ONU发来的确认应答消息,且在所述密钥切换时间到达时,OLT和ONU同时切换至新密钥。

2. 根据权利要求1所述的方法,其特征在于,所述密钥切换时间为OLT为所述新密钥所确定的起始帧号。

3. 根据权利要求2所述的方法,其特征在于,所述密钥切换时间到达为所述起始帧号到达。

4. 根据权利要求1所述的方法,其特征在于,所述第一随机数的长度为小于等于48比特。

5. 根据权利要求1所述的方法,其特征在于,所述OLT向ONU发送密钥切换时间PLOAM消息的次数为三次。

6. 根据权利要求5所述的方法,其特征在于,所述ONU向OLT发送确认应答的PLOAM消息时,发送的次数为三次。

7. 根据权利要求1所述的方法,其特征在于,步骤C中所述新密钥的生成方法为:OLT和ONU均根据当前密钥以及所述第一随机数,生成本次密钥交换的第二随机数,由该第二随机数计算出新密钥。

8. 根据权利要求7所述的方法,其特征在于,所述第二随机数的长度为128比特。

9. 根据权利要求7或8所述的方法,其特征在于,所述第二随机数通过将所述第一随机数与所述当前密钥进行按位异或运算获得。

说明书 :

一种无源光网络系统密钥交换的方法

技术领域

[0001] 本发明涉及无源光网络(PON)密钥交换技术,尤其是指一种PON系统密钥交换的方法。

背景技术

[0002] 随着宽带接入技术的发展,PON被视为一种非常重要的宽带接入技术,其最大优势是在本地交换局与用户之间无需任何有源器件。PON系统通常由局侧的光线路终端(OLT)、用户侧的光网络单元(ONU)/光网络终端(ONT)和光分配网络(ODN)组成,通常采用点到多点的网络结构。其中,ODN由单模光纤和光分路器、光连接器等无源光器件组成,为OLT和ONU之间的物理连接提供光传输媒质。在PON系统中,下行数据广播给PON上的所有ONU,如果有恶意用户对ONU重新编程,就能够听到所有用户的所有下行数据,这是PON安全系统中遇到的所谓“偷听”威胁。
[0003] 为了防止偷听,目前,PON系统中主要采用ITU-T G.984.3规范中所使用的先进加密标准(AES)的加密方法对下行信道进行加密,如图1所示,这种加密方法主要包括以下步骤:
[0004] 步骤101、OLT通过广播或者单播向ONU发送下行物理层操作管理维护(PLOAM)通道的密钥请求消息以请求更新密钥,该密钥请求消息为Request_Key Message;
[0005] 步骤102、ONU接收到密钥请求消息后,产生长度为128比特的随机数(RAND),并将RAND存储在ONU的备份密钥寄存器(shadow_key_register)中;
[0006] 步骤103、ONU通过上行PLOAM密钥消息将RAND发送给OLT,该密钥消息为Encryption Key Message;
[0007] 在这里,由于上行PLOAM消息大小的限制,RAND被分为两个分片发送。为保证消息接收的成功,每个分片需重复发送三次,所以,ONU总共向OLT发送六个上行PLOAM Encryption Key Message。
[0008] 如果OLT未能成功接收RAND的任何一个分片三次,OLT将会向ONU发送新的Request_Key Message,要求ONU产生另外一个RAND。密钥传送失败三次后,OLT将会宣布密钥同步丢失,并向该ONU发送去激活(Deactive)消息。
[0009] 步骤104、ONU根据步骤102中存储的RAND,利用Key=f(RAND)计算密钥(key),并将计算出来的key存储在ONU的shadow_key_register中;
[0010] OLT同时根据接收到的RAND,通过Key=f(RAND)计算key,并将计算出来的key存储在OLT的shadow_key_register中;
[0011] 步骤105、OLT选择任意帧号作为开始使用新密钥的第一帧,并向ONU发送携带该帧号的密钥切换时间PLOAM消息,该消息为Key_switching_time;
[0012] 这里,Key_switching_time消息将会发送三次,ONU仅需要接收其中循环冗余校验(CRC)正确的一个就可以获知更换时间。
[0013] 步骤106、ONU向OLT发送确认应答PLOAM消息进行确认应答,该确认应答PLOAM消息为Acknowledge。
[0014] 这里,ONU每收到一个Key_switching_time消息,就向OLT发送一次确认响应,因为步骤105中OLT向ONU发送三次Key_switching_time消息,所以此处要进行三次应答。
[0015] 经过以上操作密钥交换成功后,OLT和ONU开始使用新密钥对下行数据进行加密和解密。
[0016] 在开始使用新密钥的第一帧的起始位置,OLT复制自身这一侧的shadow_key_register的内容到运行密钥寄存器(active_key_register),ONU复制自身这一侧的shadow_key_register的内容到active_key_register,保证两侧同时使用新的密钥。
[0017] 另外,OLT会向ONU周期性地发送密钥请求消息以实现周期性密钥交换,有效地防止偷听。
[0018] 由此可见,现有技术中运行一次密钥交换,OLT与ONU通常需要进行两次交互,步骤101中有一个PLOAM消息,步骤103中六个PLOAM消息,步骤105中三个PLOAM消息,步骤106中三个PLOAM消息,所以一次密钥交换过程总共用到十三个PLOAM消息。交互过程中每个PLOAM消息的丢失均可能导致密钥交换的失败,因此,采用现有技术的这种方法进行密钥交换时,失败的风险比较大。

发明内容

[0019] 有鉴于此,本发明的主要目的在于提供一种PON系统密钥交换的方法,能够在保证密钥交换安全性的基础上,通过减少密钥交换过程中PLOAM交互消息的数目提高密钥交换的效率,降低密钥交换失败的风险。
[0020] 为达到上述目的,本发明的技术方案是这样实现的:
[0021] 一种无源光网络PON系统密钥交换的方法,该方法包括以下步骤:
[0022] A、第一次密钥交换周期到,按照标准的密钥交换方法进行第一次密钥交换生成密钥,新的密钥更新周期到来时,光线路终端OLT将自身所产生的第一随机数和密钥切换时间利用当前密钥进行加密后,放入密钥切换时间下行物理层操作管理维护PLOAM消息中发送给光网络单元ONU;
[0023] B、ONU收到OLT发来的密钥切换时间PLOAM消息,利用当前密钥进行解密并提取所述第一随机数和密钥切换时间后,向OLT发送确认应答消息;
[0024] C、OLT和ONU均利用所述第一随机数以及当前密钥,以相同的方式进行运算生成新密钥;
[0025] D、OLT收到ONU发来的确认应答消息,且在所述密钥切换时间到达时,OLT和ONU同时切换至新密钥。
[0026] 进一步地,所述密钥切换时间为OLT为所述新密钥所确定的起始帧号。
[0027] 进一步地,所述密钥切换时间到达为所述起始帧号到达。
[0028] 较佳地,所述第一随机数的长度为小于等于48比特。
[0029] 较佳地,所述OLT向ONU发送密钥切换时间PLOAM消息的次数为三次。
[0030] 进一步地,所述ONU向OLT发送确认应答的PLOAM消息时,发送的次数为三次。
[0031] 进一步地,步骤C中所述新密钥的生成方法为:OLT和ONU均根据当前密钥以及所述第一随机数,生成本次密钥交换的第二随机数,由该第二随机数计算出新密钥。
[0032] 较佳地,所述第二随机数的长度为128比特。
[0033] 较佳地,所述第二随机数通过将所述第一随机数与所述当前密钥进行按位异或运算获得。
[0034] 本发明PON系统密钥交换的方法,在利用现有技术进行第一次密钥交换之后,由OLT直接生成随机数RAND,并对该RAND和所选择的任意帧号采用上次所生成的密钥进行加密,然后将该RAND和所选择的任意帧号放在密钥切换时间PLOAM消息中一次性发送给ONU,这样,就可以每次密钥交换时,在保证OLT发送给ONU的随机数和所选择的任意帧号安全的基础上,OLT和ONU仅只进行一次交互,每次密钥交换所需的PLOAM消息由现有技术的十三个减少到六个,因此减少了密钥交换过程所花费的时间,节省了系统的资源,最重要的是提高了密钥交换的效率,降低了密钥交换失败的风险;另外,虽然在OLT和ONU之间传送的随机数为48比特,但实际加密过程中使用的随机数是由随机数RAND和当前密钥进行计算得到的128比特的RAND′,并使用随机数RAND′进行加密算法的运算。因此,系统本身加密的安全性并没有因为交互的随机数降为48比特以下而降低。

附图说明

[0035] 图1为现有技术中ITU-T G.984.3密钥交换方法流程示意图;
[0036] 图2为本发明PON系统密钥交换方法流程示意图。

具体实施方式

[0037] 本发明的基本思想是:PON系统第一次密钥交换成功之后,OLT将自身生成的随机数及密钥切换时间利用上次密钥交换所生成的密钥(当前密钥)进行加密后同时发送给ONU,然后OLT和ONU同时根据该随机数及当前密钥生成新一轮加密的密钥,并同时在指定时刻切换密钥。
[0038] 下面结合附图对本发明的具体实施作进一步详细的说明。
[0039] 第一次密钥更新周期到达时,PON系统首先按照现有技术中ITU-T G.984.3密钥交换方法进行第一次密钥交换;
[0040] 在这里,PON系统一般按照现有技术中的ITU-T G.984.3密钥交换方法进行第一次密钥交换,之所以要按照现有技术进行第一次密钥交换,是因为现有技术中随机数RAND是由ONU发送给OLT的,如果第一次的RAND在没有任何密钥保护的基础上,直接由OLT发送给ONU,则所有的ONU均可以获得该RAND,该RAND就可能被恶意修改,此处正是为了防止RAND被恶意修改或破坏。而以下的步骤之所以可以将RAND由OLT发送给ONU,是因为本次密钥交换所生成的密钥采用了上次所生成的密钥,即当前密钥进行保护,保障了RAND的安全。
[0041] 本发明PON系统密钥交换方法流程如图2所示,该方法包括以下步骤:
[0042] 步骤201、新的密钥更新周期到来时,OLT生成小于等于48比特的随机数RAND,并将该RAND和任意选择的帧号利用当前密钥进行加密后放入密钥切换时间PLOAM消息中,将密钥切换时间PLOAM消息发送给ONU以请求更新密钥;
[0043] 在这里,OLT选择任意一个帧号作为开始使用新密钥的第一帧,将新密钥的起始帧号及生成的RAND放入密钥切换时间PLOAM消息,即放入Key_Switching_Time message中,这里,所选择的帧号实际代表密钥切换时间,新密钥起始帧号到达即密钥切换时间到达。密钥切换时间PLOAM消息需重复发送三次,以保证ONU能正确接收。另外,为了保证密钥交换过程的安全性,新密钥的起始帧号和随机数RAND字段采用了当前密钥进行加密。密钥切换时间PLOAM消息的消息格式如表一所示。
[0044] 另外,此处不需要分片,因为小于等于48比特的字段可以放在现有Key_Switching_Time_message消息中保留字段发送。
[0045]字节编号 内容 描述
1 ONU-ID或11111111 向指定ID对应的ONU发送的消息或者所有
ONU发送的消息。向所有ONU广播的消息
时,ONU-ID=0xFF
2 00010101 表明消息类型为“Key_Switching”
3 FrameCounter1 30比特的复帧计数器的6个最高有效位,此
计数器从使用新密钥的第一帧统计
4 FrameCounter2
5 FrameCounter3
6 FrameCounter4 30比特的复帧计数器的8个最低有效位,从
使用新密钥的第一帧统计
7-12 RAND 随机数RAND
[0046] 表一
[0047] 步骤202、ONU收到密钥切换时间PLOAM消息后,利用当前密钥进行解密并提取其中的密钥切换时间及RAND,并发送确认应答PLOAM消息给OLT。
[0048] 在这里,确认消息格式如表二所示。
[0049]字节编号 内容 描述
1 ONU-ID 指示发起此消息的ONU
2 00001001 表明消息类型为“Acknowledge”
3 DM_ID 下行消息的消息标识符
4 DMBYTE1 下行消息的第1字节
5 DMBYTE2 下行消息的第2字节
[0050]6 DMBYTE3 下行消息的第3字节
7 DMBYTE4 下行消息的第4字节
8 DMBYTE5 下行消息的第5字节
9 DMBYTE6 下行消息的第6字节
10 DMBYTE7 下行消息的第7字节
11 DMBYTE8 下行消息的第8字节
12 DMBYTE9 下行消息的第9字节
[0051] 表二
[0052] ONU每收到一个Key_Switching_Time message回送一个确认响应,所以这里ONU向OLT共计发送三个确认应答PLOAM消息。
[0053] 步骤203、OLT和ONU根据上次密钥交换所生成的当前密钥current_key和RAND,通过RAND′=G(RAND,current_key)生成128比特的RAND′,再通过ITUT G.984.3标准中规定的密钥生成方法Key=f(RAND′)计算出新密钥Key。
[0054] 在这里,OLT和ONU生成新密钥的方法是相同的,具体计算Key的公式由OLT和ONU事先共同确定。
[0055] 另外,计算RAND′的计算方式是采用随机数RAND对current_key进行按位异或。首先将current_key按照随机数RAND长度进行分段,然后每段都用随机数RAND进行按位异或操作,最后将分段异或的结果连接生成128比特长度的RAND′。通过ITUT G.984.3标准中规定的密钥生成方法Key=f(RAND′)计算新密钥Key。
[0056] 步骤204、OLT收到ONU发来的确认应答PLOAM消息,且在密钥切换时间到达时,同时切换至新的密钥。
[0057] 在这里,OLT只要收到一个ONU发来的确认应答消息,则认为密钥交换成功,在密钥切换时间到达时,即OLT和ONU在新密钥起始帧号到达时同时切换至新密钥。否则,OLT宣告密钥交换失败。
[0058] 到此,本发明的一次密钥交换过程结束,以后每次密钥交换周期到来时,PON系统都采用上述步骤201~步骤204来完成密钥交换。
[0059] 由此可见,本发明提供的PON系统中密钥交换的方法,与现有方法相比,OLT和ONU仅进行一次交互,且每次密钥交换所需的PLOAM消息由现有技术的十三个减少到六个,这样就提高了密钥交换的效率,降低了密钥交换失败的风险。另外,虽然在OLT和ONU之间传送的随机数为48比特,但实际加密过程中使用的随机数是由随机数RAND和当前密钥进行计算得到的128比特的RAND′,并使用随机数RAND′进行加密算法的运算。因此,系统本身加密的安全性并没有因为交互的随机数降为48比特以下而降低。
[0060] 以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。