一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

选择性的传送层安全加密的制作方法

2021-12-07 21:01:00 来源:中国专利 TAG:

选择性的传送层安全加密
1.相关申请的交叉引用
2.本技术要求于2020年6月3日提交的标题为“selective transport layer security encryption”的印度临时专利申请号202041023290的优先权。其全部内容明显地通过引用并入本文。


背景技术:

3.虚拟专用网络(vpn)可以使得设备能够跨公共网络(诸如互联网)安全地通信。在这方面,第一设备可以通过公共网络向第二设备传输一个或多个网络分组(例如数据分组),以在第一设备与第二设备之间建立vpn连接。一个或多个网络分组可以被路由到网络设备(例如防火墙或其他网络安全设备),并且网络设备可以检查一个或多个网络分组,以确定一个或多个网络分组是否可以被传输给第二设备以建立vpn连接。


技术实现要素:

4.根据一些实现,一种方法可以包括:由设备传输用于建立虚拟专用网络(vpn)或在虚拟专用网络上通信的分组,该分组与协议相关联;由设备确定分组已经被安全设备丢弃;由设备在分组已经被丢弃时利用传输控制协议(tcp)封装来封装分组以生成tcp封装分组;由设备传输用于建立vpn或在vpn上通信的tcp封装分组;由设备确定tcp封装分组已经被安全设备丢弃;由设备在tcp封装分组已经被丢弃时使用用于传送层安全(tls)的空加密或者与协议相关联的加密和tls加密的组合来选择性地对分组进行加密,以生成封装分组;以及由设备在vpn上传输封装分组以用于建立vpn或在vpn上通信。
5.根据一些实现,一种设备可以包括一个或多个存储器和一个或多个处理器。一个或多个处理器可以被配置为:传输用于与远程设备通信的分组,该分组与协议相关联;确定分组已经被安全设备丢弃;在确定分组已经被丢弃之后,使用用于传送层安全(tls)的空加密来对分组进行加密以生成第一加密分组;传输用于与远程设备通信的第一加密分组;确定第一加密分组已经被安全设备丢弃;在确定第一加密分组已经被丢弃之后,使用与协议相关联的加密和tls加密的组合来对分组进行加密以生成第二加密分组;以及传输用于与远程设备通信的第二加密分组。
6.根据一些实现,一种非瞬态计算机可读介质可以存储一个或多个指令。一个或多个指令在由设备的一个或多个处理器执行时可以使一个或多个处理器:传输用于经由隧道通信的分组,该分组与协议相关联;确定分组已经被安全设备丢弃;在确定分组已经被丢弃之后,使用用于传送层安全(tls)的空加密或者与协议相关联的加密和tls加密的组合来选择性地对分组进行加密,以生成加密分组;以及传输用于经由隧道通信的加密分组。
附图说明
7.图1a至图1f是本文描述的一个或多个示例实现的示意图。
8.图2是可以实现本文描述的系统和/或方法的示例环境的示意图。
9.图3是图2的设备的示例组件的示意图。
10.图4是图2的一个或多个设备的示例组件的示意图。
11.图5至图7是与使用传送层安全加密来选择性地对分组进行加密相关的示例过程的流程图。
具体实施方式
12.示例实现的以下详细描述参照附图。不同附图中的相同附图标记可以标识相同或类似的元件。
13.设备可以使用设备之间的虚拟专用网络(vpn)连接通过公共网络(诸如互联网)安全地通信。例如,客户端设备可以通过建立到远程设备的vpn隧道(例如互联网协议安全(ipsec)隧道)来寻求经由公共网络与远程设备安全地通信。客户端设备可以被连接至与实体相关联的局域网(lan)(例如无线lan),并且远程设备可以被连接至专用网络(例如与关联于lan的实体不同的实体的专用网络)。在这方面,为了建立vpn隧道和/或在vpn隧道上通信,客户端设备可以向远程设备传输分组。该分组可以是互联网密钥交换(ike)分组(例如根据ike协议格式化的网络分组)。备选地,该分组可以是封装安全有效负载(esp)分组(例如根据esp协议格式化的网络分组)。
14.来自lan的出站业务可以由连接至lan的防火墙进行调节。因此,在分组被路由到lan外部之前,其可以被路由到防火墙以进行处理。例如,防火墙可以使用一个或多个防火墙策略来处理该分组,以确定该分组是可以在lan外部被传输还是应该被丢弃。在一些情况下,一个或多个防火墙策略可以包括允许传送层安全(tls)业务(例如根据tls协议格式化的分组)并且阻止任何其他网络业务的策略。因此,防火墙可以基于允许tls业务并阻止任何其他网络业务的策略,而从客户端设备丢弃该分组(因为该分组未根据tls协议进行格式化)。
15.如果客户端设备在分组的传输之后的阈值时间量内未接收到对分组的响应,则客户端设备可以确定该分组已经被丢弃(例如通过防火墙)。因此,客户端设备可以通过使用传输控制协议(tcp)封装技术封装分组,来尝试绕过防火墙。例如,客户端设备可以将tcp报头(例如包括标识tcp端口号的信息)添加到分组。如果防火墙使用深度分组检查来处理分组(例如以标识tls分组),则客户端设备可以使用tls封装技术来封装分组,以防止分组被丢弃。在这方面,如果分组是ike分组,则客户端设备可以使用基于ike协议的加密技术来对ike分组进行加密,并且还可以使用基于tls协议的加密技术来对ike分组进行加密。如果分组是已经使用基于esp协议的加密来进行加密的esp分组,则客户端设备还可以使用基于tls协议的加密技术来对esp分组进行加密。
16.因此,客户端设备可以使用多种加密技术来防止分组被防火墙丢弃。
17.因此,当前技术使用多种加密技术对分组进行封装和加密,并且使用多种对应的解密技术对分组进行解封装和解密,以便建立vpn连接和/或在vpn连接上通信。使用多种加密技术和多种对应的解密技术对多个分组中的每个分组进行加密和解密以建立vpn连接和/或在vpn连接上通信,会消耗在vpn连接的两端的设备的计算资源、电池电量等。
18.根据本文描述的一些实现,设备(例如客户端设备)可以选择性地对被传输的分组进行加密以建立vpn和/或经由vpn通信。例如,设备可以通过建立到远程设备的vpn隧道(例
如互联网协议安全(ipsec)隧道)来寻求经由公共网络与远程设备安全地通信。设备可以被连接至与实体相关联的lan(例如无线lan),并且远程设备可以被连接至专用网络(例如与关联于lan的实体不同的实体的专用网络)。来自lan的出站业务可以由连接至lan的安全设备(例如防火墙)进行调节。
19.为了建立vpn隧道和/或在vpn隧道上通信,设备可以向远程设备传输(与协议相关联的)分组。在确定该分组已经被安全设备丢弃之后,该设备可以使用用于tls的空加密(例如空密码或无密码,因此没有加密)或者与协议相关联的加密和tls加密的组合来选择性地对该分组进行加密,以生成加密分组。设备可以传输加密分组以建立vpn或经由vpn通信。安全设备可以将加密分组视为tls分组,并允许向远程设备传输tls分组。
20.因此,本文描述的设备(例如客户端设备)可以选择性地对分组进行加密(例如使用用于tls的空加密或与协议相关联的加密和tls加密的组合)以建立vpn和/或经由vpn通信,而不是使用多种加密技术来对多个分组中的每个分组进行加密以建立vpn和/或经由vpn通信。通过选择性地对分组进行加密,该设备可以节省设备和远程设备的计算资源(例如处理资源、存储器资源、通信资源等)、电池电量等,否则这些资源将用于使用多种加密技术对分组进行加密,并使用多种解密技术对分组进行解密。
21.图1a至图1f是本文描述的一个或多个示例实现100的示意图。如图1a至图1f所示,(多个)示例实现100可以包括客户端设备、安全设备、远程设备和网络。客户端设备可以包括移动设备、计算机等。安全设备可以包括网络安全设备,诸如例如防火墙或另一类型的网络安全设备。远程设备可以包括服务器设备、另一客户端设备等。网络可以包括诸如例如互联网等公共网络。客户端设备可以被连接至与实体相关联的lan,并且远程设备可以被连接至专用网络(例如与关联于lan的实体不同的实体的专用网络)。下面还结合图2、图3和图4描述客户端设备、安全设备、远程设备和网络。
22.如图1a中通过附图标记105所示,客户端设备可以传输与远程设备建立vpn的请求。在一些实现中,客户端设备可能正在执行使用户界面被提供给客户端设备的用户的vpn应用。用户界面可以提供标识远程设备的信息(例如名称、标识符、网络地址等),并且提供与远程设备建立vpn的选项。用户可以选择与远程设备建立vpn的选项,并且基于对选项的选择,vpn应用可以使客户端设备传输与远程设备建立vpn的请求。例如,客户端设备可以传输用于建立vpn的分组。
23.在一些实现中,当建立vpn时,客户端设备的vpn应用可以建立ipsec隧道,或者换言之,建立实现ipsec安全联盟(sa)的网络隧道。在这方面,vpn应用可以使用例如ike协议来建立vpn。因此,当传输用于建立vpn的分组时,客户端设备可以传输ike分组作为ike过程的一部分,以与远程设备建立vpn(例如vpn隧道)。
24.lan的出站业务可以由安全设备调节。因此,(由客户端设备传输的)分组可以被路由到安全设备。安全设备可以处理该分组(例如使用一个或多个安全策略)以确定该分组是要被传输(例如在lan外部)还是要被丢弃。当处理该分组时,安全设备可以检查该分组(例如检查关于该分组的信息,诸如(多个)报头、源和目的地信息、格式等),以确定关于该分组的信息是否符合一个或多个安全策略。
25.在一些情况下,一个或多个安全策略可以包括tls策略。tls策略可以包括安全策略,该安全策略允许tls业务(例如根据tls协议格式化的分组)被传输到lan外部并且阻止
任何其他业务(例如未根据tls协议格式化的分组)被传输到lan外部。在这种情况下,如果安全设备使用tls策略处理该分组,则该安全设备可以因分组不是tls分组而将分组丢弃。
26.在一些实现中,当使用tls策略处理分组时,安全设备可以使用深度分组检查技术来检查分组(例如以确定分组是否包括与tls协议一致的有效负载等),以确定该分组是否为tls分组。在这方面,通过使用深度检查技术,如果分组的格式或有效负载与tls分组的预期格式或有效负载不匹配,则安全设备可以因分组不是tls分组而将分组丢弃。
27.在一些实现中,基于对分组的处理,安全设备可以向客户端设备提供指示该分组是已经被传输还是已经被丢弃的通知。在这方面,当安全设备向远程设备传输分组和/或响应于传输分组而(例如从远程设备)接收vpn设立(setup)信息时,通知可以指示分组已经被传输。该通知可以包括vpn设立信息。vpn设立信息可以包括客户端设备可以用于建立vpn的信息(例如ike安全联盟(sa))。在一些实现中,vpn设立信息可以是响应分组。
28.备选地,当安全设备确定分组将被丢弃时,通知可以指示分组已经被丢弃。在一些实现中,通知可以包括提供分组被丢弃的原因的分组拒绝信息。例如,分组拒绝信息可以指示由于该分组不是tls分组而丢弃了该分组(例如,该分组未根据tls协议进行格式化,该分组包括与tls协议不一致的有效负载等)。
29.在该示例中,安全设备可以确定分组的格式(例如ike分组的格式)与tls分组的格式不匹配,并因此可以丢弃该分组。
30.如图1a中通过附图标记110所示,客户端设备可以确定分组已经被安全设备丢弃。例如,如果客户端设备在分组的传输后的阈值时间量之后未接收到对分组的响应,则客户端设备(例如使用vpn应用)可以确定分组已经被丢弃。阈值量可以用客户端设备预先编程,可以用vpn应用预先编程,可以基于用户输入等。附加地或备选地,如果客户端设备从安全设备接收到包括分组拒绝信息的通知,则客户端设备可以确定分组已经被丢弃。例如,分组拒绝信息可以指示由于该分组不是tls分组,所以分组已经被丢弃。
31.如图1b中通过附图标记115所示,客户端设备可以利用tcp封装来封装分组,以生成tcp封装分组。例如,基于确定该分组已经被丢弃,客户端设备可以封装该分组以模拟tls分组,以尝试规避(circumvent)安全设备(例如规避tls策略)。在这方面,为了尝试规避安全设备,客户端设备可以利用tcp封装(例如利用tcp封装技术)来封装分组,以生成tcp封装分组。例如,客户端设备可以通过向分组添加tcp报头来封装分组,并且在tcp报头中包括标识特定目的地端口的信息(以将分组定向到特定目的地端口,以尝试规避安全设备)。例如,标识特定目的地端口的信息可以标识端口443(例如tcp目的地端口443)。
32.如图1b中通过附图标记120所示,客户端设备可以传输tcp封装分组。客户端设备可以传输定向到特定目的地端口的tcp封装分组,以尝试规避安全设备。tcp封装分组可以被路由到安全设备,并且安全设备可以以类似于上述方式的方式检查和丢弃tcp封装分组。例如,安全设备可以检查tcp封装分组(例如使用深度分组检查技术),以确定tcp封装分组是被封装为tls分组的ike分组(例如tcp封装分组的格式与tls分组的格式不匹配)。
33.例如,安全设备可以使用深度分组检查确定该分组包括与tls协议不一致的有效负载。因此,安全设备可以确定tcp封装分组不是tls分组,并且丢弃tcp封装分组。在一些实现中,除了丢弃tcp封装分组之外,安全设备还可以发送通知。
34.如图1b中通过附图标记125所示,客户端设备可以确定tcp封装分组已经被安全设
备丢弃。客户端设备(例如使用vpn应用)可以以类似于上述方式的方式来确定已经丢弃了tcp封装分组。
35.基于确定已经丢弃了tcp封装分组,客户端设备可以确定客户端设备要使用的tls协议的版本是否支持空加密。在一些实现中,在确定要使用tls协议的哪个版本时,客户端设备可以考虑来自客户端设备的信息(例如来自vpn应用的信息)。备选地或附加地,当确定要使用tls协议的哪个版本时,客户端设备可以考虑来自安全设备和服务器(例如与远程设备相关联)的信息。
36.如果客户端设备确定tls版本不支持用于tls的空加密,则客户端设备可以确定使用ike协议的加密技术和tls加密(例如tls协议的加密技术)的组合来对分组进行加密(如下面结合图1c和图1e所讨论的)。备选地,如果客户端设备确定tls的版本支持用于tls的空加密,则客户端设备可以确定使用用于tls的空加密来对分组进行加密(如下面结合图1d所讨论的)。
37.如图1c中通过附图标记130所示,客户端设备可以确定tls的版本不支持用于tls的空加密。例如,客户端设备(例如使用vpn应用)可以确定要由客户端设备使用(例如由vpn应用使用)的tls版本是tls协议版本1.3,该协议版本不支持用于tls的空加密。基于确定tls的版本不支持用于tls的空加密,客户端设备(例如使用vpn应用)可以确定使用ike协议的加密技术(例如ike的加密算法)和tls加密的组合来对分组进行加密(如下面结合图1f所讨论的)。在一些实现中,当安全设备检测到分组的空加密(例如尝试与远程设备协商空加密的问候分组(hello packet))时,安全设备可以阻止与使用空加密来进行加密的分组相关联的tls连接协商。
38.如图1d中通过附图标记135所示,客户端设备可以使用tls的空加密来对分组进行加密,以生成空加密分组。例如,客户端设备可以确定要由客户端设备使用(例如由vpn应用使用)的tls版本是tls协议版本1.1或版本1.2,该协议版本支持用于tls的空加密。基于确定tls的版本支持用于tls的空加密,客户端设备(例如使用vpn应用)可以使用用于tls的空加密对分组进行加密以生成空加密分组。在一些实现中,可以在使用用于tls的空加密对分组进行加密之前,使用ike协议的加密技术对分组进行加密。在一些实现中,客户端设备可以根据tls协议封装空加密分组以模拟tls分组的格式。
39.在一些实现中,可以使用tls的认证算法并且使用与ike协议相关联的认证算法(例如ike的认证算法)来认证空加密分组。换言之,在一些实现中,在这种情况下,空加密分组可以进行与ike协议相关联的哈希算法(例如ike的哈希算法)的哈希。
40.如图1d中通过附图标记140所示,客户端设备可以传输空加密分组。例如,客户端设备可以以与上面结合图1a(附图标记105)描述的方式类似的方式将空加密分组传输给远程设备,并且空加密分组可以被路由到安全设备。客户端设备可以确定空加密分组是否已经被安全设备丢弃。
41.如果安全设备确定支持用于tls的空加密(例如支持tls协议版本1.1或版本1.2),则安全设备可以向远程设备传输空加密分组。在一些实现中,安全设备可以基于传输空加密分组而从远程设备接收响应分组,并且可以将响应分组提供给客户端设备。客户端设备可以接收由远程设备传输的响应分组,并且确定空加密分组尚未被安全设备丢弃。客户端设备可以基于接收到响应分组来建立vpn,如下面结合图1f(附图标记165)更详细地描述
的。
42.可以在ike协议的第一阶段(阶段1)和第二阶段(阶段2)期间建立vpn,如下面结合图1f更详细地解释的。在建立vpn后,客户端设备可以在vpn上传输分组,以与远程设备进行安全通信。在一些实现中,在上面讨论的ike协议的阶段2期间,客户端设备和远程设备可以选择使用esp协议和esp分组在vpn上安全地通信。
43.附加地,关于使用esp协议进行安全通信,客户端设备和远程设备可以协商esp分组的加密、esp分组的认证等。关于esp分组的加密,客户端设备和远程设备可以协商使用tls的空加密。在一些实现中,在使用tls的空加密来对esp分组(例如有效负载)进行加密之前,可以使用esp加密来对esp分组进行加密。
44.关于esp分组的认证,客户端设备和远程设备可以协商以使用tls的认证算法对esp分组进行认证,而无需使用esp的认证算法对esp分组进行认证(例如哈希)。客户端设备和远程设备可以协商与esp的认证算法一样强的tls的认证算法(例如与客户端设备和/或远程设备相关联)。换言之,在一些实现中,esp分组可以不进行ipsec的哈希算法(例如esp的哈希算法)的哈希。
45.关于用于esp的加密算法,客户端设备和远程设备可以协商以确定是否使用数据加密标准(des)、三重des(3des)、高级加密标准(aes)等。关于用于tls的认证算法,客户端设备和远程设备可以协商以确定是否利用关联数据(aead)、基于哈希的消息认证代码(hmac)、消息摘要5(md5)、安全哈希算法(sha)等使用已认证的加密。提供以上加密和认证算法仅作为可以使用的加密和认证算法的示例。实际上,可以使用这些和/或其他加密和认证算法。
46.如图1d中通过附图标记145所示,客户端设备可以确定空加密分组已经被安全设备丢弃。在该示例中,假设安全设备以与上面结合图1a(附图标记110)描述的方式类似的方式检查并丢弃了空加密分组。在这种情况下,例如安全设备可以确定已使用用于tls的空加密对空加密分组进行了加密,并且通过执行深度分组检查来确定该空加密分组包括与tls协议不一致的有效负载。因此,安全设备可以确定空加密分组不是tls分组,并且丢弃空加密分组。在一些实现中,如果安全设备允许空加密分组的传输(例如,以与远程设备协商并利用空加密建立tls连接),则安全设备可以阻止使用tls的空加密进行加密的后续数据分组(由客户端设备向远程设备传输)。
47.备选地,安全设备可以确定tls版本是tls协议版本1.3,该协议版本不支持用于tls的空加密。因此,安全设备可以确定不支持空加密分组,并且丢弃空加密分组。客户端设备可以以与上面结合图1a(附图标记110)描述的方式类似的方式确定已经丢弃了空加密分组。
48.如图1e中通过附图标记150所示,客户端设备可以使用ike的加密来对分组进行加密,并且可以利用tls加密来对ike加密分组进行加密以生成加密分组。基于确定已经丢弃了空加密分组,客户端设备(例如使用vpn应用)可以使用ike协议的加密技术(例如ike的加密算法)和tls加密(例如tls协议的加密技术)来对分组进行加密,以尝试确保符合tls策略,从而确保向远程设备传输分组。例如,客户端设备(例如使用vpn应用)可以使用ike协议的加密技术对分组进行加密,以形成ike加密分组。
49.客户端设备还可以使用tls加密对ike加密分组进行加密,以生成tls加密分组。在
这方面,对分组进行加密可以防止安全设备使用深度分组检查技术来检查分组以确定该分组包括与tls协议不一致的有效负载。tls加密(例如用于tls的加密算法)可以是至少与ike和/或esp的加密算法一样强的加密。在一些实现中,客户端设备可以根据tls协议封装tls加密分组,以模拟tls分组的格式。
50.如图1e中通过附图标记155所示,客户端设备可以传输tls加密分组。客户端设备可以向远程设备传输tls加密分组。tls加密分组可以被路由到安全设备,并且安全设备可以以类似于上述方式的方式检查和转发tls加密分组。
51.如图1e中通过附图标记160所示,安全设备可以传输加密分组。在这种情况下,安全设备可以确定tls加密分组的格式与tls分组的格式相匹配(例如,基于ike加密分组使用tls加密被加密,并且根据tls协议被封装)。附加地或备选地,如上面所解释的,对分组进行加密可以防止安全设备使用深度分组检查技术来确定该分组不是tls分组。因此,安全设备可以向远程设备传输tls加密分组。在一些实现中,安全设备可以从远程设备接收响应分组,并且可以将响应分组提供给客户端设备。
52.如图1f中通过附图标记165所示,客户端设备可以设立vpn。例如,客户端设备可以接收由远程设备传输的响应分组,并且可以基于接收到响应分组来建立vpn。例如,客户端设备(例如使用vpn应用)可以基于例如vpn设立信息来建立vpn(如上面所解释的,其使用ipsec sa)。作为示例,ike协议可以用于在客户端设备和远程设备之间建立加密的通信会话。ike协议可以包括两个阶段。在第一阶段(阶段1)中,客户端设备和远程设备可以协商用于加密的通信会话的sa(例如与ike隧道相关联)。从阶段1协商的sa使客户端设备和/或其他设备能够在第二阶段(阶段2)中进行安全通信。在ike协议的阶段2期间,客户端设备和远程设备可以为其他应用(诸如ipsec)建立sa。
53.ike协议可以通过在客户端设备和远程设备之间建立共享状态来建立ipsec sa。共享状态定义了提供给网络业务的特定服务,这些密码模型将被用于提供特定服务、用作密码模型的输入的密钥、用于网络业务通信的参数等。ike协议可以执行客户端设备和远程设备之间的相互认证,并且可以建立ipsec sa,该ipsec sa包括可以用于为esp协议或认证报头(ah)协议有效地建立sa的共享秘密信息、以及将由sa使用以保护ipsec sa携带的网络业务的密码模型集合。
54.在建立vpn后,客户端设备可以在vpn上传输分组,以与远程设备进行安全通信。在一些实现中,在上面讨论的ike协议的阶段2期间,客户端设备和远程设备可以选择使用esp协议和esp分组在vpn上安全地通信。
55.附加地,关于使用esp协议进行安全通信,客户端设备和远程设备可以协商esp分组的加密、esp分组的认证等。关于esp分组的加密,客户端设备和远程设备可以协商使用用于esp的空加密来对esp分组进行加密,并且利用tls加密来对空加密的esp分组进行加密。关于esp分组的认证,客户端设备和远程设备可以协商使用esp的认证算法并且使用tls的认证算法对esp分组进行认证。如果安全设备未阻止ike/esp业务(例如ike和esp分组),则与esp使用的加密算法相比,tls使用的加密算法一样强或更强。
56.关于用于esp的认证算法,客户端设备和远程设备可以协商以确定是否使用消息摘要5(md5)、安全哈希算法(sha)等。关于用于tls的加密算法,客户端设备和远程设备可以协商以确定是否使用aes、伽罗瓦(galois)/计数器模式(gcm)、密码块链接(cbc)等。关于用
于tls的认证算法,客户端设备和远程设备可以协商以确定是否利用关联数据(aead)、基于哈希的消息认证代码(hmac)、md5、sha等使用已认证的加密。提供以上加密和认证算法仅作为可以使用的加密和认证算法的示例。实际上,可以使用这些和/或其他加密和认证算法。
57.在一些实现中,客户端设备可以被配置(例如使用vpn应用)为确定将尝试客户端设备用于传输分组(例如ike分组)的技术的顺序(例如ike分组、tcp封装ike分组、空加密ike分组、tls加密ike分组等)。如果第一技术失败(例如安全设备丢弃了ike分组),那么客户端设备可以尝试第二技术;如果第二技术失败(例如安全设备丢弃了tcp封装ike分组),那么客户端设备可以尝试第三技术等。在一些实现中,如果安全设备丢弃了ike分组、tcp封装ike分组和空加密的ike分组,则客户端设备(例如使用vpn应用)可以被配置为使用tls加密来对分组进行加密。
58.在上面的描述中,已经假设安全设备丢弃了该分组(图1a)、tcp封装分组(图1b)和空加密分组(图1d)。在一些实现中,安全设备可以允许向远程设备传输该分组(来自图1a)、tcp封装分组(来自图1b)或空加密分组(来自图1d)。在分组(来自图1a)的情况下,远程设备可以处理该分组并在必要时做出响应。在tcp封装分组(来自图1b)的情况下,远程设备可以去除tcp封装,处理分组,并在必要时做出响应。在空加密分组(来自图1c)的情况下,远程设备可以对加密分组进行解密,处理分组,并在必要时做出响应。
59.如上面所指示的,仅提供图1a至图1f作为一个或多个示例。其他示例可以不同于关于图1a至图1f所描述的示例。图1a至图1f所示的设备和/或网络的数量和布置被提供作为一个或多个示例。实际上,与图1a至图1f所示的设备和/或网络相比,可以存在附加设备和/或网络、更少设备和/或网络、不同设备和/或网络或者布置不同的设备和/或网络。此外,图1a至图1f所示的两个或更多个设备可以被实现在单个设备内,或者图1a至图1f所示的单个设备可以被实现为多个分布式设备。附加地或备选地,图1a至图1f的设备集合(例如一个或多个设备)可以执行被描述为由图1a至图1f的另一设备集合执行的一个或多个功能。
60.图2是可以实现本文描述的系统和/或方法的示例环境200的示意图。如图2所示,环境200可以包括客户端设备210、安全设备220、远程设备230和网络240。环境200的设备可以经由有线连接、无线连接或者有线和无线连接的组合互连。
61.客户端设备210包括能够接收、生成、存储、处理和/或提供信息(诸如本文描述的信息)的一个或多个设备。例如,客户端设备210可以包括移动电话(例如智能电话、无线电话等)、膝上型计算机、平板计算机、台式计算机、手持式计算机、游戏设备、可穿戴通信设备(例如智能手表、一对智能眼镜、心率监测器、健身追踪器、智能服装、智能珠宝、头戴式显示器等)、网络设备或类似类型的设备。在一些实现中,客户端设备210可以经由网络240从远程设备230接收网络业务和/或可以将网络业务提供给远程设备230(例如通过使用安全设备220作为中介来路由分组)。
62.安全设备220包括能够以本文描述的方式接收、处理、存储、路由和/或提供业务(例如分组、其他信息或元数据等)的一个或多个设备。例如,安全设备220可以包括防火墙或者包括安全相关功能性的另一类型的设备,诸如路由器(例如标签切换路由器(lsr)、标签边缘路由器(ler)、入口路由器、出口路由器、提供方路由器(例如提供方边缘路由器、提供方核心路由器等)、虚拟路由器等)、网关、交换机、集线器、桥接器、反向代理、服务器(例
如代理服务器、云服务器、数据中心服务器等)、负载平衡器和/或类似设备。在一些实现中,安全设备220可以是在外壳(诸如底盘)内实现的物理设备。在一些实现中,安全设备220可以是由云计算环境或数据中心的一个或多个计算机设备实现的虚拟设备。
63.远程设备230包括能够接收、生成、存储、处理和/或提供信息(诸如本文描述的信息)的一个或多个设备。例如,远程设备230可以包括移动电话(例如智能电话、无线电话等)、膝上型计算机、平板计算机、台式计算机、手持式计算机、游戏设备、可穿戴通信设备(例如智能手表、一对智能眼镜、心率监测器、健身追踪器、智能服装、智能珠宝、头戴式显示器等)、服务器设备、网络设备或类似类型的设备。在一些实现中,远程设备230可以经由网络240从客户端设备210接收网络业务和/或可以将网络业务提供给客户端设备210(例如通过经由安全设备220作为中介来路由分组)。
64.网络240包括一个或多个有线和/或无线网络。例如,网络240可以包括分组切换网络、蜂窝网络(例如第五代(5g)网络、诸如长期演进(lte)网络等第四代(4g)网络、第三代(3g)网络)、码分多址(cdma)网络、公共陆地移动网络(plmn)、局域网(lan)、广域网(wan)、城域网(man)、电话网络(例如公共切换电话网络(pstn))、专用网络、自组织网、内联网、互联网、基于光纤的网络、云计算网络等和/或这些或其他类型的网络的组合。
65.图2所示的设备和网络的数量和布置被提供为示例。实际上,与图2所示的设备和/或网络相比,可以有附加设备和/或网络、更少设备和/或网络、不同设备和/或网络或者布置不同的设备和/或网络。此外,图2所示的两个或更多个设备可以被实现在单个设备内,或者图2所示的单个设备可以被实现为多个分布式设备。附加地或备选地,环境200的设备集合(例如一个或多个设备)可以执行被描述为由环境200的另一设备集合执行的一个或多个功能。
66.图3是图2的设备300的示例组件的示意图。设备300可以对应于客户端设备210、安全设备220和/或远程设备230。在一些实现中,客户端设备210、安全设备220和/或远程设备230可以包括一个或多个设备300和/或设备300的一个或多个组件。如图3所示,设备300可以包括一个或多个输入组件310

