Cga公钥识别和cga公钥确定的方法、系统及装置的制作方法

文档序号:7926141阅读:227来源:国知局
专利名称:Cga公钥识别和cga公钥确定的方法、系统及装置的制作方法
技术领域
本发明涉及通信领域,尤其涉及一种CGA公钥识别和CGA公钥确定的方法、系统及装置。
背景技术
力口密生成地址CGA(Cryptographically Generated Address, CGA)是一类特别的 IPv6地址,其中的接口标识部分由公钥结合辅助信息,使用单向的保密混乱算法生成。加 密生成地址的使用中,接收方需要再次计算混乱数值,并与发送方的地址接口标识部分比 较,以此来验证发送方的公钥和地址的绑定关系。对网络消息的保护则可以通过把公钥、 辅助信息附加到消息中,再用对应的私钥签名来完成。为了增加CGA地址的加密强度,现有 CGA的数据结构中还定义有3种比特位的安全参数(SEC)来代表CGA的安全等级,可以根 据不同的SEC值得到不同级别的安全强度,并且该SEC值已经被定义用于CGA算法中哈希 (Hash)算法的选取。加密生成地址方案在IP层内解决了地址的认证问题,不需要别的权威 证书体系或者别的安全架构,是一种简单、高效的安全方案。 由于加密生成地址绑定了地址拥有方的公钥和私钥,地址拥有方可以利用这种公 私钥系统的私钥对自己发的报文进行签名,达到信源认证和完整性保护的目的。报文接收 端必须根据地址拥有方发来的所述报文进行CGA验证和签名验证且所述验证都通过,才能 证明所述报文的源地址和内容是可靠的;如果上述验证中有任意一种验证未通过,则整种 验证流程失败,对应的报文源地址和报文内容都是不可靠的。 随着网络通讯安全对密钥强度的需求加强,现有只支持RSA公钥(RSA公钥是由 Ron-Shamir-Adleman发明的公钥系统,在网络通讯中可用于签名达到认证的目的)的CGA 签名验证技术已难以满足当前的需求,因此支持多公钥的开发与应用已成为现在CGA签名 验证技术的主要发展趋势,在支持多公钥的CGA签名验证过程中如何进行公钥识别进而实 现公钥确定都成为亟待解决的问题之一。

发明内容
本发明实施例提供一种CGA公钥确定方法、系统及装置,以解决支持多公钥的CGA 签名验证过程中进行公钥确定的问题。 为实现上述发明目的,本发明实施例提供一种CGA公钥确定方法,包括
接收发送节点发送的已进行公钥保护的第一报文;
根据所述第一报文获取待确定公钥的类型; 根据所述待确定公钥的类型判断所述待确定公钥是否为接收节点自身支持的公 钥;如果判断结果为是,则确定所述待确定公钥为自身支持的公钥。
本发明实施例还提供一种CGA公钥确定系统,包括
第一网络节点,用于发送已进行公钥保护的第一报文;禾口 第二网络节点,用于接收所述第一网络节点发送的已进行公钥保护的第一报文,
6根据所述第一报文获取所述待确定公钥的类型,并根据所述待确定公钥类型判断所述待确 定公钥是否为所述第二网络节点自身支持的公钥时,如果判断结果为是,则确定所述待确 定公钥为所述第二网络节点自身支持的公钥。 本发明实施例还提供一种支持CGA公钥确定的网络节点装置,用于与另一网络节 点装置进行CGA公钥确定;所述支持CGA公钥确定的网络节点装置包括
公钥选择模块,用于从所述装置上预先部署的N种备选公钥中选择至少一种备选 公钥作为待确定公钥,其中N为正整数; 第一报文处理模块,用于利用所述公钥选择模块选择的待确定公钥对第一报文进 行公钥保护; 第一报文发送模块,用于向参与公钥确定的所述另一网络节点装置发送已进行公 钥保护的所述第一报文; 第一公钥获取模块,用于根据所述另一网络节点装置回复的第二报文获取所述待 确定公钥的类型;以及 公钥协商确定模块,用于根据所述第一公钥获取模块获取的所述待确定公钥的类
型将对应的待确定公钥作为与所述另一网络节点装置协商确定的公钥。 本发明实施例还提供一种支持CGA公钥确定的网络节点装置,用于与另一网络节
点装置进行CGA公钥确定;所述支持CGA公钥确定的网络节点装置包括 第二报文接收模块,用于接收另一网络节点装置发送的已进行公钥保护的第一报
文; 第二公钥获取模块,用于根据所述第一报文获取待确定公钥的类型; 公钥判断模块,用于根据所述待确定公钥的类型判断所述待确定公钥是否为本地
支持的公钥;如果判断结果为是,则确定所述待确定公钥为本地支持的公钥。 与现有技术相比,本发明实施例具有以下优点 通过使用本发明实施例所提供的CGA公钥确定方法、系统及装置,有效地解决了 支持多公钥的CGA签名验证过程中的公钥确定问题,为支持多公钥的CGA签名验证技术发 展铺平了道路。 另外,本发明实施例还提供一种CGA公钥识别方法及装置,以解决支持多公钥的 CGA签名验证过程中进行公钥识别的问题。 对应地,为实现上述发明目的,本发明实施例还提供一种CGA公钥识别方法,包 括 接收发送节点发送的已进行公钥保护的第一报文;
根据所述第一报文获取所述公钥的类型。 本发明实施例还提供一种支持CGA公钥识别的网络节点装置,包括
报文接收模块,用于接收发送节点发送的已进行公钥保护的第一报文;
公钥类型获取模块,用于根据所述第一报文获取所述公钥的类型。
与现有技术相比,本发明实施例具有以下优点 通过使用本发明实施例所提供的CGA公钥识别方法及装置,有效地解决了支持多 公钥的CGA签名验证过程中的公钥识别问题,为支持多公钥的CGA签名验证技术发展铺平 了道路。


