1.本技术涉及网络技术领域,尤其涉及证书请求、生成、接入方法、装置、通信设备及介质。
背景技术:
2.随着网络的普及,移动办公、物联网、车联网等行业的火热发展,网络架构日益复杂化,如何划定公司的网络边界并保护那些已部署在各个地方的内网资源,成为当今很多大型企业需要面对的问题,而身份认证和边缘接入是这些企业必须具备的能力。其中,边缘网络指的是用于接入用户的最后一段网络。
3.然而,在传统中心化的网络架构中,用户的终端设备接入都需要在网络的中心服务器进行认证,一旦中心服务器的认证服务出现异常,将造成大量用户无法接入。
技术实现要素:
4.鉴于以上所述现有技术的缺点,本技术的目的在于证书请求、生成、接入方法、装置、通信设备及介质,以解决现有网络用户接入认证异常的风险问题。
5.本技术第一方面提供一种证书请求方法,应用于终端设备;所述证书请求方法包括:所述终端设备发送证书请求给认证服务端;所述终端设备接收认证服务端对应所述证书请求生成的证书;其中,所述证书包含接入点信息以及认证服务端的第一签名,所述接入点信息关于用于接入预设网络的至少一个网关设备;所述终端设备使用预置的认证服务端的第一公钥验证所述第一签名,以验证所述证书有效性。
6.在第一方面的实施例中,所述证书请求包含用户信息,所述证书还包含终端设备的用户权限信息,所述用户权限信息指示所述终端设备在所述预设网络的权限。
7.在第一方面的实施例中,所述终端设备发送证书请求给认证服务端,包括:所述终端设备使用认证服务端的第一公钥加密所述证书请求,发送给所述认证服务端。
8.本技术第二方面提供一种网络连接方法,应用于终端设备,并具有包含第二公钥和第二私钥的第二公私钥对、以及带有认证服务端的第一签名的证书;所述证书包含接入点信息,所述接入点信息关于用于接入预设网络的至少一个网关设备;所述网络连接方法包括:所述终端设备通过所述第二私钥对所述证书生成第二签名;所述终端设备根据所述证书中的接入点信息确定网关设备;所述终端设备发送包含所述证书及第二签名的接入请求给所确定的网关设备;在所述第一签名和第二签名验证通过时,所述终端设备通过所述网关设备接入预设网络。
9.在第二方面的实施例中,所述证书还包含终端设备的用户权限信息;所述在所述第一签名和第二签名验证通过时,所述终端设备通过所述网关设备接入预设网络,包括:所述终端设备接收所述网关设备分配的令牌;其中,在所述第一签名和第二签名验证通过时,由网关设备对应所述用户权限信息生成所述令牌;所述终端设备使用所述令牌,以通过所述网关设备接入预设网络。
10.在第二方面的实施例中,所述令牌带有网关设备的第三签名;在所述使用所述令牌,以通过所述网关设备接入预设网络之前,还包括:所述终端设备通过已有的所述网关设备的第三公钥验证所述第三签名;在所述第三签名验证通过时,所述终端设备通过所述网关设备接入预设网络。
11.在第二方面的实施例中,所述接入点信息还包含网关设备的第三公钥;所述网络连接方法还包括:所述终端设备从证书获取所述网关设备的第三公钥,以用于验证所述第三签名。
12.在第二方面的实施例中,所述的网络连接方法还包括:当接入失败时,所述终端设备根据证书中的接入点信息选择其它网关设备尝试接入预设网络。
13.在第二方面的实施例中,所述的网络连接方法还包括:当持续接入失败时,所述终端设备重新请求证书。
14.在第二方面的实施例中,所述终端设备通过所述网关设备接入预设网络,包括:所述终端设备与网关设备之间建立隧道连接。
15.本技术第三方面提供一种证书生成方法,应用于认证服务端,所述认证服务端具有包含第一公钥和第一私钥的第一公私钥对;所述证书生成方法包括:所述认证服务端接收终端设备的证书请求;所述认证服务端基于所述证书请求生成带有第一签名的证书;其中,所述证书包含接入点信息,所述接入点信息关于用于接入预设网络的至少一个网关设备;所述第一签名通过所述第一私钥生成;所述认证服务端发送所述证书给所述终端设备。
16.在第三方面的实施例中,所述证书请求包含用户信息;所述认证服务端基于所述证书请求生成带有第一签名的证书,包括:所述认证服务端在所述证书中设置用户权限信息,所述用户权限信息指示所述终端设备在所述预设网络的权限;所述用户权限信息基于所述用户信息生成。
17.在第三方面的实施例中,所述的证书生成方法还包括:响应于终端设备和/或网关设备的信息的变化,认证服务端指示接入所述终端设备的网关设备通知所述终端设备进行证书更新。
18.在第三方面的实施例中,所述认证服务端获取所述证书请求的内容,包括:所述认证服务端通过第一私钥解密经第一公钥加密的所述证书请求,以得到所述证书请求的内容。
19.在第三方面的实施例中,所述的证书生成方法还包括:响应于终端设备和/或网关设备的信息的变化,认证服务端指示接入所述终端设备的网关设备通知所述终端设备进行证书更新。
20.本技术第四方面提供一种网关接入方法,应用于网关设备,所述网关设备预置有认证服务端的第一公钥;所述网关接入方法包括:所述网关设备接收终端设备的接入请求,所述接入请求包括所述终端设备的证书和对应生成的第二签名;所述证书包含接入点信息,所述接入点信息相关于所述网关设备;所述网关设备通过所述第一公钥验证所述证书中认证服务端的第一签名;所述网关设备通过所述证书中终端设备的第二公钥验证所述第二签名;在所述第一签名和第二签名验证通过时,所述网关设备将所述终端设备接入预设网络。
21.在第四方面的实施例中,所述证书中还包含终端设备的用户权限信息;所述网关
接入方法还包括:所述网关设备根据所述用户权限信息生成对应的令牌;所述网关设备发送所述令牌给所述终端设备,以供接入所述预设网络使用。
22.在第四方面的实施例中,所述网关设备具有第三公私钥对;所述网关接入方法包括:所述网关设备通过所述第三公私钥对中的第三私钥对所述令牌生成第三签名;所述网关设备随所述令牌将发送所述第三签名;所述网关设备将所述终端设备接入所述预设网络。
23.本技术第五方面提供一种证书请求装置,应用于终端设备;所述证书请求装置包括:证书请求发送模块,用于发送证书请求给认证服务端;证书接收模块,用于接收认证服务端对应所述证书请求生成的证书;其中,所述证书包含接入点信息以及认证服务端的第一签名,所述接入点信息关于用于接入预设网络的至少一个网关设备;终端签名验证模块,用于使用预置的认证服务端的第一公钥验证所述第一签名,以验证所述证书有效性。
24.本技术第六方面提供一种网络连接装置,应用于终端设备,并具有包含第二公钥和第二私钥的第二公私钥对、以及带有认证服务端的第一签名的证书;所述证书包含接入点信息,所述接入点信息关于用于接入预设网络的至少一个网关设备;所述网络连接装置包括:签名生成模块,用于通过所述第二私钥对所述证书生成第二签名;网关确定模块,用于根据所述证书中的接入点信息确定网关设备;接入请求发送模块,用于发送包含所述证书及第二签名的接入请求给所确定的网关设备;网络连接模块,用于在所述第一签名和第二签名验证通过时,通过所述网关设备接入预设网络。
25.本技术第七方面提供一种证书生成装置,应用于认证服务端,所述认证服务端具有包含第一公钥和第一私钥的第一公私钥对;所述证书生成装置包括:证书请求接收模块,用于接收终端设备的证书请求;证书生成模块,用于基于所述证书请求生成带有第一签名的证书;其中,所述证书包含接入点信息,所述接入点信息关于用于接入预设网络的至少一个网关设备;所述第一签名通过所述第一私钥生成;证书发送模块,用于发送所述证书给所述终端设备。
26.本技术第八方面提供一种网关接入装置,应用于网关设备,所述网关设备预置有认证服务端的第一公钥;所述网关接入装置包括:接入请求接收模块,用于接收终端设备的接入请求,所述接入请求包括所述终端设备的证书和对应生成的第二签名;所述证书包含接入点信息,所述接入点信息相关于所述网关设备;第一验证模块,用于通过所述第一公钥验证所述证书中认证服务端的第一签名;第二验证模块,用于通过所述证书中终端设备的第二公钥验证所述第二签名;网络接入模块,用于在所述第一签名和第二签名验证通过时,将所述终端设备接入预设网络。
27.本技术第九方面提供一种通信设备,包括:通信器、存储器及处理器;所述通信器用于与外部通信;所述存储器存储有程序指令;所述处理器用于运行所述程序指令以执行如第一方面任一项所述的证书请求方法;或者,执行如第二方面任一项所述的网络连接方法;或者,执行如第三方面任一项所述的证书生成方法;或者,执行如第四方面任一项所述的网关接入方法。
28.本技术第十方面提供一种计算机可读存储介质,存储有程序指令,所述程序指令被运行以执行如第一方面任一项所述的证书请求方法;或者,执行如第二方面任一项所述的网络连接方法;或者,执行如第三方面任一项所述的证书生成方法;或者,执行如第四方
面任一项所述的网关接入方法。
29.综上,本技术关于证书请求、生成、接入方法、装置、通信设备及介质,通过在终端设备向认证服务端申请的证书中加入网关设备的接入点信息。终端设备在接入预设网络时可以根据证书来获得网关设备,并可利用证书在网关设备进行用户身份验证;当网关设备验证终端设备的用户身份可信时让终端设备接入预设网络,以免去现有技术中每次用户接入网络时都需要在中心认证服务器认证的繁琐操作问题,降低中心认证服务器的压力,也使各个网关设备具有了认证能力,提升整个网络系统认证功能的可靠性。
附图说明
30.图1展示本技术示例性地提供的一种通信系统的结构示意图。
31.图2展示本技术提供的证书请求流程的示意图。
32.图3展示本技术实施例中证书的数据结构示意图。
33.图4展示本技术又一实施例中证书请求流程的示意图。
34.图5展示本技术实施例中网络接入流程的示意图。
35.图6展示本技术又一实施例中网络接入流程的示意图。
36.图7展示本技术实施例中通信系统的通信流程的示意图。
37.图8展示本技术实施例中实现证书请求的通信系统的功能模块示意图。
38.图9展示本技术实施例中实现网络接入的通信系统的功能模块示意图。
39.图10展示本技术又一实施例中实现网络接入的通信系统的功能模块示意图。
40.图11展示本技术实施例中电子装置的结构示意图。
具体实施方式
41.以下通过特定的具体实例说明本技术的实施方式,本领域技术人员可由本技术所揭露的内容轻易地了解本技术的其他优点与功效。本技术还可以通过另外不同的具体实施方式加以实施或应用系统,本技术中的各项细节也可以根据不同观点与应用系统,在没有背离本技术的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互组合。
42.下面以附图为参考,针对本技术的实施例进行详细说明,以便本技术所属技术领域的技术人员能够容易地实施。本技术可以以多种不同形态体现,并不限定于此处说明的实施例。
43.在本技术的表示中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的表示意指结合该实施例或示例表示的具体特征、结构、材料或者特点包括于本技术的至少一个实施例或示例中。而且,表示的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本技术中表示的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
44.此外,术语“第一”、“第二”仅用于表示目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或隐含地包括至少一个该特征。在本技术的表示中,“多个”的含义是两个或两个以上,除非另有
明确具体的限定。
45.为了明确说明本技术,省略与说明无关的器件,对于通篇说明书中相同或类似的构成要素,赋予了相同的参照符号。
46.在通篇说明书中,当说某器件与另一器件“连接”时,这不仅包括“直接连接”的情形,也包括在其中间把其它元件置于其间而“间接连接”的情形。另外,当说某种器件“包括”某种构成要素时,只要没有特别相反的记载,则并非将其它构成要素排除在外,而是意味着可以还包括其它构成要素。
47.当说某器件在另一器件“之上”时,这可以是直接在另一器件之上,但也可以在其之间伴随着其它器件。当对照地说某器件“直接”在另一器件“之上”时,其之间不伴随其它器件。
48.虽然在一些实例中术语第一、第二等在本文中用来表示各种元件,但是这些元件不应当被这些术语限制。这些术语仅用来将一个元件与另一个元件进行区分。例如,第一接口及第二接口等表示。再者,如同在本文中所使用的,单数形式“一”、“一个”和“该”旨在也包括复数形式,除非上下文中有相反的指示。应当进一步理解,术语“包含”、“包括”表明存在所述的特征、步骤、操作、元件、组件、项目、种类、和/或组,但不排除一个或多个其他特征、步骤、操作、元件、组件、项目、种类、和/或组的存在、出现或添加。此处使用的术语“或”和“和/或”被解释为包括性的,或意味着任一个或任何组合。因此,“a、b或c”或者“a、b和/或c”意味着“以下任一个:a;b;c;a和b;a和c;b和c;a、b和c”。仅当元件、功能、步骤或操作的组合在某些方式下内在地互相排斥时,才会出现该定义的例外。
49.此处使用的专业术语只用于言及特定实施例,并非意在限定本技术。此处使用的单数形态,只要语句未明确表示出与之相反的意义,那么还包括复数形态。在说明书中使用的“包括”的意义是把特定特性、区域、整数、步骤、作业、要素及/或成份具体化,并非排除其它特性、区域、整数、步骤、作业、要素及/或成份的存在或附加。
50.表示“下”、“上”等相对空间的术语可以为了更容易地说明在附图中图示的一器件相对于另一器件的关系而使用。这种术语是指,不仅是在附图中所指的意义,还包括使用中的装置的其它意义或作业。例如,如果翻转附图中的装置,曾说明为在其它器件“下”的某器件则说明为在其它器件“上”。因此,所谓“下”的示例性术语,全部包括上与下方。装置可以旋转90
°
或其它角度,代表相对空间的术语也据此来解释。
51.虽然未不同地定义,但包括此处使用的技术术语及科学术语,所有术语均具有与本技术所属技术领域的技术人员一般理解的意义相同的意义。普通使用的字典中定义的术语追加解释为具有与相关技术文献和当前提示的内容相符的意义,只要未进行定义,不得过度解释为理想的或非常公式性的意义。
52.目前,基于互联如车联网、物联网、移动网等已有非常广泛的商业应用。在一些商业应用中,企业会通过构建私有运营的网络并将目标的终端设备接入。其中,将用户接入基于网络安全的考量,对每个接入用户进行安全认证是必要的。然而,对于中心化的网络系统而言,如果用户都需要通过中心认证服务器进行验证,将是非常不可靠的;一方面会对中心认证服务器造成繁琐的工作,另外一方面当中心认证服务器的验证功能失效时,意味着每个用户无法接入网络,造成严重后果。
53.鉴于此,本技术提供对网络接入认证的机制的改变,以将接入认证的任务由负责
用户接入的各个网关设备执行,从而解决上述问题。
54.如图1所示,展示本技术示例性地提供的一种通信系统的结构示意图。
55.所述通信系统包括通过网络通信的终端设备101、认证服务端102及网关设备103。
56.在一些实施例中,所述终端设备101为用户使用的终端设备101,可以是能接入网络的各种通信终端设备101,比如车辆网中的车载终端,物联网中的各种传感器节点,或者用户日常使用的台式机、移动终端或智能穿戴设备,移动终端包括但不限于笔记本电脑、智能手机、平板电脑、个人数字助理(personaldigitalassistant,pda)等,智能穿戴设备包括但不限于智能手表、智能手环、智能眼镜、车载终端等。
57.所述认证服务端102可以是服务器或服务器组等实现。
58.所述网关设备103,由于在网络中的位置是处于接近终端设备101的网络边缘,也可以被称为“边缘网关”。所述网关设备103可以连接于预设网络104,所述预设网络104可以是私有网络,比如由车企私有的车联网络,可用于连接该车企售出的各车辆中的车载终端。
59.所述终端设备101、认证服务端102和网关设备103之间通过网络进行通信,所述网络可是所述预设网络104以外的局域或广域网络,比如因特网或移动互联网等。
60.在此通信系统中,在终端设备101申请证书的流程中,所述终端设备101可以向认证服务端102发送证书请求,认证服务端102为终端设备101生成证书并发送给终端设备101,证书中可包含用于接入预设网络104的网关设备103的接入点信息。在终端设备101接入预设网络104的流程中,终端设备101通过证书中的接入点信息可以确定网关设备103,并向所述网关设备103发送包含带有自身签名的证书的接入请求,以进行身份验证,并应答终端设备101;当验证通过,网关设备103将终端设备101接入预设网络104。从而,将认证服务端102的认证工作转至网关设备103完成,从而解决现有技术的问题。其中,所述证书为“数字证书”,指的是一种用于证明网络用户身份的电子文件。
61.在一些实施例中,为实现加密通信,所述认证服务端102可以具有第一公私钥对,其中包含第一公钥和第一私钥;所述终端设备101具有包含第二公钥和第二私钥的第二公私钥对,其中包含第二公钥和第二私钥;所述网关设备103具有第三公私钥对,其中包含第三公钥和第三私钥。
62.所述认证服务端102、终端设备101和网关设备103可以将各自的公钥被其它方获取。比如,终端设备101和网关设备103均可预置有第一公钥,网关设备103可以获取终端设备101的第二公钥,终端设备101可以获取网关设备103的第三公钥。持有的私钥可以用于解密接收到的经成对公钥加密的信息,或可以用对发送的信息进行签名;而持有的公钥可以用于加密需要发送的信息,或可用于对接收的信息带有的签名进行验证。
63.以下通过多个实施例,具体说明上述证书申请、接入过程的实现。
64.如图2所示,展示本技术提供的证书请求流程的示意图。
65.在图2示例中,由终端设备向服务端进行证书请求,服务端对应生成证书并发给终端设备。
66.本实施例中的流程包括:
67.在步骤s201中,所述终端设备发送证书请求给认证服务端。
68.在一些实施例中,所述证书请求可包含用户信息,所述用户信息是与终端设备的身份特征相关的信息,可以包括所述第二公钥,还可以包括设备信息(如设备id、软件、硬件
中的一种或多种)等,以用于表明以对应的用户身份来请求证书。
69.在步骤s202中,所述认证服务端基于所述证书请求生成证书。
70.在一些实施例中,认证服务端在生成证书时会将接入点信息加入到证书中。示例性的,所述接入点信息包含可供终端设备接入预设网络的各个网关设备的信息,比如每个网关设备的设备id(可预先分配)和ip地址(唯一,比如外网地址)。可选的,所述接入点信息还可以包含网关设备的第三公钥,可用于与网关设备安全通信。相较于通过网络接收第三公钥,从可信的证书中获取的第三公钥的可信度更高。
71.在一些实施例中,所述认证服务端还可以对应终端设备提供的用户信息生成用户权限信息,并置于所述证书中。所述用户权限信息指示所述终端设备在所述预设网络的权限。
72.在一些实施例中,所述证书可以是基于已有数据结构的基础上,增加所述接入点信息、用户权限信息。比如,所述证书可以在x.509证书标准基础上进行数据项的修改,x.509是由国际电信联盟(itu
‑
t)制定的数字证书标准。
73.如图3所示,展示本技术实施例中证书的数据结构示意图。其内容可包括:版本号、序列号、签名算法(如主体的私钥生成签名的算法)、签名哈希算法(如主体的签名算法中的哈希算法)、有效期、主体(本实施例中的主体即终端设备)、主体公钥(如第二公钥)、主体公钥信息、公钥算法、用户权限信息、接入点信息(可以是网关信息列表,其中每项包括网关设备的id ip地址 第三公钥)、证书签名算法(如认证服务端使用私钥生成证书的第一签名的算法)、证书数字签名(如第一签名的签名值)等。其中,本技术实施例中增加的接入点信息和用户权限信息(可选)加粗展示。
74.在步骤s203中,所述认证服务端发送所述证书给所述终端设备。
75.根据上述示例可知,所述证书带有认证服务端的第一签名,即例如图3示例中所展示的“证书数字签名”,或者所述第一签名也可以是附带于证书的同一消息中,所述第一签名可供验终端设备验证以验证证书的有效性。
76.相应的,在步骤s204中,所述终端设备使用预置的认证服务端的第一公钥验证所述第一签名,以验证所述证书有效性。
77.比如,所述终端设备通过证书签名算法对明文的证书生成当前签名值,与第一签名的签名值进行比较,若一致,则验证通过而表示证书有效;反之,则验证不通过。
78.在一些实施例中,所述终端设备可以预先对证书请求中的内容进行加密,再发送给认证服务端,则相应的,认证服务端可以对所述证书请求进行解密后读取其中内容,以实现安全发送证书请求。比如,所述终端设备可以使用认证服务端的第一公钥对证书请求内容进行加密,而认证服务端通过其第一私钥对证书请求进行解密,以能读取其中内容,包括读取所述第二公钥。
79.如图4所示,展示本技术又一实施例中证书请求流程的示意图。
80.在步骤s401中,所述终端设备发送经第一公钥加密的证书请求给认证服务端;
81.在步骤s402中,所述认证服务端通过第一私钥解密所述证书请求,并基于所述证书请求生成证书;
82.在步骤s403中,与之前步骤s203相同;在步骤s404中,与之前步骤s204相同。
83.如图5所示,展示本技术实施例中网络接入流程的示意图。
84.可以参考图1,本实施例的流程步骤发生在终端设备和网关设备之间。当终端设备从认证服务端申请到了自身的证书之后,可以通过所述证书至网关设备进行验证,并在验证通过后接入预设网络。故而,在网络接入的过程中不需要再到认证服务端进行认证。
85.具体的,本实施例中的网络接入流程包括:
86.在步骤s501中,所述终端设备通过所述第二私钥对所述证书生成第二签名。
87.在步骤s502中,所述终端设备根据所述证书中的接入点信息确定网关设备。
88.在一些实施例中,所述终端设备会挑选连接质量较好的网关设备优先进行连接,从而保证通信质量。具体的,所述终端设备可以根据与证书中接入点信息相应的各个网关设备通信的网络信号强度、速度、延时、网关设备的地理位置(可根据ip地址来判断)等中的一种或多种因素来选择目标的网关设备,进行接入。
89.在步骤s503中,所述终端设备发送包含所述证书及第二签名的接入请求给所确定的网关设备。
90.所述网关设备接收到接入请求之后,可以对第一签名和第二签名进行验证以确定接入请求的可信性。在具体示例中,第一签名的验证可优先于第二签名的验证,但并非以此为限,只要第一签名和第二签名都验证通过即表示终端设备可信,而可接入预设网络。
91.在步骤s504中,所述网关设备通过所述第一公钥验证所述证书中认证服务端的第一签名;若验证通过,则进入步骤s505;若验证不通过,则可应答终端设备拒绝其接入。
92.在步骤s505中,所述网关设备通过所述证书中终端设备的第二公钥验证所述第二签名。
93.具体的,可以根据证书中的“签名算法”来对证书产生当前签名值,与所述第二签名比较,若一致,则验证通过,则进入步骤s506;反之,则验证不通过,则可应答终端设备拒绝其接入。
94.在步骤s506中,由于所述第一签名和第二签名验证通过,表示验证身份的终端设备的身份和证书都是可信的,则所述网关设备将所述终端设备接入预设网络。
95.在一些实施例中,所述证书中还具有终端设备的用户权限信息,则网关设备可以对应该用户权限信息生成令牌(token),并提供给终端设备,以让终端设备按照令牌所对应用户权限使用预设网络。进一步可选的,基于所述令牌,还可以让终端设备对网关设备侧同样进行验证,以提供安全性。
96.如图6所示,展示本技术又一实施例中网络接入流程的示意图。
97.所述流程包括:
98.在步骤s601中,所述终端设备通过所述第二私钥对所述证书生成第二签名。
99.在步骤s602中,所述终端设备根据所述证书中的接入点信息确定网关设备。
100.在步骤s603中,所述终端设备发送包含所述证书及第二签名的接入请求给所确定的网关设备。
101.在步骤s604中,所述网关设备通过所述第一公钥验证所述证书中认证服务端的第一签名;若验证通过,则进入步骤s605;若验证不通过,则拒绝接入。
102.在步骤s605中,所述网关设备通过所述证书中终端设备的第二公钥验证所述第二签名。若验证通过,则进入步骤s606;反之,则验证不通过,则拒绝接入。
103.其中,步骤s601~s605和s501~s505相同;步骤s506的将终端设备接入预设网络
的步骤,具体可以包括:
104.在步骤s606中,所述网关设备根据证书中的用户权限信息生成对应的令牌,并生成第三签名;
105.在步骤s607中,所述网关设备发送包含所述令牌和第三签名的应答消息给所述终端设备,以供接入所述预设网络使用。
106.在步骤s608中,所述终端设备通过证书的接入点消息中所述网关设备的第三公钥验证所述第三签名;若通过,则进入步骤s609;若不通过,则不能确认网关设备身份有效,不通过所述网关设备接入。从而,与步骤s605、s606配合,实现终端设备和网关设备之间的相互验证,进一步提升安全性。
107.在步骤s609中,所述终端设备使用所述令牌,通过网关设备接入所述预设网络。
108.在以上实施例中,所述网关设备可以通过与终端设备之间建立隧道连接的方式,以让终端设备接入预设网络,隧道技术的安全保护和效率较高。
109.基于终端设备可能失败的情况,比如证书中的第一签名、第二签名、第三签名中的任何一种验证失败时,都有可能引起终端设备验证失败。在一些实施例中,当接入失败时,所述终端设备可根据证书中的接入点信息选择其它网关设备尝试接入预设网络,比如在网关设备列表中,根据网络质量进行排序,逐一尝试上述接入流程。进一步可选的,当终端设备持续接入失败时,比如接入失败次数达到阈值、或证书中接入点信息对应的部分或全部网关设备都接入失败时,所述终端设备可通过例如图2、图4的流程重新请求证书。
110.为更直观说明上述过程,以下可以提供图1通信系统中证书请求和网络接入流程结合的示例。
111.如图7所示,展示本技术实施例中通信系统的通信流程的示意图。
112.终端设备、网关设备皆预置认证服务端的第一公钥。
113.1)注册流程:
114.在步骤s701中,终端设备生成第二公私钥对;
115.在步骤s702中,终端设备将第二公钥等用户信息用第一公钥加密后发送到认证服务端;
116.在步骤s703中,认证服务端根据用户信息生成终端设备的证书,证书带有第一签名;
117.在步骤s704中,认证服务端对终端设备返回证书;
118.在步骤s705中,终端设备对认证服务端返回的证书验签。
119.2)接入流程:
120.在步骤s706中,终端设备根据证书中的接入点信息选择网关设备后,使用第二私钥对证书生成第二签名。
121.在步骤s707中,终端设备将证书和第二签名发送至网关设备;
122.在步骤s708中,网关设备用预置的第一公钥验证证书的有效性;
123.在步骤s709中,网关设备使用证书中的第二公钥验证第二签名,以验证终端设备的身份的有效性;
124.在步骤s710中,网关设备根据有效的证书中的用户权限信息生成令牌及第三签名;
125.在步骤s711中,网关设备通过应答消息返回令牌和第三签名;
126.在步骤s712中,终端设备对返回应答验签,即验证第三签名,确认网关设备的身份。
127.在步骤s713中,若上述验签皆通过,则终端设备通过网关设备接入预设网络,例如网关设备建立与终端设备的网络隧道。
128.此外,在一些实施例中,认证服务端可以获取终端设备和网关设备的信息的变化,所述信息是与终端设备的证书内容相关的。当发现终端设备和/或网关设备的信息变化时,认证服务端指示接入所述终端设备的网关设备通知所述终端设备进行证书更新,从而能保障证书的及时更新,避免因证书失效而转为接入失败,影响用户体验。
129.以下再通过车联网实例说明本技术可能的实际应用场景。
130.a)用户购买了互联网汽车。
131.b)用户将互联网汽车在车企的认证中心注册,即请求证书。
132.c)车企的认证中心生成该汽车专用的证书,其中包括所述互联网汽车的权限信息和车企边缘网关(即网关设备)的接入点信息。
133.d)当用户启动汽车时,汽车通过证书中的接入点信息选择边缘网关;
134.e)汽车发送带有其签名的证书给所选择的边缘网关申请接入智能驾驶网络(车联网);
135.f)边缘网关通过认证中心公钥验证证书,并通过汽车的公钥签证其签名;
136.g)若边缘网关验证通过,边缘网关分配带有自身签名的令牌给汽车,令牌对应汽车的用户权限;进而,汽车对边缘网关分配令牌的签名验签;若通过,则通过该边缘网关接入车企的智能驾驶网络;
137.h)若边缘网关验证失败,则拒绝该汽车接入;汽车选择其余边缘网关常识接入,如持续失败则重新申请证书。
138.如图8所示,展示本技术实施例中实现证书请求的通信系统的功能模块示意图。图中展示了证书请求装置和证书生成装置;所述证书请求装置应用于终端设备,其具体实现可参考之前图2、图4中的终端设备的流程步骤;所述证书生成装置应用于认证服务端,其具体实现可参考之前图2、图4中的认证服务端的流程步骤。
139.所述证书请求装置801包括:
140.证书请求发送模块811,用于发送证书请求给认证服务端;
141.证书接收模块812,用于接收认证服务端对应所述证书请求生成的证书;其中,所述证书包含接入点信息,所述接入点信息关于用于接入预设网络的至少一个网关设备。
142.所述证书生成装置802包括:
143.证书请求接收模块821,用于接收终端设备的证书请求;
144.证书生成模块822,用于基于所述证书请求生成带有第一签名的证书;其中,所述证书包含接入点信息,所述接入点信息关于用于接入预设网络的至少一个网关设备;所述第一签名通过所述第一私钥生成;
145.证书发送模块823,用于发送所述证书给所述终端设备。
146.在一些实施例中,所述证书请求包含用户信息,所述证书还包含终端设备的用户权限信息,所述用户权限信息指示所述终端设备在所述预设网络的权限。
147.在一些可选实施例中,所述证书请求装置801还包括:加密模块813,用于使用认证服务端的第一公钥加密所述证书请求。相应的,所述证书生成装置802还包括:解密模块824,用于使用认证服务端的第一私钥解密所述证书请求。图示中可选模块通过虚线框表示。
148.如图9所示,展示本技术实施例中实现网络接入的通信系统的功能模块示意图。图中展示了网络连接装置和网关接入装置;所述网络连接装置应用于终端设备,其具体实现可参考之前例如图5、图6中的终端设备的流程步骤;所述网关接入装置应用于认证服务端,其具体实现可参考之前图5、图6中的网关设备的流程步骤。
149.所述网络连接装置901包括:
150.签名生成模块911,用于通过所述第二私钥对所述证书生成第二签名;
151.网关确定模块912,用于根据所述证书中的接入点信息确定网关设备;
152.接入请求发送模块913,用于发送包含所述证书及第二签名的接入请求给所确定的网关设备;
153.网络连接模块914,用于在所述第一签名和第二签名验证通过时,通过所述网关设备接入预设网络。
154.所述网关接入装置902包括:
155.接入请求接收模块921,用于接收终端设备的接入请求,所述接入请求包括所述终端设备的证书和对应生成的第二签名;所述证书包含接入点信息,所述接入点信息相关于所述网关设备;
156.第一验证模块922,用于通过所述第一公钥验证所述证书中认证服务端的第一签名;
157.第二验证模块923,用于通过所述证书中终端设备的第二公钥验证所述第二签名;
158.网络接入模块924,用于在所述第一签名和第二签名验证通过时,将所述终端设备接入预设网络。
159.在一些实施例中,所述证书还包含终端设备的用户权限信息。
160.可参考图10所示在图9基础上的变化实施例,所述网络接入模块924还包括:
161.令牌生成模块9241,用于根据所述用户权限信息生成对应的令牌;
162.发送模块9242,用于发送所述令牌给所述终端设备,以供接入所述预设网络使用所述终端设备接收所述网关设备分配的令牌。
163.可选的,网关接入装置902还可以包括:第三签名模块925,用于通过所述第三公私钥对中的第三私钥对所述令牌生成第三签名,并通过所述发送模块发送所述令牌和第三签名给终端设备。相应的,所述网络连接装置901包括:第三验签模块915,用于通过已有的所述网关设备的第三公钥验证所述第三签名;所述网络连接模块914,用于在所述第三签名验证通过时,通过所述网关设备接入预设网络。
164.在一些实施例中,所述接入点信息还包含网关设备的第三公钥;所述第三验签模块915可以从证书获取所述网关设备的第三公钥,以用于验证所述第三签名。
165.在一些实施例中,所述当接入失败时,所述终端设备根据证书中的接入点信息选择其它网关设备尝试接入预设网络。
166.在一些实施例中,所述的网络连接装置还包括:证书请求模块,用于当持续接入失
败时,重新请求证书。
167.在一些实施例中,所述终端设备通过所述网关设备接入预设网络,包括:所述终端设备与网关设备之间建立隧道连接。
168.如图11所示,展示本技术实施例中电子装置的结构示意图。
169.之前实施例中的终端设备、认证服务端及网关设备等通信设备,皆可以基于图10示例中的电子装置的结构实现。
170.所述电子装置1100包括总线1101、处理器1102、存储器1103及通信器1104。处理器1102、存储器1103之间可以通过总线1101通信。所述存储器1103中可以存储有程序指令(比如系统或应用软件),存储器1103还可以存储有供程序指令读写的数据。所述处理器1102通过运行存储器1103中的程序指令来实现例如图2、图4等中每个设备的方法步骤。
171.总线1101可以是外设部件互连标准(peripheralcomponentinterconnect,pci)总线或扩展工业标准结构(extendedindustrystandardarchitecture,eisa)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,虽然图11中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
172.在一些实施例中,处理器1102可以为中央处理器(centralprocessingunit,cpu)、微处理单元(mcu)、片上系统(systemonchip)、或现场可编程逻辑阵列(fpga)等实现。存储器1103可以包括易失性存储器(volatilememory)以用于运行程序时的数据暂存使用,例如随机存取存储器(randomaccessmemory,ram)。
173.存储器1103还可以包括非易失性存储器(non
‑
volatilememory)以用于数据存储,例如只读存储器(read
‑
onlymemory,rom),快闪存储器,硬盘驱动器(harddiskdrive,hdd)或固态盘(solid
‑
statedisk,ssd)。
174.所述通信器1104用于与外部通信。在具体实例中,所述通信器1104可以包括一个或多个有线和/或无线通信电路模块。举例来说,所述通信器1104可以包括例如有线网卡、usb模块、串行接口模块等中的一种或多种。无线通信模块所遵循的无线通信协议包括:例如近距离无线通信(nearfieldcommunication,nfc)技术、红外(infared,ir)技术、全球移动通讯系统(globalsystemformobilecommunications,gsm)、通用分组无线服务(generalpacketradio service,gprs)、码分多址引入(codedivisionmultipleaccess,cdma)、宽带码分多址(widebandcodedivisionmultipleaccess,wcdma)、时分码分多址(time
‑
divisioncodedivision multipleaccess,td
‑
scdma)、长期演进(longtermevolution,lte)、蓝牙(bluetooth,bt)、全球导航卫星系统(globalnavigationsatellitesystem,gnss)等中的一种或多种。
175.可以理解的是,对应于实现所述终端设备、网关设备或者认证服务端而言,电子装置中处理器、存储器、通信器的选型是不同的。
176.例如,用于实现用户终端的电子装置,例如实现为车载终端、移动终端等,其可以具备例如wifi模块、2g/3g/4g/5g移动通信、nfc、蓝牙、红外中的一种或多种通信器,以及通过例如arm架构的soc作为处理器,以低功耗随机存储器(lpddr)作为运行内存,以闪存(例如nandflashram)作为外存等。另外,对应于用户终端的显示需求,电子装置还可以具有显示屏(如lcd,oled等),以用于显示图形用户界面(gui),以对应app的运行显示相应界面。
177.又例如,用于实现认证服务端中服务器的电子装置,其通信器可以包括有线网卡,
通过连接网线而接入网络,以与用户终端通信;其处理器可以选择例如x86架构的服务器cpu,存储器可以选择例如ddr的服务器内存,以及固态和/或机械硬盘(可以构成磁盘阵列raid)等。
178.本技术实施例中还可以提供一种计算机可读存储介质,存储有程序指令,所述程序指令被运行时执行前述方法流程实施例(如图2、图4、图5、图6、图7)等中终端设备、网关设备、认证服务端所执行的流程步骤。
179.即上述实施例中的方法步骤被实现为可存储在记录介质(诸如cdrom、ram、软盘、硬盘或磁光盘)中的软件或计算机代码,或者被实现通过网络下载的原始存储在远程记录介质或非暂时机器可读介质中并将被存储在本地记录介质中的计算机代码,从而在此表示的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件(诸如asic或fpga)的记录介质上的这样的软件处理。
180.综上,本技术关于证书请求、生成、接入方法、装置、通信设备及介质,通过在终端设备向认证服务端申请的证书中加入网关设备的接入点信息。终端设备在接入预设网络时可以根据证书来获得网关设备,并可利用证书在网关设备进行用户身份验证;当网关设备验证终端设备的用户身份可信时让终端设备接入预设网络,以免去现有技术中每次用户接入网络时都需要在中心认证服务器认证的繁琐操作问题,降低中心认证服务器的压力,也使各个网关设备具有了认证能力,提升整个网络系统认证功能的可靠性。
181.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以程序指令产品的形式实现。程序指令产品包括一个或多个程序指令。在计算机上加载和执行程序指令指令时,全部或部分地产生按照本技术的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。程序指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输。
182.在本技术所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所表示的装置实施例仅仅是示意性的,例如所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以动态到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性或其它的形式。
183.例如,图8、图9、图10实施例中的各个功能模块及子模块可以是软件实现;或者也可以是软硬件配合实现,例如通过计算机设备实施例中的处理器运行存储器的程序指令实现;或者,也可以是通过硬件电路实现。
184.在本技术各个实施例中的各功能模块及子模块可以动态在一个处理部件中,也可以是各个模块单独物理存在,也可以两个或两个以上模块动态在一个部件中。上述动态的部件既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。上述动态的部件如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读存储介质中。该存储介质可以是只读存储器,磁盘或光盘等。
185.例如,图8、图9、图10实施例中各个功能模块及子模块可以是独立、单一的程序实现,也可以是一程序中的不同程序段分别实现,在某些实施场景中,这些功能模块可以位于
一个物理设备,也可以位于不同的物理设备但相互通信耦合。
186.流程图中或在此以其他方式表示的任何过程或方法表示可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分。并且本技术的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能。
187.例如,图2、图4、图5、图6、图7等实施例的方法中各个步骤的顺序可能可以在具体场景中加以变化,并非以上述表示为限。
188.上述实施例仅例示性说明本技术的原理及其功效,而非用于限制本技术。任何熟悉此技术的人士皆可在不违背本技术的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本技术所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本技术的权利要求所涵盖。
转载请注明原文地址:https://doc.8miu.com/read-1719152.html