密钥协商处理方法和装置 |
|||||||
申请号 | CN201410415865.4 | 申请日 | 2014-08-20 | 公开(公告)号 | CN104618103A | 公开(公告)日 | 2015-05-13 |
申请人 | 华为技术有限公司; | 发明人 | 张博; 何承东; 甘露; | ||||
摘要 | 本 发明 实施例 提供一种密钥协商处理方法和装置。一种密钥协商处理方法,包括:控制网元获取第一密钥协商参数和第二密钥协商参数;所述控制网元将所述第一密钥协商参数和/或第二密钥协商参数发送给所述第一用户设备UE和第二UE,以使所述第一UE和第二UE根据所述第一密钥协商参数和第二密钥协商参数生成密钥。本发明实施例可以在近距离通信的两个UE之间进行密钥的协商。 | ||||||
权利要求 | 1.一种密钥协商处理方法,其特征在于,包括: |
||||||
说明书全文 | 密钥协商处理方法和装置技术领域背景技术[0002] 在近距离通信的应用场景下,两个用户设备(User Equipment,以下简称:UE)之间的通信并不需要经过运营商网络。近距离通信业务(Proximity Service,以下简称:ProSe)技术的目的就是在两个UE之间建立安全的通信信道,从而使得数据能够进行安全的交换。 [0003] ProSe技术主要包含两个方面:ProSe发现(以下简称:ProSe Discovery)和ProSe通信(以下简称:ProSe Communication)。在ProSe Discovery阶段,两个UE可以相互检测到对方,从而完成对双方身份的检验。在ProSe Communication阶段,两个UE可以建立安全的通信信道,然后进行安全的数据通信。由于UE之间的通信信道可以被攻击者窃听和篡改,因此通信数据必须进行机密性和完整性保护。而机密性和完整性保护需要安全的密钥和密码算法的支持,因此在安全通信之前必须要进行密钥的协商。 [0004] 因此,近距离通信的两个UE之间,如何进行密钥的协商,成为亟待解决的技术问题。 发明内容[0005] 本发明实施例提供一种密钥协商处理方法和装置,以在近距离通信的两个UE之间进行密钥的协商。 [0006] 第一方面,提供一种密钥协商处理方法,包括: [0007] 控制网元获取第一密钥协商参数和第二密钥协商参数; [0008] 所述控制网元将所述第一密钥协商参数和/或第二密钥协商参数发送给所述第一用户设备UE和第二UE,以使所述第一UE和第二UE根据所述第一密钥协商参数和第二密钥协商参数生成密钥。 [0009] 结合第一方面,在第一种方式中,所述控制网元获取第一密钥协商参数,包括: [0010] 所述控制网元接收第一UE发送的第三密钥协商参数,根据所述第一UE与所述控制网元之间的共享密钥和所述第三密钥协商参数,生成所述第一密钥协商参数; [0011] 所述控制网元获取第二密钥协商参数,包括: [0012] 所述控制网元接收第二UE发送的第四密钥协商参数,根据所述第二UE与所述控制网元之间的共享密钥和所述第四密钥协商参数,生成所述第二密钥协商参数。 [0013] 结合第一方面,在第二种方式中,所述控制网元获取第一密钥协商参数,包括: [0014] 所述控制网元接收所述第一UE发送的第一密钥协商参数; [0015] 所述控制网元获取第二密钥协商参数,包括: [0016] 所述控制网元接收所述第二UE发送的第二密钥协商参数。 [0017] 结合第一种方式或第二种方式,在第三种方式中,所述控制网元将所述第一密钥协商参数和/或第二密钥协商参数发送给所述第一UE和第二UE,包括: [0018] 所述控制网元将所述第二密钥协商参数发送给所述第一UE,并将所述第一密钥协商参数发送给所述第二UE。 [0019] 结合第一方面,在第四种方式中,所述控制网元获取第一密钥协商参数和第二密钥协商参数,包括: [0020] 所述控制网元生成第一密钥协商参数和第二密钥协商参数。 [0021] 结合第四种方式,在第五种方式中,所述控制网元将所述第一密钥协商参数和/或第二密钥协商参数发送给所述第一UE和第二UE,包括: [0022] 所述控制网元将所述第一密钥协商参数和第二密钥协商参数发送给所述第一UE,并且所述控制网元将所述第一密钥协商参数和第二密钥协商参数发送给所述第二UE。 [0023] 结合第一方面,在第六种方式中,所述控制网元包括第一UE附着的第一控制网元和第二UE附着的第二控制网元; [0024] 所述控制网元获取第一密钥协商参数和第二密钥协商参数,包括: [0025] 所述第一控制网元接收第一UE发送的第三密钥协商参数,根据所述第一UE与所述控制网元之间的共享密钥和所述第三密钥协商参数,生成所述第一密钥协商参数,并将所述第一密钥协商参数发送给所述第二控制网元,以使所述第二控制网元将所述第一密钥协商参数发送给所述第二UE; [0026] 所述第二控制网元接收第二UE发送的第四密钥协商参数,根据所述第二UE与所述控制网元之间的共享密钥和所述第四密钥协商参数,生成所述第二密钥协商参数,并将所述第二密钥协商参数发送给所述第一控制网元,以使所述第一控制网元将所述第二密钥协商参数发送给所述第一UE。 [0027] 结合第一方面,在第七种方式中,所述控制网元包括第一UE附着的第一控制网元和第二UE附着的第二控制网元; [0028] 所述控制网元获取第一密钥协商参数和第二密钥协商参数,包括: [0029] 所述第一控制网元接收所述第一UE发送的第一密钥协商参数,并将所述第一密钥协商参数发送给所述第二控制网元,以使所述第二控制网元将所述第一密钥协商参数发送给所述第二UE; [0030] 所述第二控制网元接收所述第二UE发送的第二密钥协商参数,并将所述第二密钥协商参数发送给所述第一控制网元,以使所述第一控制网元将所述第二密钥协商参数发送给所述第一UE。 [0031] 结合六种方式或第七种方式,在第八种方式中,所述控制网元将所述第一密钥协商参数和/或第二密钥协商参数发送给所述第一UE和第二UE,包括: [0032] 所述第一控制网元将所述第二密钥协商参数发送给所述第一UE; [0033] 所述第二控制网元将所述第一密钥协商参数发送给所述第二UE。 [0034] 结合第一方面,在第九种方式中,所述控制网元包括第一UE附着的第一控制网元和第二UE附着的第二控制网元; [0035] 所述控制网元获取第一密钥协商参数和第二密钥协商参数,包括: [0036] 所述第一控制网元生成第一密钥协商参数,并将所述第一密钥协商参数发送给所述第二控制网元; [0037] 所述第二控制网元生成第二密钥协商参数,并将所述第二密钥协商参数发送给所述第一控制网元。 [0038] 结合第九种方式,在第十种方式中,所述控制网元将所述第一密钥协商参数和/或第二密钥协商参数发送给所述第一UE和第二UE,包括: [0039] 所述第一控制网元将所述第一密钥协商参数和所述第二密钥协商参数发送给所述第一UE; [0040] 所述第二控制网元将所述第一密钥协商参数和所述第二密钥协商参数发送给所述第二UE。 [0041] 结合第一种方式或第六种方式,在第十一种方式中,所述共享密钥包括下述密钥中的一种密钥或其组合: [0042] 认证矢量底层密钥Kasme、非接入层密钥NAS key、下一跳密钥NH。 [0043] 结合前述任一种方式,在第十二种方式中,所述密钥协商参数,包括下述参数中的一个参数或其任意组合: [0044] 随机数nonce、近距离连接标识Connection ID、无线资源连接标识、应用标识application ID、小区无线网络临时标识C-RNTI、计数器的计数值、常数。 [0045] 第二方面,提供一种密钥协商处理方法,包括: [0046] 第一用户设备UE接收控制网元发送的密钥协商参数; [0047] 所述第一UE根据所述密钥协商参数生成密钥。 [0048] 结合第二方面,在第一种方式中,所述第一UE接收控制网元发送的密钥协商参数之前,还包括: [0049] 所述第一UE向控制网元发送第三密钥协商参数,以使所述控制网元根据所述第一UE与所述控制网元之间的共享密钥和所述第三密钥协商参数,生成所述第一密钥协商参数; [0050] 所述第一UE接收控制网元发送的密钥协商参数,包括: [0051] 所述第一UE接收所述控制网元发送的第二密钥协商参数,所述第二密钥协商参数为所述控制网元根据第二UE发送的第四密钥协商参数以及所述第二UE与所述控制网元之间的共享密钥生成的; [0052] 所述第一UE根据所述密钥协商参数生成密钥,包括: [0053] 所述第一UE根据所述第一UE与所述控制网元之间的共享密钥和所述第三密钥协商参数,生成所述第一密钥协商参数; [0054] 所述第一UE根据所述第一密钥协商参数和第二密钥协商参数生成密钥。 [0055] 结合第二方面,在第二种方式中,所述第一UE接收控制网元发送的密钥协商参数之前,还包括: [0056] 所述第一UE向控制网元发送第一密钥协商参数,以使所述控制网元将所述第一密钥协商参数发送给所述第二UE; [0057] 所述第一UE接收控制网元发送的密钥协商参数,包括: [0058] 所述第一UE接收所述控制网元发送的第二密钥协商参数,所述第二密钥协商参数为所述第二UE发送给所述控制网元的; [0059] 所述第一UE根据所述密钥协商参数生成密钥,包括: [0060] 所述第一UE根据所述第一密钥协商参数和第二密钥协商参数生成密钥。 [0061] 结合第二方面,在第三种方式中,所述第一UE接收控制网元发送的密钥协商参数,包括: [0062] 所述第一UE接收所述控制网元发送的第一密钥协商参数和第二密钥协商参数; [0063] 所述第一UE根据所述密钥协商参数生成密钥,包括: [0064] 所述第一UE根据所述第一密钥协商参数和第二密钥协商参数生成密钥。 [0065] 结合第一种方式,在四种方式中,所述共享密钥包括下述密钥中的一种密钥或其组合: [0066] 认证矢量底层密钥Kasme、非接入层密钥NAS key、下一跳密钥NH。 [0067] 结合前述任一种方式,所述密钥协商参数,包括下述参数中的一个参数或其任意组合: [0068] 随机数nonce、近距离连接标识Connection ID、无线资源连接标识、应用标识application ID、小区无线网络临时标识C-RNTI、计数器的计数值、常数。 [0069] 第三方面,提供一种控制网元,包括: [0070] 获取模块,用于获取第一密钥协商参数和第二密钥协商参数; [0071] 发送模块,用于将所述第一密钥协商参数和/或第二密钥协商参数发送给所述第一用户设备UE和第二UE,以使所述第一UE和第二UE根据所述第一密钥协商参数和第二密钥协商参数生成密钥。 [0072] 结合第三方面,在第一种方式中,所述获取模块,具体用于: [0073] 接收第一UE发送的第三密钥协商参数,根据所述第一UE与所述控制网元之间的共享密钥和所述第三密钥协商参数,生成所述第一密钥协商参数; [0074] 接收第二UE发送的第四密钥协商参数,根据所述第二UE与所述控制网元之间的共享密钥和所述第四密钥协商参数,生成所述第二密钥协商参数。 [0075] 结合第三方面,在第二种方式中,所述获取模块,具体用于: [0076] 接收所述第一UE发送的第一密钥协商参数; [0077] 接收所述第二UE发送的第二密钥协商参数。 [0078] 结合第二种方式或第三种方式,在第四种方式中,所述发送模块,具体用于: [0079] 将所述第二密钥协商参数发送给所述第一UE,并将所述第一密钥协商参数发送给所述第二UE。 [0080] 结合第三方面,在第五种方式中,所述获取模块,具体用于: [0081] 生成第一密钥协商参数和第二密钥协商参数。 [0082] 结合第第五种方式,在第六种方式中,所述发送模块,具体用于: [0083] 将所述第一密钥协商参数和第二密钥协商参数发送给所述第一UE,并且将所述第一密钥协商参数和第二密钥协商参数发送给所述第二UE。 [0084] 结合第一种方式,在第七种方式中,所述共享密钥包括下述密钥中的一种密钥或其组合: [0085] 认证矢量底层密钥Kasme、非接入层密钥NAS key、下一跳密钥NH。 [0086] 结合前述任一种方式,在第八种方式中,所述密钥协商参数,包括下述参数中的一个参数或其任意组合: [0087] 随机数nonce、近距离连接标识Connection ID、无线资源连接标识、应用标识application ID、小区无线网络临时标识C-RNTI、计数器的计数值、常数。 [0088] 第四方面,提供一种控制系统,包括:第一UE附着的第一控制网元和第二UE附着的第二控制网元; [0089] 所述第一控制网元与所述第二控制网元交互,以将所述第一密钥协商参数和/或第二密钥协商参数发送给所述第一用户设备UE和第二UE,以使所述第一UE和第二UE根据所述第一密钥协商参数和第二密钥协商参数生成密钥。 [0090] 结合第四方面,在第一种方式中,所述第一控制网元,具体用于接收第一UE发送的第三密钥协商参数,根据所述第一UE与所述控制网元之间的共享密钥和所述第三密钥协商参数,生成所述第一密钥协商参数,并将所述第一密钥协商参数发送给所述第二控制网元,以使所述第二控制网元将所述第一密钥协商参数发送给所述第二UE; [0091] 所述第二控制网元,具体用于接收第二UE发送的第四密钥协商参数,根据所述第二UE与所述控制网元之间的共享密钥和所述第四密钥协商参数,生成所述第二密钥协商参数,并将所述第二密钥协商参数发送给所述第一控制网元,以使所述第一控制网元将所述第二密钥协商参数发送给所述第一UE。 [0092] 结合第四方面,在第二种方式中,所述第一控制网元,具体用于接收所述第一UE发送的第一密钥协商参数,并将所述第一密钥协商参数发送给所述第二控制网元,以使所述第二控制网元将所述第一密钥协商参数发送给所述第二UE; [0093] 所述第二控制网元,具体用于接收所述第二UE发送的第二密钥协商参数,并将所述第二密钥协商参数发送给所述第一控制网元,以使所述第一控制网元将所述第二密钥协商参数发送给所述第一UE。 [0094] 结合第一种方式或第二种方式,在第三种方式中,所述第一控制网元,具体用于将所述第二密钥协商参数发送给所述第一UE; [0095] 所述第二控制网元,具体用于将所述第一密钥协商参数发送给所述第二UE。 [0096] 结合第四方面,在第四种方式中,所述第一控制网元,具体用于生成第一密钥协商参数,并将所述第一密钥协商参数发送给所述第二控制网元; [0097] 所述第二控制网元,具体用于生成第二密钥协商参数,并将所述第二密钥协商参数发送给所述第一控制网元。 [0098] 结合第四种方式,在第五种方式中,所述第一控制网元,具体用于将所述第一密钥协商参数和所述第二密钥协商参数发送给所述第一UE; [0099] 所述第二控制网元,具体用于将所述第一密钥协商参数和所述第二密钥协商参数发送给所述第二UE。 [0100] 结合第四方面,在第六种方式中,所述共享密钥包括下述密钥中的一种密钥或其组合: [0101] 认证矢量底层密钥Kasme、非接入层密钥NAS key、下一跳密钥NH。 [0102] 结合前述任一种方式,在第七种方式中,所述密钥协商参数,包括下述参数中的一个参数或其任意组合: [0103] 随机数nonce、近距离连接标识Connection ID、无线资源连接标识、应用标识application ID、小区无线网络临时标识C-RNTI、计数器的计数值、常数。 [0104] 第五方面,提供一种用户设备,所述用户设备为第一用户设备,所述第一用户设备,包括: [0105] 交互模块,用于接收控制网元发送的密钥协商参数; [0106] 生成模块,用于根据所述密钥协商参数生成密钥。 [0107] 结合第五方面,在第一种方式中,所述交互模块,还用于接收控制网元发送的密钥协商参数之前,向控制网元发送第三密钥协商参数,以使所述控制网元根据所述第一UE与所述控制网元之间的共享密钥和所述第三密钥协商参数,生成所述第一密钥协商参数; [0108] 相应的,所述交互模块,具体用于接收所述控制网元发送的第二密钥协商参数,所述第二密钥协商参数为所述控制网元根据第二UE发送的第四密钥协商参数以及所述第二UE与所述控制网元之间的共享密钥生成的; [0109] 所述生成模块,具体用于根据所述第一UE与所述控制网元之间的共享密钥和所述第三密钥协商参数,生成所述第一密钥协商参数;根据所述第一密钥协商参数和第二密钥协商参数生成密钥。 [0110] 结合第五方面,在第二种方式中,所述交互模块,还用于接收控制网元发送的密钥协商参数之前,向控制网元发送第一密钥协商参数,以使所述控制网元将所述第一密钥协商参数发送给所述第二UE; [0111] 相应的,所述交互模块,具体用于接收所述控制网元发送的第二密钥协商参数,所述第二密钥协商参数为所述第二UE发送给所述控制网元的; [0112] 所述生成模块,具体用于根据所述第一密钥协商参数和第二密钥协商参数生成密钥。 [0113] 结合第五方面,在第三种方式中,所述交互模块,具体用于接收所述控制网元发送的第一密钥协商参数和第二密钥协商参数; [0114] 所述生成模块,具体用于根据所述第一密钥协商参数和第二密钥协商参数生成密钥。 [0115] 结合第一种方式,在第四种方式中,所述共享密钥包括下述密钥中的一种密钥或其组合: [0116] 认证矢量底层密钥Kasme、非接入层密钥NAS key、下一跳密钥NH。 [0117] 结合上述任一种方式,在第五种方式中,所述密钥协商参数,包括下述参数中的一个参数或其任意组合: [0118] 随机数nonce、近距离连接标识Connection ID、无线资源连接标识、应用标识application ID、小区无线网络临时标识C-RNTI、计数器的计数值、常数。 [0119] 本发明实施例中,需要进行近距离通信的两个UE在进行密钥协商时,可以由控制网元来控制协商过程,该控制网元可以获取第一密钥协商参数和第二密钥协商参数,将第一密钥协商参数和/或第二密钥协商参数发送给第一UE和第二UE,从而使得第一UE和第二UE可以根据第一密钥协商参数和第二密钥协商参数生成密钥。该密钥协商过程可以由控制网元控制完成,保证密钥协商的可靠性和高效性。附图说明 [0120] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。 [0121] 图1为本发明密钥协商处理方法实施例一的流程图; [0122] 图2为本发明密钥协商处理方法实施例二的信令流程图; [0123] 图3为本发明密钥协商处理方法实施例三的信令流程图; [0124] 图4为本发明密钥协商处理方法实施例四的信令流程图; [0125] 图5为本发明密钥协商处理方法实施例五的信令流程图; [0126] 图6为本发明密钥协商处理方法实施例六的信令流程图; [0127] 图7为本发明密钥协商处理方法实施例七的信令流程图; [0128] 图8为本发明密钥协商处理方法实施例八的流程图; [0129] 图9为本发明控制网元实施例的结构示意图; [0130] 图10为本发明控制系统实施例的结构示意图; [0131] 图11为本发明用户设备实施例的结构示意图。 具体实施方式[0132] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。 [0133] 图1为本发明密钥协商处理方法实施例一的流程图,如图1所示,本实施例的方法可以包括: [0134] S101、控制网元获取第一密钥协商参数和第二密钥协商参数; [0135] S102、控制网元将第一密钥协商参数和/或第二密钥协商参数发送给第一UE和第二UE,以使第一UE和第二UE根据第一密钥协商参数和第二密钥协商参数生成密钥。 [0136] 具体来说,控制网元可以针对需要进行近距离通信的两个UE,获取第一密钥协商参数和第二密钥协商参数,该第一密钥协商参数和第二密钥协商参数是用于让两个UE生成密钥的。 [0137] 举例来说,该第一密钥协商参数是与第一UE对应的,第二密钥协商参数是与第二UE对应的。该第一密钥协商参数既可以是第一UE生成并通知给控制网元的,也可以是控制网元自行生成的,类似的,第二密钥协商参数既可以是第二UE生成并通知给控制网元的,也可以是控制网元自行生成的。在控制网元得到两个密钥协商参数之后,该控制网元即可通知给第一UE和第二UE,从而使得第一UE和第二UE根据第一密钥协商参数和第二密钥协商参数生成密钥。 [0138] 本实施例中,所谓“和/或”即为,如果第一密钥协商参数是第一UE自行产生的,则控制网元只需要将第二UE的第二密钥协商参数发送给第一UE即可,如果第一密钥协商参数是控制网元产生的,则控制网元需要将第一密钥协商参数和第二密钥协商参数均发送给第一UE。对于第二UE来说,其过程是类似的。 [0139] 本实施例中,需要进行近距离通信的两个UE在进行密钥协商时,可以由控制网元来控制协商过程,该控制网元可以获取第一密钥协商参数和第二密钥协商参数,将第一密钥协商参数和/或第二密钥协商参数发送给第一UE和第二UE,从而使得第一UE和第二UE可以根据第一密钥协商参数和第二密钥协商参数生成密钥。该密钥协商过程可以由控制网元控制完成,保证密钥协商的可靠性和高效性。 [0140] 下面采用几个具体的实施例,图1所示技术方案进行详细说明。 [0141] 图2为本发明密钥协商处理方法实施例二的信令流程图,如图2所示,本实施例以控制网元为移动管理实体(Mobile Management Entity,以下简称:MME)为例进行说明,本实施例的方法可以包括: [0143] S202、UE1选择密钥协商参数p1,并将p1发送给MME; [0144] 此处p1可以为UE1从下述参数中选择的一个参数或任意参数的组合: [0145] 随机数nonce、近距离连接标识ConnectionID、无线资源连接标识、应用标识application ID、小区无线网络临时标识(Cell Radio Network Temporary Identifier,以下简称:C-RNTI)、计数器的计数值、常数。 [0146] 其中,application ID可以是使用ProSe功能的应用标识、C-RNTI为UE所在小区的标识。 [0147] S203、MME根据UE1与MME之间的共享密钥(SharedKey(UE1-MME1))和p1计算出密钥协商参数p2,该p2=KDF(SharedKey(UE1-MME1),p1); [0148] 此处SharedKey(UE1-MME1)表示UE1和MME共享密钥,例如SharedKey可以为UE1和MME共享的:认证矢量底层密钥Kasme、非接入层密钥(Non Access Stratum Key,以下简称:NAS key)、下一跳密钥(Next Hop,以下简称:NH:)三者之一,或者这些值的组合。KDF为密钥推衍函数(Key Derivation Function)。 [0149] S204、MME将p2发送给UE2; [0150] S205、UE2存储p2,选择密钥协商参数p3,并将p3发送给MME; [0151] 此处p3的含义同p1。 [0152] S206、MME根据UE2与MME之间的共享密钥(SharedKey(UE2-MME2))和p3计算出密钥协商参数p4,p4=KDF(SharedKey(UE2-MME2),p3); [0153] 此处p4的含义同p2。 [0154] S207、MME将p4发送给UE1; [0155] S208、UE1采用和MME相同的算法计算出p2; [0156] 此步也可以在S202之后完成; [0157] S209、UE2采用和MME相同的算法计算出p4; [0158] S208和S209可以同步执行。 [0159] S210、UE1根据p2和p4计算出密钥:K=KDF(p2,p4); [0160] S211、UE2根据p2和p4计算出密钥:K=KDF(p2,p4); [0161] 此处p2或者p4作为KDF函数的输入密钥参与密钥K的生成。 [0162] S210和S211可以同步执行。 [0163] 至此,通讯双方的UE1和UE2均得到了密钥K。 [0164] 此后UE1和UE2可以利用该密钥K来加密/完整性保护它们之间的数据,也可以利用该密钥K进一步生成会话密钥来加密/完整性保护它们之间的数据。 [0165] S212、UE1发送Direct-Connection-Response给UE2。 [0166] 本实施例中,需要进行近距离通信的UE1和UE2在进行密钥协商时,MME可以将UE1生成的密钥协商参数经过变换后发送UE2,并且该MME还可以将UE2生成的密钥协商参数经过变化后发送给UE1,因此,UE1可以基于生成的密钥协商参数和接收的密钥协商参数来确定密钥,同理,UE2也可以基于生成的密钥协商参数和接收的密钥协商参数来确定密钥,而且,由于UE1和UE2所采用的密钥生成算法是相同的,因此UE1确定的密钥与UE2确定的密钥也是相同的,从而使得UE1和UE2可以采用该密钥进行近距离通信。本实施例中,由运营商控制的MME来进行密钥协商的控制,可以避免单方UE来确定密钥的不可靠性,并且密钥协商过程简单高效。 [0167] 图3为本发明密钥协商处理方法实施例三的信令流程图,如图3所示,本实施例与图2所示实施例的区别在于,图2所示实施例中,MME在接收到第一UE发送的密钥协商参数和第二UE发送的密钥协商参数后需要进行KDF变换,而本实施例则无需进行KDF变换,本实施例的方法可以包括: [0168] S301、UE2发送Direct-Connection-Request给UE1; [0169] S302、UE1选择密钥协商参数p1,并将p1发送给MME; [0170] S303、MME将p1发送给UE2; [0171] S304、UE2存储p1,选择密钥协商参数p2,并将p2发送给MME; [0172] S305、MME将p2发送给UE1; [0173] S306、UE1根据p1和p2计算出密钥:K=KDF(p1,p2); [0174] S307、UE2根据p1和p2计算出密钥:K=KDF(p1,p2); [0175] S306和S307可以同步执行。 [0176] S308、UE1发送Direct-Connection-Response给UE2。 [0177] 本实施例与图2所示实施例的实现过程类似,本实施例相对于图2所示实施例来说,密钥协商过程更加简单高效。 [0178] 图4为本发明密钥协商处理方法实施例四的信令流程图,如图4所示,本实施例与图2和图3所示实施例的区别在于,图2和图3所示实施例中,均需要UE生成密钥协商参数,而本实施例则完全由MME来生成,本实施例的方法可以包括: [0179] S401、UE2发送Direct-Connection-Request给UE1; [0180] S402、UE1发送请求(Request)给MME; [0181] S403、MME生成p1和p2; [0182] S404、MME将p1和p2发送给UE1; [0183] S405、MME将p1和p2发送给UE2; [0184] S404和S405可同步执行。 [0185] S406、UE1根据p1和p2计算出密钥:K=KDF(p1,p2); [0186] S407、UE2根据p1和p2计算出密钥:K=KDF(p1,p2); [0187] S406和S407可以同步执行。 [0188] S408、UE1发送Direct-Connection-Response给UE2。 [0189] 本实施例与图2和图3所示实施例的实现过程类似,本实施例相对于图2和图3所示实施例来说,密钥协商过程完全由MME来控制,进一步可以提高密钥协商的可靠性。 [0190] 上述图2~图4给出了UE1和UE2附着于同一个MME下的技术方案。下面给出几个实施例来描述UE1和UE2附着于不同MME下的技术方案。 [0191] 图5为本发明密钥协商处理方法实施例五的信令流程图,如图5所示,本实施例的方法可以包括: [0192] S501、UE2发送Direct-Connection-Request给UE1; [0193] S502、UE1选择参数p1,并将p1发送给MME1; [0194] S503、MME1根据UE1与MME1之间的共享密钥(SharedKey(UE1-MME1))和p1计算出参数p2,该p2=KDF(SharedKey(UE1-MME1),p1); [0195] S504、MME1将p2发送给MME2; [0196] S505、MME2将p2发送给UE2; [0197] S506、UE2存储p2,选择参数p3,并将p3发送给MME2; [0198] S507、MME2根据UE2与MME2之间的共享密钥(SharedKey(UE2-MME2))和p3计算出参数p4,p4=KDF(SharedKey(UE2-MME2),p3); [0199] S508、MME2将p4发送给MME1; [0200] S509、MME1将p4发送给UE1; [0201] S510、UE1采用和MME1相同的算法计算出p2; [0202] S511、UE2采用和MME2相同的算法计算出p4; [0203] S510和S511可以同步执行。 [0204] S512、UE1根据p2和p4计算出共享密钥:K=KDF(p2,p4); [0205] S513、UE2根据p2和p4计算出共享密钥:K=KDF(p2,p4); [0206] 此处p2或者p4作为KDF函数的输入密钥参与共享密钥K的生成。 [0207] S512和S513可以同步执行。 [0208] 至此,通讯双方的UE1和UE2均得到了共享密钥K。 [0209] S514、UE1发送Direct-Connection-Response给UE2。 [0210] 本实施例与图2所示实施例的实现过程类似,此处不再赘述。 [0211] 图6为本发明密钥协商处理方法实施例六的信令流程图,如图6所示,本实施例的方法可以包括: [0212] S601、UE2发送Direct-Connection-Request给UE1; [0213] S602、UE1选择参数p1,并将p1发送给MME1; [0214] S603、MME1将p1发送给MME2; [0215] S604、MME2将p1发送给UE2; [0216] S605、UE2存储p1,选择参数p2,并将p2发送给MME2; [0217] S606、MME2将p2发送给MME1; [0218] S607、MME1将p2发送给UE1; [0219] S608、UE1根据p1和p2计算出共享密钥:K=KDF(p1,p2); [0220] S609、UE2根据p1和p2计算出共享密钥:K=KDF(p1,p2; [0221] S608和S609可以同步执行。 [0222] 至此,通讯双方的UE1和UE2均得到了共享密钥K。 [0223] S610、UE1发送Direct-Connection-Response给UE2。 [0224] 本实施例与图3所示实施例的实现过程类似,此处不再赘述。 [0225] 图7为本发明密钥协商处理方法实施例七的信令流程图,如图7所示,本实施例的方法可以包括: [0226] S701、UE2发送Direct-Connection-Request给UE1; [0227] S702、UE1发送请求(Request)给MME1; [0228] S703、MME1生成p1; [0229] S704、MME1将p1发送给MME2; [0230] S705、MME2生成p2; [0231] S706、MME2将p1和p2发送给UE2; [0232] S707、UE2向MME2发送响应(Response); [0233] S708、MME2向MME1发送p2; [0234] S709、MME1将p1和p2发送给UE1; [0235] S710、UE1根据p1和p2计算出密钥:K=KDF(p1,p2); [0236] S711、UE2根据p1和p2计算出密钥:K=KDF(p1,p2); [0237] S710和S711可以同步执行。 [0238] S712、UE1发送Direct-Connection-Response给UE2。 [0239] 图8为本发明密钥协商处理方法实施例八的流程图,如图8所示,本实施例的方法可以包括: [0240] S801、第一UE接收控制网元发送的密钥协商参数; [0241] S802、第一UE根据该密钥协商参数生成密钥。 [0242] 本实施例中,需要进行近距离通信的两个UE在进行密钥协商时,可以由控制网元来控制协商过程,该第一UE可以接收控制网元发送的密钥协商参数,从而使得该第一UE可以根据第一密钥协商参数和第二密钥协商参数生成密钥。该密钥协商过程可以由控制网元控制完成,保证密钥协商的可靠性和高效性。 [0243] 在一种实现方式中,在S801之前,还可以包括: [0244] 第一UE向控制网元发送第三密钥协商参数,以使控制网元根据该第一UE与控制网元之间的共享密钥和第三密钥协商参数,生成第一密钥协商参数; [0245] 相应的,S801,可以具体包括: [0246] 第一UE接收控制网元发送的第二密钥协商参数,第二密钥协商参数为控制网元根据第二UE发送的第四密钥协商参数以及第二UE与控制网元之间的共享密钥生成的; [0247] S802,可以具体包括: [0248] 第一UE根据第一UE与所述控制网元之间的共享密钥和第三密钥协商参数,生成第一密钥协商参数; [0249] 第一UE根据第一密钥协商参数和第二密钥协商参数生成密钥。 [0250] 该技术方案的具体实现可以参见图2或图5所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。 [0251] 在另一种实现方式中,S801之前,还可以包括: [0252] 第一UE向控制网元发送第一密钥协商参数,以使控制网元将第一密钥协商参数发送给第二UE; [0253] 相应的,S801,可以具体包括: [0254] 第一UE接收控制网元发送的第二密钥协商参数,第二密钥协商参数为第二UE发送给控制网元的; [0255] S802,可以具体包括: [0256] 第一UE根据第一密钥协商参数和第二密钥协商参数生成密钥。 [0257] 该技术方案的具体实现可以参见图3或图6所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。 [0258] 在再一种实现方式中,S801,可以具体包括: [0259] 第一UE接收控制网元发送的第一密钥协商参数和第二密钥协商参数; [0260] S802,可以具体包括: [0261] 第一UE根据第一密钥协商参数和第二密钥协商参数生成密钥。 [0262] 该技术方案的具体实现可以参见图4或图7所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。 [0263] 图9为本发明控制网元实施例的结构示意图,如图9所示,本实施例的控制网元可以包括:获取模块11、发送模块12,其中: [0264] 获取模块11,用于获取第一密钥协商参数和第二密钥协商参数; [0265] 发送模块12,用于将所述第一密钥协商参数和/或第二密钥协商参数发送给所述第一用户设备UE和第二UE,以使所述第一UE和第二UE根据所述第一密钥协商参数和第二密钥协商参数生成密钥。 [0266] 本实施例的控制网元可以用于执行图1所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。 [0267] 在一种实现方式中,获取模块11,具体用于: [0268] 接收第一UE发送的第三密钥协商参数,根据所述第一UE与所述控制网元之间的共享密钥和所述第三密钥协商参数,生成所述第一密钥协商参数; [0269] 接收第二UE发送的第四密钥协商参数,根据所述第二UE与所述控制网元之间的共享密钥和所述第四密钥协商参数,生成所述第二密钥协商参数。 [0270] 发送模块12,具体用于: [0271] 将所述第二密钥协商参数发送给所述第一UE,并将所述第一密钥协商参数发送给所述第二UE。 [0272] 其中,共享密钥包括下述密钥中的一种密钥或其组合: [0273] 认证矢量底层密钥Kasme、非接入层密钥NAS key、下一跳密钥NH。 [0274] 该技术方案的具体实现可以参见图2所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。 [0275] 在另一种实现方式中,获取模块11,具体用于接收所述第一UE发送的第一密钥协商参数;接收所述第二UE发送的第二密钥协商参数。 [0276] 发送模块12,具体用于: [0277] 将所述第二密钥协商参数发送给所述第一UE,并将所述第一密钥协商参数发送给所述第二UE。 [0278] 该技术方案的具体实现可以参见图3所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。 [0279] 在再一种实现方式中,获取模块11,具体用于生成第一密钥协商参数和第二密钥协商参数。 [0280] 发送模块12,具体用于: [0281] 将所述第一密钥协商参数和第二密钥协商参数发送给所述第一UE,并且将所述第一密钥协商参数和第二密钥协商参数发送给所述第二UE。 [0282] 该技术方案的具体实现可以参见图4所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。 [0283] 在上述各实现方式中,密钥协商参数,包括下述参数中的一个参数或其任意组合: [0284] 随机数nonce、近距离连接标识Connection ID、无线资源连接标识、应用标识application ID、小区无线网络临时标识C-RNTI、计数器的计数值、常数。 [0285] 图10为本发明控制系统实施例的结构示意图,如图10所示,本实施例的控制系统可以包括:第一UE附着的第一控制网元21和第二UE附着的第二控制网元22;其中,第一控制网元21与第二控制网元22交互,以将第一密钥协商参数和/或第二密钥协商参数发送给第一UE和第二UE,以使第一UE和第二UE根据第一密钥协商参数和第二密钥协商参数生成密钥。 [0286] 本实施例的控制网元可以用于执行图1所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。 [0287] 在一种实现方式中,第一控制网元21,具体用于: [0288] 接收第一UE发送的第三密钥协商参数,根据所述第一UE与所述控制网元之间的共享密钥和所述第三密钥协商参数,生成所述第一密钥协商参数,并将所述第一密钥协商参数发送给所述第二控制网元,以使所述第二控制网元将所述第一密钥协商参数发送给所述第二UE; [0289] 第二控制网元22,具体用于: [0290] 接收第二UE发送的第四密钥协商参数,根据所述第二UE与所述控制网元之间的共享密钥和所述第四密钥协商参数,生成所述第二密钥协商参数,并将所述第二密钥协商参数发送给所述第一控制网元,以使所述第一控制网元将所述第二密钥协商参数发送给所述第一UE。 [0291] 其中,共享密钥包括下述密钥中的一种密钥或其组合: [0292] 认证矢量底层密钥Kasme、非接入层密钥NAS key、下一跳密钥NH。 [0293] 该技术方案的具体实现可以参见图5所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。 [0294] 在另一种实现方式中,第一控制网元21,具体用于接收所述第一UE发送的第一密钥协商参数,并将所述第一密钥协商参数发送给所述第二控制网元,以使所述第二控制网元将所述第一密钥协商参数发送给所述第二UE; [0295] 第二控制网元22,具体用于: [0296] 接收所述第二UE发送的第二密钥协商参数,并将所述第二密钥协商参数发送给所述第一控制网元,以使所述第一控制网元将所述第二密钥协商参数发送给所述第一UE。 [0297] 该技术方案的具体实现可以参见图6所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。 [0298] 在再一种实现方式中,第一控制网元21,具体用于将所述第二密钥协商参数发送给所述第一UE; [0299] 第二控制网元22,具体用于将所述第一密钥协商参数发送给所述第二UE。 [0300] 该技术方案的具体实现可以参见图7所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。 [0301] 在上述各实现方式中,密钥协商参数,包括下述参数中的一个参数或其任意组合: [0302] 随机数nonce、近距离连接标识Connection ID、无线资源连接标识、应用标识application ID、小区无线网络临时标识C-RNTI、计数器的计数值、常数。 [0303] 图11为本发明用户设备实施例的结构示意图,如图11所示,本实施例的UE为第一UE,该UE可以包括:交互模块31、生成模块32,其中,交互模块31,用于接收控制网元发送的密钥协商参数;生成模块32,用于根据所述密钥协商参数生成密钥。 [0304] 本实施例的控制网元可以用于执行图8所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。 [0305] 在一种实现方式中,交互模块31还用于: [0306] 接收控制网元发送的密钥协商参数之前,向控制网元发送第三密钥协商参数,以使所述控制网元根据所述第一UE与所述控制网元之间的共享密钥和所述第三密钥协商参数,生成所述第一密钥协商参数; [0307] 相应的,交互模块31,可以具体用于: [0308] 接收所述控制网元发送的第二密钥协商参数,所述第二密钥协商参数为所述控制网元根据第二UE发送的第四密钥协商参数以及所述第二UE与所述控制网元之间的共享密钥生成的; [0309] 生成模块32,可以具体用于: [0310] 根据所述第一UE与所述控制网元之间的共享密钥和所述第三密钥协商参数,生成所述第一密钥协商参数;根据所述第一密钥协商参数和第二密钥协商参数生成密钥。 [0311] 其中,共享密钥包括下述密钥中的一种密钥或其组合: [0312] 认证矢量底层密钥Kasme、非接入层密钥NAS key、下一跳密钥NH。 [0313] 该技术方案的具体实现可以参见图2或图5所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。 [0314] 在另一种实现方式中,交互模块31还用于: [0315] 接收控制网元发送的密钥协商参数之前,向控制网元发送第一密钥协商参数,以使所述控制网元将所述第一密钥协商参数发送给所述第二UE; [0316] 相应的,交互模块31,可以具体用于: [0317] 接收所述控制网元发送的第二密钥协商参数,所述第二密钥协商参数为所述第二UE发送给所述控制网元的; [0318] 生成模块32,可以具体用于: [0319] 根据所述第一密钥协商参数和第二密钥协商参数生成密钥。 [0320] 该技术方案的具体实现可以参见图3或图6所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。 [0321] 在再一种实现方式中,交互模块31,可以具体用于: [0322] 接收所述控制网元发送的第一密钥协商参数和第二密钥协商参数; [0323] 生成模块32,可以具体用于: [0324] 根据所述第一密钥协商参数和第二密钥协商参数生成密钥。 [0325] 该技术方案的具体实现可以参见图4或图7所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。 [0326] 在上述各实现方式中,密钥协商参数,包括下述参数中的一个参数或其任意组合: [0327] 随机数nonce、近距离连接标识Connection ID、无线资源连接标识、应用标识application ID、小区无线网络临时标识C-RNTI、计数器的计数值、常数。 [0328] 本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。 [0329] 最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。 |