为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用 的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本 领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的 附图。
图1为一种加密生成地址验证示意图; 图2为本发明实施例一的CGA公钥识别方法的流程示意图; 图3为本发明实施例二的CGA公钥识别装置的流程示意图; 图4为本发明实施例三的CGA公钥确定方法的流程示意图; 图5为本发明实施例四的CGA公钥确定方法的流程示意图; 图6为本发明实施例四中发送节点与接收节点之间进行报文交互的示意图; 图7为本发明实施例五中发送节点与接收节点之间进行报文交互的示意图; 图8为本发明实施例五的CGA公钥确定的方法的流程示意图; 图9为本发明实施例六的CGA公钥确定的系统的结构框图; 图10为本发明实施例七的支持CGA公钥确定的网络节点装置的结构框图; 图11为本发明实施例八的支持CGA公钥确定的网络节点装置的结构框图。
具体实施例方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基 于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其 他实施例,都属于本发明保护的范围。 加密生成地址CGA的产生、验证和签名均在RFC 3972中定义。如图1所示,加密 生成地址的接口标识部分是由加密生成地址方的公钥及辅助信息通过混乱算法算出来,并 作为网络通信负载传送给通信对端,验证方(比如接收节点)通过通信互动得到加密生成 地址方的公钥及辅助信息后,再次进行混乱算法计算之后,与实际在通讯中使用的加密生 成地址进行对比即可验证。以上解释以及图1只是对密钥生成地址的简单演示,实际密钥 生成地址更复杂,为了更好的安全性采用了两次混乱算法及安全参数等技术,详细注释见 RFC3972。 实施例一 如图2所示,本发明实施例所提供的CGA公钥识别方法应用于参与通讯的第一节 点和第二节点上,上述两节点通常被定义为发送节点和接收节点,其中发送节点通常为CGA 地址拥有者,用于与接收节点进行报文交互。在发送节点上可以根据实际需求预先部署用 于CGA签名验证的多种公钥,所述公钥的类别以及优先级可以根据实际需求及策略进行部 署,并且可以根据实际加密需求对待发送的报文进行各种形式的保护。例如在发送节点上 预先部署3种不同种类的公钥,分别为PK1、 PK2和PK3。发送节点可以从上述3种公钥中 选择1种公钥,如PK1,对待发送的报文进行公钥保护,在所述报文中携带根据PK1生成的对 应CGA参数和CGA签名。发送节点也可以从上述3种公钥中选择多种或全部公钥分别对待发送的报文进行公钥保护,当发送节点选择上述3种公钥分别对待发送的报文进行公钥保 护时,在所述报文中携带分别根据上述3种公钥生成的对应CGA参数和CGA签名。本发明 实施例所提供的方法具体包括 S21接收发送节点发送的已进行公钥保护的第一报文。 其中,所述第一报文中可以携带有根据所述公钥生成的CGA参数和CGA签名。可 选地,所述第一报文中也可以携带有自身所支持的公钥的提示信息。此外,所述第一报文中 也可以采用直接携带自身所支持的公钥等方式。
S22根据所述第一报文获取所述公钥的类型。 具体地,当所述第一报文中携带有根据所述公钥生成的CGA参数和CGA签名时, S22具体包括根据所述第一报文中携带的所述CGA参数和CGA签名获取所述公钥的类型。 当所述第一报文中携带有自身所支持的公钥的提示信息时,S22具体包括根据所述第一 报文中携带的所述提示信息获取所述公钥的类型。 其中,所述第一报文中可以携带有根据一种公钥生成的对应的CGA参数和CGA签 名,也可以携带根据多种公钥分别生成的对应CGA参数和CGA签名组成的一组CGA参数和 CGA签名。当所述第一报文中携带有多种CGA参数和CGA签名时,接收节点将根据所述多 种CGA参数和CGA签名分别获取对应的公钥类型。根据所获取的公钥类型,接收节点即可 识别发送节点所使用的公钥。
实施例二 如图3所示,本发明实施例所提供的支持CGA公钥识别的网络节点装置,包括
报文接收模块31,用于接收发送节点发送的已进行公钥保护的第一报文;
公钥类型获取模块32,用于根据所述第一报文获取所述公钥的类型。
具体地,所述公钥类型获取模块32可以包括第一获取子单元,用于在所述第一 报文中携带有根据所述公钥生成的CGA参数和CGA签名时,根据所述第一报文中携带的所 述CGA参数和CGA签名获取所述公钥的类型;和/或第二获取子单元,用于在所述第一报文 中携带有自身所支持的公钥的提示信息时,根据所述第一报文中携带的所述提示信息获取 所述公钥的类型。 当所述第一报文中携带根据多种公钥分别生成的对应CGA参数和CGA签名,即所 述第一报文中携带有多种CGA参数和CGA签名时,所述公钥类型获取模块32,用于根据所述 多种CGA参数和CGA签名分别获取对应的公钥类型。 本发明实施例所提供的支持CGA公钥识别的网络节点装置,对应为上述方法实施 例中的接收节点,其所适用的应用场景,以及工作方式和流程均与上述方法实施例类同,此 不赘述。 通过上述本发明实施例所提供的CGA公钥识别方法及装置,有效地解决了支持多 公钥的CGA签名验证过程中的公钥识别问题,为支持多公钥的CGA签名验证技术发展铺平 了道路。 实施例三 如图4所示,本发明实施例还提供一种CGA公钥确定方法,所述方法应用于参与通 讯的第一节点和第二节点上,上述两节点通常被定义为发送节点和接收节点,在所述发送 节点和接收节点上可以根据实际需求分别预先部署用于CGA签名验证的多种备选公钥,所述备选公钥的类别以及优先级可以根据实际需求及策略采用完全相同或部分相同或完全 不同的部署。例如在发送节点上预先部署3种备选公钥,分别为PK1、PK2和PK3,在对应的 接收节点上预先部署2种备选公钥,分别为PK2和PK3,并且所述备选公钥的优先级从高到 低的排列顺序为PK1 > PK2 > PK3。 本发明实施例所述方法主要是通过所述发送节点与接收节点之间的报文交互来 进行公钥确定,包括以下步骤 接收发送节点发送的已进行公钥保护的第一报文;
根据所述第一报文获取待确定公钥的类型; 根据所述待确定公钥的类型判断所述待确定公钥是否为接收节点自身支持的公 钥;如果判断结果为是,则确定所述待确定公钥为自身支持的公钥。 当所述发送节点本地预先部署有N种备选公钥时,本发明实施例所述CGA公钥确 定方法具体包括 S41、发送节点从本地预先部署的N种备选公钥中选择至少一种备选公钥作为待 确定公钥,其中N为正整数; S42、所述发送节点利用所述待确定公钥对第一报文进行公钥保护。 S43、所述发送节点向接收节点发送已进行公钥保护的所述第一报文; S44、所述接收节点收到所述第一报文后,根据该第一报文获取所述待确定公钥的
类型; S45、当根据所述待确定公钥的类型判断确定所述待确定公钥为所述接收节点支 持的公钥时,所述接收节点用所述待确定公钥对第二报文进行保护,并将已进行公钥保护 的所述第二报文发送给所述发送节点; S46、所述发送节点根据所述第二报文获取所述待确定公钥的类型,并根据所述待
确定公钥的类型将所述待确定公钥作为与所述接收节点协商确定的公钥。 在执行S45之前,本实施例所述方法还可包括所述接收节点根据所述待确定公
钥的类型判断所述待确定公钥是否为所述接收节点支持的公钥,当所述待确定公钥不是所
述接收节点支持的公钥时,所述发送节点从所述N种备选公钥中选择另外至少一种备选公
钥作为待确定公钥,返回执行S42。 可选地,当所述待确定公钥不是所述接收节点支持的公钥时,接收节点将向发送 节点回复第三报文,用于告知发送节点本次确定失败,即所述待确定公钥不是所述接收节 点支持的公钥;可选的,接收节点也可将自身所支持的公钥的提示信息携带于所述第三报 文中发送给发送节点,发送节点收到所述第三报文后,将根据所述第三报文携带的提示信 息获得接收节点所支持的公钥类型,并判断接收节点所支持的公钥类型是否为发送节点本 地预先配置的公钥类型,如果判断结果为是,则确定成功,发送节点将对应的公钥类型通知 所述接收节点,否则确定失败,结束流程。 可选地,所述发送节点从所述N种备选公钥中选择另外至少一种备选公钥作为待 确定公钥的步骤具体包括所述发送节点从所述N种备选公钥中未被选择作为待确定公钥 的备选公钥中选择至少一种备选公钥作为待确定公钥。 可选地,当所述待确定公钥不是所述接收节点支持的公钥时,本实施例所述方法 还包括所述接收节点丢弃所述第一报文,并且不对所述发送节点作任何回复。所述发送节点从所述N种备选公钥中选择另外至少一种备选公钥作为待确定公钥的步骤具体包括所 述发送节点在规定时间内未收到所述接收节点的回复,则从所述N种备选公钥中未被选择 作为待确定公钥的备选公钥中选择至少一种备选公钥作为待确定公钥。 在上述实施例中,所述发送节点可以根据实际需求或预先配置的公钥选择策略从 本地预先部署的多种备选公钥中选择一种、两种或两种以上,或者全部备选公钥作为待确 定公钥对第一报文进行公钥保护。例如,在所述发送节点上预先部署有5种备选公钥,依序 排列为PK1、PK2、PK3、PK4、PK5,假定这种排列顺序就是所述备选公钥的优先选择顺序,并且 所述备选公钥的优先选择顺序具体为PK1 > PK2 > PK3 > PK4 > PK5,则所述发送节点可以 根据预先配置的公钥选择策略从所述5种备选公钥中任选一种公钥(如PK2)或根据从高 到低的优先选择顺序首选优先级最高的一种公钥(如PK1)作为待确定公钥对第一报文进 行公钥保护,也可以根据预先配置策略使用所有备选公钥分别对所述第一报文进行公钥保 护,具体可选方案为根据上述优先选择顺序使用所有备选公钥依序对所述第一报文进行公 钥保护。如果采用一种备选公钥,如PK1对所述第一报文进行公钥保护,则已进行公钥保护 的所述第一报文尾部将携带有根据所述公钥PK1及其对应私钥分别生成的CGA参数和CGA 签名。如果采用所有备选公钥对所述第一报文进行公钥保护,则已进行公钥保护的所述第 一报文尾部将携带有根据所述5种备选公钥及其对应私钥依序生成的CGA参数1和CGA签 名1 、 CGA参数2和CGA签名2、 CGA参数3和CGA签名3、 CGA参数4和CGA签名4、 CGA参 数5和CGA签名5。 安全邻居发现协议(SeND, Secure Neighbor Discovery)是采用CGA验证和签名 认证对邻居发现协议(Neighbor Discovery Protocol)进行保护的IPv6协议,安全邻居发 现协议的具体实现机制为在ND协议报文中携带CGA参数和CGA签名,由所述邻居发现协议 报文的接收节点根据所述报文进行CGA验证和签名验证,从而达到对邻居发现协议报文源 认证和完整性保护的目的。 邻居发现(ND, Neighbor Discovery)协议是IPv6协议的一种基本组成部分,它实 现了在I Pv4中的地址解析协议(ARP)、互联网控制报文协议(Internet Control Message Protocol, ICMP)中的路由器发现部分、重定向协议的所有功能,并具有邻居不可达检测机 制。 邻居发现协议实现了路由器和前缀发现、地址解析、下一跳地址确定、重定向、邻 居不可达检测、重复地址检测等功能,可选实现链路层地址变化、输入负载均衡、泛播地址 和代理通告等功能。 邻居发现协议采用5种类型的IPv6控制信息报文(ICMPv6)来实现邻居发现协议 的各种功能。这5种类型消息如下 路由器请求(Router Solicitation):当接口工作时,主机发送路由器请求消息, 要求路由器立即产生路由器通告消息,而不必等待下一种预定时间。 路由器通告(Router Advertisement):路由器周期性地通告它的存在以及配置的 链路和网络参数,或者对路由器请求消息作出响应。路由器通告消息包含在连接(on-link) 确定、地址配置的前缀和跳数限制值等。 邻居请求(Neighbor Solicitation):节点发送邻居请求消息来请求邻居的链路 层地址,以验证它先前所获得并保存在缓存中的邻居链路层地址的可达性,或者验证它自
11己的地址在本地链路上是否是惟一的。 邻居通告(Neighbor Advertisement):邻居请求消息的响应。节点也可以发送非 请求邻居通告来指示链路层地址的变化。 重定向(Redirect):路由器通过重定向消息通知主机。对于特定的目的地址,如
果不是最佳的路由,则通知主机到达目的地的最佳下一跳。 以下将结合ND协议报文来具体描述本发明的两种实施方式。 实施例四 请同时参阅图5和图6,本发明实施例提供一种CGA公钥确定方法,具体包括
S51、发送节点从本地预先部署的N种备选公钥中选择一种备选公钥作为待确定 公钥,其中N为大于1的正整数。 假设在发送节点上预先部署有5种备选公钥,依序排列为PK1、PK2、PK3、PK4、PK5, 假定这种排列顺序就是所述备选公钥的优先选择顺序,并且所述备选公钥的优先选择顺序 具体为PK1 > PK2 > PK3 > PK4 > PK5。所述发送节点根据预先配置的公钥选择策略,即按 所述备选公钥的优先选择顺序从高到低选择备选公钥的方式将首选PK1作为待确定公钥。
S52、所述发送节点利用所述待确定公钥对第一 ND协议报文进行公钥保护。
具体为,所述发送节点利用备选公钥PK1对第一 ND协议报文MSG1进行公钥保护。
S53、所述发送节点向接收节点发送已进行公钥保护的所述第一 ND协议报文。
如图6所示,所述发送节点将已进行公钥保护的所述第一 ND协议报文MSG1发送 给接收节点。所述第一 ND协议报文MSG1携带有根据所述备选公钥PK1及其对应私钥生成 的CGA参数和CGA签名。 S54、所述接收节点接收到所述第一 ND协议报文后,根据所述第一 ND协议报文获 取所述待确定公钥的类型。 具体地,接收节点收到MSG1后,可以根据MSG1中携带的CGA参数和CGA签名获取 所述待确定公钥PK1的类型。 S55、所述接收节点根据所述待确定公钥的类型判断所述待确定公钥是否为所述
接收节点支持的公钥,如果判断结果为是,则执行S56 ;如果判断结果为否,则执行S58。 S56、所述接收节点用所述公钥对回复所述发送节点的第二ND协议报文进行保
护,并将已进行公钥保护的所述第二 ND协议报文发送给所述发送节点。 S57、所述发送节点根据所述第二 ND协议报文获取所述待确定公钥的类型,并根
据所述待确定公钥的类型将所述待确定公钥作为与所述接收节点确定的公钥。 S58、所述发送节点将从所述N种备选公钥中选择另一种备选公钥作为待确定公
钥,返回执行S52。 在上述S55中,所述接收节点通常是采用将所述待确定公钥的类型与本地预先部 署的备选公钥进行匹配的方式来判断所述待确定公钥是否为所述接收节点支持的公钥。如 果所述待确定公钥不是所述接收节点支持的公钥,则所述接收节点将丢弃所述第一 ND协 议报文MSG1,并且不对发送节点作任何回复。所述发送节点在规定时间内未收到接收节点 的回复,则从所述N种备选公钥中选择另一种备选公钥作为待确定公钥,返回执行S52。
在本实施例中,所述从所述N种备选公钥中选择一种备选公钥作为待确定公钥的 操作均可以根据实际需求或发送节点本地预先配置的公钥选择策略来进行,例如根据所述备选公钥的优先选择顺序首选优先级最高的备选公钥。在S58中,所述发送节点从所述N 种备选公钥中选择另一种备选公钥作为待确定公钥的步骤具体包括所述发送节点从所述 N种备选公钥中未被选择作为待确定公钥的备选公钥中选择一种优先级最高的备选公钥作 为待确定公钥。 假设在接收节点上预先部署有2种公钥,分别为PK2和PK3,也就是说,PK2和PK3 为所述接收节点支持的公钥。另外,假定这两种公钥的优先选择顺序与所述发送节点上所 部署的备选公钥相同,即具体为PK2 > PK3。所述接收节点根据MSG1获得所述待确定公钥 PK1后,将PK1依次与本地部署的公钥PK2和PK3进行匹配。当接收节点经过匹配判断确 定PK1不是所述接收节点支持的公钥时,将丢弃所述第一ND协议报文MSG1,并且不作回复。 所述发送节点在规定时间内没有收到所述接收节点的回复,将从本地部署的所述5种备选 公钥中未被选择作为待确定公钥的剩余4种备选公钥中选择一种优先级最高的备选公钥, 即PK2作为待确定公钥,返回执行S52。具体地,所述发送节点利用所述待确定公钥PK2对 MSG2报文进行公钥保护,并将已进行公钥保护的所述MSG2报文发送给接收节点,接收节点 收到所述MSG2报文后,将根据所述MSG2报文获取待确定公钥PK2的类型,并将所述待确定 公钥PK2的类型依次与本地部署的公钥PK2和PK3进行匹配。当接收节点经过匹配判断确 定PK2是所述接收节点支持的公钥时,构造回复给发送节点的MSG3报文,并用所述公钥PK2 对所述MSG3报文进行保护后,将已进行公钥保护的所述MSG 3报文发送给所述发送节点。 所述发送节点收到所述MSG3报文后,根据MSG3报文获取所述待确定公钥PK2的类型,并根 据所述待确定公钥PK2的类型将PK2作为与所述接收节点协商确定的公钥,至此CGA公钥 确定成功。 依照上述方法,所述发送节点和接收节点还可以进一步通过报文交互来进行公钥 确定,获得下一种确定选定的公钥。例如,所述发送节点根据MSG3报文获取所述待确定公 钥PK2的类型,并根据所述待确定公钥PK2的类型将其作为与所述接收节点协商确定的公 钥后,所述发送节点可以根据实际需求进一步从本地部署的5种备选公钥中另外选择一种 备选公钥来作为待确定公钥,如从未被选择作为待确定公钥的3种剩余备选公钥中选择优 先级最高的备选公钥PK3作为待确定公钥,继续依据上述方法与所述接收节点进行公钥确 定,以获取下一种待确定的公钥,具体确定流程与上文所述类同,此不赘述。
实施例五 再请同时参阅图7和图8,本发明实施例还提供一种CGA公钥确定方法,具体包 括 S81、发送节点将本地预先部署的所有备选公钥均选作待确定公钥。假设在发送节点上预先部署有4种备选公钥,依序排列为PK1、 PK2、 PK3、 PK4。在
本实施例中,所述发送节点将所述4种备选公钥均选作待确定公钥,用于对发送给接收节
点的第一 ND协议报文进行保护。 S82、所述发送节点利用所述待确定公钥对第一 ND协议报文MSG1进行公钥保护。
假定上述发送节点上部署的备选公钥的排列顺序就是所述备选公钥的优先选择 顺序,并且所述备选公钥的优先选择顺序具体为PK1 > PK2 > PK3 > PK4。具体实施时,所 述发送节点可以根据预先配置的公钥选择策略,按所述4种备选公钥的优先选择顺序从高 到低选择备选公钥对第一 ND协议报文MSG1进行公钥保护。
S83、所述发送节点向接收节点发送已进行公钥保护的所述第一ND协议报文 MSG1。 如图7所示,所述发送节点将已进行公钥保护的所述第一 ND协议报文MSG1发送 给接收节点。所述第一 ND协议报文MSG1携带有根据所述4种备选公钥及其对应私钥依次 生成的CGA参数1和CGA签名1、CGA参数2和CGA签名2、CGA参数3和CGA签名3、CGA参 数4和CGA签名4。 S84、所述接收节点接收到所述第一 ND协议报文MSG1后,根据所述第一 ND协议报 文MSG1获取所述待确定公钥的类型。 具体地,接收节点收到MSG1报文后,可以根据MSG1报文中携带的四种CGA参数和 CGA签名信息分别获取对应的待确定公钥的类型,即PK1、 PK2、 PK3和PK4的类型。
S85、当根据所述待确定公钥的类型判断确定所述待确定公钥中至少一种为所述 接收节点支持的公钥时,所述接收节点从所述至少一种为所述接收节点支持的公钥的待确 定公钥中选取至少一种待确定公钥对第二 ND协议报文MSG2进行保护,并将已进行公钥保 护的所述MSG2报文发送给所述发送节点。 可选地,在S84中,所述接收节点根据MSG1携带的四种CGA参数和CGA签名信息 逐种获取所对应的待确定公钥的类型。例如,可先根据所述MSG1携带的CGA参数1和CGA 签名1获取对应的待确定公钥PK1的类型;当根据所述待确定公钥PK1的类型判断确定PKl 不是所述接收节点支持的公钥时,所述接收节点再根据所述MSG1携带的CGA参数2和CGA 签名2获取对应的待确定公钥PK2的类型;当根据所述待确定公钥PK2的类型判断确定PK2 也不是所述接收节点支持的公钥时,所述接收节点继续根据所述MSG1携带的CGA参数3和 CGA签名3获取对应的待确定公钥PK3的类型,以此类推,直至根据所获取的待确定公钥的 类型判断确定对应的待确定公钥为所述接收节点支持的公钥为止。如果PK1为所述接收节 点支持的公钥时,则直接执行S85。 另夕卜,如果在S84中所述接收节点根据MSG1报文获取到PK1 、PK2、PK3以及PK4等4 种所述待确定公钥的类型,并且其中只有PK2和PK3是所述接收节点支持的公钥,则在S85 中所述接收节点将从所述PK2和PK3中选取至少一种待确定公钥对所述MSG2报文进行保 护,并将已进行公钥保护的所述MSG2报文发送给所述发送节点。可选地,所述接收节点将 按照预先配置的选取策略选取对MSG2报文进行公钥保护的待确定公钥,例如可根据本地 配置的公钥优先选择顺序首选优先级较高的待确定公钥。如果PK2的优先级较高于PK3,则 首选PK2对MSG2报文进行公钥保护。可选地,在S85中,当所述待确定公钥中的PK2和PK3 均为所述接收节点支持的公钥时,所述接收节点也可用所述PK2和PK3依序对所述MSG2报 文进行保护,并将已进行公钥保护的所述MSG2报文发送给所述发送节点。所述已进行公钥 保护的MSG2报文中携带有分别根据待确定公钥PK2和PK3及其对应私钥生成的CGA参数 2和CGA签名2,以及CGA参数3和CGA签名3。 S86、所述发送节点根据所述MSG2报文获取对MSG2报文进行公钥保护的所述待确 定公钥的类型,并根据从MSG2报文中所获取的所述待确定公钥的类型将所述待确定公钥 作为与所述接收节点协商确定的公钥。 具体地,所述发送节点接收到来自所述接收节点的所述MSG2报文后,根据所述 MSG2报文中携带的CGA参数和CGA签名信息获取对应的待确定公钥的类型,并根据从MSG2报文中所获取的所述待确定公钥的类型将所述待确定公钥作为与所述接收节点协商确定 的公钥。例如,当所述MSG2报文中只携带了 CGA参数2和CGA签名2时,所述发送节点将 根据所述MSG2报文获取对应的待确定公钥PK2的类型,并根据所述待确定公钥PK2的类型 将PK2作为与接收节点协商确定的公钥;当所述MSG2报文中同时携带了 CGA参数2和CGA 签名2以及CGA参数3和CGA签名3时,所述发送节点将根据所述MSG2报文获取对应的待 确定公钥PK2和PK3的类型,并根据所述待确定公钥PK2和PK3的类型将PK2和PK3均作 为与接收节点协商确定的公钥。 根据本发明的设计思路,在本发明实施例所提供的CGA公钥确定方法中,所述发 送节点和所述接收节点间交互的报文不限于ND协议报文,也可采用其他协议报文;获取待 确定公钥类型的方式也不仅限于根据报文中所携带的CGA参数和CGA签名信息,也可由报 文发送方将待确定公钥类型的信息直接添加于所述报文中,所述报文接收方将根据上述信 息从报文中获取对应的待确定公钥类型。此外,报文发送方还可在所述报文中携带部署于 本地的备选公钥优先选择序列,以利报文接收方能够更快地确定从报文中获得的待确定公 钥是否为报文接收方所支持的公钥。 根据具体实现需求以及应用场景,也可采用本发明实施例提供的不同实施方式。 例如,当回复地址为单播地址时,可只携带一种公钥及其私钥对应生成的CGA参数和CGA签 名;当回复地址为多播地址时,如路由器通告为周期性发送或邻居通告为非请求邻居通告 时,可只携带一种公钥及其私钥对应生成的CGA参数和CGA签名;也可携带所支持的所有公 钥及其私钥对应生成的CGA参数和CGA签名。 综上所述,本发明实施例所提供的CGA公钥确定的方法主要是通过参与通讯的发 送节点根据本地预先部署的备选公钥及对应的公钥选择策略指定一种或多种公钥对报文 进行公钥保护,再将所述报文发送给接收节点,由接收节点判断是否支持根据所述报文获 得的公钥,并发送需要公钥保护的报文将所述接收节点支持的公钥通知所述发送节点,从 而实现所述发送节点与所述接收节点之间的公钥确定,有效地解决了支持多公钥的CGA签 名验证过程中的公钥选择问题,为支持多公钥的CGA签名验证技术发展铺平了道路。
实施例六 请参阅图9,本发明实施例还提供一种CGA公钥确定的系统,所述系统包括
第一网络节点91,用于发送已进行公钥保护的第一报文;禾口 第二网络节点92,用于接收所述第一网络节点91发送的已进行公钥保护的第一 报文,根据所述第一报文获取所述待确定公钥的类型,并根据所述待确定公钥类型判断所 述待确定公钥是否为所述第二网络节点自身支持的公钥时,如果判断结果为是,则确定所 述待确定公钥为所述第二网络节点自身支持的公钥。 其中,所述第一网络节点91还用于从本地预先部署的N种备选公钥中选择至少一
种备选公钥作为待确定公钥对第一报文进行公钥保护,其中N为正整数。 所述第二网络节点还用于在确定所述待确定公钥为所述第二网络节点自身支持
的公钥时,用所述待确定公钥对第二报文进行公钥保护,并将已进行公钥保护的所述第二
报文发送给所述第一网络节点;所述第一网络节点还用于根据所述第二报文获取所述待确
定公钥类型,并根据所述待确定公钥类型将所述待确定公钥作为与所述第二网络节点协商
确定的公钥。
实施例七 请参阅图IO,本发明实施例还对应提供一种支持CGA公钥确定的网络节点装置, 可用作上述系统实施例的第一网络节点。所述网络节点装置用于与另一网络节点装置进行 CGA公钥确定,并且包括 公钥选择模块IOI,用于从所述装置上预先部署的N种备选公钥中选择至少一种 备选公钥作为待确定公钥,其中N为正整数; 第一报文处理模块102,用于利用所述公钥选择模块101选择的待确定公钥对第 一报文进行公钥保护; 第一报文发送模块103,用于向参与公钥确定的所述另一网络节点装置发送已进 行公钥保护的所述第一报文; 第一公钥获取模块104,用于根据所述另一网络节点装置发送的第二报文获取所 述待确定公钥的类型;以及 公钥协商确定模块105,用于根据所述第一公钥获取模块获取的所述待确定公钥
的类型将所述待确定公钥作为与所述另一网络节点装置协商确定的公钥。
实施例八 请参阅图ll,本发明实施例还对应提供一种支持CGA公钥确定的网络节点装置, 用作上述系统实施例的第二网络节点。所述网络节点装置用于与另一网络节点装置进行 CGA公钥确定,并且包括 第二报文接收模块lll,用于接收另一网络节点装置发送的已进行公钥保护的第 一报文; 第二公钥获取模块112,用于根据所述第一报文获取待确定公钥的类型; 公钥判断模块113,用于根据所述待确定公钥的类型判断所述待确定公钥是否为
本地支持的公钥;如果判断结果为是,则确定所述待确定公钥为本地支持的公钥。 可选地,本发明实施例装置还包括第二报文处理模块114,用于在所述公钥判断
模块113判断确定所述待确定公钥为本地支持的公钥时,用所述待确定公钥对第二报文进
行公钥保护;以及 第二报文发送模块115,用于将已在所述第二报文处理模块114上进行公钥保护 的所述第二报文发送给所述另一网络节点装置。 上述CGA公钥确定的系统以及对应网络节点装置的使用过程和前述方法实施例 类似,在此不再赘述。 使用本发明实施例的系统和装置,可以有效地解决支持多公钥的CGA签名验证过 程中的公钥选择问题,为支持多公钥的CGA签名验证技术发展铺平道路。
通过以上实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助 软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更 佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的 部分可以以软件产品的形式体现出来,该计算机软件产品存储在一种存储介质(可以是 CD-ROM, U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是种人计算 机,服务器,或者网络设备等)执行本发明各种实施例所述的方法。 本领域技术人员可以理解附图只是一种优选实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。 本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述分布于 实施例的装置中,也可以进行相应变化位于不同于本实施例的一种或多种装置中。上述实 施例的模块可以合并为一种模块,也可以进一步拆分成多种子模块。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。 以上所述,仅为本发明较佳的具体实施方式
,但本发明的保护范围并不局限于此, 任何熟悉本技术领域的技术人员在本发明揭露的技术范围和不脱离本发明的技术思想范 围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护 范围应该以权利要求的保护范围为准。
权利要求
一种CGA公钥确定方法,其特征在于,包括接收发送节点发送的已进行公钥保护的第一报文;根据所述第一报文获取待确定公钥的类型;根据所述待确定公钥的类型判断所述待确定公钥是否为接收节点自身支持的公钥;如果判断结果为是,则确定所述待确定公钥为自身支持的公钥。
2. 如权利要求1所述的CGA公钥确定方法,其特征在于,所述接收发送节点发送的已进 行公钥保护的第一报文之前,所述方法还包括A、 所述发送节点从本地预先部署的N种备选公钥中选择至少一种备选公钥作为待确 定公钥,其中N为正整数;B、 所述发送节点利用所述待确定公钥对所述第一报文进行公钥保护;C、 所述发送节点向所述接收节点发送已进行公钥保护的所述第一报文。
3. 如权利要求2所述的CGA公钥确定方法,其特征在于,当确定所述待确定公钥为所述 接收节点自身支持的公钥时,所述方法还包括用所述待确定公钥对第二报文进行保护,并 将已进行公钥保护的所述第二报文发送给所述发送节点;所述发送节点根据所述第二报文 获取所述待确定公钥的类型,并根据所述待确定公钥的类型将所述待确定公钥作为与所述 接收节点协商确定的公钥。
4. 如权利要求3所述的CGA公钥确定方法,其特征在于,所述方法还包括当所述待确 定公钥不是所述接收节点自身支持的公钥时,所述发送节点从所述N种备选公钥中选择另 外至少一种备选公钥作为待确定公钥,返回执行步骤B。
5. 如权利要求4所述的CGA公钥确定方法,其特征在于,所述发送节点从所述N种备选 公钥中选择另外至少一种备选公钥作为待确定公钥的步骤具体包括所述发送节点从所述 N种备选公钥中未被选择作为待确定公钥的备选公钥中选择至少一种备选公钥作为待确定 公钥。
6. 如权利要求5所述的CGA公钥确定方法,其特征在于,所述步骤A具体包括发送节 点根据预设公钥选择策略从所述N种备选公钥中选择至少一种备选公钥作为待确定公钥; 所述发送节点从所述N种备选公钥中未被选择作为待确定公钥的备选公钥中选择至少一种备选公钥作为待确定公钥的步骤具体包括所述发送节点根据所述预设公钥选择策略从所述N种备选公钥中未被选择作为待确定公钥的备选公钥中选择至少一种备选公钥作为待确定公钥。
7. 如权利要求6所述的CGA公钥确定方法,其特征在于,所述发送节点根据预设公钥选 择策略从所述N种备选公钥中选择至少一种备选公钥作为待确定公钥的步骤具体包括发 送节点根据公钥优先选择顺序从所述N种备选公钥中选择一种优先级最高的备选公钥作 为待确定公钥;所述发送节点根据所述预设公钥选择策略从所述N种备选公钥中未被选择 作为待确定公钥的备选公钥中选择至少一种备选公钥作为待确定公钥的步骤具体包括所 述发送节点根据所述公钥优先选择顺序从所述N种备选公钥中未被选择作为待确定公钥 的备选公钥中选择一种优先级最高的备选公钥作为待确定公钥。
8. 如权利要求3所述的CGA公钥确定方法,其特征在于,当所述待确定公钥不是所述接 收节点支持的公钥时,所述方法还包括,所述接收节点丢弃所述第一报文;所述发送节点从 所述N种备选公钥中选择另外至少一种备选公钥作为待确定公钥的步骤具体包括所述发送节点在规定时间内未收到所述接收节点的回复,则从所述N种备选公钥中选择另外至少 一种备选公钥作为待确定公钥。
9. 如权利要求3所述的CGA公钥确定方法,其特征在于,当所述待确定公钥不是所述接 收节点支持的公钥时,所述方法还包括接收节点将向发送节点回复第三报文,用于告知发 送节点所述待确定公钥不是所述接收节点支持的公钥。
10. 如权利要求1所述的CGA公钥确定方法,其特征在于,在所述判断步骤之后,所述方 法还包括当所述待确定公钥不是所述接收节点自身支持的公钥时,接收节点将自身所支 持的公钥的提示信息携带于第三报文中发送给发送节点,发送节点收到所述第三报文后, 将根据所述第三报文携带的提示信息获得接收节点所支持的公钥类型,并根据所述接收节 点所支持的公钥类型判断所述接收节点所支持的公钥是否为发送节点本地预先配置的公 钥,如果判断结果为是,则确定成功,发送节点将对应的公钥类型通知所述接收节点,否则 确定失败,结束流程。
11. 如权利要求1所述的CGA公钥确定方法,其特征在于,所述第一报文中携带有根据 所述待确定公钥生成的CGA参数和CGA签名,所述根据所述第一报文获取所述待确定公钥 类型的步骤具体包括根据所述第一报文中携带的所述CGA参数和CGA签名获取所述待确 定公钥类型。
12. 如权利要求3所述的CGA公钥确定方法,其特征在于,所述第二报文中携带有根据 所述待确定公钥生成的CGA参数和CGA签名,所述根据所述第二报文获取所述待确定公钥 类型的步骤具体包括根据所述第二报文中携带的所述CGA参数和CGA签名获取所述待确 定公钥类型。
13. 如权利要求1所述的CGA公钥确定方法,其特征在于,所述第一报文中携带有待确 定公钥类型信息。
14. 如权利要求3所述的CGA公钥确定方法,其特征在于,所述步骤A具体包括发送 节点将本地预先部署的N种备选公钥全部选择作为待确定公钥。
15. 如权利要求14所述的CGA公钥确定方法,其特征在于,当所述待确定公钥中至少一 种为所述接收节点支持的公钥时,所述用所述待确定公钥对第二报文进行保护,并将已进 行公钥保护的所述第二报文发送给所述发送节点的步骤具体包括所述接收节点从所述至 少一种为所述接收节点支持的公钥的待确定公钥中选取至少一种待确定公钥对所述第二 报文进行保护,并将已进行公钥保护的所述第二报文发送给所述发送节点。
16. 如权利要求15所述的CGA公钥确定方法,其特征在于,当所述待确定公钥中至少一 种为所述接收节点支持的公钥时,所述接收节点从所述至少一种为所述接收节点支持的公 钥的待确定公钥中选取至少一种待确定公钥对所述第二报文进行保护的步骤具体包括所 述接收节点根据预先配置的选取策略选取至少一种待确定公钥对所述第二报文进行保护。
17. 如权利要求16所述的CGA公钥确定方法,其特征在于,所述接收节点根据预先配置 的选取策略选取至少一种待确定公钥对所述第二报文进行保护的步骤具体包括所述接收 节点根据本地配置的公钥优先选择顺序选取优先级最高的待确定公钥对所述第二报文进 行保护。
18. 如权利要求15所述的CGA公钥确定方法,其特征在于,当所述待确定公钥中至少两 种为所述接收节点支持的公钥时,所述接收节点用所述至少两种为所述接收节点支持的公钥的待确定公钥依序对所述第二报文进行保护。
19. 如权利要求14所述的CGA公钥确定方法,其特征在于,所述根据所述第一报文获取 待确定公钥的类型的步骤具体包括,根据所述第一报文中携带的CGA参数和CGA签名信息 逐种获取所对应的待确定公钥类型。
20. 如权利要求19所述的CGA公钥确定方法,其特征在于,所述根据所述第一报文中携 带的CGA参数和CGA签名信息逐种获取所对应的待确定公钥类型的步骤具体包括所述接 收节点根据所述第一报文中携带的第一组CGA参数和CGA签名获取对应的第一待确定公钥 类型,当根据所述第一待确定公钥类型判断确定所述第一待确定公钥不是所述接收节点支 持的公钥时,所述接收节点再根据所述第一报文中携带的第二组CGA参数和CGA签名获取 对应的第二待确定公钥类型,以此类推,直至所述接收节点根据所述第一报文所获取的待 确定公钥类型判断对应的待确定公钥为所述接收节点支持的公钥为止。
21. 如权利要求2所述的CGA公钥确定方法,其特征在于,在步骤C之前,所述方法还包 括所述发送节点在所述第一报文中携带本地部署的备选公钥优先选择序列。
22. 如权利要求1所述的CGA公钥确定方法,其特征在于,所述第一报文是由所述发送 节点从本地预先部署的N种备选公钥中选择至少一种备选公钥作为待确定公钥进行公钥 保护,其中N为正整数。
23. —种CGA公钥确定系统,其特征在于,包括 第一网络节点,用于发送已进行公钥保护的第一报文;禾口第二网络节点,用于接收所述第一网络节点发送的已进行公钥保护的第一报文,根据 所述第一报文获取所述待确定公钥的类型,并根据所述待确定公钥类型判断所述待确定公 钥是否为所述第二网络节点自身支持的公钥时,如果判断结果为是,则确定所述待确定公 钥为所述第二网络节点自身支持的公钥。
24. 如权利要求23所述的CGA公钥确定系统,其特征在于,所述第一网络节点还用于从 本地预先部署的N种备选公钥中选择至少一种备选公钥作为待确定公钥对第一报文进行 公钥保护,其中N为正整数。
25. 如权利要求23所述的CGA公钥确定系统,其特征在于,所述第二网络节点还用于在 确定所述待确定公钥为所述第二网络节点自身支持的公钥时,用所述待确定公钥对第二报 文进行公钥保护,并将已进行公钥保护的所述第二报文发送给所述第一网络节点;所述第 一网络节点还用于根据所述第二报文获取所述待确定公钥类型,并根据所述待确定公钥类 型将所述待确定公钥作为与所述第二网络节点协商确定的公钥。
26. —种支持CGA公钥确定的网络节点装置,用于与另一网络节点装置进行CGA公钥确 定,其特征在于,包括公钥选择模块,用于从所述装置上预先部署的N种备选公钥中选择至少一种备选公钥 作为待确定公钥,其中N正整数;第一报文处理模块,用于利用所述公钥选择模块选择的待确定公钥对第一报文进行公 钥保护;第一报文发送模块,用于向参与公钥确定的所述另一网络节点装置发送已进行公钥保 护的所述第一报文;第一公钥获取模块,用于根据所述另一网络节点装置发送的第二报文获取所述待确定公钥的类型;以及公钥协商确定模块,用于根据所述第一公钥获取模块获取的所述待确定公钥的类型将 对应的待确定公钥作为与所述另一网络节点装置协商确定的公钥。
27. —种支持CGA公钥确定的网络节点装置,用于与另一网络节点装置进行CGA公钥确 定,其特征在于,包括第二报文接收模块,用于接收另一网络节点装置发送的已进行公钥保护的第一报文; 第二公钥获取模块,用于根据所述第一报文获取待确定公钥的类型; 公钥判断模块,用于根据所述待确定公钥的类型判断所述待确定公钥是否为本地支持 的公钥;如果判断结果为是,则确定所述待确定公钥为本地支持的公钥。
28. 如权利要求27所述的网络节点装置,其特征在于,该装置还包括第二报文处理模 块,用于在所述公钥判断模块判断确定所述待确定公钥为本地支持的公钥时,用所述待确 定公钥对第二报文进行公钥保护;以及第二报文发送模块,用于将已在所述第二报文处理模块上进行公钥保护的所述第二报 文发送给所述另一网络节点装置。
29. —种CGA公钥识别方法,其特征在于,包括 接收发送节点发送的已进行公钥保护的第一报文; 根据所述第一报文获取所述公钥的类型。
30. 如权利要求29所述的CGA公钥识别方法,其特征在于,所述第一报文中携带有根据 所述公钥生成的CGA参数和CGA签名;所述根据所述第一报文获取所述公钥的类型的步骤 具体包括根据所述第一报文中携带的所述CGA参数和CGA签名获取所述公钥的类型。
31. 如权利要求29所述的CGA公钥识别方法,其特征在于,所述第一报文中携带有自身 所支持的公钥的提示信息;所述根据所述第一报文获取所述公钥的类型的步骤具体包括 根据所述第一报文中携带的所述提示信息获取所述公钥的类型。
32. —种支持CGA公钥识别的网络节点装置,其特征在于,包括 报文接收模块,用于接收发送节点发送的已进行公钥保护的第一报文; 公钥类型获取模块,用于根据所述第一报文获取所述公钥的类型。
33. 如权利要求32所述的网络节点装置,其特征在于,所述公钥类型获取模块具体包括第一获取子单元,用于在所述第一报文中携带有根据所述公钥生成的CGA参数和CGA 签名时,根据所述第一报文中携带的所述CGA参数和CGA签名获取所述公钥的类型;和/或第二获取子单元,用于在所述第一报文中携带有自身所支持的公钥的提示信息时,根 据所述第一报文中携带的所述提示信息获取所述公钥的类型。
全文摘要
本发明提供CGA公钥识别和CGA公钥确定的方法、系统和装置。其中,CGA公钥识别方案主要是接收节点接收发送节点发送的已进行公钥保护的第一报文;根据所述第一报文获取所述公钥的类型。CGA公钥确定方案主要是接收节点接收发送节点发送的已进行公钥保护的第一报文,并根据所述第一报文获取待确定公钥的类型,再根据所述待确定公钥的类型判断所述待确定公钥是否为自身支持的公钥,如果判断结果为是,则确定所述待确定公钥为自身支持的公钥。通过本发明的实施,有效解决了支持多公钥的CGA签名验证过程中的公钥识别和公钥确定问题。
文档编号H04L29/06GK101741820SQ20081021742
公开日2010年6月16日 申请日期2008年11月13日 优先权日2008年11月13日
发明者沈烁, 蒋胜 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1