1至310

a(a≥1)(在下文中统称为输入组件310,并且单独地称为输入组件310)、切换组件320、一个或多个输出组件330

1至330

b(b≥1)(在下文中统称为输出组件330,并且单独地称为输出组件330)以及控制器340。
67.输入组件310可以是物理链路的一个或多个附接点,并且可以是传入业务(诸如分组)的一个或多个入口点。输入组件310可以处理传入业务,诸如通过执行数据链路层封装或解封装。在一些实现中,输入组件310可以传输和/或接收分组。在一些实现中,输入组件310可以包括输入线卡,其包括一个或多个分组处理组件(例如集成电路的形式),诸如一个或多个接口卡(ifc)、分组转发组件、线卡控制器组件、输入端口、处理器、存储器和/或输入队列。在一些实现中,设备300可以包括一个或多个输入组件310。
68.切换组件320可以使输入组件310与输出组件330互连。在一些实现中,切换组件320可以经由一个或多个交叉开关、经由总线和/或利用共享存储器实现。共享存储器可以充当临时缓冲器以在最终调度分组以递送给输出组件330之前存储来自输入组件310的分组。在一些实现中,切换组件320可以使得输入组件310、输出组件330和/或控制器340能够彼此通信。
69.输出组件330可以存储分组,并且可以调度分组以在输出物理链路上进行传输。输
出组件330可以支持数据链路层封装或解封装和/或各种高级协议。在一些实现中,输出组件330可以传输分组和/或接收分组。在一些实现中,输出组件330可以包括输出线卡,其包括一个或多个分组处理组件(例如集成电路的形式),诸如一个或多个ifc、分组转发组件、线卡控制器组件、输出端口、处理器、存储器和/或输出队列。在一些实现中,设备300可以包括一个或多个输出组件330。在一些实现中,可以通过相同的组件集合来实现输入组件310和输出组件330(例如并且输入/输出组件可以是输入组件310和输出组件330的组合)。
70.例如,控制器340包括以下形式的处理器:中央处理单元(cpu)、图形处理单元(gpu)、加速处理单元(apu)、微处理器、微控制器、数字信号处理器(dsp)、现场可编程门阵列(fpga)、专用集成电路(asic)和/或另一类型的处理器。处理器被实现在硬件、固件、或者硬件和软件的组合中。在一些实现中,控制器340可以包括可以被编程为执行功能的一个或多个处理器。
71.在一些实现中,控制器340可以包括随机存取存储器(ram)、只读存储器(rom)和/或存储供控制器340使用的信息和/或指令的另一类型的动态或静态存储设备(例如闪速存储器、磁性存储器、光学存储器等)。
72.在一些实现中,控制器340可以与连接至设备300的其他设备、网络和/或系统通信以交换关于网络拓扑的信息。控制器340可以基于网络拓扑信息创建路由表,可以基于路由表创建转发表,并且可以将转发表转发给输入组件310和/或输出组件330。输入组件310和/或输出组件330可以使用转发表来执行对传入和/或传出分组的路由查找。
73.控制器340可以执行本文描述的一个或多个过程。控制器340可以响应于执行由非瞬态计算机可读介质存储的软件指令来执行这些过程。计算机可读介质在本文中被定义为非瞬态存储器设备。存储器设备包括单个物理存储设备内的存储器空间或者跨多个物理存储设备散布的存储器空间。
74.可以经由通信接口从另一计算机可读介质或从另一设备将软件指令读取到与控制器340相关联的存储器和/或存储组件中。在执行时,存储在与控制器340相关联的存储器和/或存储组件中的软件指令可以使控制器340执行本文描述的一个或多个过程。附加地或备选地,硬连线电路系统可以代替软件指令使用或者与软件指令组合使用以执行本文描述的一个或多个过程。因此,本文描述的实现并不限于硬件电路系统和软件的任何特定组合。
75.图3所示的组件的数量和布置被提供为示例。实际上,与图3所示的组件相比,设备300可以包括附加组件、更少组件、不同组件或者布置不同的组件。附加地或备选地,设备300的组件集合(例如一个或多个组件)可以执行被描述为由设备300的另一组件集合执行的一个或多个功能。
76.图4是图2的一个或多个设备400的示例组件的示意图。设备400可以对应于客户端设备210、安全设备220和/或远程设备230。在一些实现中,客户端设备210、安全设备220和/或远程设备230可以包括一个或多个设备400和/或设备400的一个或多个组件。如图4所示,设备400可以包括总线410、处理器420、存储器430、存储组件440、输入组件450、输出组件460和通信接口470。
77.总线410包括允许在设备400的组件之间通信的组件。处理器420在硬件、固件或者硬件和软件的组合中实现。处理器420是cpu、gpu、apu、微处理器、微控制器、dsp、fpga、asic或者另一类型的处理组件。在一些实现中,处理器420包括能够被编程为执行功能的一个或
多个处理器。存储器430包括ram、rom和/或存储供处理器420使用的信息和/或指令的另一类型的动态或静态存储设备(例如闪速存储器、磁性存储器和/或光学存储器)。
78.存储组件440存储与设备400的操作和使用相关的信息和/或软件。例如,存储组件440可以包括硬盘(例如磁盘、光盘、磁光盘和/或固态盘)、压缩盘(cd)、数字多功能盘(dvd)、软盘、磁带盒、磁带和/或另一类型的非瞬态计算机可读介质以及对应的驱动器。
79.输入组件450包括允许设备400诸如经由用户输入(例如触摸屏显示器、键盘、小键盘、鼠标、按钮、开关和/或麦克风)接收信息的组件。附加地或备选地,输入组件450可以包括用于感测信息的传感器(例如全球定位系统(gps)组件、加速度计、陀螺仪和/或致动器)。输出组件460包括从设备400提供输出信息的组件(例如显示器、扬声器和/或一个或多个led)。
80.通信接口470包括使设备400能够诸如经由有线连接、无线连接或者有线和无线连接的组合与其他设备通信的收发器类组件(例如收发器和/或单独的接收器和传输器)。通信接口470可以允许设备400从另一设备接收信息和/或向另一设备提供信息。例如,通信接口470可以包括以太网接口、光学接口、同轴接口、红外接口、rf接口、通用串行总线(usb)接口、无线局域接口、蜂窝网络接口等。
81.设备400可以执行本文描述的一个或多个过程。设备400可以基于处理器420执行由诸如存储器430和/或存储组件440等非瞬态计算机可读介质存储的软件指令来执行这些过程。计算机可读介质在本文中被定义为非瞬态存储器设备。存储器设备包括单个物理存储设备内的存储器空间或者跨多个物理存储设备散布的存储器空间。
82.可以经由通信接口470从另一计算机可读介质或者从另一设备将软件指令读取到存储器430和/或存储组件440中。在执行时,存储在存储器430和/或存储组件440中的软件指令可以使处理器420执行本文描述的一个或多个过程。附加地或备选地,硬连线电路系统可以代替软件指令使用或者与软件指令组合使用以执行本文描述的一个或多个过程。因此,本文描述的实现并不限于硬件电路系统和软件的任何特定组合。
83.图4所示的组件的数量和布置被提供为示例。实际上,与图4所示的组件相比,设备400可以包括附加组件、更少组件、不同组件或者布置不同的组件。附加地或备选地,设备400的组件集合(例如一个或多个组件)可以执行被描述为由设备400的另一组件集合执行的一个或多个功能。
84.图5是与选择性的传送层安全加密相关联的示例过程500的流程图。在一些实现中,图5的一个或多个过程框可以由设备(例如客户端设备210)执行。在一些实现中,图5的一个或多个过程框可以由与设备分离或者包括设备的另一装置或设备组执行,诸如安全设备(例如安全设备220)、远程设备(例如远程设备230)等。附加地或备选地,图5的一个或多个过程框可以由设备300的一个或多个组件(诸如输入组件310、切换组件320、输出组件330)、设备400的一个或多个组件(诸如处理器420、存储器430、存储组件440、输入组件450、输出组件460、通信接口470)等执行。
85.如图5所示,过程500可以包括传输用于建立虚拟专用网络(vpn)或在vpn上通信的分组(框510)。例如,设备可以传输用于建立虚拟专用网络(vpn)或在vpn上通信的分组,如上所述。
86.如图5进一步所示,过程500可以包括确定分组已经被安全设备丢弃(框520)。例
如,该设备可以确定分组已经被安全设备丢弃,如上所述。
87.如图5进一步所示,过程500可以包括在分组已经被丢弃时利用传输控制协议(tcp)封装来封装分组以生成tcp封装分组(框530)。例如,该设备可以在分组已经被丢弃时利用传输控制协议(tcp)封装来封装分组以生成tcp封装分组,如上所述。
88.如图5进一步所示,过程500可以包括传输用于建立vpn或在vpn上通信的tcp封装分组(框540)。例如,该设备可以传输用于建立vpn或在vpn上通信的tcp封装分组,如上所述。
89.如图5进一步所示,过程500可以包括确定tcp封装分组已经被安全设备丢弃(框550)。例如,该设备可以确定tcp封装分组已经被安全设备丢弃,如上所述。
90.如图5进一步所示,过程500可以包括在tcp封装分组已经被丢弃时使用与协议相关联的加密和用于传送层安全(tls)的空加密的组合或者与协议相关联的加密和tls加密的组合来选择性地对分组进行加密,以生成加密分组(框560)。例如,该设备可以通过设备在tcp封装分组已经被丢弃时使用与协议相关联的加密和用于传送层安全(tls)的空加密的组合或者与协议相关联的加密和tls加密的组合来选择性地对分组进行加密,以生成加密分组,如上所述。
91.如图5进一步所示,过程500可以包括在vpn上传输加密分组以用于建立vpn或在vpn上通信(框570)。例如,该设备可以在vpn上传输加密分组以用于建立vpn或在vpn上通信,如上所述。
92.过程500可以包括附加实现,诸如任何单个实现或者下面描述和/或结合本文其他地方描述的一个或多个其他过程的实现的任何组合。
93.在第一实现中,以下至少一项被定向到目的地端口443:分组、tcp封装分组或加密分组。在第二实现中,单独地或者与第一实现组合,使用用于tls的空加密或者与协议相关联的加密和tls加密的组合来选择性地对分组进行加密包括:基于确定要被使用的tls版本支持空加密来使用用于tls的空加密对分组进行加密,以生成加密分组。在第三实现中,单独地或者与第一实现和第二实现中的一个或多个组合,使用用于tls的空加密或者与协议相关联的加密和tls加密的组合来选择性地对分组进行加密包括:基于确定要被使用的tls版本不支持空加密来使用与协议相关联的加密和tls加密的组合对分组进行加密,以生成加密分组。
94.在第四实现中,单独地或者与第一实现至第三实现中的一个或多个组合,使用用于tls的空加密或者与协议相关联的加密和tls加密的组合来选择性地对分组进行加密包括:使用用于tls的空加密来对分组进行加密以形成第一加密分组,并且该方法还包括:传输第一加密分组;确定第一加密分组已经被安全设备丢弃;以及在第一加密分组已经被丢弃时,使用与协议相关联的加密和tls加密的组合来对分组进行加密,以生成第二加密分组,该第二加密分组是加密分组。
95.在第五实现中,单独地或者与第一实现至第四实现中的一个或多个组合,使用用于tls的空加密或者与协议相关联的加密和tls加密的组合来选择性地对分组进行加密包括:使用用于tls的空加密来对分组进行加密,并且该方法还包括:使分组经受tls的哈希算法的哈希,并且使分组经受与协议相关联的哈希算法的哈希。
96.在第六实现中,单独地或者与第一实现至第五实现中的一个或多个组合,使用用
于tls的空加密或者与协议相关联的加密和tls加密的组合来选择性地对分组进行加密包括:使用与协议相关联的加密和tls加密的组合来对分组进行加密,并且该方法还包括:使分组经受tls的哈希算法的哈希,并且使分组经受与协议相关联的哈希算法的哈希。
97.尽管图5示出了过程500的示例框,但是在一些实现中,与图5所描绘的框相比,过程500可以包括附加框、更少框、不同框或者布置不同的框。附加地或备选地,可以并行执行过程500的两个或更多个框。
98.图6是与选择性的传送层安全加密相关联的示例过程600的流程图。在一些实现中,图6的一个或多个过程框可以由设备(例如客户端设备210)执行。在一些实现中,图6的一个或多个过程框可以由与设备分离或者包括设备的另一装置或设备组执行,诸如安全设备(例如安全设备220)、远程设备(例如远程设备230)等。附加地或备选地,图6的一个或多个过程框可以由设备300的一个或多个组件(诸如输入组件310、切换组件320、输出组件330)、设备400的一个或多个组件(诸如处理器420、存储器430、存储组件440、输入组件450、输出组件460、通信接口470)等执行。
99.如图6所示,过程600可以包括传输用于与远程设备通信的分组(框610)。例如,该设备可以传输用于与远程设备通信的分组,如上所述。
100.如图6进一步所示,过程600可以包括确定分组已经被安全设备丢弃(框620)。例如,该设备可以确定分组已经被安全设备丢弃,如上所述。
101.如图6进一步所示,过程600可以包括在确定分组已经被丢弃之后使用与协议相关联的加密和用于传送层安全(tls)的空加密的组合来对分组进行加密以生成第一加密分组(框630)。例如,该设备可以在确定分组已经被丢弃之后使用与协议相关联的加密和用于传送层安全(tls)的空加密的组合来对分组进行加密以生成第一加密分组,如上所述。
102.如图6进一步所示,过程600可以包括传输用于与远程设备通信的第一加密分组(框640)。例如,该设备可以传输用于与远程设备通信的第一加密分组,如上所述。
103.如图6进一步所示,过程600可以包括确定第一加密分组已经被安全设备丢弃(框650)。例如,该设备可以确定第一加密分组已经被安全设备丢弃,如上所述。
104.如图6进一步所示,过程600可以包括在确定第一加密分组已经被丢弃之后使用与协议相关联的加密和tls加密的组合来对分组进行加密以生成第二加密分组(框660)。例如,该设备可以在确定第一加密分组已经被丢弃之后使用与协议相关联的加密和tls加密的组合来对分组进行加密以生成第二加密分组,如上所述。
105.如图6进一步所示,过程600可以包括传输用于与远程设备通信的第二加密分组(框670)。例如,该设备可以传输用于与远程设备通信的第二加密分组,如上所述。
106.过程600可以包括附加实现,诸如任何单个实现或者下面描述和/或结合本文其他地方描述的一个或多个其他过程的实现的任何组合。
107.在第一实现中,过程600包括:选择至少与关联于协议的加密算法一样强的用于tls加密的加密算法;以及使用与协议相关联的加密和用于tls加密的加密算法的组合来对分组进行加密。在第二实现中,单独地或者与第一实现组合,过程600包括:传输互联网密钥交换(ike)分组作为ike过程的一部分以与远程设备建立虚拟专用网络(vpn)隧道;确定ike分组已经被安全设备丢弃;当ike分组已经被丢弃时,利用tcp封装来封装分组以生成tcp封装ike分组;以及传输用于建立vpn隧道的tcp封装ike分组。
108.在第三实现中,单独地或者与第一实现和第二实现中的一个或多个组合,tcp封装ike分组被定向到目的地端口443。在第四实现中,单独地或者与第一实现至第三实现中的一个或多个组合,过程600包括:确定tcp封装ike分组已经被安全设备丢弃;当tcp封装ike分组已经被丢弃时,使用ike加密和传送层安全(tls)加密的组合来对ike分组进行加密,以生成加密ike分组;以及传输用于建立vpn隧道的加密ike分组。
109.在第五实现中,单独地或者与第一实现至第四实现中的一个或多个组合,过程600包括:基于在阈值时间量内未从安全设备接收到对分组的回复来确定分组已经被安全设备丢弃,或者基于从安全设备接收到指示分组已经被丢弃的通知来确定分组已经被安全设备丢弃。在第六实现中,单独地或者与第一实现至第五实现中的一个或多个组合,过程600包括:基于确定分组已经被丢弃,利用传输控制协议(tcp)封装来封装分组以生成tcp封装分组;以及传输用于与远程设备通信的tcp封装分组。
110.尽管图6示出了过程600的示例框,但是在一些实现中,与图6所描绘的框相比,过程600可以包括附加框、更少框、不同框或者布置不同的框。附加地或备选地,可以并行执行过程600的两个或更多个框。
111.图7是与选择性的传送层安全加密相关联的示例过程700的流程图。在一些实现中,图7的一个或多个过程框可以由设备(例如客户端设备210)执行。在一些实现中,图7的一个或多个过程框可以由与设备分离或者包括设备的另一装置或设备组执行,诸如安全设备(例如安全设备220)、远程设备(例如远程设备230)等。附加地或备选地,图7的一个或多个过程框可以由设备300的一个或多个组件(诸如输入组件310、切换组件320、输出组件330)、设备400的一个或多个组件(诸如处理器420、存储器430、存储组件440、输入组件450、输出组件460、通信接口470)等执行。
112.如图7进一步所示,过程700可以包括传输用于经由隧道通信的分组(框710)。例如,该设备可以传输用于经由隧道通信的分组,如上所述。
113.如图7进一步所示,过程700可以包括确定分组已经被安全设备丢弃(框720)。例如,该设备可以确定分组已经被安全设备丢弃,如上所述。
114.如图7进一步所示,过程700可以包括在确定分组已经被丢弃时使用与协议相关联的加密和用于传送层安全(tls)的空加密的组合或者与协议相关联的加密和tls加密的组合来选择性地对分组进行加密,以生成加密分组(框730)。例如,该设备可以在确定分组已经被丢弃之后使用与协议相关联的加密和用于传送层安全(tls)的空加密的组合或者与协议相关联的加密和tls加密的组合来选择性地对分组进行加密,以生成加密分组,如上所述。
115.如图7进一步所示,过程700可以包括传输用于经由隧道通信的加密分组(框740)。例如,该设备可以传输用于经由隧道通信的加密分组,如上所述。
116.过程700可以包括附加实现,诸如任何单个实现或者下面描述和/或结合本文其他地方描述的一个或多个其他过程的实现的任何组合。
117.在第一实现中,一个或多个指令在由一个或多个处理器执行时还使一个或多个处理器:确定要被使用的tls版本支持空加密,并且基于确定要被使用的tls版本支持空加密使用用于tls的空加密来对分组进行加密,以生成加密分组。
118.在第二实现中,单独地或者与第一实现组合,一个或多个指令在由一个或多个处
理器执行时还使一个或多个处理器:确定要被使用的tls版本不支持空加密,并且基于确定要被使用的tls版本不支持空加密使用与协议相关联的加密和tls加密的组合来对分组进行加密,以生成加密分组。
119.在第三实现中,单独地或者与第一实现和第二实现中的一个或多个组合,使一个或多个处理器使用用于tls的空加密或者与协议相关联的加密和tls加密的组合来选择性地对分组进行加密的一个或多个指令使一个或多个处理器:使用用于tls的空加密来对分组进行加密以形成第一加密分组,并且传输第一加密分组;确定第一加密分组已经被安全设备丢弃,以及当第一加密分组已经被丢弃时,使用与协议相关联的加密和tls加密的组合来对分组进行加密以生成第二加密分组,该第二加密分组是加密分组。
120.在第四实现中,单独地或者与第一实现至第三实现中的一个或多个组合,分组被传输以用于经由隧道与远程设备通信,并且基于确定分组已经被丢弃,利用传输控制协议(tcp)封装来封装分组以生成tcp封装分组,以及传输用于与远程设备通信的tcp封装分组。
121.在第五实现中,单独地或者与第一实现至第四实现中的一个或多个组合,过程700包括传输互联网密钥交换(ike)分组作为ike过程的一部分以用于建立隧道;确定ike分组已经被安全设备丢弃;在确定ike分组已经被丢弃之后,使用ike加密和传送层安全(tls)加密的组合来对ike分组进行加密以生成加密ike分组;以及传输用于建立隧道的加密ike分组。
122.尽管图7示出了过程700的示例框,但是在一些实现中,与图7所描绘的框相比,过程700可以包括附加框、更少框、不同框或者布置不同的框。附加地或备选地,可以并行执行过程700的两个或更多个框。
123.前述公开内容提供了说明和描述,但并非旨在穷举实现或将实现限制于所公开的精确形式。可以鉴于以上公开内容进行修改和变型,或者可以从实现的实践中获取修改和变型。
124.如本文所使用的,术语“组件”旨在被广义地解释为硬件、固件或硬件和软件的组合。
125.如本文所使用的,业务或内容可以包括分组集合。分组可以指用于传递信息的通信结构,诸如协议数据单元(pdu)、服务数据单元(sdu)、网络分组、数据报、区段、消息、块、帧(例如以太网帧)、上述的任何的一部分和/或能够经由网络传输的另一类型的格式化或未格式化的数据单元。
126.本文结合阈值描述了一些实现。如本文所使用的,取决于上下文,满足阈值可以指值大于(greater than)阈值、多于(more than)阈值、高于阈值、大于或等于阈值、小于(less than)阈值、少于(fewer than)阈值、低于阈值、小于或等于阈值、等于阈值等。
127.将明显的是,本文描述的系统和/或方法可以以硬件、固件和/或硬件和软件的组合的不同形式实现。用于实现这些系统和/或方法的实际专用控制硬件或软件代码并不限制实现。因此,本文描述了系统和/或方法的操作和行为,而没有参照特定的软件代码

