具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
如图1所示,应用于公共报警系统中的实现数字签名的方法包括以下步骤。
101、用户设备接收并保存核心网节点通过非接入层消息或接入层消息下发的数字签名公钥,或者,所述用户设备接收并保存接入网节点通过第二接入层消息下发的数字签名公钥。
具体地,用3GPP系统中实现PWS时,数字签名由但不限于小区广播中心(Cell Broadcast Center,简称为:CBC)或小区广播实体(Cell BroadcastEntity,简称为:CBE)对告警消息中警报消息的明文采用数字签名私钥及数字签名算法进行加密而获得。该数字签名携带在该告警消息中。其中,小区广播中心和小区广播实体统称为小区广播设备。
核心网节点或者接入网节点可通过已有的消息流程,从CBC或者CBE上获取对该数字签名进行验证的最新的数字签名公钥,也可以由网络管理员将该最新的数字签名公钥手工配置在接入网节点上。
随后,UE就能接收到由核心网节点下发的非接入层消息(即NAS消息)或接入层消息(即AS消息),该消息中携带有上述最新的数字签名公钥,或者UE能接收到由接入网节点下发的第二接入层消息,该消息中携带有上述最新的数字签名公钥,UE接收到该最新的数字签名公钥后,将其保存在本地。
当然,在3GPP系统中,UE是从核心网节点最新的获取数字签名公钥,还是从接入网节点获取最新的数字签名公钥,可以在系统建立时指定,使得系统在运行过程中从指定的节点按指定的方式获取最新的数字签名公钥。
在3GPP提出的LTE(Long Term Evolution:长期演进)中,核心网节点为MME(移动管理实体,Mobility Management Entity),接入网节点为eNB(演进的基站,Evolution Node B);在3GPP提出的UMTS(Universal MobileTelecommunications System:通用移动通信系统)中,核心网节点为SGSN(SERVICING GPRS SUPPORT NODE,GPRS服务支持节点),接入网节点为RNC(无线网络控制器,Radio Network Controller);在3GPP提出的GSM(Global Systemfor Mobile Communications:全球移动通信系统)中,核心网节点为MSC(MobileSwitching Center,移动交换中心),接入网节点为BSC(基站控制器,BaseStation Controller)。
需要说明的是:“第二接入层消息”在本发明实施例中用于指代接入网节点发送的接入层消息。“第二”是为了和核心网节点发送的接入层消息在名称上区分开,不作为对本发明的限定。
102、所述用户设备根据数字签名算法及保存的数字签名公钥对接收到的告警消息中的数字签名进行验证。
具体地,UE在接收到告警消息后,需要对告警消息的数字签名进行验证,以确定该消息的完整性及可靠性。通过执行步骤101,UE在本地保存了数字签名公钥,该数字签名公钥与数字签名在加密时使用的私钥是一对密钥。在进行验证时,UE使用数字签名在加密时使用的数字签名算法及本地保存的数字签名公钥对数字签名进行验证,验证通过则说明该警报消息真实可靠,接下来UE会向用户发起警报;若没有验证通过,则说明该警报消息不可靠或已遭攻击,UE会取消向用户发起警报。
数字签名算法可通过本领域技术人员所知的任何一种方法通知给UE,使UE能使用该算法对数字签名进行验证,该数字签名的通知方法可以为下述实施例2中描述的预先配置在用户设备中或者用户设备根据告警消息中的数字签名算法标识进行选择得到,也可为其它方法。
本发明实施例提供的实现数字签名的方法中,核心网节点通过非接入层消息或接入层消息向用户设备下发数字签名公钥,或者接入网节点通过第二接入层消息向用户设备下发数字签名公钥,同时,用户设备保存该数字签名公钥,且用户设备通过数字签名算法及本地保存的数字签名公钥,可实现对接收到的告警消息中的数字签名进行验证,本发明详细地定义了数字签名公钥的下发方法,弥补了3GPP标准中未详细定义数字签名实现方法的缺陷。
本实施例还提供了一种应用于公共报警系统中的用户设备,如图2所示,该设备包括接收模块21及验证模块22。其中,接收模块21用于接收并保存核心网节点通过非接入层消息或接入层消息下发的数字签名公钥,或者,接收并保存接入网节点通过第二接入层消息下发的数字签名公钥;验证模块22用于根据数字签名算法及所述接收模块接收到的所述数字签名公钥对接收到的告警消息中的数字签名进行验证。
上述各模块对应的方法已于上述进行了详细描述,在此不再赘述。
本发明实施例提供的用户设备由于利用了接收模块,因此保存了核心网节点通过非接入层消息或接入层消息向用户设备下发的数字签名公钥,或者保存了接入网节点通过第二接入层消息向用户设备下发的数字签名公钥,且验证模块通过数字签名算法及接收模块中接收到的数字签名公钥,可实现对接收到的告警消息中的数字签名进行验证,本发明实施例详细地定义了数字签名公钥的下发方法,弥补了3GPP标准中未详细定义数字签名实现方法的缺陷。
实施例2
如图3所示,应用于公共报警系统中的实现数字签名的方法包括以下步骤。
301、核心网节点接收用户设备发送的包含公钥标识的请求消息。
具体地,用户设备向核心网节点发送请求消息,该请求消息中包含有用户设备在本地保存的数字签名公钥所对应的公钥标识,核心网节点在接收到该包含公钥标识的请求消息后执行步骤302。
302、核心网节点确定请求消息中的公钥标识与本地保存的数字签名公钥所对应的公钥标识不相同。
具体地,核心网节点比较请求消息中的公钥标识与核心网节点在本地保存的数字签名公钥所对应的公钥标识,如果确定两个公钥标识不相同时,则执行步骤303。
303、核心网节点通过非接入层消息或接入层消息向用户设备下发本地保存的数字签名公钥及其对应的公钥标识。
具体地,当核心网节点确定了请求消息中的公钥标识与本地保存的数字签名公钥所对应的公钥标识不相同后,核心网节点会通过NAS消息或AS消息向用户设备下发本地保存的数字签名公钥及其对应的公钥标识。
当核心网节点比较请求消息中的公钥标识与本地保存的数字签名公钥所对应的公钥标识后,比较结果为相等,说明用户设备中保存的数字签名公钥与核心网节点中保存的数字签名公钥相同,都为最新的数字签名公钥,则不需要对用户设备中的数字签名进行更新,即核心网节点不需要向用户设备发送本地保存的数字签名公钥及其对应的公钥标识。
相反,比较结果为不相等时,核心网节点则向用户设备发送本地保存的数字签名公钥及其对应的公钥标识。
上述核心网节点可以为LTE中的MME、UTMS中的SGSN,或者为GSM中的MSC。
在本发明实施例提供的实现数字签名的方法中,核心网节点根据用户设备所发送的请求消息中携带的公钥标识,确定在请求消息中的公钥标识与本地保存的数字签名公钥所对应的公钥标识不相同的情况下,才向用户设备发送本地保存的所述数字签名公钥及其对应的公钥标识,不仅能实现数字签名公钥的下发,还可实现对用户设备中保存的数字签名公钥进行更新,弥补了3GPP标准中未详细定义数字签名实现方法的缺陷。
本发明实施例还提供了一种应用于公共报警系统的核心网节点设备,如图4所示,该设备包括:第二接收模块41,用于接收用户设备发送的包含公钥标识的请求消息;第一确定模块42,用于确定所述第二接收模块41所接收的请求消息中的公钥标识与本地保存的数字签名公钥所对应的公钥标识不相同;发送模块43,用于当第一确定模块42确定请求消息中的公钥标识与本地保存的数字签名公钥所对应的公钥标识不相同时,通过非接入层消息或接入层消息向用户设备下发本地保存的所述数字签名公钥及其对应的公钥标识。
上述各模块对应的方法已于上述进行了详细描述,在此不再赘述。
需要说明的是:“第二接收模块”在本发明实施例中用于指代核心网节点设备中用于接收请求消息的接收模块。“第二”是为了和用户设备中用于接收数字签名公钥的接收模块在名称上区分开,不作为对本发明的限定。
本发明实施例提供的核心网节点设备,由于发送模块会在第一确定模块确定请求消息中的公钥标识与本地保存的数字签名公钥所对应的公钥标识不相同时,通过非接入层消息或接入层消息向用户设备下发的数字签名公钥,不仅能实现数字签名公钥的下发,还可实现对用户设备中保存的数字签名公钥进行更新,弥补了3GPP标准中未详细定义数字签名实现方法的缺陷。
实施例3
本实施例提供一种实现数字签名的方法,该方法应用于公共报警系统中,包括:接入网节点确认用户设备已完成网络注册和安全认证;或者,确认本地保存的数字签名公钥已更新;所述接入网节点通过第二接入层消息向所述用户设备下发本地保存的数字签名公钥。
具体地,如实施例1所述,在建立用3GPP系统实现的PWS时,可以由网络决定UE从网络侧的哪个实体上获取最新的数字签名公钥。由于接入网节点可以通过已知的消息流程从CBC或CBE上获取解密数字签名所需的数字签名公钥,或者可以由网络管理员手工将该数字签名公钥配置在接入网节点上,因此,根据网络决定,接入网节点可通过第二接入层消息向用户设备下发本地保存的数字签名公钥。
如果网络决定由接入网节点向UE下发最新的数字签名公钥,则接入网节点可以在确认UE已完成网络注册和安全认证,即确认一个新的UE已接入PWS后,将本地保存的数字签名公钥通过第二接入层消息下发给该UE。另外,接入网节点也可以在确认本地保存的所述数字签名公钥已更新后,将本地保存的数字签名公钥通过第二接入层消息下发给该UE。其中,在CBC或CBE通过已有的消息流程将更新后的数字签名公钥发送给接入网节点后,接入网节点上会触发数字签名公钥更新流程,即接入网节点确认本地保存的数字签名公钥已更新,在该流程中接入网节点将本地保存的旧的数字签名公钥替换为更新后的数字签名公钥,并通过第二接入层消息将该更新后的数字签名公钥下发给UE。
上述第二接入层消息可以为但不限于以下消息:接入层安全模式命令(ASSecurity Mode Command)消息、无线承载(Radio Bear,简称为:RB)消息、寻呼(Paging)消息、Radio Access Network Application Part(无线接入网络应用)消息、无线资源控制(Radio Resource Control,简称为:RRC)消息。其中,RB消息包括RB建立消息、RB修改消息等一系列的消息,RRC消息也包括RRC建立消息、RRC修改消息等一系列的消息。
图14a~14c分别示出了在LTE、UTMS、GSM系统中接入网节点下发数字签名公钥的流程。
在图14a中,LTE系统中的接入网节点eNB通过第二接入层消息,即接入层安全模式命令(AS Security Mode Command)消息直接向UE下发最新的数字签名公钥。
在图14b中,UTMS系统中的接入网节点RNC通过第二接入层消息,即安全模式命令(Security Mode Command)消息下发数字签名公钥。该消息经NodeB(基站)转发后到达UE,从而使UE获取最新的数字签名公钥。
在图14c中,GSM系统中的接入网节点BSC通过第二接入层消息,即加密模式命令(Cipher Mode Command)消息下发数字签名公钥。该消息经BTS(BaseTransceiver Station,基地收发信机站)转发后到达UE,从而使UE获取最新的数字签名公钥。
本实施例中,由于接入网节点可通过第二接入层消息向用户设备下发本地保存的数字签名公钥,提供了数字签名公钥下发的具体实现方法,因此,弥补了3GPP标准中未详细定义数字签名实现方法的缺陷。
实施例4
应用于PWS中的实现数字签名的方法包括:用户设备接收并保存核心网节点通过非接入层消息或接入层消息下发的数字签名公钥;所述用户设备根据数字签名算法及保存的数字签名公钥对接收到的告警消息中的至少一个数字签名分别进行验证。
在3GPP中实现PWS时,上述的非接入层消息(即NAS消息)可以为非接入层安全模式命令(NAS Security Mode Command)消息、附着接受(Attach Accept)消息、位置区更新接受(TAU Accept)消息或者路由区更新接受(RAU Accept)消息。接入层消息(即AS消息)可为接入层安全模式命令(AS Security ModeCommand)消息。
另外,上述的数字签名算法可预先配置在用户设备中或者由用户设备根据数字签名算法标识进行选择得到,其中,数字签名算法标识可设置于告警消息中的警报消息内或告警消息中的安全参数内。
当数字签名算法标识设置于警报消息内时,例如在LTE系统中,可将标识放到写入替换请求(WRITE-REPLACE Request)消息或者写入替换指示(WRITE-REPLACE Indication)消息中。也可以将标识放到eNB(演进的基站,Evolution Node B)发给UE的广播消息中的第10个字段(SIB10)中。其中,在LTE系统中,WRITE-REPLACE Request消息或者WRITE-REPLACE Indication消息由CBC(小区广播中心,Cell Broadcast Center)发送给MME(移动管理实体,Mobility Management Entity),再由MME转发给eNB,eNB将WRITE-REPLACERequest消息或者WRITE-REPLACE Indication消息中的告警消息再以广播消息的形式发送给UE。
设置了的数字签名算法标识(Signature algorithm Identifier)的上述广播消息中的SIB10描述如下:
其中,Signature algorithm Identifier占用的存储空间为一个8位字节,其详细定义如下表:
Signature algorithm Identifier占用了8位字节octet1的低4位,可表示出16种数字签名算法,高4位预留。
当Signature algorithm Identifier设置于安全参数,即告警安全信息(Warning-Security-Information)内时,可在图5所示的安全参数数据结构中数字签名所占用的8位字节8~8位字节50的8位字节8中存放数字签名算法标识(Signature algorithm Identifier),而其余的8位字节9~8位字节50仍存放数字签名。
设置了的数字签名算法标识的Warning-Security-Information如图6所示,数字签名算法标识(Signature algorithm Identifier)占用了8位字节8的低4位,可表示出16种数字签名算法,高4位预留。将数字签名算法标识设置在安全参数中,只需要在进行签名的实体中增加一个数字签名算法标识设置步骤,不会增加CBC、MME和eNB的额外处理,因此,不会增加LTE系统中各设备的处理负担。
在UMTS系统中,数字签名算法标识同样可以设置于所述告警消息中的警报消息内或所述告警消息中的安全参数内。
当数字签名算法标识至于报警消息内时,在UMTS系统中,可将数字签名算法标识放到WRITE-REPLACE Request消息或者WRITE-REPLACE Indication消息中告警安全信息(Warning Security Information)以外,其中WRITE-REPLACERequest消息或者WRITE-REPLACE Indication消息由CBC发送给RNC(无线网络控制器,Radio Network Controller),如同LTE系统中的方法。也可以将数字签名算法标识放到UTRAN(UMTS Terrestrial Radio Access Network,UMTS陆地无线接入网)发给UE的ETWS PRIMARY NOTIFICATION WITH SECURITY(ETWS主告知安全)消息中。
ETWS PRIMARY NOTIFICATION WITH SECURITY是UTRAN发送给UE的消息,该消息的具体描述如下表。其中的Signature algorithm Identifier项保存着数字签名算法标识。
信元 |
需求 |
多值 |
类型和参考 |
消息类型 |
必须 |
|
消息类型 |
其他信元 |
|
|
|
ETWS信息 |
必须 |
|
ETWS信息,参见10.3.8.4ea |
ETWS告警安全信息 |
可选 |
|
ETWS告警安全信息10.3.8.4eb |
数字签名算法标识 |
可选 |
|
|
在UMTS系统中,还可以通过PAGING TYPE 1(第一类型寻呼)消息或者SYSTEMINFORMATION CHANGE INDICATION(系统信息改变指示)消息以类似的方法设置签名算法标识。UMTS中的这些消息承载因包含了警报相关消息而需要进行修改。类似于上表的方法增加数字签名算法标识的信元。
其中,Signature algorithm Identifier占用的存储空间为一个8位字节,其详细定义如下表:
Signature algorithm Identifier占用了8位字节octet1的低4位,可表示出16种数字签名算法,高4位预留。
当Signature algorithm Identifier设置于安全参数,即告警安全信息(Warning-Security-Information)内时,可在图5所示的安全参数数据结构中数字签名所占用的8位字节8~8位字节50的8位字节8中存放数字签名算法标识(Signature algorithm Identifier),而其余的8位字节9~8位字节50仍存放数字签名。
设置了的数字签名算法标识的Warning-Security-Information如图6所示,数字签名算法标识(Signature algorithm Identifier)占用了8位字节8的低4位,可表示出16种数字签名算法,高4位预留。将数字签名算法标识设置在安全参数中,只需要在进行签名的实体中增加一个数字签名算法标识设置步骤,不会增加CBC、UTRAN实体的额外处理,因此,不会增加UMTS系统中各设备的处理负担。
在GSM系统中,数字签名算法标识同样可以设置于所述告警消息中的警报消息内或所述告警消息中的安全参数内。若放置在告警消息中的安全参数内则方法如LTE系统和UMTS系统,这种方法只需要在进行签名的实体中增加一个数字签名算法标识设置,不会增加网络实体的额外处理,因此,不会增加GSM系统中各设备的处理负担。若数字签名算法标识设置于所述告警消息中的警报消息内,因GSM空口用于下发PWS警报消息的消息可以是PAGING TYPE 1消息或者是PACKET PAGING REQUEST(封包寻呼请求)消息,因此数字签名算法标识可以类似LTE和UMTS系统中的方法设置,即在GSM系统包含警报消息PAGING TYPE1消息或者是PACKET PAGING REQUEST(封包寻呼请求)消息中的消息信息单元或域中增加设置数字签名算法标识域,长度以及位含义的定义可以类似LTE和UMTS系统中定义。可以理解这些消息信元因包含警告消息而进行了对应的修改。
需要说明的是,Signature algorithm Identifier并不限于上述的设置方式,而且可以定义其它长度和形式,只要能够将数字签名的算法进行区分即可。
本实施例在用户设备接收并保存核心网节点通过非接入层消息或接入层消息下发的数字签名公钥之前,还可包括向核心网节点发送请求消息,该请求消息为:附着(Attach)请求消息、位置区更新(TAU)请求消息或者路由区更新(RAU)请求消息。下面参照图7对LTE系统中一种UE接收并保存核心网节点MME通过非接入层消息或接入层消息下发的数字签名公钥的方法进行详细说明。
701、UE向MME发送请求消息,该消息为Attach请求消息、TAU请求消息或者RAU请求消息。
702、UE和MME之间可能会可选的进行一个基于AKA协议的流程,即ESP AKA流程。
703、UE接收MME发送的非接入层安全模式命令消息,即NAS Security ModeCommand消息,该消息中包含有MME保存的数字签名公钥。
704、UE保存MME发给其的最新的数字签名公钥。
705、UE向MME发送非接入层安全模式完成消息,即NAS Security ModeComplete消息。
706、UE接收MME发送的请求接受消息,该请求接受消息为Attach Accept消息、TAU Accept消息或者RAU Accept消息。
另外,MME保存的最新的数字签名公钥也可以包含在Attach Accept消息、TAU Accept消息或者RAU Accept消息中,此时,UE保存最新的数字签名公钥的步骤需放在接收请求接受消息步骤之后进行。
类似地,对于UMTS系统或者GSM系统,核心网节点SGSN或MSC也可以按图7所示的步骤代替MME实现数字签名公钥的下发。SGSN或MSC既可以在安全模式命令Security Mode Command消息或非接入层消息如LAU Accept消息中下发最新的数字签名公钥给UE,也可以在Attach Accept消息或者RAU Accept消息中发送最新的数字签名公钥给UE。
本实施例在图7所示的数字签名公钥获取保存方法的基础上作了改进,提出了另一种如图8所示的数字签名公钥获取保存方法,该方法定义了一个公钥标识,每个公钥标识只与一个数字签名公钥相对应,UE在本地保存数字签名公钥的同时,也保存与该数字签名公钥对应的公钥标识。对该方法的详细说明如下。
801、UE向MME发送附着请求消息、位置区更新请求消息或路由区更新请求消息,即Attach请求消息、TAU请求消息或者RAU请求消息,该消息中包含与UE上保存的数字签名公钥相对应的公钥标识PKSI。
802、UE和MME之间可能会可选的进行一个基于AKA协议的流程,即EPS AKA流程。
803、MME判断Attach请求消息、TAU请求消息或者RAU请求消息中的PKSI与自己保存的最新的公钥标识是否一致,如果不一致则在随后的步骤中向UE下发最新的公钥标识及与该标识对应的最新的数字签名公钥。
804、UE接收MME发送的非接入层安全模式命令消息,即NAS Security ModeCommand消息,当在步骤803中的判断结果为不一致时,该消息中包含有MME保存的最新的数字签名公钥及对应的PKSI。
805、当步骤803中的判断结果为不一致时,UE保存MME发给其的最新的数字签名公钥及对应的PKSI。
806、UE向MME发送非接入层安全模式完成消息,即NAS Security ModeComplete消息。
807、UE接收MME发送的请求接受消息,即Attach Accept消息、TAU Accept消息或者RAU Accept消息。
另外,MME保存的最新的数字签名公钥及其对应的PKSI也可以包含在Attach Accep消息、TAU Accept消息或者RAU Accept消息中,此时,UE保存最新的数字签名公钥及对应的PKSI步骤需放在发送请求接受消息步骤之后进行。
同样地,对于UMTS系统或者GSM系统,核心网节点SGSN或MSC也可以按图8所示的步骤代替MME实现数字签名公钥及其对应的PKSI的下发。SGSN或MSC既可以在Security Mode Command消息中或者非接入层消息,如LAU Accept消息中下发最新的数字签名公钥及其对应的PKSI给UE,也可以在Attach Accept消息或者RAU Accept消息中发送最新的数字签名公钥及其对应的PKSI给UE。
为了防止中间人对上述请求消息进行攻击,MME、SGSN或MSC在向UE发送最新的数字签名公钥及对应的PKSI的同时,可将Attach请求消息或TAU请求消息中包含的PKSI返回给UE,UE在保存MME、SGSN或MSC发送的最新的数字签名公钥及对应的PKSI前,先对该返回的PKSI进行验证,若与自己保存的PKSI不同则说明Attach请求消息或TAU请求消息遭到攻击,且不保存MME、SGSN或MSC发送的最新的数字签名公钥及对应的PKSI。
当考虑到UE漫游到另外一个网络时,可能会出现另外一个网络所用的PKSI与现在网络的PKSI相同,但是数字签名公钥不同的情况。此时,需要在上述步骤801的请求消息中增加UE当前所处网络的网络标识(PLMN ID)。
上述步骤803中也需要相应地增加网络标识判断的步骤,即在MME判断Attach请求消息或TAU请求消息中的公钥标识与MME中保存的公钥标识是否相同之前,还包括MME判断Attach请求消息、TAU请求消息或RAU请求消息中的PLMN ID与MME所处网络的网络标识是否相同,如果相同,执行上述MME判断Attach请求消息、TAU请求消息或RAU请求消息中的公钥标识与MME中保存的公钥标识是否相同的步骤;如果不同,则不需要执行上述MME判断Attach请求消息、TAU请求消息或RAU请求消息中的公钥标识与MME中保存的公钥标识是否相同的步骤,而直接由MME在随后的步骤中向UE发送其保存的最新的数字签名公钥及对应的PKSI。
上述步骤804中MME向UE发送最新的数字签名公钥及对应的PKSI之外,还可发送当前所处网络的PLMN ID,PLMN ID可作为PKSI的一部分进行发送。
上述步骤805中对最新的数字签名公钥及对应的PKSI进行保存之外,还包括:将UE当前所处网络的PLMN ID与最新的数字签名公钥及对应的PKSI一起进行关联保存。UE当前所处网络的PLMN ID可以由MME下发或者由UE从系统信息中获取。
需要说明的是,对于UMTS系统或GSM系统,当考虑到UE漫游到另外一个网络时,核心网节点SGSN或者MSC可以代替MME完成上述PLMN ID的判断步骤及数字签名公钥、公钥标识的下发步骤。
本实施例在图7所示的数字签名公钥获取保存方法的基础上作了改进,又提出了一种数字签名公钥获取保存方法,如图9所示。
901、UE向MME发送请求消息,即Attach请求消息、TAU请求消息或RAU请求消息。
902、UE和MME之间可能会可选的进行一个基于AKA协议的流程,即EPS AKA流程。
903、接入网节点eNB接收MME发送的接入层安全模式命令消息,即ASSecurity Mode Command消息,该消息中包含有MME保存的最新的数字签名公钥。
904、eNB转发AS Security Mode Command消息至UE。
905、UE保存eNB发给其的最新的数字签名公钥。
906、UE向eNB发送接入层安全模式完成消息,即AS Security ModeComplete消息。
907、eNB转发AS Security Mode Complete消息至MME。
908、UE接收MME发送请求接受消息,即Attach Accept消息、TAU Accept消息或者RAU Accept消息。
本方法与图7所示的数字签名公钥获取保存方法的主要不同的是MME使用AS Security Mode Command先将最新的数字签名公钥发送给接入网节点eNB,再由eNB将该消息转发给UE。
另外,MME保存的最新的数字签名公钥也可以包含在Attach Accept消息、TAU Accept消息或者RAU Accept消息中,此时,UE保存最新的数字签名公钥的步骤需放在发送请求接受消息步骤之后进行。
同样地,对于UMTS系统,核心网节点SGSN也可以按图9所示的步骤代替MME实现数字签名公钥的下发。SGSN既可以借助于接入网节点RNC的转发将最新的数字签名公钥在Security Mode Command消息中下发给UE,也可以在AttachAccept消息、LAU Accept消息或者RAU Accept消息中发送最新的数字签名公钥给UE。
本实施例在图8所示的数字签名公钥获取保存方法的基础上作了改进,再次提出了一种数字签名公钥获取保存方法,如图10所示。
1001、UE向MME发送请求消息,即Attach请求消息、TAU请求消息或RAU请求消息,该消息中包含与UE上保存的数字签名公钥相对应的公钥标识PKSI。
1002、UE和MME之间可能会可选的进行一个基于AKA协议的流程,即EPS AKA流程。
1003、MME判断Attach请求消息、TAU请求消息或RAU请求消息中的PKSI与自己保存的最新的公钥标识是否一致,如果不一致则在随后的步骤中向UE下发最新的公钥标识及与该标识对应的最新的数字签名公钥。
1004、eNB接收MME发送的接入层安全模式命令消息,即AS Security ModeCommand消息,当在步骤1003中的判断结果为不一致时,该消息中包含有MME保存的最新的数字签名公钥及对应的PKSI。
1005、eNB转发AS Security Mode Command消息至UE。
1006、当步骤1003中的判断结果为不一致时,UE保存MME发给其的最新的数字签名公钥及对应的PKSI。
1007、UE向eNB发送接入层安全模式完成消息,即AS Security ModeComplete消息。
1008、eNB转发AS Security Mode Complete消息至MME。
1009、UE接收MME发送的请求接受消息,即Attach Accept消息、TAU Accept消息或RAU Accept消息。
本方法与图8所示的数字签名公钥获取保存方法的主要不同的是MME使用AS Security Mode Command先将最新的数字签名公钥及对应的公钥标识发送给eNB,再由eNB将该消息转发给UE。
另外,MME保存的最新的数字签名公钥也可以包含在Attach Accept消息、TAU Accept消息或RAU Accept消息中,此时,UE保存最新的数字签名公钥及对应的PKSI步骤需放在发送请求接受消息步骤之后进行。
同样地,对于UMTS系统,核心网节点SGSN也可以按图10所示的步骤代替MME实现数字签名公钥及其对应的PKSI的下发。SGSN既可以借助于接入网节点RNC的转发将最新的数字签名公钥及其对应的PKSI在Security Mode Command消息中下发给UE,也可以在Attach Accept消息、LAU Accept消息或者RAU Accept消息中发送最新的数字签名公钥及其对应的PKSI给UE。
为了防止中间人对上述请求消息进行攻击,MME在通过eNB向UE发送最新的数字签名公钥及对应的PKSI的同时,可将Attach请求消息或TAU请求消息中包含的PKSI返回给UE,UE在保存MME发送的最新的数字签名公钥及对应的PKSI前,先对该返回的PKSI进行验证,若与自己保存的PKSI不同则说明Attach请求消息或TAU请求消息遭到攻击,且不保存MME发送的最新的数字签名公钥及对应的PKSI。
当考虑到UE漫游到另外一个网络时,可能会出现另外一个网络所用的PKSI与现在网络的PKSI相同,但是数字签名公钥不同的情况。此时,需要在上述步骤1001的请求消息中增加UE当前所处网络的网络标识(PLMN ID)。
上述步骤1003中也需要相应地增加网络标识判断的步骤,即在MME判断Attach请求消息或TAU请求消息中的公钥标识与MME中保存的公钥标识是否相同之前,还包括MME判断Attach请求消息、TAU请求消息或RAU请求消息中的PLMN ID与MME所处网络的网络标识是否相同,如果相同,执行上述MME判断Attach请求消息、TAU请求消息或RAU请求消息中的公钥标识与MME中保存的公钥标识是否相同的步骤;如果不同,则不需要执行上述MME判断Attach请求消息、TAU请求消息或RAU请求消息中的公钥标识与MME中保存的公钥标识是否相同的步骤,而直接由MME在随后的步骤中向UE发送其保存的最新的数字签名公钥及对应的PKSI。
上述步骤1004、1005中,MME通过eNB向UE发送最新的数字签名公钥及对应的PKSI之外,还可发送当前所处网络的PLMN ID,PLMN ID可作为PKSI的一部分进行发送。
上述步骤1006中对最新的数字签名公钥及对应的PKSI进行保存之外,还包括:将UE当前所处网络的PLMN ID与最新的数字签名公钥及对应的PKSI一起进行关联保存。UE当前所处网络的PLMN ID可以如上所述由MME下发或者由UE从系统信息中获取。
需要说明的是,对于UMTS系统或GSM系统,当考虑到UE漫游到另外一个网络时,核心网节点SGSN或者MSC可以代替MME完成上述PLMN ID的判断步骤及数字签名公钥、公钥标识的下发步骤。
在3GPP中实现PWS时,对告警消息的签名可能会由CBC或者CBE来负责。CBC是属于核心网内部的实体,而CBE是不在3GPP网络范围内的。而目前3GPP标准中还没有确定报警消息的签名时由CBC来实现还是由CBE来实现。
当CBC负责签名告警消息时,由于在每个核心网中都由独立的一个CBC实体来负责签名,且即使在在网络共享(Network sharing)的场景下,多个网络也会同时选择一个公共的CBC,因此对于UE来说,可以根据下发的数字签名公钥对告警消息进行验证。
当CBE负责告警消息的签名时,由于在一个网络中,可能会存在多个CBE(比如在中国,发布告警消息的实体包括地震局、海啸中心、防洪指挥中心等),那么UE需要获知所接收到的告警消息所对应的CBE实体及对该告警消息进行验证所使用的数字签名公钥。
因此本实施例在图7所示的数字签名公钥获取保存方法的基础上作了改进,提出了一种数字签名公钥获取保存方法(参见图11),能使UE上保存的数字签名公钥与CBE对应起来,从而能够获知该数字签名所对应的数字签名公钥,采用该数字签名公钥验证签名。
1101、UE向MME发送请求消息,该消息为Attach请求消息、TAU请求消息或者RAU请求消息,该请求消息中包含的小区广播实体标识。
具体地,该小区广播实体标识用来区分不同的CBE,可以对网络中所有的CBE进行编号,使每个CBE对应唯一的小区广播实体标识。
1102、UE和MME之间可能会可选的进行一个基于AKA协议的流程,即ESP AKA流程。
1103、UE接收MME发送的非接入层安全模式命令消息,即NAS Security ModeCommand消息,该消息中包含有MME保存的对应上述小区广播实体标识的数字签名公钥及该小区广播实体标识。其中,对应小区广播实体标识的数字签名公钥表示生成该数字签名公钥的小区广播实体的标识为该小区广播实体标识。
1104、UE将MME发给该UE的小区广播实体标识及数字签名公钥进行关联保存。
1105、UE向MME发送非接入层安全模式完成消息,即NAS Security ModeComplete消息。
1106、UE接收MME发送的请求接受消息,该请求接受消息为Attach Accept消息、TAU Accept消息或者RAU Accept消息。
另外,MME保存的对应请求消息中小区广播实体标识的数字签名公钥及该小区广播实体标识可以包含在Attach Accept消息、TAU Accept消息或者RAUAccept消息中,或者也可以包含在新定义的消息中,该新定义的消息用于下发新的数字签名公钥。当小区广播实体标识及数字签名公钥包含在Attach Accept消息、TAU Accept消息或者RAU Accept消息中时,UE保存数字签名公钥的步骤需放在接收请求接受消息步骤之后进行。
同样地,对于UMTS系统或者GSM系统,核心网节点SGSN也可以按图11所示的步骤代替MME实现数字签名公钥及其对应的小区广播实体标识的下发。SGSN或MSC既可以在Security Mode Command消息或非接入层消息如LAU Accept消息中下发最新的数字签名公钥及其对应的小区广播实体标识给UE,也可以在Attach Accept消息或者RAU Accept消息中发送最新的数字签名公钥及其对应的小区广播实体标识给UE。
当UE本地未保存小区广播实体标识时,UE可通过非接入层消息或接入层消息从核心网节点处请求获得至少一个小区广播实体标识及其对应的数字签名公钥,当UE向MME、SGSN或MSC请求数字签名公钥时,请求消息中的小区广播实体标识可能不只一个,MME、SGSN或MSC收到请求消息后,会将其上保存的对应于请求消息中所有小区广播实体标识的数字签名公钥,按照对应关系下发给UE。
需要说明的是:由于MME、SGSN或MSC可以从之前的PWS消息流程中获知告警消息数字签名所使用的数字签名公钥及生成该数字签名的CBE的小区广播实体标识,MME、SGSN或MSC还可以获知与该数字签名公钥对应的公钥标识,因此,UE可向MME、SGSN或MSC请求某个小区广播实体对告警消息签名时使用的最新的数字签名公钥,或者请求某个小区广播实体对告警消息签名时使用多个数字签名公钥中与某个公钥标识对应的数字签名公钥。
另外,对于图11所示的数字签名公钥获取保存方法,其中的请求消息还可包含公钥标识,该公钥标识用于区分某一CBE签名告警消息时所使用的各个数字签名公钥,因此,用小区广播实体标识及公钥标识可以唯一确定一个数字签名公钥。
当MME、SGSN或MSC收到带有小区广播实体标识及公钥标识的请求消息后,会判断请求消息中的公钥标识与本地保存的对应于所述小区广播实体标识的公钥标识是否相同,如果不相同,则通过非接入层消息或接入层消息下发对应请求消息中小区广播实体标识的公钥标识及数字签名公钥,并同时下发该小区广播实体标识。
随后,UE将MME、SGSN或MSC下发的小区广播实体标识与对应的公钥标识及数字签名公钥进行关联保存。
对于图11所示的数字签名公钥获取保存方法,其中的请求消息可包含小区广播实体标识、对应该小区广播实体标识的公钥标识及用户设备当前所处网络的网络标识。当核心网节点MME、SGSN或MSC接收到该请求消息后会先判断请求消息中的网络标识与核心网节点MME、SGSN或MSC当前所处网络的网络标识是否相同,如果不相同,则通过非接入层消息或接入层消息下发对应于请求消息中小区广播实体标识的数字签名公钥、对应该数字签名公钥的公钥标识及该小区广播实体标识。如果相同,会继续判断请求消息中的公钥标识与MME、SGSN或MSC本地保存的对应于请求消息中小区广播实体标识的公钥标识是否相同,如果不相同,则MME、SGSN或MSC通过非接入层消息或接入层消息下发对应于请求消息中小区广播实体标识的公钥标识、对应该公钥标识的数字签名公钥及该小区广播实体标识,如果相同则不用进行上述数字签名公钥下发步骤。
UE将从MME、SGSN或MSC接收到的小区广播实体标识、对应该小区广播实体标识的公钥标识、对应该公钥标识的数字签名公钥及UE本地所处网络的网络标识作为一组相关数据保存起来,即所谓的关联保存。其中,UE所处网络的网络标识由核心网节点MME、SGSN或MSC通过非接入层消息或接入层消息下发至用户设备或者由用户设备从系统信息中获取。
对于图7所示的数字签名公钥的获取保存方法,UE可一次从MME、SGSN或MSC处获得两个最新的数字签名公钥。即当不考虑小区广播实体标识的情况下,MME、SGSN或MSC中保存有更新日期最接近当前时间的两个最新的数字签名公钥,MME、SGSN或MSC上也可以保存分别与这两个数字签名公钥对应的公钥标识,UE通过请求消息就可从MME、SGSN或MSC处获取这两个最近的数字签名公钥,也可以同时获取对应的公钥标识。当考虑小区广播实体标识时,对应每个小区广播实体标识MME、SGSN或MSC上都保存有两个最新的数字签名公钥,也可以保存分别与这两个数字签名公钥对应的公钥标识,UE通过请求消息可请求MME、SGSN或MSC在一次下发流程中将两个最新的数字签名公钥一起下发,或者将对应于请求消息中小区广播实体标识的两个最新的数字签名公钥一起下发。
在本实施例的实现数字签名的方法中,对数字签名进行验证的方法可包括如下步骤。
第1步、根据保存的数字签名公钥及数字签名算法对所述告警消息中的数字签名进行验证。
第2步、若验证不通过,向核心网节点请求最新的数字签名公钥,并采用所述最新的数字签名公钥与所述数字签名算法对所述告警消息中的数字签名再次进行验证。
在上述数字签名公钥的获取保存方法中,对于UE可保存两个最新的数字签名公钥这种情况,UE对告警消息中的数字签名验证时,会采用本地保存的两个数字签名公钥分别数字签名进行验证。如果在告警消息中携带有数字签名生成时所使用的数字签名公钥对应的公钥标识,则当UE本地保存有该公钥标识时,会采用对应该公钥标识的数字签名公钥对数字签名进行验证。如果在告警消息中除了公钥标识外还携带有小区广播实体标识,且UE本地保存有对应该小区广播实体标识及公钥标识的数字签名公钥,则UE同样会采用对应该公钥标识的数字签名公钥对该数字签名进行验证。
告警消息中的数字签名可以为两个,该两个数字签名可由小区广播中心CBC或者小区广播实体CBE采用本地保存的两个最新的数字签名公钥对应的数字签名私钥分别对所述告警消息进行签名获得。用户设备对该两个数字签名进行验证时,用户设备根据数字签名算法及本地保存的数字签名公钥对两个数字签名分别进行验证,当验证不通过时,也可以向核心网节点请求最新的数字签名公钥,当接收到该最新的数字签名公钥后,用上述数字签名算法及该最新的数字签名公钥分别对两个数字签名再次进行验证。
对于UE可保存两个最新的数字签名公钥这种情况,且在告警消息中除了两个数字签名外还携带有该两个数字签名生成时所使用的数字签名公钥对应的两个公钥标识,则当UE本地保存有这两个公钥标识时,会采用对应这两个公钥标识的数字签名公钥分别对两个数字签名进行验证。如果告警消息中还携带有小区广播实体标识,则当UE本地保存有对应该小区广播实体标识及公钥标识的数字签名公钥,用这些数字签名公钥对该两个数字签名分别进行验证。
不管是用UE保存的一个数字签名公钥对告警消息中的一个或两个数字签名进行验证,还是用UE保存的两个数字签名公钥对告警消息中的一个或两个数字签名进行验证,当验证不通过时,即所有的数字签名在使用所有满足条件的数字签名公钥进行验证时都不成功时,可通过接入层消息或非接入层消息向所述核心网节点请求最新的一个或两个数字签名公钥。
本发明实施例提供的实现数字签名的方法中,核心网节点通过非接入层消息或接入层消息向用户设备下发最新的数字签名公钥,同时,用户设备保存该最新的数字签名公钥,且用户设备通过数字签名算法及在本地保存的数字签名公钥,可实现对接收到的告警消息中的数字签名进行验证,另外,数字签名算法可预先配置在用户设备中或者用户设备根据数字签名算法标识进行选择得到,本发明实施例详细定义了数字签名算法的选择方法及数字签名公钥的下发、更新方法,弥补了3GPP标准中未详细定义数字签名实现方法的缺陷。
实施例5
本实施例提供的应用于公共报警系统中的实现数字签名的方法是对实施例4的数字签名实现方法的改进,与实施例4不同的是:告警消息中包含公钥标识;当UE接收到告警消息后,先判断本地保存的数字签名公钥所对应的公钥标识是否与告警消息内的公钥标识相同,如果不同,则按图8所示的方法向核心网节点请求最新的数字签名公钥及对应的公钥标识,并保存该最新的数字签名公钥及对应的公钥标识;然后UE再根据数字签名算法及本地保存的数字签名公钥对告警消息中的数字签名进行验证。
上述数字签名实现方法中对数字签名进行验证的方法还可包括:当验证不通过时,UE向核心网节点请求最新的数字签名公钥,并采用最新的数字签名公钥与数字签名算法标识所对应的数字签名算法对告警消息中的数字签名再次进行验证。
告警消息中公钥标识的设置方法与实施例4中数字签名算法标识的设置方法相同,可设置于警报消息内或设置于安全参数内。以LTE为例,当设置于警报消息内时,可修改WRITE-REPLACE Request/Indication消息中的SIB10以及eNB发给UE的广播消息中的SIB10;当设置于安全参数内时,可与数字签名算法标识占用同一个8位字节,将图6中作为保留位的8位字节8的高4位用来存储公钥标识。
需要说明的是,公钥标识的设置方法并不限于上述两种设置方式,而且可以定义其它长度和形式,只要能够将数字签名的公钥进行区分即可。
为了简化处理,公钥标识可以定义为递增的,如果UE收到一个比自己保存的公钥标识还要小的公钥标识,则认为收到的告警消息已被攻击者篡改。当公钥标识的值到最大值时,再重新从最小值开始,如果UE收到公钥标识是最小值并且与目前自己保留的公钥标识不同,则UE向核心网节点请求新的公钥。
本发明实施例提供的数字签名的实现方法,详细描述了在告警消息中设置公钥标识时,UE是如何对接收到的告警消息进行验证的,弥补了3GPP标准中未详细定义数字签名实现方法的缺陷。本发明主要用于公共报警系统。
通过实施例4中图11所示的数字签名公钥获取保存方法使UE上的数字签名公钥能与CBE对应起来,在这种情况下,CBE发出的告警消息中包含该CBE对应的小区广播实体标识,该标识可以根据实际需要设置在告警消息的明文中,或者设置在告警消息携带的安全参数内。
当UE收到带有小区广播实体标识的告警消息后,会查找出对应告警消息中小区广播实体标识的数字签名公钥,以对该告警消息的数字签名进行验证。如果UE保存的数字签名公钥所对应的小区广播实体标识与告警消息中的小区广播实体标识不相同,即UE上没有保存告警消息中小区广播实体标识对应的数字签名公钥,则需要向核心网节点请求获得对应的数字签名公钥。具体的请求方法可类似于图11所示的数字签名公钥获取保存方法,在请求消息中携带小区广播实体标识。
在核心网节点下发了对应告警消息中小区广播实体标识的最新的数字签名公钥后,UE采用该最新的数字签名公钥对告警消息中的数字签名进行验证。
当然,在第一次验证没有通过时,UE还可以再次请求核心网节点下发最新的数字签名公钥。
告警消息还可以为:包含小区广播实体标识及公钥标识,该公钥标识用于区分某一CBE签名告警消息时所使用的各个数字签名公钥,因此,用小区广播实体标识及公钥标识可以唯一确定一个数字签名公钥。
当UE收到带有小区广播实体标识及公钥标识的告警消息后,会先判断本地是否保存有告警消息中的小区广播实体标识,如果没有则直接向核心网节点请求获得该小区广播实体标识对应的最新的数字签名公钥及公钥标识,如果本地保存有告警消息中的小区广播实体标识,则进一步判断本地保存的对应该小区广播实体标识的公钥标识与告警消息中的是否相同,如果相同则进行验证步骤,如果不相同,则向核心网节点请求获得该小区广播实体标识对应的最新的数字签名公钥及公钥标识。
然后,UE根据该最新的数字签名公钥对告警消息中的数字签名进行验证。
当然,在第一次验证没有通过时,UE还可以再次请求核心网节点下发最新的数字签名公钥。
上述描述中的核心网节点可以是LTE中的MME、UMTS中的SGSN或者GSM中的MSC。第一次验证不通过,UE再次向核心网节点请求下发最新的数字签名公钥的请求消息为接入层消息时,该消息由UE发给接入网节点;请求消息为非接入层消息时,该消息由UE发给核心网节点。且核心网节点也可通过非接入层消息直接将最新的数字签名公钥下发至UE,也可以通过接入层消息借助接入网节点的转发间接地将最新的数字签名公钥下发至UE。请求最新的数字签名公钥及下发最新的数字签名公钥的方法与实施例4中图8至图11描述的方法相同。
实施例6
本实施例提供一种应用于公共报警系统中的用户设备,如图12所示,该设备包括:接收模块1201,用于接收并保存核心网节点通过非接入层消息或接入层消息下发的数字签名公钥,或者,接收并保存接入网节点通过第二接入层消息下发的数字签名公钥;验证模块1202,用于根据数字签名算法及所述接收模块接收的数字签名公钥对接收到的告警消息中的数字签名进行验证。
其中,用于下发给所述接收模块所述数字签名公钥的接入层消息可为接入层安全模式命令消息;用于下发给所述接收模块所述数字签名公钥的非接入层消息可为以下任意消息之一:非接入层安全模式命令消息;附着接受消息;位置区更新接受消息;路由区更新接受消息。
用于下发给所述接收模块所述数字签名公钥的第二接入层消息为以下任意消息之一:接入层安全模式命令消息;无线承载消息;寻呼消息;无线资源控制消息;无线接入网络应用消息。
另外,数字签名算法可预先配置在所述用户设备中或者由所述用户设备根据数字签名算法标识进行选择得到,其中,所述数字签名算法标识设置于所述告警消息中的警报消息内或所述告警消息中的安全参数内。
上述设备还可包括:请求模块1203,用于向核心网节点发送请求消息。
其中,所述请求消息中可包含所述用户设备当前所处网络的网络标识,所述接收模块1201还可用于:接收核心网节点在确定所述请求模块的请求消息中的网络标识与所述核心网节点当前所处网络的网络标识不相同的情况下,通过非接入层消息或接入层消息下发的数字签名公钥及其对应的公钥标识;所述设备还可包括关联保存模块1204,可用于将所述通过非接入层消息或接入层消息下发的数字签名公钥及其对应的公钥标识与所述用户设备当前所处网络的网络标识进行关联保存;其中,所述用户设备当前所处网络的网络标识由所述核心网节点通过非接入层消息或接入层消息下发至所述用户设备或者由所述用户设备从系统信息中获取。
另外,所述请求模块1203的请求消息中还可包含所述接收模块接收的所述数字签名公钥对应的公钥标识;所述接收模块1201还可用于:接收核心网节点在确定所述请求模块的请求消息中的网络标识与所述核心网节点当前所处网络的网络标识相同且所述请求消息中的公钥标识与所述核心网节点中保存的公钥标识不相同的情况下,通过非接入层消息或接入层消息下发数字签名公钥及其对应的公钥标识。
所述非接入层消息或接入层消息还可包括所述请求消息中的公钥标识;所述接收模块1201还可用于:在保存核心网节点通过非接入层消息或接入层消息下发的数字签名公钥及其对应的公钥标识之前,确定所述请求模块的请求消息中的公钥标识与所述非接入层消息或接入层消息包括的请求消息中的公钥标识相同。
另外,所述请求模块1203的请求消息中可包含所述用户设备保存的小区广播实体标识;所述接收模块还用于接收核心网节点通过非接入层消息或接入层消息下发的所述小区广播实体标识及其对应的数字签名公钥;关联保存模块1204,可用于将所述通过非接入层消息或接入层消息下发所述小区广播实体标识与对应其的所述数字签名公钥进行关联保存。
请求消息中还可包含对应于所述小区广播实体标识的公钥标识;所述接收模块1201还用于接收核心网节点在确定所述请求消息中的公钥标识与所述核心网节点保存的对应于所述小区广播实体标识的公钥标识不相同的情况下,通过非接入层消息或接入层消息下发所述小区广播实体标识及其对应的公钥标识及数字签名公钥;所述关联保存模块1204还用于将所述通过非接入层消息或接入层消息下发所述小区广播实体标识与对应其的所述公钥标识及所述数字签名公钥进行关联保存。
请求消息中可包含所述用户设备当前所处网络的网络标识及所述接收模块接收到的所述数字签名公钥对应的公钥标识;所述接收模块1201还用于接收核心网节点在确定所述请求消息中的网络标识与所述核心网节点当前所处网络的网络标识相同且所述请求消息中的公钥标识与所述核心网节点中保存的对应于所述小区广播实体标识的公钥标识不相同的情况下,通过非接入层消息或接入层消息下发对应于所述小区广播实体标识的数字签名公钥、公钥标识及所述小区广播实体标识;所述接收模块1201还用于接收核心网节点在确定所述请求消息中的网络标识与所述核心网节点当前所处网络的网络标识不相同的情况下,通过非接入层消息或接入层消息下发对应于所述小区广播实体标识的数字签名公钥、公钥标识及所述小区广播实体标识;关联保存模块1204,可将所述通过非接入层消息或接入层消息下发的小区广播实体标识、数字签名公钥及公钥标识与所述用户设备当前所处网络的网络标识进行关联保存,其中,所述用户设备当前所处网络的网络标识由所述核心网节点通过非接入层消息或接入层消息下发至所述用户设备或者由所述用户设备从系统信息中获取。
上述通过非接入层消息或接入层消息下发的数字签名公钥可包括两个最新的数字签名公钥。
告警消息中可包括两个数字签名,所述两个数字签名由小区广播中心采用与所述小区广播中心本地保存的两个最新的数字签名公钥对应的数字签名私钥分别对所述告警消息进行签名获得;所述验证模块1202还可用于:根据数字签名算法及本地保存的数字签名公钥对所述告警消息中的所述两个数字签名分别进行验证。
用户设备保存的所述数字签名公钥可包括两个最新的数字签名公钥,则所述验证模块1202还用于:根据数字签名算法及所述两个最新的数字签名公钥对所述告警消息中的所述两个数字签名分别进行验证。
验证模块1202还可用于:在所述根据数字签名算法及所述接收模块接收到的所述数字签名公钥对所述告警消息中的数字签名进行验证之后,若所述验证不通过,则向所述核心网节点请求最新的数字签名公钥,并采用所述最新的数字签名公钥与所述数字签名算法对所述告警消息中的数字签名再进行验证。
所述验证模块1202还用于:在所述根据数字签名算法及所述接收模块接收到的所述数字签名公钥对所述告警消息中的数字签名进行验证之后,若所述验证不通过,则通过非接入层消息或接入层消息向所述核心网节点请求最新的数字签名公钥,并采用所述最新的数字签名公钥与所述数字签名算法对所述告警消息中的数字签名再进行验证。
当告警消息中还包含公钥标识时,所述用户设备还可包括:公钥更新模块1205,用于在所述根据数字签名算法及所述接收模块接收到的所述数字签名公钥所接收到的告警消息中的数字签名进行验证之前,确定所述接收模块接收到的所述数字签名公钥所对应的公钥标识与所述告警消息中的公钥标识不相同时,向所述核心网节点请求最新的数字签名公钥及对应的公钥标识;接收并保存从所述核心网节点下发的所述最新的数字签名公钥及对应的公钥标识;所述验证模块1202还用于:根据所述最新的数字签名公钥及对应的公钥标识对接收到的告警消息中的数字签名进行验证。
当告警消息中还包含公钥标识时,用户设备还可不包括上述公钥更新模块1205,而包括确定模块,该确定模块用于确定所述接收模块接收到的所述数字签名公钥所对应的公钥标识与所述告警消息中的公钥标识相同。
告警消息中可包含小区广播实体标识;公钥更新模块,可用于在所述根据数字签名算法及保存的数字签名公钥对接收到的告警消息中的数字签名进行验证之前,确定所述保存的数字签名公钥所对应的小区广播实体标识与所述告警消息中的小区广播实体标识不相同;向所述核心网节点请求对应于所述告警消息中小区广播实体标识的最新的数字签名公钥;接收并保存所述核心网节点下发的、对应于所述告警消息中小区广播实体标识的最新的数字签名公钥;所述验证模块还用于:根据所述最新的数字签名公钥对所述告警消息中的数字签名进行验证。
告警消息中还包含对应于所述小区广播实体标识的公钥标识;所述公钥更新模块,还可用于在所述根据数字签名算法及保存的数字签名公钥对接收到的告警消息中的数字签名进行验证之前,确定所述保存的数字签名公钥所对应的小区广播实体标识与所述告警消息中的小区广播实体标识相同,且所述保存的数字签名公钥所对应的公钥标识与所述告警消息中的公钥标识不相同;向所述核心网节点请求对应于所述告警消息中小区广播实体的、最新的数字签名公钥及公钥标识;接收并保存从所述核心网节点下发的所述最新的数字签名公钥及公钥标识。
上述各模块所执行的方法已在实施例1、4、5中做了详细说明,在此不再赘述。
本实施例又提出一种应用于公共报警系统的核心网节点设备,如图13所示,该设备包括:第二接收模块1301,用于接收用户设备发送的包含公钥标识的请求消息;第一确定模块1302,用于确定所述第二接收模块所接收的请求消息中的公钥标识与本地保存的数字签名公钥所对应的公钥标识不相同;发送模块1303,用于当第一确定模块确定请求消息中的公钥标识与本地保存的数字签名公钥所对应的公钥标识不相同时,通过非接入层消息或接入层消息向所述用户设备下发本地保存的所述数字签名公钥及其对应的公钥标识。
其中,所述发送模块所采用的接入层消息为接入层安全模式命令消息;所述发送模块所采用的非接入层消息为以下任意消息之一:非接入层安全模式命令消息;附着接受消息;位置区更新接受消息;路由区更新接受消息。
所述发送模块1303发送的非接入层消息或接入层消息中还包括所述请求消息中的公钥标识,以使得所述用户设备在确定所述请求消息中的公钥标识与所述非接入层消息或接入层消息包括的请求消息中的公钥标识相同的情况下,保存所述核心网节点设备通过非接入层消息或接入层消息下发的数字签名公钥及其对应的公钥标识。
当所述第二接收模块1301接收到的请求消息中还包括网络标识时,所述设备还可包括第二确定模块1304,用于当所述第一确定模块1302确定请求消息中的公钥标识与本地保存的数字签名公钥所对应的公钥标识不相同之前,确定所述请求消息中的网络标识与本地所处网络的网络标识相同。
当所述第二接收模块1301接收到的请求消息中还包括网络标识时,不包含上述第二确定模块1304,而包括第三确定模块,用于当所述第一确定模块1302确定请求消息中的公钥标识与本地保存的数字签名公钥所对应的公钥标识不相同之前,确定所述请求消息中的网络标识与本地所处网络的网络标识不相同;则所述非接入层消息或接入层消息中还包括:所述用户设备设备本地所处网络的网络标识,以使得所述用户设备将所述非接入层消息或接入层消息中的所述网络标识与所述数字签名公钥及其对应的公钥标识进行关联保存。
请求消息中还可包括小区广播实体标识;所述第一确定模块1302还用于确定所述请求消息中的公钥标识与本地保存的对应于所述小区广播实体标识的公钥标识不相同;则所述非接入层消息或接入层消息中还包括:所述核心网节点本地保存的对应于所述小区广播实体标识的数字签名公钥、公钥标识及所述小区广播实体标识,以使得所述用户设备将所述非接入层消息或接入层消息中的所述小区广播实体标识与所述数字签名公钥及公钥标识进行关联保存。
上述各模块执行的方法已在实施例2、4、5中进行了详细描述,在此不再赘述。
本实施例再提出一种应用于公共报警系统的接入网节点设备,如图15所示,该设备包括:确认模块151,用于确认用户设备已完成网络注册和安全认证,或者确认本地保存的所述数字签名公钥已更新;第二发送模块152,用于在所述确认模块151确认所述用户设备已完成网络注册和安全认证,或者确认本地保存的数字签名公钥已更新之后,通过第二接入层消息向所述用户设备下发本地保存的数字签名公钥。
其中,所述第二接入层消息为以下任意消息之一:接入层安全模式命令消息;无线承载消息;寻呼消息;无线资源控制消息;无线接入网络应用消息。
需要说明的是:“第二发送模块”在本发明实施例中用于指代接入网节点中用于发送数字签名公钥的发送模块。“第二”是为了和核心网节点设备中用于发送数字签名公钥的发送模块在名称上区分开,不作为对本发明的限定。
接入网节点设备可以具体为:LTE系统的eNB、UTMS系统中的RNC或者GSM系统中的BSC,且上述的接入网节点设备中的各模块所执行的方法已在实施例3中做了详细说明,在此不再赘述。
本发明实施例提供的用户设备、核心网节点设备及接入网节点设备中,由于核心网节点通过非接入层消息或接入层消息向用户设备下发最新的数字签名公钥,或者接入网节点通过第二接入层消息向用户设备下发最新的数字签名公钥,且用户设备中的接收模块接收并保存了该最新的数字签名公钥,因此,用户设备中的验证模块通过数字签名算法及在本地保存的数字签名公钥,可实现用户设备对接收到的告警消息中的数字签名进行验证,本发明实施例能进行数字签名公钥下发,弥补了3GPP标准中未详细定义数字签名实现方法的缺陷。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘,硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
本发明实施例主要用于公共报警系统。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。