CN1968083B - 计算机系统及计算机 - Google Patents
计算机系统及计算机 Download PDFInfo
- Publication number
- CN1968083B CN1968083B CN2006101085464A CN200610108546A CN1968083B CN 1968083 B CN1968083 B CN 1968083B CN 2006101085464 A CN2006101085464 A CN 2006101085464A CN 200610108546 A CN200610108546 A CN 200610108546A CN 1968083 B CN1968083 B CN 1968083B
- Authority
- CN
- China
- Prior art keywords
- mentioned
- information
- candidate information
- bag
- receives
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0838—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
- H04L9/0841—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
- H04L61/256—NAT traversal
- H04L61/2564—NAT traversal for a higher-layer protocol, e.g. for session initiation protocol [SIP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/16—Implementing security features at a particular protocol layer
- H04L63/164—Implementing security features at a particular protocol layer at the network layer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0891—Revocation or update of secret information, e.g. encryption key update or rekeying
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/76—Proxy, i.e. using intermediary entity to perform cryptographic operations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
一种计算机系统,在经由NAT或者负荷分散装置通信的计算机之间建立SA。具备第1计算机和具有第2处理器及第2存储器的第2计算机以及控制上述第1计算机和上述第2计算机之间的通信的通信控制装置的计算机系统,其特征在于,上述通信控制装置,当从上述第1计算机接收包时,转换接收到的包的地址信息,传输给上述第2计算机,上述第2存储器,存储地址信息的一部分不明确的SA信息即SA候补信息,上述第2处理器,当从上述第1计算机接收由上述第1计算机加密过的加密包时,使用上述SA候补信息对该加密包进行解密,当该加密包解密成功时,根据上述解密中使用过的上述SA候补信息及该加密包的地址信息,生成SA信息。
Description
技术领域:
本发明关于具备多个计算机的计算机系统,尤其是关于确保在网络上的通信的机密性及安全性的技术。
背景技术:
近几年来,普遍在使用IP(Internet Protocol:网络协议)网络。因此,网络安全技术很受重视。大家熟知为了在IP网络上确保安全,在要通信的计算机之间建立安全的通信路由(SA:SecurityAssociation:安全联盟)的技术。
在建立SA的技术中,计算机在开始通信之前,通过交换包含加密方式或者密钥等的SA信息,来建立SA。然后,计算机,管理有关已经建立好的SA的SA信息。然后,计算机,根据正在管理的SA信息,进行包的加密(加密:encryption)或者解密。
又,非特许文献1中展示了STUN协议的说明书。依据它,连接在NAT的终端,通过使用STUN协议和STUN服务器通信,可以事先预测由NAT分配的地址。
非特许文献1:RFC3489、网络【URL:http://www.ietf.org/rfc/rfc3489.txt】
发明公开
发明要解决的课题
一般来说,计算机,在为建立SA的通信和利用已经建立好的SA的通信中,使用不同的地址。这种情况下,当计算机之间的通信路径上存在NAT(Network Address Translation:网络地址交换)或者负荷分散装置时,计算机就不能利用SA。
于是,解决这个问题的技术问世。依据这个技术,计算机在建立SA之前,利用UPnP(Universal Plug and Play:通用即插即用)或者STUN(Simple Traversal of UDP Through NATs:NAT的UDP简单穿越)等技术,预约NAT上的地址。然后,计算机,把预约好的地址通知给通信对方的计算机。但是,这种技术中,计算机必须具备UPnP等特殊的功能。
于是,计算机在为建立SA的通信和利用已经建立好的SA的通信中使用相同地址的技术问世。但是,这种技术,不能适用于具备确保安全的代理计算机的计算机系统。
本发明正是鉴于上述问题点,其目的在于,在经由NAT或者负荷分散装置进行通信的计算机之间建立SA。
解决课题的技术方案
本发明的代表性实施例是,具备具有第1处理器、第1存储器及第1接口的第1计算机和具有第2处理器、第2存储器及第2接口的第2计算机以及控制上述第1计算机和上述第2计算机通信的通信控制装置的计算机系统,其特征在于,上述通信控制装置,当从上述第1计算机接收包时,转换接收到的包的地址,并传输给上述第2计算机,上述第2存储器,存储地址信息的一部分不明确的SA信息即SA候补信息,上述第2处理器,当从上述第1计算机接收由上述第1计算机加密的包时,使用上述SA候补信息对该加密包进行解密,当该加密包解密成功时,根据上述解密中使用过的上述SA候补信息及该加密包的地址信息,生成SA信息。
发明效果
依据本发明的代表实施例,可以在经由NAT或者负荷分散装置进行通信的计算机之间建立SA。
实施发明的最佳实施例
附图简单说明
图1是第1实施例的计算机系统的方框图;
图2是第1实施例的发起器的方框图;
图3是第1实施例的应答器的方框图;
图4是第1实施例的发起器的SA信息表组成图;
图5是第1实施例的应答器的SA信息表组成图;
图6是第1实施例的应答器的SA候补信息表组成图;
图7是第1实施例计算机系统的SA建立处理的时序图;
图8是第1实施例的SA信息的说明图;
图9是第1实施例的扩展SA处理程序的接收包处理流程图;
图10是第1实施例的扩展SA处理程序的发送包处理流程图;
图11是第2实施例的应答器的方框图;
图12是第2实施例的应答器的SA信息与SA候补信息表的组成图;
图13是对第2实施例的扩展SA处理程序的接收包处理流程图;
图14是第3实施例计算机系统的方框图;
图15是第3实施例计算机系统的SA建立处理时序图;
图16是第4实施例计算机系统的方框图;
图17是第4实施例计算机系统的SA建立处理时序图;
图18A是对第4实施例的扩展SA处理程序的接收包处理流程图;
图18B是对第4实施例的扩展SA处理程序的接收包处理流程图;
图19是第5实施例计算机系统的方框图;
图20是第5实施例计算机系统的SA建立处理时序图;
图21A是第5实施例的扩展SA处理程序的接收包处理流程图;
图21B是第5实施例的扩展SA处理程序的接收包处理的流程图。
标号说明
1:通信网
2A、2B:发起器
3:应答器
4:NAT
5:SA候补信息数据库
6:SIP代理服务器
7:负荷分散装置
9:通信线路
21:IF
22:CPU
23:存储器
24:数据通路
31:IF
32:CPU
33:存储器
34:数据通路
231:网络处理程序
232:网络应用程序
233:SA处理程序
234:SA信息表
331:网络处理程序
332:网络应用程序
333:SA处理程序
334:SA信息表
335:SA候补信息表
下面,参照图示说明本发明的实施例。
图1是第1实施例的计算机系统的方框图。
计算机系统具备通信网1、发起器2(initiator)、应答器(responder)3、NAT4、SIP代理服务器6(SIPproxy)及通信线路9。
发起器2,在图2中后述,不过是请求应答器3建立SA(SecurityAssociation)的计算机。
而且,SA是发起器2和应答器3之间建立的安全通信路径。又,本实施例的SA,不仅仅表示IPsec SA,还包含IPsec中的安全策略及IPsec SA。
应答器3,在图3中后述,是被发起器2请求建立SA的计算机。应答器3,一旦被请求建立SA,就使用SIP(Session Initiation Protocol:会话启动协议)消息,建立SA。
发起器2及应答器3,可以是PC(Personal Computer:电脑)或者如电话终端等的固定终端,也可以是如手机或PDA(PersonalDigital Assistant:个人数字助理)等移动终端。
而且,发起器2,由在每个通信中所起的作用来决定,所以也可以根据通信作为应答器工作。同样,应答器3,也是决定于在每个通信中所起的作用,根据通信也可以作为发起器工作。另外,发起器2,也可以设定为不作为应答器工作。同样,应答器3,也可以设定为不作为发起器工作。
NAT4是具备NAT(Network Address Translation:网络地址交换)功能的通信机器。NAT4,例如是宽带路由器或者防火墙等。具体地说,NAT4,在包传输时,转换该包的地址信息。
SIP代理服务器6,设置于发起器2和应答器3之间的通信路径上,传输SIP消息。
NAT4、SIP代理服务器6及应答器3通过通信线路9连接于通信网1。也就是说,发起器2,通过通信线路9和NAT4连接。也就是说,发起器2通过NAT4和通信网1连接。
图2是第1实施例发起器2的方框图。
发起器2,具备接口(IF)21、CPU22及存储器23。IF21、CPU22及存储器23,通过数据通路24相互连接。
IF21,通过通信线路9,和NAT4等外部装置连接。
CPU22,通过执行存储在存储器23中的程序,进行各种处理。例如,CPU22,通过IF21收发包。
存储器23,存储着网络处理程序231(网络处理程序:networkprocessing program)、网络应用程序(网络AP)232(网络应用程序:network application,在日文中如果写作应用比较长,所以简写为AP,如果是英文,也可以不缩写)、SA处理程序233(SA处理程序:SAprocessing)及SA信息表234。
网络处理程序231,通过通信网1收发数据。网络处理程序231,例如是TCP/IP(Transmission Control Protocol/Internet Protocol:传输控制协议/网络协议)堆栈。
网络AP232,使用网络处理程序231,在和应答器3的网络AP之间收发数据。本实施例中,网络AP232设为Web浏览器。
SA处理程序233,根据存储在SA信息表234中的SA信息,建立SA。而且,SA信息是,为了建立SA在发起器2和应答器3之间被交换的信息。由此,SA处理程序233,建立加密或者认证(认证:authentication)等安全。而且,网络程序231,在收发包时,调用SA处理程序233。
又,SA处理程序233,为了建立SA,和应答器3交换SA信息。然后,SA处理程序233,更新SA信息表234。
SA信息表234,在图4中后述,是存储SA信息的表。而且,SA信息,可以存储在如SA信息表234这样的一个表上,也可以如IPsec,分存在多个表上。
本说明图,只是表示作为发起器2工作时所需要的最低限度的组成。因此,作为发起器2及应答器3工作的计算机,具备应答器3(图3)的组成。
图3是第1实施例应答器3的方框图。
应答器3,具备接口(IF)31、CPU32及存储器33。IF31、CPU32及存储器33通过数据通路34相互连接。
IF31,通过通信线路9及通信网1,和外部装置连接。
CPU32,通过执行存储在存储器33中的程序,进行各种处理。例如,CPU32,通过IF31收发包。
存储器33,存储着网络处理程序331、网络应用程序(网络AP)332、扩展SA处理程序333(扩展SA处理程序:extended SA processingprogram)、SA信息表334及SA候补信息表335。
网络处理程序331,通过通信网1收发数据。网络处理程序331,例如是TCP/IP(Transmission Control Protocol/Internet Protocol:传输控制协议/网络协议)堆栈等。
网络AP332,使用网络处理程序331,在和发起器2的网络AP232之间收发数据。本实施例中,网络AP232设为Web浏览器。
扩展SA处理程序333,根据存储在SA信息表334中的SA信息,建立SA。由此,扩展SA处理程序333,建立加密或者认证等的安全。而且,网络处理程序331,在收发包时,调用扩展SA处理程序333。
又,扩展SA处理程序333,为了建立SA,和发起器2交换SA信息。然后,扩展SA处理程序333更新SA信息表334。
又,扩展SA处理程序333,把地址信息上具有不明确部分的SA信息作为SA候补信息处理。然后,扩展SA处理程序333,通过把SA候补信息存储在SA候补信息表335来管理SA候补信息。还有,扩展SA处理程序333,根据存储在SA候补信息表335中的SA候补信息生成新的SA信息。
SA信息表334,在图5中后述,是存有SA信息的表。而且SA信息,可以存储在如SA信息表334这样的一个表上,也可以如IPsec,分存在多个表上。
SA候补信息表335,在图6中后述,是存有SA候补信息的表。而且,SA候补信息可以存储在如SA候补信息表335这样的一个表上,也可以分存在多个表上。
图4是第1实施例的发起器2的SA信息表234的组成图。
SA信息表234,包含方向2341、始点IP地址2342、始点端口2343、终点IP地址2344、终点端口2345、协议2346、SPI2347、密钥数据2348及有效时间2349。
SA信息表234的一个记录上存储着一个SA信息。
方向2341,表示该SA信息的SA适用在包接收时或者包发送时的哪方。具体地说,当发起器2接收包时适用的SA的SA信息方向2341,存储入站(inbound)。另外,当发起器2发送包时适用的SA的SA信息方向2341,存储出站(outbound)。
始点IP地址2342,是适用该SA信息的SA的包的发送地IP地址。始点端口2343是适用该SA信息的SA的包的发送地端口号。
终点IP地址2344是适用该SA信息的SA的包的发送目的地的IP地址。终点端口2345是适用该SA信息的SA的包的发送目的地的端口号。
协议2346,是适用该SA信息的SA的包的协议。SPI2347是发起器2和应答器3唯一识别该SA信息的标识符。
密钥数据2348是将为适用该SA信息的SA的包加密或解密的信息。
有效时间2349,是把该SA信息的SA适用在包的时间。也就是说,从该SA信息的生成时点开始一旦经过有效时间2349,发起器2就从SA信息表234删除该SA信息。
图5是第1实施例的应答器3的SA信息表334的组成图。
SA信息表334,包含方向3341、始点IP地址3342、始点端口3343、终点IP地址3344、终点端口3345、协议3346、SPI3347、密钥数据3348及有效时间3349。
SA信息表334的一个记录上存储着一个SA信息。
方向3341,表示该SA信息的SA适用在包接收时或者包发送时的哪方。具体地说,当应答器3接收包时适用的SA的SA信息方向3341,存储入站(inbound)。另外,当应答器3发送包时适用的SA的SA信息方向3341,存储出站(outbound)。
始点IP地址3342,是适用该SA信息的SA的包的发送地IP地址。始点端口3343是适用该SA信息的SA的包的发送地端口号。
终点IP地址3344是适用该SA信息的SA的包的发送目的地的IP地址。终点端口3345是适用该SA信息的SA的包的发送目的地的端口号。
协议3346,是适用该SA信息的SA的包的协议。SPI3347是发起器2和应答器3唯一识别该SA信息的标识符。
密钥数据3348是为将适用该SA信息的SA的包加密或解密的信息。
有效时间3349,是把该SA信息的SA适用在包的时间。也就是说,从该SA信息的生成时点开始一旦经过有效时间3349,应答器3就从SA信息表234删除该SA信息。
图6是第1实施例的应答器3的SA候补信息表335的组成图。
SA候补信息表335,包含对ID3350(对ID:pair ID)、方向3351、始点IP地址3352、始点端口3353、终点IP地址3354、终点端口3355、协议3356、SPI3357、密钥数据3358及SA的有效时间3359以及SA候补的有效时间3360。
SA候补信息表335的一个记录上存储着一个SA候补信息。
对ID3350是该SA候补信息所属对的唯一标识符。而且,适用在应答器3从发起器2所接收的包的SA的SA候补信息,和适用在应答器3对该发起器2所发送的包的SA的SA候补信息,作为一对处理。
方向3351,表示根据该SA候补信息生成的SA信息的SA适用在包接收时或者包发送时的哪方。具体地说,当应答器3接收包时适用的SA的SA候补信息方向3351,存储入站(inbound)。另外,当应答器3发送包时适用的SA的SA候补信息方向3351,存储出站(outbound)。
始点IP地址3352,是适用根据该SA候补信息生成的SA信息的SA的包源IP地址。始点端口3353是适用根据该SA候补信息生成的SA信息的SA的包发送地端口号。
终点IP地址3354是适用根据该SA候补信息生成的SA信息的SA的包发送目的地的IP地址。终点端口3355是适用根据该SA候补信息生成的SA信息的SA的包发送目的地的端口号。
而且,SA候补信息是地址信息上具有不明确部分的SA信息。因此,SA候补信息表335中,始点IP地址3352或终点IP地址3354中的有一方不确定。同样,始点端口3353或者终点端口3355中的有一方不确定。
协议3356,是适用根据该SA候补信息生成的SA信息的SA的包协议。SPI3357是根据该SA候补信息生成的SA信息的唯一标识符。
密钥数据3358是为将适用根据该SA候补信息生成的SA信息的SA的包加密或解密的信息。
SA的有效时间3359,是把根据该SA候补信息生成的SA信息的SA适用在包的时间。也就是说,从该SA候补信息生成完成时开始一旦经过有效时间3359时,应答器3就删除根据该SA候补信息生成好的SA信息。
SA候补的有效时间3360,是应答器3根据该SA候补信息可以生成SA信息的时间。也就是说,从该SA候补信息被生成完成时开始一旦经过SA候补有效时间3360,应答器3就从SA候补信息表335删除该SA候补信息。由此,应答器3,可以从SA候补信息表335中删除不需要的SA候补信息。
图7是第1实施例计算机系统的SA建立处理的时序图。
这个时序图的计算机系统,对在发起器2A中工作的Web浏览器和在应答器3中工作的Web浏览器之间的通信,进行加密。为此,计算机系统,在发起器2A和应答器3之间建立SA。
这里,发起器2A的IP地址是【172.16.0.1】。又,NAT4在通信网1方的IP地址是【192.0.2.4】。又,应答器3的IP地址是【192.0.2.3】。又,SIP代理服务器6的IP地址是【192.0.2.6】。
首先,发起器2A,当达到某些契机时,就判断为该发起器2A和应答器3之间有必要建立SA。
这里,发起器2A的网络处理程序231,从发起器2A的网络AP232接收包发送请求。这样,该网络处理程序231,对发起器2A的SA处理程序233请求建立SA。然后,当该SA处理程序233接受SA建立请求时,发起器2A就判断为,在该发起器2A的端口2345和应答器3的端口80之间有必要建立SA。
这样,发起器2A的SA处理程序233,从该发起器2A的端口5060,把包含邀请(INVITE)消息的包发往SIP代理服务器6(S101)。而且,发起器2A的端口5060是SIP的缺省端口。
邀请(INVITE)消息的主体部(body)上存储着建议用的SA信息。建议用的SA信息中包含从应答器3不能开始通信的地址【172.16.0.1:2345】。关于地址【172.16.0.1:2345】进行说明。该地址中的冒号之前的【172.16.0.1】是IP地址,该地址中的冒号之后的【2345】是端口号。
这里,说明存储在SIP消息的主体部里的XML(Extensible MarkupLanguage:可扩展标记语言)格式的SA信息。而且,SA信息,也可以以其它格式存储在SIP消息里。
图8是第1实施例的SA信息的说明图。
SA信息,包含策略信息901、发起地址信息902、应答地址信息903及密钥生成信息904(密钥生成信息:key generate information)。
策略信息901中包含该SA信息的SPI及有效时间。发起地址信息902包含建立该SA信息的SA的发起器2A的IP地址、端口号及协议。应答地址信息903包含建立该SA信息的SA的应答器3的IP地址、端口号及协议。密钥生成信息904存储用于生成该SA信息的密钥数据的信息。
这里,返回图7。
NAT4,从发起器2A接收包含INVITE消息的包。这样,NAT4,对接收到的包的始点地址,分配该NAT4的地址(S102)。这里,NAT4,对包的始点地址【172.16.0.1:5060】分配该NAT4的地址【192.0.2.4:1234】。
然后,NAT4,把接收到的包的始点地址转换为分配到的地址。之后,NAT4,把转换过地址的包发给SIP代理服务器6(S103)。以后,在发起器2A和SIP代理服务器6之间的通信中,由NAT4分配的地址作为发起器2A的地址来使用。
然后,SIP代理服务器6,从NAT接收包含INVITE消息的包。这样,SIP代理服务器6,把接收到的包传输给应答器3(S104)。
应答器3,从SIP代理服务器6接收包含INVITE消息的包。这样,应答器3,以网络处理程序331处理接收到的包。
网络处理程序331,判断为接收到的包包含SA信息,并调用扩展SA处理程序333。
扩展处理程序333,检查包含在接收到的包中的建议用的SA信息。然后,扩展SA处理程序333,根据检查的建议用SA信息,生成应答用的SA信息。而且,应答用的SA信息,是扩展SA处理程序333准许使用的SA信息。
例如,扩展SA处理程序333,当接收到多个建议用的SA信息时,从接收到的建议用的SA信息中,选择准许使用的SA信息。然后,扩展SA处理程序333,把选择的SA信息作为应答用SA信息。
然后,扩展SA处理程序333,把生成好的应答用SA信息存储在成功应答消息(成功应答消息:success response message)里。而且,成功应答消息,例如是200OK(OK:同意)消息。然后,扩展SA处理程序333,生成包含成功应答消息的包。
之后,应答器3的网络处理程序331,把扩展SA处理程序333生成好的包发给SIP代理服务器6(S105)。
然后,SIP代理服务器6,从应答器3的网络处理程序331中接收包含成功应答消息的包。然后,SIP代理服务器6,在步骤S103中接收到的包含INVITE消息的包的始点地址,传输包含接收到的成功应答消息的包。也就是说,SIP代理服务器6,把包含接收到的成功应答消息的包发给NAT4(S106)。
然后,NAT4,从SIP代理服务器6接收包含成功应答消息的包。之后,NAT4,向发起器2A传输接收到的包(S107)。
然后,发起器2A,从NAT4接收包含成功应答消息的包。如上所述,发起器2A及应答器3交换SA信息。
然后,发起器2A,把包含ACK消息的包经由NAT4发给SIP代理服务器6(S108、S109)。
然后,发起器2A,根据步骤S107中接收到的包,更新SA信息表234。
具体地说,发起器2A,从步骤S107中接收到的包中,抽出SA信息。发起器2A,对SA信息表234仅仅是追加抽出的SA信息所指定的SA数量的新记录。然后,发起器2A,对有关接收包时适用的SA的记录方向2341中存储【入站(inbound)】。另外,发起器2A,对有关发送包时适用的SA的记录方向2341中存储【出站(outbound)】。
然后,发起器2A,从抽出的SA信息的发起地址信息902中抽出IP地址、端口号及协议。然后,发起器2A,当向方向2341里存储【出站(outbound)】时,把抽出的IP地址存储在新记录的始点IP地址2342中。另外,发起器2A,当向方向2341里存储【入站(inbound)】时,把抽出的IP地址存储在新记录的终点IP地址2344中。
然后,发起器2A,当方向2341里存储【出站(outbound)】时,把抽出的端口号存储在新的记录的始点端口2343中。另外,发起器2A,当向方向2341中存储【入站(inbound)】时,把抽出的端口号,存储在新的记录的终点端口2345中。然后,把抽出的协议,存储在新的记录的协议2346中。
然后,发起器2A,从抽出的SA信息的应答地址信息903中抽出IP地址信息及端口号。之后,发起器2A,当向方向2341里存储【出站(outbound)】时,把抽出的IP地址存储在新的记录的终点IP地址2344中。另外,发起器2A,当向方向2341里存储【入站(inbound)】时,把抽出的IP地址存储在新的记录的始点IP地址2342中。
然后,发起器2A,当向方向2341里存储【出站(outbound)】时,把抽出的端口号存储在新的记录的终点端口2345中。另外,发起器2A,当向方向2341中存储【入站(inbound)】时,把抽出的端口号,存储在新的记录的始点端口2343中。
然后,发起器2A,从抽出的SA信息的策略信息901中,抽出SPI及有效时间。之后,把抽出的SPI存储在新记录的SPI2347中。然后,把抽出的有效时间,存储在新的记录的有效时间2348中。
然后,发起器2A,根据抽出的SA信息的密钥生成信息904,生成密钥数据。之后,发起器2A,把生成的密钥数据存储在新的记录的密钥数据2348中。
如上所述,发起器2A,更新SA信息表234(S111)。而且,发起器2A,也可以在所需要的信息齐全时更新SA信息表234(S110)。
另外,SIP代理服务器6,从发起器2A接收包含ACK消息的包。这样,SIP代理服务器6,把接收到的包传输给应答器3(S110)。
然后,应答器3,从SIP代理服务器6接收包含ACK消息的包。这样,应答器3,判断能否和发起器2A通知的地址直接通信。
具体地说,应答器3,从包含在步骤S104中接收的包的SA信息中,抽出发起地址信息902。然后,应答器3,判断能否和包含抽出的地址信息902的地址【172.16.0.1:2345】直接通信。
例如,应答器3,使用以下三个方法中的任意个,判断该应答器3和发起器2A之间的通信路径上是否存在NAT4。然后,当存在NAT4时,应答器3就判断为不能直接和发起器2A通知的地址通信。另外,当不存在NAT4,应答器3就判断为可以和发起器2A通知的地址直接通信。
(1)在SA信息的交换中,应答器3检测NAT4的存在。
(2)在SA信息的交换中,SIP代理服务器6检测NAT4的存在。然后,SIP代理服务器6向对应答器4通知NAT4的存在。
(3)在SA信息的交换中,发起器2对应答器3通知NAT4的存在。
首先,说明方法(1)的具体例子。例如,应答器3,判断发起器2A通知的IP地址是否为专用IP地址。然后,应答器3,当发起器2A通知的IP地址判断为是专用IP地址时,就判断为通信路径上存在NAT4。因此,方法(1)的情况,发起器2及SIP代理服务器6,无需进行特别的处理。
其次说明方法(2)的具体例子。例如,SIP代理服务器6,通过比较步骤S103中接收到的包的地址信息和存储在该包中的SA信息的发起地址信息902,检测NAT4的存在。然后,SIP代理服务器6检测出NAT4的存在时,对步骤S104中要传输给应答器3的包头或者主体部,插入表示NAT4存在的字符串。然后,应答器3,当从步骤S104中接收到的包检测出表示NAT4存在的字符串时,就判断为通信路径上存在NAT4。
下面,说明方法(3)的具体例子。例如,发起器2,事先通知NAT4的存在。而且,发起器2,也可以使用STUN服务器等事先检测NAT4的存在。然后,发起器2,当确认了NAT4的存在时,对步骤S101中要发送的包头或者主体部,插入表示NAT4的存在的字符串。然后,应答器3,从步骤S104中接收到的包检测出表示NAT4存在的字符串时,判断为通信路径上存在NAT4。
然后,应答器3,当判断为可以和发起器2A通知的地址直接通信时,更新SA信息表334(图5)。具体地说,应答器3,根据步骤S105中发送的包,更新SA信息表334。应答器3的SA信息表334的更新处理,和发起器2A的SA信息表234的更新处理(S111)一样,所以省略说明。
另外,应答器3,当判断为不能和发起器2A通知的地址直接通信时,更新SA候补信息表335(图6)。
首先,应答器3,根据步骤S105中发送的包,更新SA候补信息表335。
具体地说,应答器3,从步骤S105中发送的包,抽出SA信息。应答器3,对SA候补信息表335仅仅追加抽出的SA信息所指定的SA数量的新记录。
应答器3,对新的记录对ID3350,对所有新追加的记录,存储相同值。这时,应答器3,选择和其它记录的对ID3350不重复的值,存储在新记录的对ID3350中。
然后,应答器3,对有关接收包时适用的SA的记录方向3351中存储【入站(inbound)】。另外,应答器3,对有关发送包时适用的SA的记录方向3351中存储【出站(outbound)】。
然后,当应答器3,在向方向3351中存储【入站(inbound)】时,对新的记录的始点IP地址3352及始点端口3353存储【不确定】。另外,当方向3351中存储【出站(outbound)】时,在向新的记录的终点IP地址3354及终点端口3355存储【不确定】。
然后,应答器3,从抽出的SA信息的应答地址信息903中,抽出IP地址及端口号。
然后,应答器3,在向方向3351中存储【入站(inbound)】时,把抽出的IP地址存储在新的记录的终点IP地址3354中。另外,应答器3,在向方向3351中存储【出站(outbound)】时,把抽出的IP地址存储在新的记录的始点IP地址3352中。
然后,应答器3,在向方向3351中存储【入站(inbound)】时,把抽出的端口号存储在新的记录的终点端口3355中。另外,应答器3,在向方向3351中存储【出站(outbound)】时,把抽出的端口号存储在新的记录的始点端口号3353中。
然后,应答器3,从抽出的SA信息的策略信息901中,抽出SPI及有效时间。之后,把抽出的SPI,存储在新的记录的SPI3357中。然后,把抽出的有效时间,存储在新记录的SA有效时间3359中。
然后,应答器3,根据抽出的SA信息的密钥生成信息904,生成密钥数据。例如,应答器3,通过Diffie-Hellman密钥交换(密钥交换:key exchange)算法,生成密钥数据。然后,应答器3把生成的密钥数据存储在新的记录的密钥数据3358中。
然后,应答器3把事先设定的值存储在新记录的SA候补有效时间3360中。
如上所述,应答器3,更新SA候补信息表335(S112)。
之后,设发起器2A的网络AP232,请求将发起器2A的网络处理程序231,由发起器2A的端口2345向应答器3的端口80发送包。这时,网络AP232请求发送的包,也可以是将成为了SA建立契机的包进行缓冲的包。
发起器2A的网络处理程序231,由网络AP232请求发送包。这样,网络处理程序231,为了对发送包提供安全功能,调用发起器2A的SA处理程序233。
SA处理程序233,从发送包抽出该发送包的始点IP地址、始点端口、终点IP地址及终点端口。然后,从SA信息表234中选择抽出的始点IP地址和SA信息表234的始点IP地址2342一致的记录。
然后,SA处理程序233,从所选择的记录中选择抽出的始点端口和SA信息表234的始点端口2343一致的记录。然后,从所选择的记录中选择抽出的终点IP地址和SA信息表234的终点IP地址2344一致的记录。而且,从所选择的记录中选择抽出的终点端口和SA信息表234的终点端口2345一致的记录。
然后,SA处理程序233,根据所选择的记录的密钥数据2348,对发送包加密。而且,SA处理程序233的加密处理,和过去有关IPsec等的加密处理一样。
然后,网络处理程序231,向应答器3发送SA处理程序233加密过的包(S113)。
这样,NAT4从发起器2A接收包。然后,NAT4,对接收到的包的始点地址,分配该NAT4的地址(S114)。这里,NAT4,对包的始点地址【172.16.0.1:2345】分配该NAT4的地址【192.0.2.4:1235】。
然后,NAT4,把接收到的包的始点地址转换为分配的地址。之后,NAT4,把转换过地址的包发给应答器3(S115)。
以后,在发起器2A和应答器3之间的通信中,NAT4分配的地址作为发起器2A的地址使用。
应答器3,从NAT4接收包。这样,应答器3,用网络处理程序331处理接收包。
网络处理程序331,当判断为接收包被加密,调用扩展SA处理程序333。
这样,扩展SA处理程序333,进行接收包处理。并且,扩展SA处理程序333的接收包处理,在图9中说明详细情况。
之后,设应答器3的网络AP332,请求应答器3的网络处理程序331、由应答器3的端口80向NAT4的端口1235发送包。
应答器3的网络处理程序331,从网络AP332接收包发送请求。这样,网络处理程序331,为了向发送包提供安全功能,调用应答器3的扩展SA处理程序333。
这样,扩展SA处理程序333,通过进行发送包处理,对发送包加密。而且,扩展SA处理程序333的发送包处理,在图10中详细说明。
然后,应答器3的网络处理程序331,把扩展SA处理程序333加密过的包发给NAT4(S117)。
NAT4,从应答器3接收包。这样,NAT4,向发起器2A传输所接收到的包(S118)。
发起器2A,从NAT4接收包。这样,发起器2A,由网络处理程序231处理接收包。网络处理程序231,判断为接收包已经被加密,并调用SA处理程序233。
这样,SA处理程序233,参照SA信息表234,对接收包解密。而且,SA处理程序233的解密处理,和过去有关IPsec等的处理一样。
图9是第1实施例扩展SA处理程序333的接收包处理流程图。
扩展SA处理程序333,根据接收包的信息,从SA信息表334选择对应该接收包的SA信息(S201)。
当接收包不包含SPI时,扩展SA处理程序333,根据接收包的地址信息,从SA信息表334选择记录。
具体地说,扩展SA处理程序333,从接收包抽出该接收包的始点IP地址、始点端口、终点IP地址及终点端口。然后,从SA信息表334选择抽出的始点IP地址和SA信息表334的始点IP地址3342一致的记录。
然后,扩展SA处理程序333,从所选择的记录中选择抽出的始点端口和SA信息表334的始点端口3343一致的记录。然后,从所选择的记录中选择抽出的终点IP地址和SA信息表334的终点IP地址3344一致的记录。还有,从所选择的记录中选择抽出的终点端口和SA信息表334的终点端口3345一致的记录。之后,把所选择的记录作为对应接收包的SA信息。
另外,当接收包包含SPI时,扩展SA处理程序333,根据接收包的SPI,从SA信息表334中选择记录。
具体地说,扩展SA处理程序333,从SA信息表334中选择包含在接收包的SPI和SA信息表334的SPI3347一致的记录。之后,把所选择的记录作为对应接收包的SA信息。
然后,扩展SA处理程序333,判断能否从SA信息表334中选择对应接收包的SA信息(S202)。
扩展SA处理程序333,当不能选择对应接收包的SA信息时,原样进入步骤S205。
另外,扩展SA处理程序333,当可以选择对应接收包的SA信息时,从对应所选择的SA信息的记录中,抽出密钥数据3348。之后,使用抽出的密钥数据3348,对接收包进行解密处理(S203)。
然后,扩展SA处理程序333,判断接收包的解密是否成功(S204)。具体地说,扩展SA处理程序333,使用包含在接收包的安全头上的校验和(checksum)或者带有密钥的散列函数值(带有密钥的散列函数值:keyed hash value)等,判断接收包的解密是否成功。
扩展SA处理程序333,当接收包解密成功时,把解密过的接收包发给网络处理程序331。然后,结束本处理。
另外,扩展SA处理程序333,当接收包解密失败时,进入步骤S205。
在过去的IPsec等中,应答器3,当在步骤S202中判断为不能选择SA信息时或者在步骤S204中判断为接收包解密失败时,则废弃包。
但是,扩展SA处理程序333,根据接收包的信息,从SA候补信息表335选择对应该接收包的SA候补信息(S205)。
当接收包不包含SPI时,扩展SA处理程序333,根据接收包的地址信息,从SA候补信息表335中选择记录。
具体地说,扩展SA处理程序333,从接收包抽出该接收包的始点IP地址、始点端口、终点IP地址及终点端口。然后,从SA候补信息表335中选择抽出的始点IP地址和SA候补信息表335中的始点IP地址3352一致的记录。
然后,扩展SA处理程序333,从所选择的记录中选择抽出的始点端口和SA候补信息表335的始点端口3353一致的记录。然后,从所选择的记录中选择抽出的终点IP地址和SA候补信息表335的终点IP地址3354一致的记录。还有,从所选择的记录中选择抽出的终点端口和SA候补信息表335的终点端口3355一致的记录。之后,把所选择的记录作为对应接收包的SA候补信息。
这时,扩展SA处理程序333,把存储着“不确定”的始点IP地址3352、始点端口3353、终点IP地址3354或者终点端口3355作为“任意一种(any)(满足所有条件)”来处理。
另外,当接收包包含SPI时,扩展SA处理程序333,根据接收包的SPI,从SA候补信息表335选择记录。
具体地说,扩展SA处理程序333,从SA候补信息表335中选择包含在接收包的SPI和SA候补信息表335的SPI3357一致的记录。之后,把所选择的记录,作为对应接收包的SA候补信息。
然后,扩展SA处理程序333,判断是否可以从SA候补信息表335中选择对应接收包的SA候补信息(S206)。
扩展SA处理程序333,当不能选择对应接收包的SA候补信息时,不能对接收包解密。因此,扩展SA处理程序333,废弃包(S210)。之后,结束本处理。
另外,扩展SA处理程序333,当可以选择对应接收包的SA候补信息时,从对应所选择的SA候补信息的记录中抽出密钥数据3358。然后,使用抽出的密钥数据3358,对接收包进行解密处理(S207)。
然后,扩展SA处理程序333,判断接收包的解密是否成功(S208)。
扩展SA处理程序333,当接收包解密失败时,不能对接收包解密。因此,扩展SA处理程序333,废弃包(S210)。然后结束本处理。
另外,扩展SA处理程序333,当接收包解密成功时,从SA候补信息表335中选择对应解密成功的SA候补信息的记录。之后,根据接收包的始点地址【192.0.2.4:1235】及从SA候补信息表335中选择的记录,生成SA信息(S212)。具体地说,在新的SA信息的始点IP地址,存储接收包的始点IP地址【192.0.2.4】。然后,在新的SA信息的始点端口,存储接收包的始点端口【1235】。
然后,扩展SA处理程序333,从SA候补信息表335中选择的记录中抽出对ID3350。然后,从SA候补信息表335中选择抽出的对ID3350和SA候补信息表335的对ID3350一致的记录(S213)。
然后,扩展SA处理程序333,判断是否可以从SA候补信息表335中选择对ID3350一致的记录(S214)。
扩展SA处理程序333,当不能选择对ID3350一致的记录时,判断为不存在同时生成的SA信息,原样进入步骤S216。
另外,扩展SA处理程序333,当可以选择对ID3350一致的记录时,根据所选择的记录及接收包的始点地址【192.0.2.4:1235】,生成SA信息(S215)。具体地说,在新的SA信息的终点IP地址,存储接收包的始点IP地址【192.0.2.4】。然后,在新的SA信息的终点端口,存储接收包的始点端口【1235】。
由此,扩展SA处理程序333,生成对应步骤S212中生成的接收用(inbound)SA信息的发送用(outbound)SA信息。
然后,扩展SA处理程序333,把步骤S212及步骤S215中生成的SA信息存储在SA信息表335中(S216)。
由此,扩展SA处理程序333,把接收用及发送用SA信息存储在SA信息表335中。例如,扩展SA处理程序333,根据图6所示的SA候补信息表335,生成图5所示的SA信息表334。而且,扩展SA处理程序333,当在步骤S214中不能选择对ID3350一致的记录时,不生成发送用SA信息。
然后,扩展SA处理程序333,从SA候补信息表335中删除步骤S205及步骤S213中选择过的记录(S217)。
然后,扩展SA处理程序333,把解密过的接收包发给网络处理程序331。然后,结束本处理。
图10是第1实施例的扩展SA处理程序333的发送包处理流程图。
扩展SA处理程序333,根据发送包的地址信息,从SA信息表334中选择对应该发送包的SA信息(S601)。
具体地说,扩展SA处理程序333,从发送包抽出该发送包的始点IP地址、始点端口、终点IP地址及终点端口。然后,从SA信息表334中选择抽出的始点IP地址和SA信息表334的始点IP地址3342一致的记录。
然后,扩展SA处理程序333,从所选择的记录中选择抽出的始点端口和SA信息表334的始点端口3343一致的记录。然后,从所选择的记录中选择抽出的终点IP地址和SA信息表334的终点IP地址3344一致的记录。还有,从所选择的记录中选择抽出的终点端口和SA信息表334的终点端口3345一致的记录。之后,把所选择的记录作为对应发送包的SA信息。
然后,扩展SA处理程序333,判断是否可以从SA信息表334中选择对应发送包的SA信息(S602)。
扩展SA处理程序333,当不能选择对应发送包的SA信息时,不能对发送包进行加密。因此,扩展SA处理程序333,废弃发送包(S605)。然后,结束本处理。
另外,扩展SA处理程序333,当可以选择对应发送包的SA信息时,可以对发送包进行加密。
这里,扩展SA处理程序333,在步骤S601中选择多个SA信息时,从所选择的多个SA信息中选择一个(S603)。例如,扩展SA处理程序333,从所选择的多个SA信息中,选择适用安全策略的条件最为苛刻的SA信息。
然后,扩展SA处理程序333,从对应所选择的SA信息的记录中,抽出密钥数据3348。之后,使用抽出的密钥数据3348,对发送包进行加密处理(S604)。
然后,扩展SA处理程序333,把加密过的发送包发给网络处理程序331。之后,结束本处理。
如上所述,扩展SA处理程序333的发送包处理,和过去有关IPsec等的处理一样,不使用SA候补信息。
本实施例中,应答器3,暂时存储地址信息不明确的SA信息即SA候补信息。然后,应答器3,根据SA候补信息,生成SA信息。由此,本实施例的发起器2及应答器3,不必事先预约NAT4的地址,就可以对存在NAT4的通信建立SA。为此,发起器2的网络AP232及NAT4,不需进行特别处理。
第2实施例
第2实施例中,应答器3,把SA信息及SA候补信息,汇总成一个表统一管理。
第2实施例的计算机系统的组成,除了应答器3的组成,和第1实施例的计算机系统(图1)一样。又,第2实施例的计算机系统的处理,除了应答器3的接收包处理,和第1实施例(图7)一样。因此,对于一样的组成及一样的处理,省略说明。
图11是第2实施例的应答器3的方框图。
第2实施例的应答器3,代替SA信息表334及SA候补信息表335,把SA信息与SA候补信息表337存储在存储器33中。第2实施例的应答器3的其它组成,和第1实施例的应答器(图3)一样。对同样的组成标以相同的标号,省略说明。
SA信息与SA候补信息表337,在图12中后述,SA信息及SA候补信息合在一起进行存储。
图12是第2实施例应答器3的SA信息与SA候补信息表337的组成图。
SA信息与SA候补信息表337,包含对ID3370、状态3371、方向3372、始点IP地址3373、始点端口3374、终点地址3375、终点端口3376、协议3377、SPI3378、密钥数据3379及SA的有效时间3380及SA的候补有效时间3381。
在SA信息与SA候补信息表337的一个记录上存储着SA信息或者SA候补信息中的任意一个。
对ID3370,是该SA信息或者该SA候补信息所属对的唯一标识符。
状态3371,表示在该记录上存储SA信息或者SA候补信息中的哪一个。也就是说,当该记录是SA信息时,状态3371上存储(完成“完成:mature、意思为‘成熟’,但在IPsec中以‘完成的SA’意思处理”。又,当该记录是SA候补信息时,存储于状态3371上“候补(候补:candidate)”。
方向3372,表示根据该SA信息的SA或者该SA候补信息生成的SA信息的SA适用在包接收时或者包发送时的哪方。
始点IP地址3373,是适用根据该SA信息的SA或者该SA候补信息生成的SA信息的SA的包源IP地址。始点端口3374是适用根据该SA信息的SA或者该SA候补信息生成的SA信息的SA的包发送地端口号。
终点IP地址3375是适用根据该SA信息的SA或者该SA候补信息生成的SA信息的SA的包发送目的地的IP地址。终点端口3376是适用根据该SA信息的SA或者该SA候补信息生成的SA信息的SA的包发送目的地的端口号。
协议3377,是适用根据该SA信息的SA或者该SA候补信息生成的SA信息的SA的包的协议。SPI3378是根据该SA信息的SA或者该SA候补信息生成的SA信息的唯一标识符。
密钥数据3379是对适用根据该SA信息的SA或者该SA候补信息生成的SA信息的SA的包,用于进行加密或解密的信息。
SA的有效时间3380,是把根据该SA信息的SA或者该SA候补信息生成的SA信息的SA适用在包的时间。
SA的候补有效时间3381,是应答器3根据该SA候补信息可以生成SA信息的时间。因此,该记录是SA信息时,SA候补有效时间3381上,不存储值。
图13是第2实施例扩展SA处理程序333的接收包处理流程图。
扩展SA处理程序333,根据接收包的信息,从SA信息与SA候补信息表337中选择对应该接收包的SA信息与SA候补信息(S301)。
当接收包不包含SPI时,扩展SA处理程序333,根据接收包的地址信息,从SA信息与SA候补信息表337中选择记录。
具体地说,扩展SA处理程序333,从接收包抽出该接收包的始点IP地址、始点端口、终点IP地址及终点端口。然后,从SA信息与SA候补信息表337中选择抽出的始点IP地址和SA信息与SA候补信息表337的始点IP地址3373一致的记录。
然后,扩展SA处理程序333,从所选择的记录中选择抽出的始点端口和SA信息与SA候补信息表337的始点端口3374一致的记录。然后,从所选择的记录中选择抽出的终点IP地址和SA信息与SA候补信息表337的终点IP地址3375一致的记录。还有,从所选择的记录中选择抽出的终点端口和SA信息与SA候补信息表337的终点端口3376一致的记录。之后,把所选择的记录作为对应接收包的SA信息或者SA候补信息。
另外,当接收包包含SPI时,扩展SA处理程序333,根据接收包的SPI,从SA信息与SA候补信息表337中选择记录。
具体地说,扩展SA处理程序333,从SA信息与SA候补信息表337中选择包含在接收包的SPI和SA信息与SA候补信息表337的SPI3378一致的记录。然后,把所选择的记录作为对应接收包的SA信息或者SA候补信息。
然后,扩展SA处理程序333,判断是否可以从SA信息与SA候补信息表337中选择对应接收包的SA信息及SA候补信息中的至少一方(S302)。
扩展SA处理程序333,当对应接收包的SA信息及SA候补信息均不能选择时,不能对接收包解密。因此,扩展SA处理程序333,废弃包(S210)。然后,结束本处理。
另外,扩展SA处理程序333,当至少可以选择对应接收包的SA信息及SA候补信息中的一方时,从对应所选择的SA信息或者SA候补信息的记录中,抽出密钥数据3348。之后,使用抽出的密钥数据3348,对接收包进行解密处理(S303)。
然后,扩展SA处理程序333,使用所选择的SA信息,判断接收包的解密是否成功(S304)。
扩展SA处理程序333,当依据SA信息的接收包解密成功时,则把解密过的接收包发给网络处理程序331。然后,结束本处理。
另外,扩展SA处理程序333,当依据SA信息的接收包解密失败时,使用所选择的SA候补信息,判断接收包的解密是否成功(S305)。
扩展SA处理程序333,当依据SA候补信息的接收包解密失败,不能对接收包解密。因此,扩展SA处理程序333,废弃包(S210)。然后,结束本处理。
另外,扩展SA处理程序333,当依据SA候补信息的接收包解密成功时,执行步骤S212到步骤S217。而且,步骤S212到步骤S217,和第1实施例的有关扩展SA处理程序333的接收包处理(图9)中的步骤一样。通过对同样的步骤标以相同的标号,由此简略说明。
如上所述,第2实施例的应答器3,通过具备SA信息与SA候补信息表337,可以同时检索SA信息及SA候补信息。
第3实施例
第3实施例中,发起器2和应答器3直接交换SA信息。
图14是第3实施例计算机系统的方框图。
第3实施例的计算机系统,不具备SIP代理服务器6。第3实施例的计算机系统的其它组成,和第1实施例的计算机系统(图1)一样。由于对相同组成标以相同的标号,由此省略说明。
而且,发起器2及应答器3,使用IKE等密钥交换协议,建立SA。
图15是第3实施例的计算机系统的SA建立处理时序图。
发起器2及应答器3,进行第1阶段(phase)的通信(s1101)。具体地说,发起器2及应答器3,通过收发包来交换相互的ID。之后,发起器2及应答器3,决定第2阶段(phase)的通信方式。
而且,NAT4,从发起器2A接收最初的包时,对该包的始点地址,分配该NAT4的地址(S1102)。
然后,发起器2及应答器3,进行第2阶段(phase)的通信(S1103)。具体地说,发起器2及应答器3,通过用第1阶段(phase)决定的方式收发包来交换SA信息。由此,发起器2A及应答器3,建立SA。
然后,第3实施例的计算机系统,执行步骤S111到步骤S118。
而且,步骤S111到步骤S118,和第1实施例的计算机系统的SA建立处理(图7)步骤一样。对于相同的步骤标以相同的标号,以此省略说明。
依据第3实施例,不具备SIP代理服务器6的计算机系统,即使在为建立SA的通信和利用已经建立的SA的通信中使用不同地址,也可以建立SA。
第4实施例
第4实施例中,负荷分散装置对应答器分散包。
图16是第4实施例计算机系统的方框图。
计算机系统,具备通信网1、发起器2、应答器3、SIP代理服务器6、负荷分散装置7及通信线路9。
发起器2、SIP代理服务器6及负荷分散装置7,通过通信线路9和通信网1连接。应答器3,通过通信线路9和负荷分散装置7连接。也就是说,应答器3,通过负荷分散装置7和通信网1连接。
而且,通信网1、发起器2、应答器3及SIP代理服务器6,和第1实施例的计算机系统(图1)的组成一样。通过对相同的组成标以相同的标号,以此省略说明。
但是,第3实施例的应答器3中,事先设定了负荷分散装置7的存在、该负荷分散装置7的地址信息及其它应答器3的地址信息。
负荷分散装置7,转换从通信网1接收到的包的终点地址,把该包传输给任意应答器3。
图17是第4实施例的计算机系统的SA建立处理时序图。
这个时序图的计算机系统,对在发起器2A中工作的Web浏览器和在应答器3B中工作的Web服务器之间的通信进行加密。于是,发起器2A和应答器3A,交换SA信息。之后,应答器3B,通过和应答器3A交换SA候补信息,由此和发起器2A之间建立SA。
这里,发起器2A的IP地址是【192.0.2.2】。又,负荷分散装置7在通信网1方的IP地址是【192.0.2.7】。又,应答器3A的IP地址是【172.16.0.1】。又,应答器3B的IP地址是【172.16.0.2】。又,SIP代理服务器6的IP地址是【192.0.2.6】。
首先,发起器2A,达到某些条件时,就判断为在该发起器2A和负荷分散装置7之间有必要建立SA。
这里,发起器2A的网络处理程序231,从发起器2A的网络AP232接收包发送请求。这样,该网络处理程序231,对发起器2A的SA处理程序233请求建立SA。之后,该SA处理程序233接收SA建立请求时,发起器2A,就判断为在该发起器2A的端口2345和负荷分散装置7的端口80之间有必要建立SA。
这样,发起器2A的SA处理程序233,从该发起器2A的端口5060中,把包含INVITE(邀请)消息的包,发给SIP代理服务器6(S701),其中这个INVITE消息存有建议用SA信息。而且,发起器2A的端口5060,是SIP的缺省端口。而且,存储在INVITE消息中的SA信息,和第1实施例的SA信息(图8)一样,所以省略说明。
SIP代理服务器6,从发起器2A接收包含INVITE消息的包。这样,SIP代理服务器6,向负荷分散装置7传输所接收到的包(S702)。
负荷分散装置7,从SIP代理服务器6接收包含INVITE消息的包。这样,负荷分散装置7,从连接的应答器3中选择接收到的包的传输目的地。这里,负荷分散装置7,作为接收到的包的传输目的地,选择了应答器3A(S703)。
然后,负荷分散装置7,把接收到的包的终点地址转换为传输目的地的应答器3A的地址【172.16.0.1:5060】。然后,负荷分散装置7,把地址转换过的包发送给传输目的地应答器3A(S704)。
应答器3A,从SIP代理服务器6接收包含INVITE消息的包。这样,应答器3A用网络处理程序331处理接收到的包。
网络处理程序331,判断接收到的包包含SA信息,并调用控制SA处理程序333。
扩展SA处理程序333,检查包含在接收到的包中的建议用SA信息。然后,扩展SA处理程序333根据检查过的建议用SA信息,生成应答用的SA信息。而且,应答用的SA信息,是扩展SA处理程序333准许使用的SA信息。这时,扩展SA处理程序333,在生成的应答用SA信息上,代替应答器3A的地址信息,使其包含负荷分散装置7的地址信息。
然后,扩展SA处理程序333,把生成好的应答用SA信息存储在成功应答消息中。然后,扩展SA处理程序333,生成包含成功应答消息的包。
然后,应答器3A的网络处理程序331,把扩展SA处理程序333生成好的包发给负荷分散装置7(S705)。
负荷分散装置7从应答器3A的网络处理程序331接收包含成功应答消息的包。这样,负荷分散装置7把接收到的包的始点地址转换为该负荷分散装置7的地址。之后,负荷分散装置7把转换过地址的包发给SIP代理服务器6(S706)。
SIP代理服务器6从网络处理程序331接收包含成功应答消息的包。然后,SIP代理服务器6把接收到的包传输给发起器2A(S707)。
发起器2A,从SIP代理服务器6接收包含成功应答消息的包。如上所述,发起器2A及应答器3A,交换SA消息。然后,发起器2A,把包含ACK消息的包发给SIP代理服务器6(S708)。
然后,发起器2A,根据步骤S707中接收到的包,更新SA信息表234(S711)。而且,发起器2A的SA信息表234的更新处理,和第1实施例计算机系统的SA建立处理(图7)步骤S111一样,所以省略详细说明。
另外,SIP代理服务器6,从发起器2A接收包含ACK消息的包。这样,SIP代理服务器6,把接收到的包,经由负荷分散装置7,传输给应答器3A(S709、S710)。
应答器3A,接收包含ACK消息的包。这样,应答器3A,由于事先设定了负荷分散装置7的存在,所以更新SA候补信息表335(图6)。
然后,应答器3A,根据步骤S705中发送的包,更新SA候补信息表335。
具体地说,应答器3A,从步骤S705中发送的包,抽出SA信息。应答器3A,对SA候补信息表335仅仅是追加抽出的SA信息所指定的SA数量的新记录。
然后,应答器3A,在新的记录的对ID3350上存储新追加的所有记录的相同值。这里,应答器3A,选择和其它记录的对ID3350不重复的值,存储在新的记录的对ID3350中。然后,应答器3A,在有关接收包时适用的SA的记录方向3351中存储“入站(inbound)”。另外,应答器3A,在有关发送包时适用的SA的记录方向3351中存储“出站(outbound)”。
然后,应答器3A,从抽出的SA信息的发起地址信息902中抽出IP地址、端口号及协议。然后,应答器3A,在方向3351中存储【入站(inbound)】的情况下,把抽出的IP地址存储在新的记录的始点IP地址3352中。另外,应答器3A,在方向3351中存储【出站(outbound)】的情况下,把抽出的IP地址存储在新的记录的终点IP地址3354中。
然后,应答器3A,在方向3351中存储【入站(inbound)】的情况下,把抽出的端口号存储在新的记录的始点端口3353中。另外,应答器3A,在方向3351中存储【出站(outbound)】的情况下,把抽出的端口号存储在终点端口3355中。然后,把抽出的协议,存储在新的记录协议3356中。
然后,应答器3A,在方向335I中存储【入站(inbound)】的情况下,在新的记录的终点IP地址3354及终点端口3355上存储【不确定(不确定:pending)】。另外,应答器3A,在方向3351中存储了【出站(outbound)】的情况下,对新的记录的始点IP地址3352及始点端口3353上存储【不确定(不确定:pending)】。
然后,应答器3A,从抽出的SA信息的策略信息901中,抽出SPI及有效时间。然后,把抽出的SPI存储在新记录的SPI3357中。然后,把抽出的有效时间,存储在新记录的SA的有效时间3359中。
然后,应答器3A,根据抽出的SA信息的密钥生成信息904,生成密钥数据。然后,应答器3A,把生成的密钥数据存储在新记录的密钥数据3358中。
然后,应答器3A,把事先设定的值,存储在新记录的SA候补有效时间3360中。
如上所述,应答器3A,更新SA候补信息表335(S712)。
之后,设发起器2A的网络AP232,向发起器2A的网络处理程序231请求了由发起器2A的端口2345向负荷分散装置7的端口80的发送包。这时,网络AP232请求发送的包,也可以是到了SA建立契机的包被缓冲放置的包。
发起器2A的网络处理程序231,从网络AP232接收包发送请求。这样,网络处理程序231,为了对发送包提供安全功能,调用发起器2A的SA处理程序233。
SA处理程序233,从发送包抽出该发送包的始点IP地址、始点端口、终点IP地址及终点端口。然后,从SA信息表234选择抽出的始点IP地址和SA信息表234的始点IP地址2342一致的记录。
然后,SA处理程序233,从所选择的记录中选择抽出的始点端口和SA信息表234的始点端口2343一致的记录。然后,从所选择的记录中选择抽出的终点IP地址和SA信息表234的终点IP地址2344一致的记录。又,从所选择的记录中选择抽出的终点端口和SA信息表234的终点端口2345一致的记录。
然后,SA处理程序233,根据所选择的记录的密钥数据2348,对发送包加密。而且,SA处理程序233的加密处理,和对于过去有关IPsec等的加密处理一样。
然后,发起器2A的网络处理程序231,把SA处理程序233加密过的包发给负荷分散装置7(S713)。
负荷分散装置7,从发起器2A接收包。这样,负荷分散装置7,从处在连接中的应答器3中选择接收到的包的传输目的地。这里,负荷分散装置7,作为接收到的包的传输目的地,选择了应答器3B(S714)。
然后,负荷分散装置7,把接收到的包的终点地址转换为传输目的地应答器3B的地址【172.16.0.2:80】。之后,负荷分散装置7,把地址转换过的包发给传输目的地的应答器3B(S715)。
应答器3B,从负荷分散装置7接收包。这样,应答器3B,用网络处理程序331处理接收包。
网络处理程序331,判断为接收包处于加密状态,并调用扩展SA处理程序333。
这样,扩展SA处理程序333,进行接收包处理。而且,扩展SA处理程序333的接收包处理,在图18A及图18B中说明详细情况。
这里,应答器3B,根据该应答器3B的SA信息表334及SA候补信息表335,不能对接收包解密。于是,应答器3B,对其它所有的应答器3发送SA候补信息检索请求(S716)。而且,SA候补信息检索请求中,包含检索条件。
应答器3A,从该应答器3A的SA候补信息表335中抽出满足接收到的SA候补信息检索请求所包含的检索条件的SA候补信息。然后,应答器3A,生成包含抽出的SA候补信息的SA候补信息检索应答。之后,应答器3A,把生成好的SA候补信息检索应答发给应答器3B(S717)。
应答器3B,接收SA候补信息检索应答。然后,应答器3B,使用接收到的SA候补信息检索应答中所包含的SA候补信息,对接收包解密。然后,应答器3B,根据解密成功的SA候补信息,生成SA信息(S718)。
然后,应答器3B把生成好的SA信息存储在该应答器3B的SA信息表334中。然后,应答器3B把解密成功的SA候补信息的删除请求发给应答器3A(S719)。
这样,应答器3A从该应答器3A的SA候补信息表335中删除被请求删除的SA候补信息。
之后,设应答器3B的网络AP332,请求应答器3的网络处理程序331发送包。
应答器3的网络处理程序331,从网络AP332接收包发送请求。这样,网络处理程序331,为了对发送包提供安全功能,调用应答器3B的扩展SA处理程序333。
这样,扩展SA处理程序333,通过进行发送包处理,对发送包加密。而且,扩展SA处理程序333的发送包处理和第1实施例(图10)一样,所以省略说明。
然后,应答器3B的网络处理程序331,向发起器2A发送扩展SA处理程序333加密过的包(S720)。
这样,负荷分散装置7,从应答器3B接收包。这样,负荷分散装置7,把接收到的包的始点地址转换为该负荷分散装置7的地址。然后,负荷分散装置7,把地址转换过的包,发给发起器2A(S721)。
发起器2A,从负荷分散装置7接收包。这样,发起器2A,用网络处理程序231处理接收包。网络处理程序231,判断为接收包处于加密状态,并调用SA处理程序233。
这样,SA处理程序233,参照SA信息表234,对接收包解密。而且,SA处理程序233的解密处理,和过去有关IPsec等的处理一样。
图18A及图18B是第4实施例扩展SA处理程序333的接收包处理流程图。
首先,扩展SA处理程序333,执行步骤S201到步骤S208。而且,从步骤S201到步骤S208,和第1实施例的扩展SA处理程序333的接收包处理(图9)中的步骤一样。通过对一样的步骤标以相同的标号,省略说明。
扩展SA处理程序333,当在步骤S208中判断接收包解密成功时,执行步骤S212到步骤S217。而且,步骤212到步骤S217,和第1实施例的扩展SA处理程序333的接收包处理(图9)中的步骤一样。通过对一样的步骤标以相同的标号,省略说明。
另外,扩展SA处理程序333,当在步骤S208中判断为接收包解密失败时,判断能否从其它装置取得SA候补信息。具体地说,扩展SA处理程序333,判断具备该扩展SA处理程序333的应答器3是否处和其它应答器3连接(连携)(S209)。
扩展SA处理程序333,当判断为没有和其它应答器3连接时,不能对接收包解密。因此,扩展SA处理程序333,废弃包(S210)。然后,结束本处理。
另外,扩展SA处理程序333,当判断为和其它应答器3连接时,利用该其它应答器3的SA候补信息,试着对接收包解密。
具体地说,扩展SA处理程序333,对具备该扩展SA处理程序的应答器3以外的所有应答器3,发送SA候补信息检索请求。而且,SA候补信息检索请求,作为检索条件至少包含接收包的SPI及地址信息中的一方。
其它应答器3,当分别接收SA候补信息检索请求时,从该SA候补信息检索请求中抽出接收包的SPI或者地址信息。然后,该其它应答器3,根据抽出的SPI或者地址信息,从本身的SA候补信息表335中选择对应接收包的SA候补信息。而且,应答器3的SA候补信息选择处理,和步骤S205一样。因此,省略详细说明。还有,该其它应答器3,从本身的SA候补信息表335中选择持有和选择的SA候补信息一样的对ID的SA候补信息。
然后,该其它应答器3,把包含所选择的SA候补信息的SA候补信息检索应答发给SA候补信息检索请求发送地的应答器3的扩展SA处理程序333。
SA候补信息检索请求发送地的应答器3的扩展SA处理程序333,接收SA候补信息检索应答。由此,扩展SA处理程序333,从具备该扩展SA处理程序333的应答器3以外的应答器3的SA候补信息表335中取得对应接收包的SA候补信息(S401)。
然后,扩展SA处理程序333,判断是否取得了对应接收包的SA候补信息(S402)。
扩展SA处理程序333,当不能取得对应接收包的SA候补信息时,不能对接收包进行解密。因此,扩展SA处理程序333,废弃包(S405)。然后,结束本处理。
另外,扩展SA处理程序333,当可以取得对应接收包的SA候补信息时,从所取得的SA候补信息中抽出密钥数据。然后使用抽出的密钥数据,进行接收包的解密处理(S403)。
然后,扩展SA处理程序333,判断接收包的解密是否成功(S404)。
扩展SA处理程序333,当接收包解密失败时,不能对接收包解密。因此,扩展SA处理程序333,废弃包(S405)。然后结束本处理。
另外,扩展SA处理程序333,当接收包解密成功时,根据解密成功的SA候补信息及接收包的终点地址,生成SA信息(S406)。
然后,扩展SA处理程序333,从成功解密接收包的SA候补信息中抽出对ID。之后,从步骤S401中取得的SA候补信息中选择持有和抽出的对ID相同对ID的SA候补信息(S407)。
然后,扩展SA处理程序333,判断是否选择了持有相同对ID的SA候补信息(S408)。
扩展SA处理程序333,当不能选择持有相同对ID的SA候补信息时,原样进入步骤S410。
另外,扩展SA处理程序333,当可以选择持有相同对ID的SA候补信息时,根据所选择的SA候补信息及接收包的终点地址,生成SA信息(S409)。
由此,扩展SA处理程序333,生成对应步骤S406中生成的接收用(inbound)SA信息的发送用(outbound)SA信息。
然后,扩展SA处理程序333,把生成好的SA信息存储在SA信息表335中(S410)。
然后,扩展SA处理程序333,把SA信息的生成上使用过的SA候补信息删除请求发给具备该扩展SA处理程序333的应答器3以外的应答器3(S411)。SA候补信息的删除请求上,作为删除条件包含接收包的SPI及地址信息中的至少一方。
然后,扩展SA处理程序333,把解密过的接收包发给网络处理程序331。之后,结束本处理。
另外,其它应答器3,当分别接收SA候补信息的删除请求时,从本身的SA候补信息表335中删除满足包含该删除请求的删除条件的SA候补信息。
负荷分散装置7,不能把用于建立SA的通信和利用已经建立的SA的通信对应起来。因此,负荷分散装置7,就有可能把要建立SA的通信和利用已经建立的SA的通信分派给不同的应答器3。即使是这样的情况,第4实施例的发起器2及应答器3,也可以建立SA。
第5实施例
第5实施例中,数据库管理所有的SA候补信息。
图19是第5实施例计算机系统的方框图。
第5计算机系统,具备SA候补信息数据库(SA候补信息DB)。第5实施例的计算机系统的其它组成,和第4实施例的计算机系统(图16)一样。通过对相同组成标以相同标号,省略其说明。
而且,第5实施例的应答器3,SA候补信息表335既可以存储在存储器33中,也可以不存储在存储器33中。又,该应答器3,事先设定了负荷分散装置7的存在、该负荷分散装置7的地址信息及SA候补信息DB5的地址信息。
SA候补信息DB5,是用硬盘等存储系统实现的数据库装置,存储着SA候补信息表335。SA候补信息DB5对应从应答器3的请求,更新所存储的SA候补信息表335。
图20是第5实施例计算机系统的SA建立处理时序图。
这个时序图的计算机系统,对在发起器2A中工作的Web浏览器和在应答器3B中工作的Web服务器之间的通信进行加密。于是,发起器2A和应答器3A交换SA信息。然后,应答器3A,根据交换过的SA信息,生成SA候补信息。然后,应答器3A,把生成好的SA候补信息登录在SA候补信息DB5中。之后,应答器3B,通过从SA候补信息DB5中检索SA候补信息,在和发起器2A之间建立SA。
这里,发起器2A的IP地址是【192.0.2.2】。又,负荷分散装置7的通信网1方的IP地址是【192.0.2.7】。又,应答器3A的IP地址是【172.16.0.1】。又,应答器3B的IP地址是【172.16.0.2】。又,SIP代理服务器6的IP地址是【192.0.2.6】。
首先,计算机系统,执行步骤S701到步骤S711。而且,步骤S701到步骤S711,和有关第4实施例的计算机系统的SA建立处理(图17)步骤一样。通过对相同步骤标以相同标号,省略其说明。
应答器3A,在步骤S710中,接收包含ACK消息的包。这样,应答器3A,由于事先设定了负荷分散装置7的存在,因此生成SA候补信息(S812)。然后,应答器3A,通过把SA候补信息登录发送给SA候补信息DB5,由此,把生成好的SA候补信息存储在SA候补信息DB5的SA候补信息表335中(S813)。
具体地说,应答器3A,从步骤S705中发送的包,抽出SA信息。应答器3A,在SA候补信息DB5的SA候补信息表335上仅仅是追加抽出的SA信息所指定的SA数量的新记录。
然后,应答器3A,在新记录的对ID3350中存储的对所有新追加的记录的相同值。这里,应答器3A,选择和其它记录的对ID3350不重复的值,存储在新记录的对ID3350中。
然后,应答器3A,在有关接收包时适用的SA的记录方向3351中存储【入站(inbound)】。另外,应答器3A,对有关发送包时适用的SA的记录方向3351中存储【出站(outbound)】。
然后,应答器3A,从抽出的SA信息的发起地址信息902中抽出IP地址、端口号及协议。然后,应答器3A,当方向3351中存储【入站(inbound)】时,把抽出的IP地址存储在新记录的始点IP地址3352中。另外,应答器3A,当方向3351中存储【出站(outbound)】时,把抽出的IP地址存储在新记录的终点IP地址3354中。
然后,应答器3A,当方向3351中存储【入站(inbound)】时,把抽出的端口号存储在新记录的始点端口3353中。另外,应答器3A,当方向3351中存储【出站(outbound)】时,把抽出的端口号存储在新记录的终点端口3355中。然后,把抽出的协议,存储在新记录的协议3356中。
然后,应答器3A,当方向3351中存储【入站(inbound)】时,对新的记录的终点IP地址3354及终点端口3355上存储【不确定】。另外,应答器3A,当方向3351中存储【出站(outbound)】时,对新的记录的始点IP地址3352及始点端口3355存储【不确定】。
然后,应答器3A,从抽出的SA信息的策略信息901中,抽出SPI及有效时间。然后,把抽出的SPI存储在新记录的SPI3357中。然后,把抽出的有效时间,存储在新记录的SA有效时间3359中。
然后,应答器3A,根据抽出的SA信息的密钥生成信息904,生成密钥数据。然后,应答器3A,把生成的密钥数据,存储在新记录的密钥数据3358中。
然后,应答器3A,把事先设定的值,存储在新记录的SA候补有效时间3360中。
如上所述,应答器3A,更新SA候补信息DB5的SA候补信息表335。而且,应答器3A,即使本身存储SA候补信息表335的情况,也更新该SA候补信息表335。
之后,发起器2A的网络AP232,请求发起器2A的网络处理程序231,由发起器2A的端口2345向负荷分散装置7的端口80发送包。
发起器2A的网络处理程序231,从网络AP232接收发送请求。这样,网络处理程序231,为了对发送包提供安全功能,调用发起器2A的SA处理程序233。
SA处理程序233,从发送包抽出该发送包的始点IP地址、始点端口、终点IP地址及终点端口。然后,从SA信息表234选择抽出的始点IP地址和SA信息表234的始点IP地址2342一致的记录。
然后,SA处理程序233,从所选择的记录中选择抽出的始点端口和SA信息表234的始点端口2343一致的记录。然后,从所选择的记录中选择抽出的终点IP地址和SA信息表234的终点IP地址2344一致的记录。并且,从所选择的记录中选择抽出的终点端口和SA信息表234的终点端口2345一致的记录。
然后,SA处理程序233,根据所选择的记录的密钥数据2348,对发送包加密。而且,SA处理程序233的加密处理,和过去有关IPsec等的加密处理一样。
然后,发起器2A的网络处理程序231,把SA处理程序233加密过的包发给负荷分散装置7(S814)。
负荷分散装置7,从发起器2A接收包。这样,负荷分散装置7,从处于连接状态的应答器3中选择接收到的包的传输目的地。这里,负荷分散装置7,作为接收到的包的传输目的地,选择了应答器3B(S815)。
然后,负荷分散装置7,把接收到的包的终点地址转换为传输目的地应答器3B的地址【172.16.0.2:80】。之后,负荷分散装置7,把转换过地址的包发给传输目的地的应答器3B(S816)。
应答器3B,从负荷分散装置7接收包。这样,应答器3B,用网络处理程序331处理接收包。
网络处理程序331,当判断为接收包被加密过时,调用扩展SA处理程序333。
这样,扩展SA处理程序333,进行接收包处理。而且,扩展SA处理程序333的接收包处理,在图21A及图21B中详细说明。
这里,应答器3B,根据该应答器3B的SA信息表334及SA候补信息表335,不能对接收包解密。于是,应答器3B,将SA候补信息检索请求发送给SA候补信息DB5(S817)。而且,SA候补信息检索请求,包含检索条件。
SA候补信息DB5,从该SA候补信息DB5的SA候补信息表335中抽出满足接收到的SA候补信息检索请求所包含的检索条件的SA候补信息。然后,SA候补信息DB5,生成包含抽出的SA候补信息的SA候补信息检索应答。之后,SA候补信息DB5,把生成好的SA候补信息检索应答发给应答器3B(S818)。
应答器3B,从SA候补信息DB5接收SA候补信息检索应答。然后,应答器3B,使用接收到的SA候补信息检索应答所包含的SA候补信息,对接收包解密。之后,应答器3B,根据解密成功的SA候补信息,生成SA信息(S819)。
然后,应答器3B,把生成好的SA信息存储在该应答器3B的SA信息表334中。然后,应答器3B,把解密成功的SA候补信息的删除请求发给SA候补信息DB5(S820)。
这样,SA候补信息DB5,从该SA候补信息DB5的SA候补信息表335中删除被请求删除的SA候补信息。
之后,应答器3B的网络AP332,向应答器3的网络处理程序331请求发送包。
应答器3的网络处理程序331,从网络AP332接收包发送请求。这样,网络处理程序331,为了对发送包提供安全功能,调用应答器3B的扩展SA处理程序333。
这样,扩展SA处理程序333,通过进行发送包处理,对发送包加密。而且,扩展SA处理程序333的发送包处理和第1实施例(图10)一样,所以省略说明。
然后,应答器3B的网络处理程序331,向发起器2A发送扩展SA处理程序333加密过的包(S821)。
负荷分散装置7,从应答器3B接收包。这样,负荷分散装置7,把接收到的包的始点地址转换为该负荷分散装置7的地址。然后,负荷分散装置7,把转换过地址的包,发给发起器2A(S721)。
发起器2A,从负荷分散装置7接收包。这样,发起器2A,用网络处理程序231处理接收包。网络处理程序231,判断为接收包处于加密状态,并调用SA处理程序233。
这样,SA处理程序233,参照SA信息表234,对接收包解密。而且,SA处理程序233的解密处理,和过去有关IPsec等的处理一样。
图21A及图21B是第5实施例扩展SA处理程序333的接收包处理流程图。
首先,扩展SA处理程序333,执行步骤S201到步骤S204。而且,步骤S201到步骤S204,和第1实施例的扩展SA处理程序333的接收包处理(图9)中的步骤一样。通过对一样的步骤标以相同的标号,省略说明。
其次,扩展SA处理程序333,对SA候补信息DB5发送SA候补信息检索请求。而且,SA候补信息检索请求,作为检索条件包含接收包的SPI及地址信息中的至少一方。
SA候补信息DB5,当接收SA候补信息检索请求时,从该SA候补信息检索请求抽出接收包的SPI或者地址信息。之后,SA候补信息DB5,根据抽出的SPI或者地址信息,从SA候补信息表335选择对应接收包的SA候补信息。而且,SA候补信息DB5的SA候补信息的选择处理,和有关第1实施例的扩展SA处理程序333的接收包处理(图9)的步骤S205一样。因此,省略详细说明。
还有,SA候补信息DB5,从SA候补信息表335中选择持有和所选择的SA候补信息一样的对ID的SA候补信息。
然后,SA候补信息DB5,把包含所选择的SA候补信息的SA候补信息检索应答发给SA候补信息检索请求的发送地应答器3的扩展SA处理程序333。
该应答器3的扩展SA处理程序333,接收SA候补信息检索应答。由此,扩展SA处理程序333,从SA候补信息DB5的SA候补信息表335中取得对应接收包的SA候补信息(S501)。
然后,扩展SA处理程序333,判断是否可以取得对应接收包的SA候补信息(S502)。
扩展SA处理程序333,当判断为不能取得对应接收包的SA候补信息时,不能对接收包进行解密。因此,扩展SA处理程序333废弃包(S505)。然后,结束本处理。
另外,扩展SA处理程序333,当判断为可以取得对应接收包的SA候补信息时,从取得的SA候补信息中抽出密钥数据。然后使用抽出的密钥数据,对接收包进行解密处理(S503)。
然后,扩展SA处理程序333,判断接收包的解密是否成功(S504)。
扩展SA处理程序333,当接收包解密失败时,不能对接收包解密。因此,扩展SA处理程序333,废弃包(S505)。然后结束本处理。
另外,扩展SA处理程序333,当接收包解密成功时,根据解密成功的SA候补信息及接收包的终点地址,生成SA信息(S506)。
然后,扩展SA处理程序333,从成功解密接收包的SA候补信息中抽出对ID。之后,从步骤S501中取得的SA候补信息中选择持有和抽出的对ID相同的对ID的SA候补信息(S507)。
然后,扩展SA处理程序333,判断是否可以选择持有相同对ID的SA候补信息(S508)。
扩展SA处理程序333,当不能选择持有相同对ID的SA候补信息时,原样进入步骤S510。
另外,扩展SA处理程序333,当可以选择持有相同对ID的SA候补信息时,根据所选择的SA候补信息及接收包的终点地址,生成SA信息(S509)。
由此,扩展SA处理程序333,生成对应步骤S506中生成的接收用(inbound)的SA信息的发送用(outbound)SA信息。
然后,扩展SA处理程序333,把生成好的SA信息存储在SA信息表335中(S510)。
然后,扩展SA处理程序333,把SA信息的生成上使用过的SA候补信息删除请求,发给SA候补信息DB5(S511)。SA候补信息的删除请求上,包含作为删除条件的接收包的SPI及地址信息中的至少一方。
然后,扩展SA处理程序333,把解密过的接收包发给网络处理程序331。然后,结束本处理。
另外,SA候补信息DB5,当接收SA候补信息删除请求时,从本身的SA候补信息表335中删除满足该删除请求中包含的删除条件的SA候补信息。
本实施例中,SA候补信息DB5管理SA候补信息。由此,减轻应答器3的负担。
Claims (14)
1.一种计算机系统,包括:具有第1处理器、第1存储器及第1接口的第1计算机;具有第2处理器、第2存储器及第2接口的第2计算机;以及控制所述第1计算机与所述第2计算机通信的通信控制装置,其特征在于:
上述通信控制装置,当从上述第1计算机接收包时,变换接收到的包的地址信息,并传送给上述第2计算机;
上述第2存储器,存储SA候补信息,所述SA候补信息是地址信息的一部分不明确的SA信息;
上述第2处理器,当从上述第1计算机接收通过上述第1计算机被加密的包时,使用上述SA候补信息对该加密包进行解密;
当上述加密包解密成功时,则根据上述解密中使用的上述SA候补信息及该加密包的地址信息,生成SA信息。
2.如权利要求1所述的计算机系统,其特征在于,
在上述SA候补信息中有有关接收用SA的SA候补信息以及有关发送用SA的SA候补信息,
上述第2存储器,把上述有关接收用SA的SA候补信息和上述有关发送用SA的SA候补信息相关联地进行存储;
上述第2处理器,当上述加密包解密成功时,则根据上述解密中使用的上述有关接收用SA的SA候补信息及该加密包的地址信息,生成有关接收用SA的SA信息;
并且,根据与解密中使用的上述有关接收用SA的SA候补信息相关联着的上述有关发送用SA的SA候补信息及该加密包的地址信息,生成有关发送用SA的SA信息。
3.如权利要求1所述的计算机系统,其特征在于,
上述第2处理器:
当从上述第1计算机接收请求建立SA的SA请求包时,判断上述接收到的SA请求包是否经由了上述通信控制装置;
当判断为上述接收到的SA请求包没有经由上述通信控制装置时,则根据上述接收到的SA请求包,生成上述SA信息;
当判断为上述接收到的SA请求包经由了上述通信控制装置时,则根据上述接收到的SA请求包,生成上述SA候补信息。
4.如权利要求3所述的计算机系统,其特征在于,
还包括保证上述第1计算机与上述第2计算机的通信安全的代理计算机,
上述代理计算机,当从上述第1计算机接收SA请求包时,就判断上述接收到的SA请求包是否经由了上述通信控制装置,
当判断为上述接收到的SA请求包经由了上述通信控制装置时,就将该情况通知给上述第2计算机;
上述第2处理器,根据来自上述代理计算机的通知,判断上述接收到的SA请求包是否经由了上述通信控制装置。
5.如权利要求1所述的计算机系统,其特征在于,
在上述SA候补信息中,设置了有效期限;
上述第2处理器,把超过上述有效期限的上述SA候补信息,从上述第2存储器中删除。
6.一种计算机系统,包括:具有第1处理器、第1存储器及第1接口的第1计算机;具有第2处理器、第2存储器及第2接口的多台第2计算机;以及分散上述第2计算机的负荷的负荷分散装置,其特征在于:
上述负荷分散装置,把从上述第1计算机接收到的包传送给上述第2计算机的任一个;
上述第2存储器,存储SA候补信息,所述SA候补信息为地址信息的一部分不明确的SA信息;
上述第2处理器:当从上述第1计算机接收由上述第1计算机加密的包时,使用上述SA候补信息对该加密包进行解密;
当上述加密包解密成功时,则根据上述解密中使用的上述SA候补信息及该加密包的地址信息,生成SA信息。
7.如权利要求6所述的计算机系统,其特征在于,
在上述SA候补信息中有有关接收用SA的SA候补信息以及有关发送用SA的SA候补信息,
上述第2存储器,把有关接收用SA的SA候补信息和有关发送用SA的SA候补信息相关联地进行存储;
上述第2处理器:当上述加密包解密成功时,根据上述解密中使用的上述有关接收用SA的SA候补信息及该加密包的地址信息,生成有关接收用SA的SA信息;
并且,根据与解密中使用的上述有关接收用SA的SA候补信息相关联着的上述有关发送用SA的SA候补信息及该加密包的地址信息,生成有关发送用SA的SA信息。
8.如权利要求6所述的计算机系统,其特征在于,
上述第2处理器,当从上述第1计算机接收请求建立SA的SA请求信息包时,则不生成上述SA信息,而生成上述SA候补信息。
9.如权利要求6所述的计算机系统,其特征在于,
上述SA候补信息中,设置了有效期限;
上述第2处理器,把超过上述有效期限的上述SA候补信息,从上述第2存储器中删除。
10.如权利要求6所述的计算机系统,其特征在于,
上述第2处理器,使用其它的第2计算机的第2存储器中所存储的上述SA候补信息,对上述加密包进行解密。
11.如权利要求6所述的计算机系统,其特征在于,
还具备管理上述SA候补信息的SA候补信息数据库;
上述第2处理器,使用上述SA候补信息数据库所管理的上述SA候补信息,给上述加密包解密。
12.一种计算机,具备处理器、存储器及接口,其特征在于,
上述接口通过网络和其它计算机连接;
上述存储器,存储SA候补信息,所述SA候补信息是地址信息的一部分不明确的SA信息;
上述处理器:当从上述其它计算机接收由上述其它计算机加密的包时,使用上述SA候补信息对上述加密包进行解密;
如果上述加密包解密成功,就根据上述解密中使用的上述SA候补信息及该加密包的地址信息,生成SA信息。
13.如权利要求12所述的计算机,其特征在于,
在上述SA候补信息中有有关接收用SA的SA候补信息以及有关发送用SA的SA候补信息,
上述存储器,把有关接收用SA的SA候补信息和有关发送用SA的SA候补信息相关联地进行存储;
上述处理器:当上述加密包解密成功时,根据上述解密中使用的上述有关接收用SA的SA候补信息及该加密包的地址信息,生成有关接收用SA的SA信息;
并且,根据与解密中使用的上述有关接收用SA的SA候补信息相关联着的上述有关发送用SA的SA候补信息及该加密包的地址信息,生成有关发送用SA的SA信息。
14.如权利要求12所述的计算机,其特征在于,
所述处理器,当从上述其它计算机接收请求建立SA的SA请求包时,判断上述接收到的SA请求包的地址信息是否已被变换;
当判断为上述接收到的SA请求包的地址信息已被变换,就根据上述接收到的SA请求包,生成上述SA信息;
当判断为上述接收到的SA请求包的地址信息没有被变换,就根据上述接收到的SA请求包,生成上述SA候补信息。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005331844A JP4602894B2 (ja) | 2005-11-16 | 2005-11-16 | 計算機システム及び計算機 |
JP331844/2005 | 2005-11-16 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1968083A CN1968083A (zh) | 2007-05-23 |
CN1968083B true CN1968083B (zh) | 2010-08-04 |
Family
ID=38042328
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2006101085464A Expired - Fee Related CN1968083B (zh) | 2005-11-16 | 2006-07-21 | 计算机系统及计算机 |
Country Status (3)
Country | Link |
---|---|
US (1) | US7984494B2 (zh) |
JP (1) | JP4602894B2 (zh) |
CN (1) | CN1968083B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009111437A (ja) * | 2007-10-26 | 2009-05-21 | Hitachi Ltd | ネットワークシステム |
US10164913B2 (en) * | 2013-01-16 | 2018-12-25 | Cfph, Llc | Router for performing NAT and/or PAT translations |
US9027114B2 (en) * | 2013-03-12 | 2015-05-05 | Cisco Technology, Inc. | Changing group member reachability information |
US9356912B2 (en) * | 2014-08-20 | 2016-05-31 | Alcatel Lucent | Method for load-balancing IPsec traffic |
US9553853B2 (en) * | 2014-12-23 | 2017-01-24 | Intel Corporation | Techniques for load balancing in a packet distribution system |
US11146959B2 (en) * | 2019-10-29 | 2021-10-12 | Arista Networks, Inc. | Security association reuse for multiple connections |
US20220279350A1 (en) * | 2019-10-29 | 2022-09-01 | Arista Networks, Inc. | Establishing multiple security associations in a connection operation |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1496063A (zh) * | 2002-09-11 | 2004-05-12 | �ձ�������ʽ���� | 互联网协议安全性协议设置服务器设备和处理设备 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6615357B1 (en) * | 1999-01-29 | 2003-09-02 | International Business Machines Corporation | System and method for network address translation integration with IP security |
JP3629237B2 (ja) * | 2001-12-28 | 2005-03-16 | 株式会社東芝 | ノード装置及び通信制御方法 |
FR2853187B1 (fr) * | 2003-03-28 | 2006-01-13 | At & T Corp | Systeme permettant a toute application reseau de fonctionner de facon transparente a travers un dispositif de traduction d'adresse de reseau |
US7599374B2 (en) * | 2004-03-10 | 2009-10-06 | Nokia Corporation | System and method for establishing an Internet Protocol connection with a terminating network node |
US8571011B2 (en) * | 2004-08-13 | 2013-10-29 | Verizon Business Global Llc | Method and system for providing voice over IP managed services utilizing a centralized data store |
US20070022289A1 (en) * | 2005-07-20 | 2007-01-25 | Mci, Inc. | Method and system for providing secure credential storage to support interdomain traversal |
US8184641B2 (en) * | 2005-07-20 | 2012-05-22 | Verizon Business Global Llc | Method and system for providing secure communications between proxy servers in support of interdomain traversal |
US7920549B2 (en) * | 2005-07-20 | 2011-04-05 | Verizon Business Global Llc | Method and system for providing secure media gateways to support interdomain traversal |
US7983254B2 (en) * | 2005-07-20 | 2011-07-19 | Verizon Business Global Llc | Method and system for securing real-time media streams in support of interdomain traversal |
US20070078986A1 (en) * | 2005-09-13 | 2007-04-05 | Cisco Technology, Inc. | Techniques for reducing session set-up for real-time communications over a network |
-
2005
- 2005-11-16 JP JP2005331844A patent/JP4602894B2/ja not_active Expired - Fee Related
-
2006
- 2006-07-21 CN CN2006101085464A patent/CN1968083B/zh not_active Expired - Fee Related
- 2006-07-21 US US11/490,189 patent/US7984494B2/en not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1496063A (zh) * | 2002-09-11 | 2004-05-12 | �ձ�������ʽ���� | 互联网协议安全性协议设置服务器设备和处理设备 |
Also Published As
Publication number | Publication date |
---|---|
US7984494B2 (en) | 2011-07-19 |
CN1968083A (zh) | 2007-05-23 |
US20070113087A1 (en) | 2007-05-17 |
JP4602894B2 (ja) | 2010-12-22 |
JP2007142656A (ja) | 2007-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1968083B (zh) | 计算机系统及计算机 | |
US8312532B2 (en) | Connection supporting apparatus | |
JP4707992B2 (ja) | 暗号化通信システム | |
JP4579934B2 (ja) | レガシーノードとhipノード間のホストアイデンティティプロトコル(hip)接続を確立するためのアドレス指定方法及び装置 | |
US7917939B2 (en) | IPSec processing device, network system, and IPSec processing program | |
EP1880525B1 (en) | Host identity protocol method and apparatus | |
US7861080B2 (en) | Packet communication system | |
JP3992579B2 (ja) | 鍵交換代理ネットワークシステム | |
US6501767B1 (en) | Mobile IP communication scheme for supporting mobile computer move over different address spaces | |
JP2006005909A (ja) | 情報処理装置、情報処理方法および情報処理プログラム | |
KR100687415B1 (ko) | 신호처리를 간소화시킨 IPsec 통신시스템, 통신방법및 그 기록매체 | |
US8037302B2 (en) | Method and system for ensuring secure forwarding of messages | |
CN110191052B (zh) | 一种跨协议网络传输方法及系统 | |
CN111192050B (zh) | 一种数字资产私钥存储提取方法及装置 | |
CN109040059B (zh) | 受保护的tcp通信方法、通信装置及存储介质 | |
JP4681990B2 (ja) | 通信システム及び通信方式 | |
JP4933286B2 (ja) | 暗号化パケット通信システム | |
US20100303233A1 (en) | Packet transmitting and receiving apparatus and packet transmitting and receiving method | |
JP2013077957A (ja) | 中継装置、暗号化通信システム、暗号化通信プログラム、および暗号化通信方法 | |
JP2001005746A (ja) | ファイル転送システム | |
JP5141096B2 (ja) | 取得したネットワークの接続情報を利用したファイルの自動暗号化装置、その方法及びそのプログラム | |
TWI545923B (zh) | 網路裝置、使用其之網際網路協定安全性系統及建立網際網路協定安全性通道之方法 | |
CN109361684B (zh) | 一种vxlan隧道的动态加密方法和系统 | |
JP2005167608A (ja) | 暗号通信装置、暗号通信方法、コンピュータプログラム、及びコンピュータ読み取り可能な記録媒体 | |
CN109905213A (zh) | 数据安全传输方法及节点设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100804 Termination date: 20140721 |
|
EXPY | Termination of patent right or utility model |