要理解,软件和硬件可以用于基于本文的描述实现系统和/或方法。
128.即使特征的特定组合被叙述在权利要求中和/或公开在说明书中,但是这些组合并不旨在限制各种实现的公开内容。事实上,这些特征中的许多特征可以以未被具体叙述在权利要求中和/或公开在说明书中的方式组合。尽管下面列出的每个从属权利要求可能
仅直接依赖于一个权利要求,但是各种实现的公开内容包括与权利要求集合中的每个其他权利要求组合的每个从属权利要求。
129.除非明确地这样描述,否则本文使用的元件、动作或指令不应该被解释为关键或必要的。而且,如本文所使用的,冠词“一”和“一个”旨在包括一个或多个项目,并且可以与“一个或多个”互换使用。进一步地,如本文所使用的,冠词“该”旨在包括结合冠词“该”引用的一个或多个项目,并且可以与“一个或多个”互换使用。此外,如本文所使用的,术语“集合”旨在包括一个或多个项目(例如相关项目、不相关项目、相关项目和不相关项目的组合等),并且可以与“一个或多个”互换使用。在仅有一个项目的情况下,使用短语“仅一个”或类似语言。而且,如本文所使用的,术语“具有(has)”、“具有(have)”、“具有(having)”等旨在作为开放式术语。进一步地,除非另有明确规定,否则短语“基于”旨在表示“至少部分地基于”。而且,如本文所使用的,除非另有明确规定(例如如果与“任一个”或
“…
中的仅一个”组合使用),否则术语“或”在串联使用时旨在是包括性的,并且可以与“和/或”互换使用。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献