安全网关通信的制作方法与工艺

文档序号:12927005阅读:294来源:国知局
安全网关通信的制作方法与工艺
安全网关通信对相关申请的引用本申请要求保护于2011年7月20日提交的标题为“用于安全移动通信的系统和方法”的美国临时专利申请第61/510,023号的优先权,该专利申请的内容通过引用出于所有目的整体合并于此。本申请涉及于2012年7月20日提交的标题为“具有加密扩展设备的移动银行业务系统”的共同拥有的专利合作条约(PCT)申请第PCT/US2012/047645号,该申请的内容通过引用出于所有目的整体合并于此。背景安全问题往往成为阻碍移动银行业务的广泛采用和发展的绊脚石。大多数移动设备缺少安全地发送端对端加密通信的能力。结果,可能以明码文本的形式发送诸如个人标识号码(PIN)和主账户号码(PAN)等的敏感信息,这产生了这样的敏感信息可能被恶意人员截获并用于欺诈目的的弱点。尽管可以由移动网络运营商提供一些安全措施,例如,在基站处提供加密能力,但由这样的解决方案提供的保护仍然受到限制,这是因为在传送期间的某一时刻仍以明码文本形式发送通信。其他解决方案要求重新配置用户的移动设备,例如,通过空中(OTA)配置,且这样的解决方案在部署和运行成本两个方面可能都是昂贵的。因此,移动运营商必须把这种成本转嫁给他们的客户或者自己消化这种成本。因而,总拥有成本(TCO)往往也是阻碍移动银行业务的上升和发展的绊脚石。如果没有一种具有成本效益和有效的方式来安全地发送和接收与移动设备的通信,移动银行业务运营商都注定要产生亏损,或未能完全推出自己的移动银行服务。虽然移动网络运营商努力寻找一个符合成本效益和高效率的解决方案,使移动设备能够安全地发送加密的通讯,但移动银行业务的安全弱点并不仅仅局限于空中通信的潜在截取。在移动网络和支付处理网络之间的接口也容易受到恶意人员的入侵的攻击,这是因为这两个网络中使用的安全协议通常是不同的,并且其中一个网络上的设备的身份对另一网络上的设备来说并不总是已知。结果,恶意人士可以尝试通过伪装成另一网络的一部分在接口处连接到一个网络。例如,可以建立与彼此的连接的单向网络设备使用同步和确认消息的三方握手。网络设备可以通过把同步消息发送给目标设备发起连接。响应于接收到同步消息,目标设备回送同步确认消息。然后,发起设备把确认消息发送给目标设备。一旦接收到确认消息,就在两个网络设备之间建立连接。为了入侵系统,恶意人员不必知道将接受连接的目标设备的身份或目标设备的端口。恶意人员可以通过发送出随机同步消息并等待同步确认消息应答来执行端口扫描,以判断网络上有什么设备以及设备的哪些端口可以接受连接。当恶意人员接收到同步确认消息时,恶意人员可以从同步确认消息得知目标设备的身份并获得目标设备的网络参数。然后,恶意人员可以通过对目标设备发起攻击来入侵目标设备的网络。本发明的各实施例个别地和共同地解决这些问题和其他问题。简要概述本发明的各实施例公开了一种网关设备和其中执行以便防止未经授权的客户端设备连接到该网关设备的主机网络的方法。根据各种实施例,网关设备不立刻响应被发送给网关设备的个体客户端消息。相反,网关设备仅响应于预先确定的客户端消息序列,该预先确定的客户端消息序列仅为网关设备和经授权客户端设备知晓。因为网关设备将不响应于随机客户端消息,且未经授权的设备可以正确地猜测预先确定的客户端消息序列的可能性很低,所以可以降低恶意人员可以例如通过使用端口扫描技术攻入到主机网络的风险。根据至少一种实施例,一种网关设备中的方法用于在通信上耦合到网关设备的客户端接口的客户端设备和通信上耦合到网关设备的主机接口的服务器之间建立通信信道,该方法包括在客户端接口上接收客户端消息,并避免从客户端接口发送客户端响应消息,直到在客户端接口上接收到预先确定的客户端消息序列。网关设备也从主机接口发送预先确定的服务器消息序列。通信信道用于在客户端设备和服务器之间发送用户消息,在网关设备在客户端接口上接收预先确定的客户端消息序列并且在主机接口上接收到服务器响应消息(该服务器响应消息仅在网关设备已经发送预先确定的服务器消息序列之后才被接收到)之后,建立该通信信道。根据至少一种实施例,网关设备包括具有客户端端口的客户端接口、具有主机端口的主机接口、耦合到客户端接口和主机接口的处理器和存储可以由处理器执行的可执行程序代码的机器可读存储介质。在由处理器执行时,可执行程序代码引起处理器在客户端接口上接收来自客户端设备的客户端消息,并避免从客户端接口发送客户端响应消息,直到在客户端接口上接收到预先确定的客户端消息序列。可执行程序代码也可以引起处理器从主机接口向服务器发送预先确定的服务器消息序列,并建立在客户端设备和服务器之间传输用户消息的通信信道。在客户端接口上接收到预先确定的客户端消息序列并且在主机接口上接收到服务器响应消息之后,建立通信信道,其中仅在已经发送了预先确定的服务器消息序列之后接收到该服务器响应消息。附图简述图1阐释根据本发明的一种实施例的通信网络环境。图2阐释根据本发明的一种实施例的网关设备。图3阐释根据本发明的示例性实施例用于建立通信信道的消息交换。图4阐释根据本发明的另一示例性实施例用于建立通信信道的消息交换。图5A阐释根据本发明的一种实施例的消息序列。图5B阐释根据本发明的另一实施例的消息序列。图5C阐释根据本发明的又一种实施例的消息序列。图6A阐释根据本发明的示例性实施例的消息序列。图6B阐释根据本发明的另一示例性实施例的消息序列。图6C阐释根据本发明的又一种示例性实施例的消息序列。图7阐释根据本发明的一种实施例的用于建立通信信道的方法的流程图。图8阐释根据本发明的一种实施例用于认证被用来建立通信信道的客户端设备的方法的流程图。图9阐释根据本发明的一种实施例用于认证被用来建立通信信道的主机设备的方法的流程图。图10阐释根据本发明的一种实施例的用户设备。图11阐释根据本发明的各种实施例的计算机系统。详细描述本发明的各实施例公开了一种网关设备和在其中执行以便防止未经授权的客户端设备连接到该网关设备的主机网络的方法。根据各种实施例,网关设备不立刻响应于被发送给该网关设备的单个客户端消息。相反,网关设备仅响应于预先确定的客户端消息序列,该预先确定的客户端消息序列仅由网关设备和经授权客户端设备知晓。因为网关设备将不响应于随机客户端消息,且未经授权的设备可以正确地猜测预先确定的客户端消息序列的可能性很低,可以降低恶意人员例如通过使用端口扫描技术攻入到主机网络的风险。此外,在一些实施例中,也可以使用预先确定的服务器消息序列来建立在主机网络的网关设备和服务器之间的连接。这给网关设备提供了认证在通信两端上的设备的能力,以便确保通过网关设备发送的通信的发送者和接收者两者都是得到允许相互通信的经授权设备。在一些实施例中,通过网关设备建立的通信信道可以是携带经加密的消息的安全通信信道。网关设备可以提供密码能力,以便解密从一个网络上的设备接收到的传入消息,并再次加密消息或再次划分(re-zone)消息以便在另一网络上传送。网关设备也可以生成和验证用于网关设备接收和/或传送的消息的消息认证码或散列码。应理解,尽管下面提供的一些解释和描述可以做出对支付处理网络或无线提供商/移动运营商网络的特定引用,但本发明的各实施例不限于这样的网络。应明白,下面提供的解释和描述提供可以适用于和应用于与其他类型的通信网络建立通信信道。在此所使用的“网络”或“通信网络”是在网络内可以直接地或通过一个或多个中间设备相互通信的一组互连设备。网络可以与另一网络隔开,且在这样的环境中,一个网络的设备不能与其他网络的通信设备通信。网络也可以被连接到另一网络,且在这样的环境中,一个网络的设备可以与其他网络的设备通信。在此所使用的“通信信道”是允许设备交换消息的在两个设备之间的连接。通信信道可以包括通信上耦合在两个设备之间的一个或多个中间设备。两个设备可以相互耦合却没有在两个设备之间的通信信道。例如,两个设备可以通过防火墙耦合,其中,防火墙阻挡从一个设备到另一设备的所有通信。在这样的配置中,即使一个设备耦合到另一设备,在两个设备之间也不存在通信信道。在此所使用的“消息”是从发送者设备发送到接收者设备的通信。“客户端消息”或其变种是在客户端设备和网关设备之间发送的消息,且任一设备可以是发送者设备而其他设备是接收者设备。“服务器消息”或其变种是在主机设备和网关设备之间发送的消息,且任一设备可以是发送者设备而其他设备是接收者设备。“用户消息”是被发送给用户设备或从用户设备发送以便传输用户数据或信息的消息。根据本发明的各实施例,每一消息可以例如在消息的首部中包括源标识符、目的地标识符、源端口标识符、目的地端口标识符、同步标志和确认标志。在一些实施例中,每一消息也可以包括初始序列号和确认序列号。源标识符标识消息的发送者设备,且可以是例如发送者设备的IP地址。目的地标识符标识消息的预期接收者设备,且可以是例如接收者设备的IP地址。源端口标识符标识与从其发送消息的发送者设备的逻辑端口相关联的端口号。目的地端口标识符标识与向其发送消息的接收者设备的逻辑端口相关联的端口号。当消息被描述为从设备X的端口A发送给设备Y的端口B时,应理解,该消息包括标识设备X的源标识符、标识设备Y的目的地标识符、标识与设备X的端口A相关联的端口号的源端口标识符以及标识与设备Y的端口B相关联的端口号的目的地端口标识符。当消息序列被描述为具有一定序列或顺序的源端口标识符时,应理解,按发送者设备的逻辑端口的特定序列或顺序从发送者设备发送消息序列中的消息。当消息序列被描述为具有一定序列或顺序的目的地端口标识符时,意味着按接收者设备的逻辑端口的特定序列或顺序把消息序列中的消息发送给接收者设备。消息的同步标志和确认标志被用来标识消息是否是同步消息、同步确认消息或确认消息。同步消息是被用来发起与设备的通信信道的消息,并且由同步标志被设定且确认标志未被设定来标识。同步确认消息是被用来确认同步消息的接收的消息,并且由同步标志被设定且确认标志被设定来标识。确认消息是被用来确认不同于同步消息的消息的接收(例如,确认同步确认消息的接收)的消息,并且由同步标志未被设定且确认标志被设定来标识。在一些实施例中,消息也可以包括初始序列号和确认序列号,初始序列号和确认序列号可以用来判断一个消息是否响应于先前的消息而被发送。例如,可以从发送者设备发送具有初始序列号X的消息,且接收者设备可以发送具有确认序列号X+1的应答消息,以便指示该消息是响应于来自发送者设备的具有初始序列号X的消息而发送的。因而,如果发送者设备发送多个消息且在应答中接收到仅一个消息,则通过把应答消息的确认序列号与来自发送者设备的消息的初始序列号进行比较,可以判断应答消息响应于来自发送者设备的哪一消息。图1阐释根据一种实施例的通信网络环境100。通信网络环境100包括客户端网络150(例如,移动运营商网络、无线服务提供商网络或提供到商家的连接性的因特网协议(IP)网络等等)和主机网络130(例如,支付处理网络)。客户端网络150是为多个设备提供通信互连的通信网络,这些设备包括用户设备160和客户端设备170。用户设备160是个人通信设备,例如移动电话或其他类型的便携式通信设备(例如,个人数字助理、诸如平板计算机或膝上型计算机等的便携式计算设备、或可以发送和接收通信的便携式多功能设备,例如便携式媒体播放器/读取器、便携式游戏设备等等)。用户设备160也可以是个人计算机、IP电话或通信上耦合到客户端网络150的其他类型的有线通信设备。客户端设备170是客户端网络150的网络设备,该网络设备向客户端网络150提供到诸如主机网络130等的其他网络的连接。例如,在用户设备160是移动电话的一种示例性实施例中,客户端网络150可以包括短消息业务中心(SMSC)以便处理来自用户设备160的SMS消息。在这样的实施例中,客户端设备170可以是SMSC连接器设备,该SMSC连接器设备在客户端网络150和外部网络之间中继SMS消息。在其他实施例中,客户端设备170可以是与外部网络连接的客户端网络150的其他类型的网络设备。主机网络130是在多个主机设备之间提供互连的通信网络,这些主机设备包括诸如服务器120等的服务器和网关设备110。在一种示例性实施例中,主机网络130可以是诸如支付处理网络等的安全网络,该安全网络实现用于数据传送和存储的高级安全标准,例如与支付卡行业(PCI)安全标准兼容的那些安全标准。服务器120可以是与支付处理实体相关联的服务器计算机,支付处理实体例如是收单机构、发卡机构或其他金融或银行机构。网关设备110是主机网络130的网络设备,该网络设备提供把主机网络130连接到诸如客户端网络150等的外部网络的接口。网关设备110可以充当防火墙,以便防止外部网络上的设备对主机网络130的未经授权的访问。网关设备110可以施加访问控制来判断允许哪一外部网络或外部网络的设备与诸如服务器120等的主机网络130的其他设备通信。此外,由于在主机网络130和诸如客户端网络150等的外部网络之间各安全协议(且也可能还有通信协议)可以不同,网关设备110也可以提供协议转换或协议变换功能,以便确保在主机网络130中的设备和外部网络中的设备之间的互操作性。应明白,尽管网关设备110被示出为通信上耦合到客户端网络150的客户端设备170和主机网络130的服务器120,但网关设备110也可以通信上耦合到客户端网络150的其他类型的设备和主机网络130的其他类型的设备。此外,在客户端设备170和网关设备110之间也可以存在一个或多个中间网络设备,以及/或者在网关设备110和服务器120之间也可以存在一个或多个中间网络设备。网关设备图2阐释根据本发明的各种实施例的网关设备210。网关设备210包括访问控制模块212、连接到诸如客户端网络150等的外部网络的客户端接口216以及连接到诸如主机网络130等的网关设备210的主机网络的主机接口218。网关设备210也可以包括协议转换模块213和硬件安全模块(HSM)240。网关设备210可以包括被耦合到存储机器可执行代码的存储器的一个或多个处理器,这些机器可执行代码实现网关设备210的一个或多个组件,例如访问控制模块212和/或协议转换模块213。客户端接口216包括多个客户端端口217(1)-217(n)。应注意,客户端端口217(1)-217(n)是逻辑端口,且客户端接口216可以配置有任何数量的客户端端口217(1)-217(n)。客户端端口217(1)-217(n)中的每一个与客户端接口216上的端口号相关联,且每一客户端端口可以被用来向通信上耦合到客户端接口216的客户端设备发送消息以及从其接收消息。主机接口218包括多个主机端口219(1)-219(n)。应注意,主机端口219(1)-219(n)是逻辑端口,且主机接口218可以配置有任何数量的主机端口219(1)-219(n)。主机端口219(1)-219(n)中的每一个与主机接口218上的端口号相关联,且每一主机端口可以向通信上耦合到主机接口217的主机网络上的设备发送消息和从其接收消息。应理解,在一些实施例中,可以在相同的物理接口上实现带有客户端端口217(1)-217(n)的客户端接口216和带有主机端口219(1)-21(n)的主机接口218。访问控制模块212建立、控制和管理在通信上耦合到客户端接口216的客户端设备(例如,客户端设备170)和通信上耦合到主机接口218的主机设备(例如,服务器120)之间的通信信道。访问控制模块可以通过网关设备210在客户端端口和主机端口之间建立连接,以便在客户端设备和主机设备之间实现通信信道。访问控制模块212包括其中存储的一组访问规则,这些访问规则指定外部网络的哪些客户端设备得到授权与网关设备210的主机网络的哪些主机设备通信。该组访问规则也可以指定通过网关设备210建立的每一通信信道可以携带或支持什么类型的通信量(即通信协议)。根据本发明的各实施例,该组访问规则包括预先确定的消息序列,网关设备310可以使用这些预先确定的消息序列认证通信上耦合到客户端接口216的客户端设备,以判断客户端设备是否得到允许与主机设备通信的经授权客户端设备。预先确定的消息序列可以是客户端设备、一种类型的客户端设备、一组客户端设备或客户端网络专用的。换句话说,可以是每个客户端设备、每种类型的客户端设备、每组客户端设备或每个客户端网络都有预先确定的消息序列。预先确定的消息序列可以是网关设备210期望在客户端设备经过认证并得到允许与主机设备通信之前从经授权客户端设备接收到的预先确定的消息序列,或者可以是网关设备210发送出去的、并且期望直到网关设备210已经完成发送整个预先确定的消息序列之前经授权客户端设备都忽略的预先确定的消息序列,或者可以是两者的组合。例如,如果在客户端接口216上接收到的来自外部网络的客户端设备的消息序列匹配访问规则中为该客户端设备所指定的预先确定的消息序列,那么,客户端设备可以得到认证和判断为经授权客户端设备。然后,访问控制模块212可以通过网关设备210在该客户端设备和主机网络上的主机设备之间建立通信信道。如果在客户端接口216上接收到的消息的序列不匹配访问规则中指定的预先确定的消息序列,那么,可以确定该客户端设备是未经授权的客户端设备,且访问控制模块212可以拒绝为该客户端设备建立通信信道,并拒绝该客户端设备访问主机网络。替代地或另外,如果网关设备210把预先确定的消息序列发送给客户端设备,且客户端设备不响应于该消息,直到网关设备210已经完成把整个预先确定的消息序列发送给该客户端设备,那么,该客户端设备可以得到认证且判断为经授权客户端设备。然后,访问控制模块212可以通过网关设备210在该客户端设备和主机网络上的主机设备之间建立通信信道。如果该客户端设备在网关设备210已经完成发送整个预先确定的消息序列之前响应于来自网关设备210的消息,那么,可以确定该客户端设备是未经授权的客户端设备,且访问控制模块212可以拒绝为该客户端设备建立通信信道,并拒绝该客户端设备访问主机网络。该组访问规则也可以包括预先确定的消息序列,网关设备210可以使用这些预先确定的消息序列认证通信上耦合到主机接口218的主机设备,以判断主机设备是否是得到允许从客户端设备接收消息并与其通信的经授权主机设备。预先确定的消息序列可以是主机设备、一种类型的主机设备或主机网络的一组主机设备专用的。换句话说,可以是每个主机设备、每种类型的主机设备或每组主机设备都有预先确定的消息序列。预先确定的消息序列可以是在主机设备得到允许与客户端设备通信之前网关设备210期望从经授权主机设备接收的预先确定的消息序列,或者可以是网关设备210发送出去的、并且期望直到网关设备210已经完成发送整个预先确定的消息序列之前经授权主机设备都忽略的预先确定的消息序列,或者可以是两者的组合。例如,如果在主机接口216上从主机网络的主机设备上接收到的消息序列匹配访问规则中为该主机设备所指定的预先确定的消息序列,那么,可以确定该主机设备是得到允许与客户端设备通信的经授权主机设备。然后,访问控制模块212可以通过网关设备210在该主机设备和客户端设备之间建立通信信道。如果在主机接口216上接收到的消息序列不匹配访问规则中指定的预先确定的消息序列,那么,可以确定该主机设备是不允许其与客户端设备通信的未经授权的主机设备,且访问控制模块212可以拒绝在该主机设备和客户端设备之间建立通信信道。替代地或另外,如果网关设备210把预先确定的消息序列发送给主机设备,且主机设备不响应于消息,直到网关设备210已经完成把整个预先确定的消息序列发送给该主机设备,那么,可以确定该主机设备是可以与客户端设备通信的经授权主机设备。然后,访问控制模块212可以通过网关设备210在该主机设备和客户端设备之间建立通信信道。如果该主机设备在网关设备210已经完成发送整个预先确定的消息序列之前就响应于来自网关设备210的消息,那么,可以确定该主机设备是不允许其与客户端设备通信的未经授权的主机设备,且访问控制模块212可以拒绝在该主机设备和客户端设备之间建立通信信道。访问规则中的预先确定的消息序列中的每一个可以由消息的消息内容定义。例如,每一预先确定的消息序列可以包括带有在每一消息的首部中的首部字段中所指示的具体的源和/或目的地端口标识符的一个或多个消息,以及/或者每一消息的首部中的标志所指示的一种或多种类型的消息(例如,同步消息、同步确认消息和/或确认消息等等)和/或带有具体的有效载荷或数据模式的消息。预先确定的消息序列中的每一个也可以由消息的时序定义;即是说,每一预先确定的消息序列可以具有关于相对于其他消息何时接收或发送每一消息的时序限制。例如,预先确定的消息序列可以是其中最后的消息是在接收第一消息的一段时间内被接收到的消息序列(例如,在2秒内接收整个消息序列)。预先确定的消息序列可以是其中每一消息是在一个时间间隔内被接收到的(例如,每200毫秒接收一个消息)的消息序列,或每一消息是在先前的消息之后特定一段时间内被接收到(例如,第二消息是在离开第一消息100毫秒内被接收到,第三消息是在离开第二消息50毫秒内被接收到等等)。预先确定的消息序列也可以是其中网关设备期望经授权设备忽略一段时间的消息序列(例如,直到接收最后消息之后2秒之前,客户端设备应不响应)。此外,预先确定的消息序列中的每一个可以由消息内容和时序的组合来定义,且每一预先确定的消息序列可以具有与其他预先确定的消息序列不同的消息内容和/或不同的时序。网关设备210也可以包括协议转换模块213,协议转换模块213存储关于网关设备可以支持的任何数量的通信协议以及外部网络和网关设备210的主机网络的安全协议的信息。协议转换模块213可以与访问控制模块212一起用来把在客户端接口216和主机接口218之间的通信信道上发送的消息从一种通信协议转换到另一通信协议,以提供在外部网络的客户端设备和网关设备210的主机网络的主机设备之间的互操作性。协议转换模块213也可以与访问控制模块212和HSM240联合使用以实现安全协议,以便把来自外部网络的消息改编为符合网关设备210的主机网络的安全协议。例如,在一些实施例中,主机网络的安全协议可以指定在主机网络中传送的所有消息都受到消息认证码和/或散列码保护。如果来自外部网络的消息缺少消息认证码和/或散列码,则协议转换模块213可以与访问控制模块212和HSM240联合使用以生成消息认证码和/或散列码,并把它们附加到从外部网络接收到的消息。在一些实施例中,网关设备210也包括联邦信息处理标准(FederalInformationProcessingStandard,FIPS)兼容的HSM240。HSM240可以包括一个或多个加密处理器和存储机器可执行代码的存储器,这些机器可执行代码实现加密/解密模块244、消息认证码/散列模块242和密钥存储246。HSM240提供安全密钥管理相关功能,例如密钥产生、密钥的安全限制和能力的配置、密钥备份和恢复、安全密钥存储和密钥的撤销和销毁。HSM240也可以提供防止篡改的机制,该机制提供如果在任何网关210外做出访问或篡改HSM240的尝试就破坏HSM240中的组件和其中存储的密钥的高风险。加密/解密模块244可以存储和执行各种加密算法,例如高级加密标准(AES)、数据加密标准(DES)、三重数据加密标准/算法(TDES/TDEA)、Blowfish、Serpent、Twofish、国际数据加密算法(IDEA)、Rivest,Shamir,&Adleman(RSA)、数字签名算法(DSA)、Tiny加密算法(TEA)、扩展TEA(XTEA)和/或其他密码或加密算法。响应于来自访问控制模块212的加密和解密请求,加密/解密模块244可以查找所请求的加密算法,从密钥存储246获得任何必要的密钥,执行加密/解密请求,并用经加密的/被解密数据应答访问控制模块212。密钥模块246存储在由加密/解密模块244执行的各种加密算法中使用的一组密码或加密密钥。加密密钥可以包括对称密钥和/或不对称密钥。密钥模块246也可以存储一组种子密钥,种子密钥用来在诸如AES等的某些加密算法中初始化加密/解密模块244,或用来生成在诸如RSA和DSA等的某些加密算法中使用的随机数字。没有在HSM240生产期间中所使用的主密钥,存储在密钥模块246中的加密密钥和/或种子密钥不会被外部源更改。HSM240也可以包括消息认证码(MAC)/散列模块242,以便为被发送给网关设备210以及从其发送的消息生成和验证MAC和/或散列。可以为消息或消息的一部分生成MAC或散列,以使得接收者可以验证消息的数据完整性和可靠性。在一些实施例中,从外部网络接收到的消息可以包括MAC或散列码。MAC/散列模块242可以在将消息发送给网关设备210的主机网络中的服务器之前验证所接收到的信息的MAC或散列码。如果消息的MAC或散列代码不能得到验证,则废弃该消息以便防止未经授权的消息进入主机网络。应明白,在一些实施例中,网关设备210可以包括或不包括HSM240,且可以使用网关设备210的处理器和存储器来实现HSM240的一个或多个组件。例如,在一种示例性实施例中,网关设备210可以包括MAC/散列模块242,MAC/散列模块242不是HSM的一部分,而是用网关设备210的处理器和存储器来实现的,并且/或者网关设备210可以包括加密/解密模块244,加密/解密模块244不是HSM的一部分,而是用网关设备210的处理器和存储器来实现的。使用同步消息序列来建立通信信道的示例性实施例为便于理解,现在将参考具体的实施例描述通过网关设备在客户端网络的客户端设备和主机网络的主机设备之间建立通信信道的过程。应理解,根据这一示例性实施例描述的特定的消息序列只是根据本发明的各实施例使用消息序列来建立通信信道的一个示例,且其他实施例可以使用在其中公开的任何其他消息序列。图3示出阐释根据一种示例性实施例交换消息以便通过网关设备310在客户端网络的客户端设备370和主机网络的服务器320之间建立通信信道的图。图3中带圆圈的数字指示传送消息的顺序。应理解,在各种实施例中,在客户端设备370和网关设备310之间交换消息与在网关设备310和服务器320之间交换消息独立地发生,且也可以并发地发生,且在客户端设备370和服务器320经过认证且确定为经授权设备之后建立在客户端设备370和服务器320之间的通信信道。客户端设备370是网关设备310的主机网络外部的客户端网络的一部分。客户端设备370包括设备端口接口376,设备端口接口376可以具有任何数量的逻辑设备端口377(1)-377(n)以便与其他设备(例如,网关设备310)连接,且设备端口377(1)-377(n)中的每一个与设备端口接口376上的设备端口号相关联。网关设备310(例如,图2的网关设备210)和服务器320是主机网络的一部分。网关设备310包括客户端接口316和主机接口318,客户端接口316包括多个逻辑客户端端口317(1)-317(n)以便与客户端网络的客户端设备(例如,客户端设备370)连接,主机接口318包括多个逻辑主机端口319(1)-319(n)以便与主机网络的主机设备(例如,服务器320)连接。客户端端口317(1)-317(n)中的每一个与客户端接口316上的客户端端口号相关联,且主机端口319(1)-319(n)中的每一个与主机接口319上的主机端口号相关联。服务器320包括服务器端口接口328,服务器端口接口328具有多个逻辑服务器端口329(1)-329(n)以便与主机网络的其他设备(例如,网关设备310)连接。服务器端口329(1)-329(n)中的每一个与服务器端口接口328上的服务器端口号相关联。通过把客户端同步消息发送给网关设备310,客户端设备370发起建立到主机网络的主机设备(例如,服务器320)的通信信道的过程。网关设备310被配置为避免响应于从外部客户端网络的客户端设备接收的客户端同步消息,除非已经接收到预先确定的客户端同步消息序列。预先确定的客户端同步消息序列仅为网关设备310和得到允许与主机网络的主机设备(例如,服务器320)通信的经授权设备(例如,客户端设备370)知晓。因为网关设备310不响应于从外部客户端网络的客户端设备接收到的客户端同步消息,除非已经接收到预先确定的客户端同步消息序列,未经授权的客户端设备不可能通过使用端口扫描技术发送出随机同步消息来发现和连接到网关设备310。在一些实施例中,预先确定的客户端同步消息序列可以是在客户端接口316的客户端端口上按预先确定的客户端端口顺序接收到的客户端同步消息序列。换句话说,预先确定的客户端同步消息序列可以是带有预先确定的顺序的目的地端口标识符的客户端同步消息的序列。作为示例,预先确定的客户端同步消息序列可以是如下所示:(1)在网关设备310的客户端端口317(1)上接收到的客户端同步消息;(2)在网关设备310的客户端端口317(n)上接收到的客户端同步消息;以及(3)在网关设备310的客户端端口317(2)上接收到的客户端同步消息。应理解,预先确定的客户端同步消息序列在其他实施例中可以包括任何数量的客户端同步消息且可以按任何客户端端口顺序接收。通过把客户端同步消息381发送到网关设备310,客户端设备370发起建立到网关310的通信信道的过程。客户端同步消息381包括源端口标识符以及目的地端口标识符,该源端口标识符带有与客户端设备370的设备端口377(3)相关联的设备端口号,该目的地端口标识符带有与网关设备310的客户端端口317(1)相关联的端口号。应注意,根据这一具体实施例,预先确定的客户端同步消息序列不指定应当从客户端设备370的任何具体设备端口发送客户端同步消息。因而,可以从客户端设备370的设备端口377(1)-377(n)中的任何发送客户端同步消息381。当网关设备310在客户端端口317(1)上接收到客户端同步消息381时,网关设备310最初不响应于客户端同步消息381,这是因为还没有接收到预先确定的客户端同步消息序列。然后,客户端设备370把第二客户端同步消息382从设备端口377(3)发送到网关设备310的客户端端口317(n)。网关设备310也不响应于第二客户端同步消息382,这是因为网关设备310还没有接收到用来认证客户端设备370的整个预先确定的客户端同步消息序列。接下来,客户端设备370把第三客户端同步消息383从客户端设备370的设备端口377(3)发送到网关设备310的客户端端口317(2)。当网关设备310接收客户端同步消息383时,通过把所接收的客户端同步消息381、382和383的序列与被存储在网关设备310的访问规则中的预先确定的客户端同步消息序列进行比较,网关设备310可以认证客户端设备370。如果从客户端设备370正确接收了网关设备310期望从经授权客户端设备接收的预先确定的客户端同步消息序列,那么,网关设备310确定客户端设备370是得到允许与主机网络的主机设备(例如,服务器320)通信的经授权客户端设备。然后,网关设备310用客户端同步确认消息384应答客户端设备370。客户端同步确认消息384包括目的地端口标识符以及源端口标识符,该目的地端口标识符带有与客户端同步消息序列所源自的客户端设备370的设备端口377(3)相关联的设备端口号,该源端口标识符带有与网关设备310的客户端端口317(4)相关联的端口号。在一些实施例中,客户端同步确认消息384的源端口标识符可以由网关设备310用来向客户端设备370指出网关设备310的客户端端口中的哪一个将接受连接以便为客户端设备370建立通信信道。一旦在设备端口377(3)上接收到客户端同步确认消息384,客户端设备370就把客户端确认消息385从设备端口377(3)发送到网关设备310的客户端端口317(4)。当网关设备310接收到客户端确认消息385时,在网关设备310的客户端端口317(4)上把客户端设备370认证为经授权客户端设备,且可以在客户端设备370和服务器320之间建立通信信道,以待服务器320的认证。根据本发明的一些实施例,也可以使用仅对网关设备310和得到允许与客户端设备通信的经授权主机设备(例如,服务器320)已知的预先确定的消息序列建立在网关设备310和服务器320之间的通信信道。这给网关设备310提供了认证通信的两端上的设备以便确保通过网关设备310传送的通信的发送者和接收者两者都是得到授权相互通信的设备。在一些实施例中,可以使用按预先确定的服务器端口顺序从网关设备310的主机接口318发送到服务器320的服务器端口接口328的预先确定的服务器同步消息序列建立在网关设备310和服务器320之间的通信信道。换句话说,预先确定的服务器同步消息序列可以是带有预先确定的目的地端口标识符序列的服务器同步消息序列。作为示例,预先确定的服务器同步消息序列可以如下所示:(1)被发送给服务器320的服务器端口329(n)的服务器同步消息;(2)被发送给服务器320的服务器端口329(4)的服务器同步消息;以及(3)被发送给服务器320的服务器端口329(n)的服务器同步消息。应理解,在其他实施例中,预先确定的服务器同步消息序列可以包括不同的数量的服务器同步消息且可以按不同的服务器端口顺序接收。通过把服务器同步消息391发送到网关设备310,网关设备310发起建立到服务器320的通信信道的过程。服务器同步消息391包括源端口标识符以及目的地端口标识符,该源端口标识符带有与网关设备310的主机端口319(2)相关联的主机端口号,该目的地端口标识符带有与服务器320的服务器端口329(n)相关联的服务器端口号。当服务器320在服务器端口329(n)上接收到服务器同步消息391时,服务器320最初不响应于服务器同步消息391。然后,网关设备310把第二服务器同步消息392从主机端口319(2)发送到服务器320的服务器端口329(4)。因为还没有接收到服务器320期望从网关设备310得到的预先确定的服务器同步消息序列,服务器320也不响应于第二客户端同步消息392。接下来,网关设备310将第三服务器同步消息393从主机端口319(2)发送到服务器320的客户端端口329(n)。当服务器320接收服务器同步消息393时,服务器320用同步确认消息394应答网关设备310,这是因为从网关设备310正确地接收到了预期的预先确定的服务器同步消息序列。预先确定的服务器同步消息序列也可以由网关设备310用来认证服务器320,这是因为经授权主机设备将不响应于任何服务器同步消息,直到已经从网关设备310发送整个预先确定的服务器同步消息序列。因而,如果在网关设备310已经完成发送整个预先确定的服务器同步消息序列之前,网关设备310从主机设备接收到服务器同步确认消息,那么,网关设备310可以确定主机设备不是经授权的主机设备,这是因为经授权的主机设备在接收整个预先确定的服务器同步消息序列之前不会发送服务器同步确认消息。返回参见图3,服务器同步确认消息394包括目的地端口标识符以及源端口标识符,该目的地端口标识符带有与服务器同步消息序列所起源的网关设备320的主机端口319(2)相关联的主机端口号,该源端口标识符带有与服务器320的服务器端口329(n)相关联的服务器端口号。在一些实施例中,服务器同步确认消息394的源端口标识符可以由服务器320用来向网关设备310指出服务器320的服务器端口中的哪一个将接受到网关设备310的连接以便建立通信信道。一旦在主机端口319(2)上接收到服务器同步确认消息394,网关设备310就把服务器确认消息395从主机端口319(2)发送到服务器320的服务器端口329(2)。然后,在网关设备310的主机端口319(2)上把服务器320认证为经授权主机设备,且可以在客户端设备370和服务器320之间建立通信信道,以待客户端设备370的认证。一旦客户端设备370和服务器320两者均被网关设备310认证为被允许相互通信的经授权设备,则网关设备310通过网关设备310在客户端设备370和服务器320之间建立通信信道。然后,客户端设备370可以通过网关设备310在已建立的通信信道上向服务器320发送消息和从其接收消息。在上面的示例中,用于认证设备和在设备之间建立通信信道的预先确定的消息序列是预先确定的同步消息序列。在其他实施例中,用于认证设备和在设备之间建立通信信道的预先确定的消息序列可以替代地或另外包括预先确定的同步确认消息序列和/或预先确定的确认消息序列。使用同步消息序列和同步确认消息序列来建立通信信道的示例性实施例图4示出阐释根据另一示例性实施例交换消息以便通过网关设备310在客户端网络的客户端设备370和主机网络的服务器320建立通信信道的图。在这一具体实施例中,在设备之间建立通信信道的预先确定的消息序列包括预先确定的同步消息序列和预先确定的同步确认消息序列两者。作为示例,用来认证客户端设备370的预先确定的消息序列可以是如下所示:(1)在网关设备310的客户端端口317(1)上接收到的客户端同步消息;(2)在网关设备310的客户端端口317(n)上接收到的客户端同步消息;(3)在网关设备310的客户端端口317(2)上接收到的客户端同步消息;(4)被发送给客户端设备370的设备端口377(2)的客户端同步确认消息;以及(5)被发送给客户端设备370的设备端口377(1)的客户端同步确认消息。根据这一具体实施例,如果接收到上面的客户端同步消息序列,且如果直到整个预先确定的客户端同步确认消息序列已经被发送给客户端设备370之前客户端设备370不响应于客户端同步确认消息,则把客户端设备370认证为经授权客户端设备。如果在上面的消息序列期间在客户端设备370和网关设备310之间传送了任何附加中间消息,或者如果相应的设备没有接收到整个消息序列(客户端同步消息序列和客户端同步确认消息序列两者),那么网关设备310可以拒绝客户端设备370访问网关设备310的主机网络。应理解,预先确定的消息序列不限于上面给定的特定示例,且在其他实施例中,预先确定的消息序列可以包括按不同的客户端端口顺序接收的不同数量的客户端同步消息和/或发送给不同顺序的设备端口的不同数量的客户端同步确认消息。此外,替代地或另外,预先确定的消息序列可以包括预先确定的客户端确认消息序列。通过把客户端同步消息481发送给网关设备310,客户端设备370发起建立到网关310的通信信道的过程。客户端同步消息481包括源端口标识符以及目的地端口标识符,该源端口标识符带有与客户端设备370的设备端口377(3)相关联的设备端口号,该目的地端口标识符带有与网关设备310的客户端端口317(1)相关联的客户端端口号。当网关设备310在客户端端口317(1)上接收到客户端同步消息481时,网关设备310最初不响应于客户端同步消息481。然后,客户端设备370将第二客户端同步消息482从设备端口377(3)发送到网关设备310的客户端端口317(n)。因为网关设备310还没有接收到预先确定的客户端同步消息序列,所以网关设备310也不响应于第二客户端同步消息482。接下来,根据预先确定的客户端同步消息序列,客户端设备370把第三客户端同步消息483从客户端设备370的设备端口377(3)发送到网关设备310的客户端端口317(2)。当网关设备310接收到客户端同步消息483时,响应于已经接收到预先确定的客户端同步消息序列,网关设备310用客户端同步确认消息384应答客户端设备370。客户端同步确认消息384包括源端口标识符,该源端口标识符带有与网关设备310的客户端端口317(4)相关联的客户端端口号,该客户端端口号可以由网关设备310用来向客户端设备370指出网关设备310的哪一客户端端口将接受来自客户端设备370的连接以便建立通信信道。根据这一示例性实施例的预先确定的客户端同步确认消息序列,客户端同步确认消息384也包括目的地端口标识符,该目的地端口标识符带有与客户端设备370的设备端口377(2)相关联的设备端口号。一旦在设备端口377(2)上接收到客户端同步确认消息384,客户端设备370最初不响应于客户端同步确认消息384,这是因为客户端设备370还没有接收到预先确定客户端同步确认消息序列。如果网关设备310在网关设备发送客户端同步确认消息385之前响应于客户端同步确认消息384接收到来自客户端设备的客户端确认消息,则网关设备310可以确定该客户端设备不是经授权客户端设备,这是因为直到预先确定的客户端同步确认消息序列已经被接收之前,经授权客户端设备不会发送客户端确认消息。接下来,根据预先确定的客户端同步确认消息序列,网关设备把客户端同步确认消息485从客户端端口317(4)发送到客户端设备370的设备端口377(1)。一旦接收到客户端同步确认消息485,响应于已经接收到预先确定的客户端同步确认消息序列,客户端设备370用客户端确认消息486应答网关设备310。客户端确认消息486包括源端口标识符,该源端口标识符带有与客户端设备370的设备端口377(n)相关联的设备端口号,该设备端口号可以由客户端设备370用来向网关设备310指出客户端设备370的哪一设备端口将被用于连接到网关设备310以便建立通信信道。客户端确认消息486也包括目的地端口标识符,该目的地端口标识符带有与客户端确认消息486和487起源于其中的网关设备310的客户端端口317(4)相关联的客户端端口号。当网关设备310接收到客户端确认消息486时,在网关设备310上的客户端端口317(4)上把客户端设备370认证为经授权客户端设备,且可以在客户端设备370和服务器320之间建立通信信道,以待服务器320的认证。根据本发明的一些实施例,可以使用预先确定的消息序列来建立在网关设备310和服务器320之间的通信信道,该预先确定的消息序列包括预先确定的服务器同步消息序列和/或预先确定的服务器同步确认消息序列和/或预先确定的服务器确认消息序列。认证服务器320向网关设备310提供在通信的两端上认证设备的能力,以便确保通过网关设备310传送的通信的发送者设备和接收者设备两者是被授权相互通信的设备。在如图4中所示出的示例性实施例中,在网关设备310和服务器320之间建立通信信道的预先确定的消息序列包括预先确定的同步消息序列和预先确定的同步确认消息序列两者。作为示例,被用于认证服务器320的预先确定的消息序列可以包括以下:(1)在服务器320的服务器端口329(4)上接收到的服务器同步消息;(2)在服务器320的服务器端口329(1)上接收到的服务器同步消息;(3)在服务器320的服务器端口329(n)上接收到的服务器同步消息;(4)在网关设备310的主机端口319(n)上接收到的服务器同步确认消息;以及(5)在网关设备310的主机端口319(4)上接收到的服务器同步确认消息。在这一示例性实施例中,如果直到整个预先确定的服务器同步消息序列已经被发送给服务器320之前服务器320不响应于服务器同步消息,且如果从服务器320接收到上面的预先确定的服务器同步确认消息序列,则服务器320被认证为与客户端设备通信的经授权主机设备。如果在上面的消息序列期间在网关设备310和服务器320之间传送了任何附加中间消息,或者如果相应的设备没有接收到整个消息序列(服务器同步消息序列和服务器同步确认消息序列两者),那么网关设备310可以拒绝服务器320向客户端设备370发送消息或从其接收消息。应理解,预先确定的消息序列不限于上面给定的特定示例,且在其他实施例中,预先确定的消息序列可以包括被发送给服务器320上的不同顺序的服务器端口的不同数量的服务器同步消息和/或在网关设备310上不同顺序的主机端口上接收的不同数量的服务器同步确认消息。此外,替代地或另外,预先确定的消息序列可以包括预先确定的服务器确认消息序列。通过把服务器同步消息491发送给服务器320,网关设备310发起认证服务器320的过程。根据这一示例性实施例的预先确定的服务器同步消息序列,服务器同步消息491包括源端口标识符以及目的地端口标识符,该源端口标识符带有与网关设备310的主机端口319(2)相关联的主机端口号,该目的地端口标识符带有与服务器320的服务器端口329(4)相关联的服务器端口号。当服务器320在服务器端口329(4)上接收服务器同步消息491时,服务器320最初不响应于服务器同步消息491。然后,根据预先确定的服务器同步消息序列,网关设备310将第二客户端同步消息492从主机端口319(2)发送到服务器320的服务器端口329(n)。因为服务器320并未接收到预先确定的服务器客户端同步消息序列中的全部消息,所以服务器320也不响应于这种第二服务器同步消息492。接下来,网关设备310把第三服务器同步消息493从主机端口319(2)发送到服务器320的服务器端口329(n)。当服务器320接收到服务器同步消息493时,响应于已经接收到预先确定的服务器同步消息序列,服务器320用服务器同步确认消息494应答网关设备310。如果网关设备310在网关设备310发送服务器同步消息493之前响应于服务器同步消息491或492从主机设备(例如,主机网络的服务器)接收到服务器同步确认消息,则网关设备310可以确定该主机设备不是经授权主机设备,这是因为直到已经接收到预先确定的服务器同步消息序列之前,经授权主机设备不会发送服务器同步确认消息。返回参见图4,服务器同步确认消息394包括源端口标识符,该源端口标识符带有与服务器320的服务器端口329(1)相关联的服务器端口号,该服务器端口号可以由服务器320用来向网关设备310指出服务器320的哪一服务器端口将接受与网关设备310的连接以便建立通信信道。在这一示例性实施例中,根据预先确定的服务器同步确认消息序列,服务器同步确认消息394也包括目的地端口标识符,该目的地端口标识符带有与网关设备310的主机端口319(n)相关联的主机端口号。一旦在主机端口319(n)上接收到服务器同步确认消息394,网关设备310最初不响应于同步确认消息394,这是因为网关设备310还没有接收到预先确定的服务器同步确认消息序列。接下来,根据预先确定的服务器同步确认消息序列,服务器320把第二同步确认消息495从服务器端口329(1)发送到网关设备310的主机端口319(4)。一旦接收到服务器同步确认消息495,响应于已经接收到预先确定的服务器同步确认消息序列中的所有消息,网关设备310用服务器确认消息496应答服务器320。应注意,如果网关设备310从未接收服务器同步确认消息495,或者在预先确定的时间量内无法接收到它,那么,网关设备310可以确定该服务器可能是未经授权的主机设备并拒绝建立到服务器320的通信信道。返回参见图4,服务器确认消息496包括源端口标识符,该的源端口标识符带有与网关设备310的主机端口319(3)相关联的端口号,该端口号可以由网关设备310用来向服务器320指出网关设备310的哪一主机端口将接受到服务器320的连接以便建立通信信道。服务器确认消息496也包括目的地端口标识符,该目的地端口标识符带有与服务器同步确认消息494和495从中起源的服务器320的服务器端口329(1)相关联的服务器端口号。然后,服务器320在网关设备310的主机端口319(2)上被认证为经授权主机设备,且在客户端设备370和服务器320之间建立通信信道,以待客户端设备370的认证。一旦客户端设备370和服务器320两者被网关设备310认证为是被允许相互通信的经授权设备,网关设备310就通过网关设备310在客户端设备370和服务器320之间建立通信信道。然后,客户端设备370可以通过网关设备310在已建立的通信信道上向服务器320发送消息和从其接收消息。根据各种实施例,在客户端设备370和服务器320之间建立的通信信道可以是携带经加密的用户消息或受到消息认证码或散列码保护的用户消息的安全通信信道。这提供了额外的安全级别,以确保只有源自用户设备的有效消息才会从客户端设备370发送到服务器320。例如,来自用户设备的用户消息可以以经加密形式由客户端设备370接收,并且/或者把MAC/散列码附加到用户消息。在客户端设备370把这些用户消息转发给网关设备310时,网关设备310不会未经审查就自动地把这些用户消息转发给服务器320。相反,网关设备310可以使用对应于用户设备用来加密消息的密钥的对称密钥或不对称密钥来解密用户消息,以判断用户消息是否起源于经授权用户设备。如果解密揭示了用户消息是不期望的或未知的格式,则网关设备310可以抛弃用户消息以便防止未经授权的或不期望的消息达到服务器320。网关设备310也可以在所接收的用户消息上生成MAC/散列码并验证在所接收的用户消息中的MAC/散列码匹配所生成的代码。如果所生成的MAC/散列码不匹配所接收的MAC/散列码,则网关设备310可以抛弃用户消息以便防止未经授权的或不期望的消息达到服务器320。此外,根据主机网络安全协议,通过重新加密用户消息和/或添加或代替用户消息的MAC/散列码,网关设备310也可以重新划分用户消息以供在主机网络中传送。在一种示例性实施例中,服务器320可以是金融或银行业务实体的服务器,且主机网络是支付处理网络。在一种实施例中,客户端设备310可以通信上耦合到无线提供商网络或移动运营商网络,且客户端设备310传送给服务器320的用户消息是起源于诸如移动电话等的移动设备的用户消息,例如短消息服务(SMS)消息或非结构化补充业务数据(USSD)消息。在另一实施例中,客户端设备310可以通信上耦合到商家的网络,且客户端设备310传送给服务器320的用户消息是起源于诸如移动电话等的移动设备的用户消息,例如移动设备已经发送给商家的销售点(POS)终端的射频(RF)通信或近场通信(NFC)通信。这些和其他实施例中的用户消息可以是诸如支付事务/授权请求等的与支付交易相关联的消息。消息序列的附加实施例尽管在以上对各种实施例的描述中,已经按照以预先确定的目的地端口顺序所接收的消息序列(或换句话说,具有预先确定的目的地端口标识符顺序的消息序列)描述了预先确定的消息序列,但被用来认证设备的预先确定的消息序列不限于此。在其他实施例中,替代地或另外,预先确定的消息序列可以包括预先确定的顺序的源端口标识符或以预先确定的源端口顺序发送。图5A-C均阐释根据各种实施例可以由网关设备510用来认证发送者设备590的预先确定的消息序列。尽管预先确定的消息序列被示出为包括三个消息,但应明白,预先确定的消息序列可以包括任何数量的消息,例如,两个或更多个消息、五个或更个多消息、或十个或更多个消息。发送者设备590可以是客户端网络的客户端设备、诸如网关设备510的主机网络的服务器等的主机设备、或尝试通过网关设备510建立通信信道的其他类型的设备。发送者设备590包括带有用于连接到网关设备510的逻辑发送者端口的发送者端口接口595。网关设备510可以是根据以上所描述的任何实施例的网关设备。网关设备510包括至少一个带有用于连接到发送者设备590的逻辑网关端口的网关端口接口515。在发送者设备590是客户端网络的客户端设备的各实施例中,网关端口接口515可以是客户端端口接口,且网关端口可以是逻辑客户端端口。在发送者设备590是主机网络中的服务器或其他类型的设备的各实施例中,网关端口接口515可以是主机端口接口,且网关端口可以是逻辑主机端口。图5A阐释根据一种实施例从发送者设备590发送到网关设备510的预先确定的消息序列。该预先确定的消息序列可以是例如预先确定的客户端同步消息序列、预先确定的服务器同步确认消息序列或预先确定的客户端确认消息序列。从发送者设备590的相同发送者端口发送预先确定的消息序列,该发送者端口可以是发送者端口接口595上的任何一个发送者端口,且该预先确定的消息序列被发送给网关设备510上的预先确定的顺序的网关端口并在其上被接收到。预先确定的顺序的网关端口可以是任何顺序的网关端口,且多于一个的消息可以被发送给相同的网关端口。因而,根据如图5A中所示出的实施例,预先确定的消息序列可以包括具有以下内容的消息:标识发送设备590的发送者端口的相同的源端口标识符,以及标识网关设备510的预先确定的顺序的网关端口的预先确定的顺序的目的地端口标识符。图5B阐释根据另一实施例从发送者设备590发送到网关设备510的预先确定的消息序列。预先确定的消息序列可以是例如预先确定的客户端同步消息序列、预先确定的服务器同步确认消息序列或预先确定的客户端确认消息序列。从发送者设备590的预先确定的顺序的发送者端口发送预先确定的消息序列。预先确定的顺序的发送者端口可以是发送者端口接口595上的任何顺序的发送者端口,且可以从相同的发送者端口发送多于一个的消息。预先确定的顺序的消息中的每一消息被发送给网关设备510的相同的网关端口并在其上被接收到,该网关端口可以是网关设备510的网关端口接口595上的任何一个网关端口。因而,根据如图5B中所示出的实施例,预先确定的消息序列可以包括具有以下内容的消息:标识发送者设备590的预先确定的顺序的发送者端口的预先确定的顺序的源端口标识符,以及标识网关设备510的网关端口的相同的目的地端口标识符。图5C阐释根据进一步的实施例从发送者设备590发送到网关设备510的预先确定的消息序列。该预先确定的消息序列可以是例如预先确定的客户端同步消息序列、预先确定的服务器同步确认消息序列或预先确定的客户端确认消息序列。从发送者设备590的预先确定的顺序的发送者端口发送预先确定的消息序列。发送者端口的预先确定的顺序可以是发送者端口接口595上的发送者端口的任何顺序,且可以从相同的发送者端口发送多于一个的消息。预先确定的消息序列被发送给网关设备510的预先确定顺序的网关端口并在其上被接收到。发送者网关的预先确定的顺序可以是网关端口接口515上的网关端口的任何顺序,且多于一个的消息可以被发送给和相同的网关端口并在其上被接收到。因而,根据如图5C中所示出的实施例,预先确定的消息序列可以包括具有以下内容的消息:标识发送者设备590的预先确定的顺序的发送者端口的预先确定的顺序的源端口标识符,以及标识网关设备510的预先确定的顺序的网关端口的预先确定的顺序的目的地端口标识符。图6A-C均阐释根据各种实施例可以由网关设备610用来认证接收者设备690的预先确定的消息序列。尽管预先确定的消息序列被示出为包括三个消息,但应明白,预先确定的消息序列可以包括任何数量的消息,例如两个或更多个消息、五个或更多个消息或十个或更多个消息。接收者设备690可以是客户端网络的客户端设备,诸如网关设备610的主机网络的服务器等的主机设备或网关设备610尝试与其建立通信信道的其他类型的设备。接收者设备690包括带有用于连接到网关设备610的逻辑接收者端口的接收者端口接口695。网关设备610可以是根据以上所描述的任何实施例的网关设备。网关设备610包括带有用于连接到接收者设备690的逻辑网关端口的至少一个网关端口接口615。在接收者设备690是客户端网络的客户端设备的各实施例中,网关端口接口615可以是客户端端口接口,且网关端口可以是逻辑客户端端口。在接收者设备690是主机网络中的服务器或其他类型的设备的各实施例中,网关端口接口515可以是主机端口接口,且网关端口可以是逻辑主机端口。图6A阐释根据一种实施例从网关设备610发送到接收者设备690的预先确定的消息序列。该预先确定的消息序列可以是例如预先确定的服务器同步消息序列、预先确定的客户端同步确认消息序列或预先确定的服务器确认消息序列。从网关设备610的相同的网关端口发送预先确定的消息序列,该网关端口可以是网关端口接口615上的任何一个网关端口,且该预先确定的消息序列被发送到接收者设备690上的预先确定的顺序的接收者端口并在其上被接收到。预先确定的顺序的接收者端口可以是任何顺序的接收者端口,且多于一个的消息可以被发送到相同的接收者端口。因而,根据如图6A中所示出的实施例,预先确定的消息序列可以包括具有以下内容的消息:标识网关设备610的网关端口的相同的源端口标识符,以及标识接收者设备590的预先确定的顺序的接收者端口的预先确定的顺序的目的地端口标识符。图6B阐释根据另一实施例从网关设备610发送到接收者设备690的预先确定的消息序列。该预先确定的消息序列可以是例如预先确定的服务器同步消息序列、预先确定的客户端同步确认消息序列或预先确定的服务器确认消息序列。从网关设备610的预先确定的顺序的网关端口发送预先确定的消息序列。预先确定的网关端口的顺序可以是网关端口接口615上的网关端口的任何顺序,且可以从相同的网关端口多于一个的消息。预先确定的顺序的消息中的每一消息被发送到接收者设备690的相同的接收者端口并在其上被接收到,该接收者端口可以是接收者设备690的接收者端口接口695上的任何一个接收者端口。因而,根据如图6B中所示出的实施例,预先确定的消息序列可以包括具有以下内容的消息:标识网关设备610的预先确定的顺序的网关端口的预先确定的顺序的源端口标识符,以及标识接收者设备690的接收者端口的相同的目的地端口标识符。图6C阐释根据进一步的实施例从网关设备610发送到接收者设备690的预先确定的消息序列。预先确定的消息序列可以是例如预先确定的服务器同步消息序列、预先确定的客户端同步确认消息序列或预先确定的服务器确认消息序列。从网关设备610的预先确定的顺序的网关端口发送预先确定的消息序列。预先确定的网关端口的顺序可以是网关端口接口615上的网关端口的任何顺序,且可以从相同的网关端口发送多于一个的消息。预先确定的消息序列被发送到接收者设备690的预先确定的顺序的接收者端口并在其上被接收到。预先确定的顺序的接收者端口可以是接收者端口接口695上的任何顺序的接收者端口,且多于一个的消息可以被发送到相同的接收者端口并在其上被接收到。因而,根据如图6C中所示出的实施例,预先确定的消息序列可以包括具有以下内容的消息:标识网关设备610的预先确定的顺序的网关端口的预先确定的顺序的源端口标识符,以及标识接收者设备690的预先确定的顺序的接收者端口的预先确定的顺序的目的地端口标识符。应明白,在各种实施例中,被用于通过网关设备在设备之间认证和建立通信信道的预先确定的消息序列可以包括以上所描述的实施例中的一个或多个的组合。例如,被用于在两个设备之间认证和建立通信信道的预先确定的消息序列可以包括预先确定的同步消息序列的组合,该同步消息序列包括:(1)带有相同的源端口标识符和预先确定的顺序的目的地端口标识符的同步消息序列;以及(2)带有预先确定的顺序的源端口标识符和相同的目的地端口标识符的同步消息序列。被用于在两个设备之间认证和建立通信信道的预先确定的消息序列也可以包括各种预先确定的同步消息序列、和/或各种预先确定的同步确认消息序列、和/或各种预先确定的确认消息序列的组合。用于建立通信信道的方法图7阐释根据各种实施例用于在通信上耦合到网关设备的客户端接口的客户端设备和诸如通信上耦合到网关设备的主机接口的服务器等的主机设备之间建立通信信道的流程图700。应理解,可以与主机接口的框742-750独立地和/或并发地执行客户端接口的框722-730。在网关设备上的客户端接口上,在框722,网关设备在网关设备的客户端接口上接收来自客户端设备的客户端消息。在框724,网关设备判断是否已经接收到预先确定的客户端消息序列,例如通过将与在框722接收的客户端消息组合的任何先前接收的客户端消息的序列与网关设备的访问规则中编程的、该网关设备期望从经授权客户端设备接收的预先确定的客户端消息序列比较。预先确定的客户端消息序列可以是以上所描述的预先确定的客户端消息序列中的任何一个或其组合。在一种示例性实施例中,预先确定的客户端消息序列可以是预先确定的客户端同步消息序列。如果网关设备判断还没有接收到预先确定的客户端消息序列,那么,在框726,网关设备避免响应于客户端消息,且该过程继续回到框722。如果网关设备判断已经接收到整个预先确定的客户端消息序列,那么,在框728,网关设备发送客户端响应消息。在一种示例性实施例中,客户端响应消息可以是客户端同步确认消息。然后,在框730,网关设备把客户端设备认证为是被允许与主机网络的主机设备通信的经授权客户端设备,这是因为已经从客户端设备接收到预先确定的客户端消息序列。在网关设备的主机接口上,通过从主机接口发送预先确定的服务器消息序列,网关设备发起认证并建立到诸如网关设备的主机网络的服务器等的主机设备的连接的过程。在框742,网关设备开始发送预先确定的服务器消息序列。预先确定的服务器消息序列可以是以上所描述的预先确定的服务器消息序列中的任何一个或其组合。在一种示例性实施例中,预先确定的服务器消息序列可以是预先确定的服务器同步消息序列。在框744,网关设备在主机接口上接收到来自服务器的服务器响应消息。在框746,网关设备判断是否仅在网关设备已经完成发送整个预先确定的服务器消息序列之后接收到服务器响应消息。换句话说,网关设备判断在网关设备发送出预先确定的服务器消息序列期间是否接收到该服务器响应消息且网关设备是否没有接收到任何其他服务器响应消息。如果网关设备判断在完成网关设备发送出预先确定的服务器消息序列之前接收到该服务器响应消息,那么,在框750,网关设备可以拒绝建立到服务器的通信信道。在一些实施例中,在框746,除了判断是否仅在网关设备已经完成发送整个预先确定的服务器消息序列之后接收到服务器响应消息,网关设备也可以判断是否响应于预先确定的服务器消息序列的最后的服务器消息而接收到该服务器响应消息,例如,通过把服务器响应消息中的确认序列号与预先确定的服务器消息序列的最后的服务器消息的初始序列号进行比较。如果确认序列号等于初始序列号加上一,则响应于最后的服务器消息而接收到服务器响应消息。如果网关设备判断不是响应于预先确定的服务器消息序列的最后的服务器消息而接收到服务器响应消息,则在框750,网关设备也可以拒绝建立与服务器的通信信道。如果网关设备判断仅在网关设备已经完成发送出整个预先确定的服务器消息序列之后接收到服务器响应消息,那么,在框748,网关设备把服务器认证为是得到允许与客户端设备通信的经授权主机设备,这是因为直到预先确定的服务器消息序列已经被发送到服务器之前服务器不响应于服务器消息。在框790,在已经认证了客户端和服务器两者时,网关设备通过网关设备在客户端设备和服务器之间建立通信信道。在一些实施例中,在建立通信信道之前,服务器可以向网关设备发送密钥质询。该密钥质询可以包括随机数和让网关设备使用密钥来加密该随机数的请求,该密钥仅为被允许把用户消息发送给服务器的经授权设备所得知。密钥可以是在网关设备中预先加载的对称密钥或不对称密钥。一旦从服务器接收到密钥质询,网关设备就使用在网关设备中预先加载的所请求的密钥加密所接收的随机数,并把经加密的随机数发送给服务器。然后,服务器就使用对应于该密钥的对称密钥或不对称密钥来解密所接收的经加密的随机数。如果结果匹配服务器先前已经发送给网关设备的随机数,那么,建立服务器通信信道。如果结果匹配服务器先前已经发送给网关设备的随机数,那么,在框790建立通信信道。如果结果不匹配服务器先前已经发送的随机数,则服务器可以拒绝连接到网关设备。如果客户端设备包括密码能力,则也可以在客户端设备和网关设备之间使用相似的密钥质询。图8阐释根据替代的实施例用于认证客户端设备以便通过网关设备在客户端设备和服务器之间建立通信信道的流程图800。通过把客户端同步消息发送给网关设备,客户端设备发起建立通信信道的过程。在框822,网关设备在网关设备的客户端接口上接收客户端同步消息。在框824,网关设备判断是否已经接收到网关设备期望从经授权客户端设备接收的预先确定的客户端同步消息序列。如果还没有从客户端设备接收到预先确定的客户端同步消息序列,那么,在框826,网关设备避免响应于在框822中接收到的客户端同步消息并且不发出客户端同步确认消息,且该过程返回到框822。如果网关设备判断已经从客户端设备接收到预先确定的客户端同步消息序列,那么,在框828,网关设备开始从客户端接口把预先确定的客户端同步确认消息序列发送给客户端设备。接下来,在框830,网关设备在客户端接口上接收来自客户端设备的客户端确认消息。在框832,网关设备判断是否仅在网关设备已经完成发送出整个预先确定客户端同步确认消息序列之后接收到客户端确认消息。换句话说,网关设备判断在网关设备发送出预先确定的客户端同步确认消息序列期间是否接收到客户端确认消息且网关设备没有接收到任何其他客户端确认消息。如果网关设备判断在完成网关设备发送出预先确定的服务器消息序列之前接收到客户端确认消息,那么,在框836,网关设备可以拒绝建立与客户端设备的通信信道。在一些实施例中,在框830,除了判断是否仅在网关设备已经完成发送整个预先确定的客户端同步确认消息序列之后接收到客户端确认消息,网关设备也可以判断是否响应于预先确定的客户端同步确认消息序列的最后的客户端同步确认消息而接收到该客户端确认消息,例如,通过将客户端确认消息中的确认序列号与预先确定的客户端同步确认消息序列的最后的客户端同步确认消息的初始序列号进行比较。如果确认序列号等于初始序列号加上一,则响应于最后的客户端同步确认消息而接收到客户端确认消息。如果网关设备判断不是响应于预先确定的客户端同步确认消息序列的最后的客户端同步确认消息而接收到客户端确认消息,则在框836,网关设备也可以拒绝建立与客户端设备的通信信道。如果网关设备判断仅在完成网关设备发送出预先确定的客户端同步确认消息序列之后接收到客户端确认消息,那么,在框834,网关设备将客户端设备认证为是被允许与主机网络的主机设备通信的经授权客户端设备。然后,可以通过网关设备在客户端设备和主机设备之间建立通信信道,以待主机设备的认证。图9阐释根据替代的实施例用于认证服务器以便通过网关设备在客户端设备和服务器之间建立通信信道的流程图900。在框942,网关设备开始从主机接口把预先确定的服务器同步消息序列发送到服务器。在框944,网关设备在主机接口上接收来自服务器的服务器同步确认消息。在框946,网关设备判断是否仅在网关设备已经完成发送整个预先确定的服务器同步消息序列之后接收到服务器同步确认消息。换句话说,网关设备判断在网关设备发送出预先确定的服务器同步消息序列期间是否接收到服务器同步确认消息且网关设备没有接收到任何其他服务器同步确认消息。如果网关设备判断在网关设备完成发送出预先确定的服务器同步消息序列之前接收到服务器同步确认消息,那么,在框950,网关设备可以拒绝在服务器和客户端设备之间建立通信信道。在一些实施例中,在框946,除了判断是否仅在网关设备已经完成发送整个预先确定的服务器同步消息序列之后接收到服务器同步确认消息,网关设备也可以判断是否响应于预先确定的服务器同步消息序列的最后的服务器同步消息而接收到服务器同步确认消息,例如,通过将服务器同步确认消息中的确认序列号与预先确定的服务器同步消息序列的最后的服务器同步消息的初始序列号进行比较。如果确认序列号等于初始序列号加上一,则响应于最后的服务器同步消息而接收到服务器同步确认消息。如果网关设备判断不是响应于预先确定的服务器同步消息序列的最后的服务器同步消息而接收到服务器同步确认消息,则在框950,网关设备也可以拒绝建立到服务器的通信信道。如果网关设备判断仅在网关设备已经完成发送出预先确定的服务器同步消息序列之后接收到服务器响应消息,则该过程继续进行到框952。在框952,网关设备接收另一服务器同步确认消息。在框954,网关设备判断是否已经接收到预先确定的服务器同步确认消息序列。如果还没有接收到预先确定的服务器同步确认消息序列,那么,在框956,网关设备避免响应于在框952所接收到的服务器同步确认消息,且该过程继续回到框952。如果网关设备判断已经接收到预先确定的服务器同步确认消息序列,那么,在框958,网关设备从主机接口把服务器确认消息发送到服务器。在框960,网关设备把服务器认证为是被允许与客户端设备通信的经授权主机设备。然后,可以通过网关设备在服务器和客户端设备之间建立通信信道,以待客户端设备的认证。尽管已经参考发起与网关设备的通信信道或连接的客户端设备以及发起与主机设备的通信信道或连接的网关设备描述了以上各实施例,但应理解,以上所描述的通信信道是双向通信信道,且在一些实施例中,使用在此描述的任何消息序列,网关设备可以发起与客户端设备的通信信道或连接,且服务器可以发起与网关设备的通信信道或连接。此外,尽管已经把预先确定的消息序列描述为按顺序接收,但在一些替代的实施例中,只要在传送预先确定的消息序列期间接收到预先确定的消息序列中的所有消息且在设备之间没有交换任何附加的居间消息,就可以看作是正确地接收到预先确定的消息序列。换句话说,在这些替代的实施例中,即使是无序接收消息,也可以看作是正确地接收到预先确定的消息序列。这样的实现可以被用来补偿具有可以引起在接收者设备处无序接收到消息的不可预测的网络延迟时间的网络环境。通过使用根据在此公开的本发明的各实施例的方法、设备和系统来在客户端网络上的中继来自用户设备的用户消息的客户端设备和支付处理网络上的服务器之间建立通信信道,可以降低恶意人员例如通过使用端口扫描技术攻入支付处理网络的风险。因而,本发明的各实施例可以允许在诸如移动电话等的用户设备和支付处理网络之间进行诸如PIN和PAN等的敏感信息的安全的端对端传送,以便使得移动银行业务的用户树立起他们的信息受到保护的信心。用户设备图10示出根据以上所描述的一些实施例的用户设备1000。用户设备1000包括用于接纳诸如SIM卡等的通信组件的通信组件读取器1025。用户设备1000也包括显示器1012、输入元素1014、诸如易失性和非易失性存储器等的计算机可读介质1024、处理器1010和至少一个天线1020。另外,通信设备1000可以包括双接口,该双接口包括用于通过直接接触或通过可以耦合到第二天线的集成芯片传递信息的接触式接口(未示出)和非接触接口1016两者。另外,用户设备1000能够通过蜂窝式网络、无线提供商网络或诸如GSM等的移动运营商网络、通过天线1020进行通信,例如以便发送和接收短消息服务(SMS)消息或非结构化补充业务数据(USSD)消息。因而,用户设备1000能通过短距离NFC、射频(RF)和蜂窝式连接等够无线地传送和接收信息。在一些实施例中,用户设备1000可以具有发送经加密的消息和/或通信和/或受到消息认证码或散列码保护的消息的密码能力。计算机系统图11是可以被用来实现以上所描述的任何设备(例如,网关设备、客户端设备、主机设备、服务器等等)的计算机系统的框图。图11中所示出的子系统经由系统总线1145互连。示出了可选的附加子系统,例如打印机1144、键盘1148、固定盘1149、耦合到显示适配器1182的监视器1146和其他。外围设备和耦合到I/O控制器1141的输入/输出(I/O)设备可以由任何数量的本领域中已知的装置例如串行端口1184连接到计算机系统。例如,串行端口1184或外部接口1181可以被用来把计算机装置连接到诸如因特网等的广域网、鼠标输入设备或扫描仪。经由系统总线1145的互连允许中央处理器1143与每一子系统通信并控制来自系统存储器1142或固定盘1149的指令的执行以及在各子系统之间的信息交换。系统存储器1142和/或固定盘1149可以实现包含引起处理器执行在此描述的方法的指令的非暂态计算机可读介质。在某些实现中,以上相对于各图所描述的各个框(或步骤)可以组合、取消或重排序。使用诸如例如Java、C++或Perl等的任何合适的计算机语言,使用例如常规的或对象面向的技术,可以把本申请中描述的软件组件或功能中的任何可以实现为由处理器执行的软件代码。软件代码可以被存储为计算机可读介质上的一系列指令或命令,计算机可读介质例如随机存取存储器(RAM)、只读存储器(ROM)、诸如硬盘驱动器或软盘等的磁介质、或诸如CD-ROM等的光学介质。任何这样的计算机可读介质可以驻留在单个计算装置上或在其之内,且可以是出现在在系统或网络内的不同的计算装置上或在其之内。可以用软件或硬件或两者的组合中的控制逻辑的形式来实现本发明。可以在信息存储介质中把控制逻辑存储为适于引导信息处理设备执行本发明的各实施例中公开的一组步骤的多个指令。基于在此提供的本公开内容和教导,本领域中的普通技术人员将明白实现本发明的其他方式和/或方法。对“一”、“一个”或“该”的任何陈述预期意指“一个或多个”,除非明确地指示与此相反。上面描述是说明性的而非限制性的。在审阅本公开内容时,本领域中的技术人员将明显看出本发明的许多变更。因此,不应参照以上描述而确定本发明的范围,而是应当参照待决的权利要求以及它们的完全范围或等效物来确定本发明的范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1