CN106576050B - 三层安全和计算架构 - Google Patents

三层安全和计算架构 Download PDF

Info

Publication number
CN106576050B
CN106576050B CN201580031637.XA CN201580031637A CN106576050B CN 106576050 B CN106576050 B CN 106576050B CN 201580031637 A CN201580031637 A CN 201580031637A CN 106576050 B CN106576050 B CN 106576050B
Authority
CN
China
Prior art keywords
data
client device
server computer
service
user authentication
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
Application number
CN201580031637.XA
Other languages
English (en)
Other versions
CN106576050A (zh
Inventor
诺曼·席布克
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
INFERSPECT LLC
Original Assignee
INFERSPECT LLC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by INFERSPECT LLC filed Critical INFERSPECT LLC
Publication of CN106576050A publication Critical patent/CN106576050A/zh
Application granted granted Critical
Publication of CN106576050B publication Critical patent/CN106576050B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/321Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0281Proxies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network 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
    • H04L63/0471Network 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 applying encryption by an intermediary, e.g. receiving clear information at the intermediary and encrypting the received information at the intermediary before forwarding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/76Proxy, i.e. using intermediary entity to perform cryptographic operations

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)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

一种计算***、方法和计算机程序产品提供客户端设备和用于向客户端设备提供网络服务的服务器计算机之间的密码隔离。计算***以无论客户端设备还是服务器计算机都不能获得有关对方的信息的方式,存储客户端设备及其用户的加密的用户认证数据,以及服务器计算机的加密的服务授权数据。一旦随后在计算***中接收到声称的用户认证数据和访问网络服务的请求,计算***对声称的认证数据进行加密并且将其与所存储的加密数据进行比较。只有当这些加密的数据相匹配时,计算***才能够解密服务授权数据并将其提供给服务器计算机,以获得对网络服务的访问。

Description

三层安全和计算架构
相关申请的交叉引用
本申请要求2014年5月14日提交的美国临时申请No.61/996,704的权益,其内容通过援引全部并入本文。
技术领域
本发明涉及多计算机数据传送,更具体涉及分布式数据处理,其中处理代理为网络用户提供密码安全的虚拟存在。
背景技术
现今的计算机***不安全。它们遭受众多的安全问题,包括***破解、***瓦解、和用户的恶意模仿。一些恶意者(“***破解者”)通过绕开或破解其安全机制,来闯入***。这些***破解者可以获得对安全数据和***的访问,改变或腐蚀重要数据,改变或腐蚀***自身的安全***以安装后门或允许对限制区域的物理访问,或者使用***对敏感数据的未授权的访问而造成任意数量的二次犯罪。其他恶意者可以破坏***功能,例如通过用不希望且破坏的数据的压倒性洪流来冲垮计算机***而造成拒绝服务(DoS)攻击,由此改变或延迟***响应的方法。这样的DoS攻击可以破坏重要的飞行、公共交通、和紧急响应***,使我们的关键基础设施***易受伤害。其他恶意者可以扮演医生、律师、执法者、或者其他受信任的个人,以获得对首先数据和服务的访问。例如,假身份可能使得具有武器的恶意者获得对机场无菌区域的访问,以及登机。
现有技术中存在对这些安全问题的几种解决方案,包括:登录名和密码;排除对计算机***的未授权访问的防火墙;用于隔离事务的单次密码;诸如与HSPD-12和FIPS 201兼容的智能卡;访问控制列表;以及虚拟专用计算机网络,等等。现有技术中一种这样的解决方案在图1中示出。这里,请求者100希望获得对网络数据和服务的访问,图中由“处理云”130所呈现的,可以是单个服务器计算机或计算资源的网络。请求者100可以访问请求者设备110。典型地,如上所提及的,请求者100将使用用户名和密码登录到请求者设备110。接下来,请求者100将引导请求者设备110上运行的软件应用以试图使用计算机网络(未示出)联系云130中的网络服务。如本领域中已知的一样,请求者设备110将通常使用诸如域名服务(DNS)的数据库服务来查找与所提供的用于服务的名称相关联的因特网地址,诸如www.***.com。请求者设备110随后试图使用因特网地址联系服务。相反,服务通过防火墙120来路由所有这样的信息请求。防火墙提供安全服务,诸如防止DoS攻击、用以访问服务的授权和认证询问、端口转发、病毒扫描等等。如果防火墙120确定所尝试的访问是合法的,则其向请求者设备110提供许可对服务访问的数据信道。典型地,防火墙120维持该数据信道,但不以别的方式监控流经它的数据。可以由请求者设备110和云130中的服务使用现有技术中已知的技术——诸如SSL,来加密该数据信道。一旦完成事务,数据信道被“拆卸”以释放请求者设备110、防火墙120和云服务130上的处理资源。
这样的现有技术安全测量通常在所保护***的周围而不再***自身内,建立单次***保护。现有技术涉及对诸如通信信道的安全计算资源的访问进行保护,,而不是对传送到这些资源以及从其传送的数据进行保护——一旦恶意者取得访问,它们可以在不进行进一步询问的情况下删除敏感数据。进一步,现有技术的访问限制在确定请求访问的人的身份之前或作为其一部分被执行。因此,它们遭受模仿攻击和中间人(MitM)攻击。甚至更糟的,在执行加密和解密操作的***中,必须由不具有大量计算能力的诸如智能电话的“薄”客户端设备首先执行这些操作且在该“薄”客户端设备上首先执行这些操作。现有的用于将加密和解密密钥***分发到数以百万计的这样的设备的***是笨重的、昂贵的且没有很好地成比例。
由于妥协的威胁,端用户***,甚至使用加密的端用户***,也不能在安全环境中完全受信任。一旦***安全被恶意用户(“***破解者”)破解,***破解者可以通过访问存储在***中且由***使用的数据和算法而伪装为合法用户。身份处理的这些“假象”,呈现在执行安全事务的所有端用户***上,针对依赖验证的身份的事务***提供不希望的攻击途经,从而降低这些***所提供的安全性和可靠性保证。
发明内容
为了解决上述缺点,本发明的所示实施例提供了一种“个人安全服务器”或PSS。PSS是***在客户端设备和众多网络服务之间的代理***,提供客户端设备和提供服务的服务器计算机之间的密码隔离。除了防火墙或其他周边设备这样的***还可用于补充设备的功能。PSS防止客户端设备获得有关服务器计算机的任何信息,包括其网络地址,并且防止服务器计算机获得有关正请求服务的客户端设备的任何信息。对服务授权数据的访问需要仅能由客户端设备的用户提供的输入。
对三层安全架构中的任何设备的危害不再会导致未授权事务的执行或身份被盗。如果客户端设备或PSS受到危害,恶意用户不能访问之前由客户端设备访问过的任何服务,因为只可通过PSS获得这样的访问,这样的访问需要来自客户端设备的适当用户使用生物信息或密码的单独授权。如果服务器计算机或PSS受到危害,攻击者将找不到能够被用于窃取用户身份的用户的个人信息。
因此,本发明的第一实施例是一种计算***,用于提供客户端设备和用于向客户端设备提供网络服务的服务器计算机之间的密码隔离。所述计算***具有四个部件:耦合到所述客户端设备的第一数据端口;耦合到所述服务器计算机的第二数据端口;非瞬时、有形存储介质;以及计算处理器。
存储介质存储对原始用户认证数据的加密,该加密使用的是不可逆加密算法,所述原始用户认证数据是客户端设备的独特特性和客户端设备的用户的独特特性的函数。存储介质还存储对服务器计算机所需的服务授权数据的加密,该加密使用将原始用户认证数据用作解密参数的可逆加密算法,所述服务器计算机所需的服务授权数据将被呈现给服务器计算机以作为许可用户访问网络服务的条件
计算处理器被配置为接收声称的用户认证数据以及访问网络服务的请求,且响应于这样的接收,执行四个处理。第一处理是使用所述不可逆加密算法来加密声称的用户认证数据,以产生加密的声称的用户认证数据。第二处理是只有当加密的声称的用户认证数据匹配存储的对原始用户认证数据的加密时,才解密对服务授权数据的加密,以产生解密的服务授权数据。第三处理是代表用户,向使用第二数据端口的服务计算机呈现解密的服务授权数据以及访问网络服务的请求。第四处理是一旦在计算***中从服务器计算机接收到指示用户被授权访问网络服务的数据,在使用第一数据端口的客户端设备和使用第二数据端口的服务器计算机之间交换服务数据。
考虑了基本***的各种进一步限定。特别是,客户端设备可以是桌上计算机、笔记本计算机、平板计算机或智能电话。所述第一数据端口可以耦合到局域网。所述第二数据端口可以耦合到因特网。所述不可逆加密算法可以包括密码散列函数。所述可逆加密算法可以包括公钥加密算法或对称加密算法。所述客户端设备的独特特性可以包括通用唯一标识符(UUID)或全局唯一标识符(GUID)。所述客户端设备的用户的独特特性可以包括生物数据或只有用户知道的密码。所述计算处理器可以进一步被配置为在第一数据端口上使用仅在计算***和客户端设备之间共享的秘密来执行密码数据通信。所述计算处理器可以进一步被配置为在第二数据端口上使用仅在计算***和服务器计算机之间共享的秘密来执行密码数据通信。以及,所述计算处理器可以进一步被配置为避免将客户端设备的网络地址通信到第二数据端口,以及避免将服务器计算机的网络地址通信到第一数据端口。
本发明的另一实施例是一种使用在客户端设备和用于向该客户端设备提供网络服务的服务器计算机之间进行中转的计算***,提供该客户端设备和该服务器计算机之间的密码隔离的方法。所述方法包括六个处理。第一处理是,在客户端设备的请求下,由计算***存储对原始用户认证数据的加密,该加密使用的是不可逆加密算法,所述原始用户认证数据是客户端设备的独特特性和客户端设备的用户的独特特性的函数。第二处理是,在服务器计算机的请求下,由计算***存储对服务器计算机所需的服务授权数据的加密,该加密使用将原始用户认证数据用作解密参数的可逆加密算法,所述服务器计算机所需的服务授权数据将被呈现给服务器计算机以作为许可用户访问网络服务的条件。
一旦在计算***中接收到声称的用户认证数据以及访问网络服务的请求,就发生剩余的处理。第三处理是使用所述不可逆加密算法加密声称的用户认证数据,以产生加密的声称的用户认证数据。第四处理是只有当加密的声称的用户认证数据匹配存储的对原始用户认证数据的加密时,才解密对服务授权数据的加密,以产生解密的服务授权数据。第五处理是代表用户,向服务计算机呈现解密的服务授权数据以及访问网络服务的请求。第六处理是一旦在计算***中从服务器计算机接收到指示用户被授权访问网络服务的数据,在客户端设备和服务器计算机之间交换服务数据。
上面关于***实施例所述的进一步限定还可适用于方法实施例。
本发明的第三实施例是非瞬时、有形存储介质,其中使用在客户端设备和用于向该客户端设备提供网络服务的服务器计算机之间进行中转的计算***,存储有用于提供该客户端设备和该服务器计算机之间的密码隔离的计算机程序代码。存储介质包括计用于执行上述方法实施例的处理的算机程序代码。存储介质还可以包括用于执行方法实施例的任何进一步限定的计算机程序代码。
附图说明
通过参考下面的结合附图的详细描述,将更加易于理解实施例的前述特征,在附图中:
图1示意性示出现有技术的客户端-服务器架构;
图2A和2B示意性示出根据本发明的三层安全架构的不同实施例;
图3示意性示出根据本发明的实施例的PSS计算***;
图4是图示说明根据本发明的实施例的发起PSS的方法的流程图;
图5是图示说明根据本发明的实施例的使用PSS提供客户端设备和服务器计算机之间的密码隔离的方法的流程图;以及
图6是图示说明根据本发明的实施例的使用辅助PSS审计网络服务的方法的流程图。
具体实施方式
计算***、方法和计算机程序产品提供客户端设备和用于向客户端设备提供网络服务的服务器计算机之间的密码隔离。计算***以如下方式存储客户端设备及其用户的加密的用户认证数据,以及服务器计算机的加密的服务授权数据:无论客户端设备还是服务器计算机都不能获得有关另一方的信息。一旦后续在计算***中接收到声称的认证数据和访问网络服务的请求,计算***对声称的认证数据加密并且将其与所存储的加密数据进行比较。只有在这些加密的数据匹配时,计算***才能够解密服务授权数据并将其提供给服务器计算机,以获得对网络服务的访问。
本发明的所示的实施例将附近计算层添加到标准客户端-服务器模型,以提供具有增强安全性的三方架构。分别在图2A和2B中示意性图示了三层安全架构200a和200b的各种实施例。被称为个人安全服务器或PSS(还可以被称为“个人服务器”)的计算单元210参与并且保护客户端请求者设备201和服务器云230之间的所有通信。服务器云230可以托管应用软件,这些应用可以被称为“云应用”。“云应用”的存在意味着托管应用软件的服务器计算机硬件。可以在计算机硬件的专用项上实现,或者在一个或多个客户端请求者设备201上实现PSS 210。PSS 210耦合到诸如局域网(如图2A)或者因特网(如图2B)的通信网络240。
图3示意性示出根据本发明的实施例的PSS计算***210。PSS计算***210包括四个部件:两个数据端口211和212,计算处理器213和存储介质214。现在依次对这些部件进行描述。
第一数据端口211将PSS 210通过第一数据网络耦合到客户端请求者设备201。如上所述,第一数据网络可以是局域网,尽管其他实施例可能使用其他数据网络,诸如但不限于,蜂窝电话网络、卫星网络或者因特网。第二数据端口212将PSS 210通过第二数据网络耦合到服务器云230中的服务器计算机。如上所述,第二数据网络可以是因特网,但可以使用任意其他数据网络。每个数据端口211、212可以是Wi-Fi端口、以太网端口、无线电端口、本领域已知用来提供数据连接的任何类似技术。
非瞬时、有形存储介质214为PSS 210提供易失性存储。在一个实施例中,存储介质214是提供对存储数据的快速访问的固态存储器,尽管在其他实施例中可以使用其他类型的存储器。如果需要非易失性存储(例如,以提供事务的永久审计日志),PSS 210可以包括,或者耦合到,单独的存储介质(未示出),诸如硬盘驱动器、存储区域网络、或附接到网络的存储。
根据所示的实施例,存储介质214存储两种类型的加密数据。第一种类型的数据属于用户认证且将PSS 210唯一地绑定客户端设备201,而第二种类型的数据属于服务授权且允许PSS 210代表用户访问服务器云230中的服务器计算机。如结合图4更详细地描述,在初始化阶段期间提供这些数据,如结合图5更详细地描述,在事务阶段期间使用这些数据。在图6中示出了事务历史的带外审计。
如下面结合图4-6中详细描述,计算处理器213执行关于实现密码隔离的多个任务。可以使用微处理器、或本领域已知的类似机制,结合用于执行这些任务的指令集(即,计算机程序代码)来对其进行实现。
图4是图示说明根据本发明的实施例的初始化PSS的方法的流程图。PSS对于客户端设备的每个授权用户存储一组加密的用户认证数据,该用户认证数据通常是少量的,但是PSS对于用户可以访问的每个服务存储加密的服务授权数据,而该服务可能是数以十计或百计的服务(或更多)。
在第一处理410,PSS从客户端设备接收原始用户认证数据。这些认证数据是客户端设备的独特特性和客户端设备的用户的独特特性的函数。客户端设备的独特特性可以是用于唯一地识别客户端设备的任何特性,诸如通用唯一标识符(UUID)或者全局唯一标识符(GUID),如本领域已知的那些术语。用户的独特特性可以是用于唯一地识别用户的任何特性,诸如生物信息或仅用户知道的密码。使用给定函数来组合(诸如拼接和截取,尽管可以使用其他函数)这些数据以形成足以充当用于下面详细描述的可逆加密算法的加密密钥的数据。
一旦PSS具有允许其认证来自用户和客户端设备的有效访问的足够数据,其开始循环来存储将最终允许其连接到多个网络服务的授权数据。在一些实施例中,使用应用或智能电话app将这些授权数据从客户端设备发送到PSS。可选地,在初始化方法的这点中,PSS可以安全地向客户端设备发送应用或app。在可替换实施例中,app可能已经被安装在客户端设备中。
不管app怎样出现在客户端设备中,一旦在PSS和客户端设备之间建立起了安全通信信道,在处理420中,PSS从客户端设备接收具体服务证书。这些证书包括用户访问网络服务所需的所有数据,并且可以包括这样的常规项以作为账户名称或号、电子邮件地址、用户名、用户密码、事务密码等等,如本领域已知。在处理420期间,PSS更新其安全审计日志以反映证书的接收(无需在日志中存储证书本身)。
在处理430中,PSS建立到执行服务的服务器计算机的安全连接,并向服务器计算机发送证书以建立服务授权。在优选实施例中,仅参考所请求的网络服务,以客户端设备不知道网络地址的方式来识别对于此连接的服务器计算机的网络地址(例如主机名或IP地址):。可以例如通过咨询将服务标识符映射到网络地址的服务登记和/或用于连接到服务的协议的技术描述,来执行该识别。
PSS使用所提供的服务证书“登录”到服务器计算机。如果可以建立联系且登录证书是正确的,服务器计算机向PSS返回可以是数据令牌的服务授权数据。稍后PSS可以使用该令牌或其他授权来登录到服务。如果登录不成功,PSS通知客户端设备且返回到处理420。
如果登录成功且PSS接收到服务授权,在处理440中,PSS对授权数据进行加密并且存储加密的副本。使用可逆加密算法来执行加密,可逆加密算法诸如为如本领域已知的公钥加密算法或对称加密算法。这些算法是可逆的,因为它们允许使用解密密钥来解密加密的数据。根据本发明的所示实施例,解密密钥包括用户认证数据。这样,只有从给定客户端设备访问PSS,的给定用户才可以在稍后解密服务授权。
一旦加密的服务授权数据被存储,在处理450,PSS安全地从其存储器中擦除这些数据的未加密副本。该处理450确保任何***破解者立刻不能获得对未加密授权令牌的访问。因此,优选地,在安全硬件环境中执行处理440和450,硬件环境诸如为如本领域中已知的硬件安全模块(HSM)。
在处理460,PSS通知客户端设备:已经获得对稍后使用的给定服务的授权。在一些实施例中,基于“推送”或异步地发生处理460,以允许从客户端设备快速接收服务证书,而同时并行地联系各种服务。如果一些网络服务建立联系或创建服务授权数据较慢的话,这样的并行处理可以极大地加速初始化过程。
在处理470,PSS确定是否存在更多要初始化的服务。典型地,使用PSS和客户端设备中的app之间的适当协议来完成该处理,且这样做的方法是公知的。如果必须初始化附加的服务,方法返回到处理420。但是,如果没有附加服务必须被初始化,方法继续到处理480,其中使用不可逆加密算法对原始用户认证数据进行加密,加密的副本被存储,未加密的副本被从PSS的存储器中安全擦除。不可逆加密算法可以例如是,密码散列函数——如本领域已知的短语。处理480确保未加密认证数据不在PSS中逗留,从而防止获得对PSS访问的***破解者解密任何服务授权数据。处理480同时确保可以通过与存储的散列进行比较来验证对用户认证数据的随后接收。
作为添加的安全手段,可以使用基于云的身份***来完成PSS和客户端设备之间(以及PSS和服务器计算机之间)的所有数据的发送和接收。在美国专利8,667,269中公开了一个这样的***,该专利题为“Efficient,Secure,Cloud-Based Identity Services”,其内容通过援引整体并入本文。根据该安全手段,PSS可以独立于本文所述的处理来验证设备和/或每条消息的用户(声称来自于客户端设备或服务器计算机)的身份,并且,如果消息来自不期望的源,则中止事务。
图5是图示说明根据本发明的实施例的使用PSS来提供客户端设备和服务器计算机之间的密码隔离的方法的流程图。根据本实施例,客户端设备不再与远程服务器计算机直接通信。当需要使用远程服务时,PSS充当密码隔离代理。客户端设备向PSS发送加密传输,PSS将消息解密并且确定消息有效性。如果有效,消息被重新加密,以只能由远程应用读取该消息。有效性检查可以次要的或广泛的,且如本领域已知可以包括到其他***和数据库的消息。
PSS的操作阶段是个循环。在循环的第一处理510,PSS接收声称的用户认证数据以及访问服务云的网络服务的请求。在方法的这一点,PSS必须假设请求是由恶意用户哄骗发起的,在一些实施例中,PSS可以确定请求是虚假的,如果该请求不使用数据端口211而到达的话。但是,即使请求确实来自数据端口211,其也可能已经未经用户许可而被生成(例如,如果请求者设备201的控制已经被恶意用户接管)。因此,在所有情况下,消息都需要验证。
参看图3,PSS 210可以构建客户端设备201的用户档案,并且使用来自该档案的细节来评估声称来自该用户的消息的有效性。这样的用户档案可以包括上面提到的PSS审计日志。PSS日志类似唯一地识别用户的指纹,因为另一用户具有相同PSS日志的可能性无穷小。用户档案还可以包括诸如客户端设备已经从其发送消息或者以别的方式访问PSS 210的一个或多个IP地址的信息。作为另一示例,如果客户端设备201能够查明并且发送其地理位置,则用户档案可以包括客户端设备201已经从其已经该位置发送消息或者以别的方式访问PSS 210的该地理位置。可以将来自客户端设备201的任何通信比对于用户档案进行检验以评估消息是否确实来自于用户。
已经获得对用户证书(例如,用户名、密码)的访问的***破解者可能试图模仿用户,但是PSS 210将识别黑客从其联系PSS的计算机不具有相同的用户日志(例如指纹),或者该计算机正从不同、不熟悉的IP地址进行通信。如果破解者获得客户端设备201且试图使用该设备来向或通过PSS 210进行通信,PSS 210可以识别该设备正从不寻常或不熟悉的地理位置进行通信。例如,如果盗贼获得并使用居住于纽约市且历史上已经从地理位置访问PSS 210用户的智能电话,盗贼从圣地亚哥对智能电话的使用将被PSS 210标志为可疑。PSS210随后可以拒绝来自智能电话201的通信,或者可以使用可替换的带外通信信道请求来自用户的附加验证。
作为消息验证的最终检验,处理520使用与原始验证的认证数据相同的算法来加密声称的认证数据,且在处理530,将加密的声称数据与存储的加密的验证数据相比较。如果验证不成功,则在处理540,PSS在其安全审计日志上记录错误,终止事务,且可以可选地采用本领域已知的其他防盗手段。例如,PSS可以向声称的用户认证数据的发送者通知访问已被拒绝,且允许多个附加尝试,以在PSS永久拒绝访问且需要重新认证之前验证数据。然后,方法返回到处理510且PSS等待下一服务访问请求。
但是,如果验证成功,在处理550,该事实也会被PSS记录在日志中,且事务被允许进行。成功和失败的PSS日志可以被存储在存储介质214中,或者另一位置。可能从不对PSS日志进行更改,但是基于其大小,其可能被存档至PSS外的其他设备。
在处理560,声称的认证数据,其现在已被验证为真实的,被用于解密在初始化期间存储的、用于所请求的特定服务的服务授权数据,且解密的服务授权数据被安全传送到服务器计算机。如上所提及的,该通信,以及建立会话所需的随后的通信,可以使用美国专利8,667,269的安全的基于云的身份服务。
服务授权数据的解密需要使用原始用户认证数据作为解密参数,以防止除原始用户以外的任何人访问服务。尽管原始的未加密的认证数据并不存储在PSS中(如上关于图4所述),加密的接收到的认证数据和存储的加密的原始认证数据之间的匹配意味着接收到的声称的数据实际上与原始数据相同。因此,可以将接收到的认证数据以其未加密的形式用作对原始数据的替代来解密服务授权数据。一旦完成解密且恢复未加密的服务授权数据,PSS就再一次安全地删除认证数据。
最后,在处理570中,PSS从服务器计算机接收指示:该服务器计算机已经接受服务授权数据并开始事务会话。作为响应,PSS开始根据网络服务的协议而在客户端设备和服务器计算机之间交换服务消息。当已经完成事务时,方法返回到处理510以等待下一服务访问请求。
除了PSS执行的验证步骤以外,也可以完成许多其他计算。可以从客户端设备卸载(例如使用图2A的架构)或者从网络服务卸载(例如使用图2B的架构)计算。至于后者的可能性,由于客户端设备不具有对PSS的控制,可以对于网络服务而完成安全事务,从而有利地提供服务可缩放性。在一个实施例中,每个用户具有单个PSS。在这个实施例中,网络服务不受其拥有的硬件大小的限制,而可以扩张到包括作为安全计算资源的众多PSS,因此“扩展了云”。在另一实施例中,每个用户具有用于每个网络服务的单个PSS,从而在网络的客户端侧而不是服务器侧提供不同网络服务之间的密码隔离。
图6是图示说明根据本发明的实施例的使用辅PSS审计网络服务的带外方法的流程图。图6中所示的方法假设主PSS正在根据图4和5处理对网络服务的请求,而且,正在向辅助审计PSS提供对其审计日志的实时访问。应该理解的是,审计和欺诈通知仅仅是扩展云的一个应用。
在处理610,辅PSS从主PSS接收流送的审计日志数据。同时,在处理620,辅PSS接收由主PSS提供的网络服务的输出。产生可公共消耗的输出流的任何网络服务可以被处理620所监控。例如,如果由客户端设备访问的一个网络服务是推特(TWITTER),处理620包括监控用户的推特馈送。
在处理630,将审计日志数据与公共输出流相比较以确定每个输出是否匹配对应的日志条目。对于流所具有的、用于我们用户的每个流条目,PSS必须具有对应的事务,且授权用户必须初始化事务。流可以包含附加的数据元素,其可以检验这样的目的地、美元数额或者将随着变化从输入携带到输出的任何其他数据。将所有这些数据元素与原始事务相比较。基于应用,这些必须匹配。这样,可以识别诸如恶意软件、病毒或影响事务数据的故障的计算机失败。
如果审计日志匹配输出流,则方法继续到处理640,在此辅PSS向主PSS提供关于一切安好的定期指示。但是,如果审计日志数据不匹配公共输出流,则方法继续到处理650,在此辅PSS立即向主PSS通知差异。如果日志条目存在但公共输出流中没有对应的输出,则可能是网络服务经历了执行请求的问题。反之,如果在公共输出流中存在输出但没有对应的日志条目,则可能是网络服务从PSS以外的源接收到哄骗请求,且因此用户的登录证书已经受到危害。在客户端-服务器关系的可靠性已经受到危害的任一情况下,在处理660,辅PSS启动防盗流程。这样的流程可以包括,但不限于:指示网络服务禁用用户登录证书;向监控中心发送电子邮件、文本或自动电话呼叫;以及经由不依赖于客户端设备的带外通信设施来联系用户。
可以至少部分以任何常规计算机编程语言来实现本发明的各种实施例。例如,可以以过程编程语言(例如“C”)来实现一些实施例,或者以面向对象的编程语言(例如“C++”)来实现一些实施例。可以将本发明的其他实施例实现为预编程的硬件元件(例如专用集成电路、FPGA和数字信号处理器),或者其他相关组件。
在替换实施例中,可以将公开的装置和方法实现为计算机程序产品,以与计算机***一起使用。这样的实现可以包括固定在诸如非瞬态计算机可读介质(例如磁盘、CD-ROM、ROM或固定磁盘)的有形介质上的一系列计算机指令。系列计算机指令可以体现本文之前描述的关于***的所有或部分功能。
本领域技术人员应该理解,可以以多种编程语言来编写这样的计算机指令,以便与许多计算机架构或操作***一起使用。而且,可以将这样的指令存储在任意存储器设备中,诸如半导体、磁性、光学或其他存储器设备,且可以使用任意通信技术来传送这样的指令,诸如光学、红外、微波或其他传送技术。
除了其他方式以外,可以将这样的计算机程序产品分发为可移动介质——伴随打印的或电子文档(例如,紧缩套装软件),预加载至计算机***(例如,在***ROM上或固定磁盘上),或者从服务器或电子公告板经由网络(例如互联网或万维网)进行分发。当然,本发明的一些实施例可以被实现为软件(例如计算机程序产品)和硬件的组合。本发明的另外的实施例被完全实现为硬件,或者完全实现为软件。
上述的本发明的实施例旨在仅仅是示例性的;许多变化和修改对本领域技术人员而言将是显而易见的。所有这样的变化和修改均旨在落入如任何所附权利要求中所限定的本发明的范围内。

Claims (20)

1.一种计算***,用于提供客户端设备和用于向所述客户端设备提供网络服务的服务器计算机之间的密码隔离,所述计算***包括:
耦合到所述客户端设备的第一数据端口;
耦合到所述服务器计算机的第二数据端口;
非瞬时有形存储介质,其中存储(a)对原始用户认证数据的加密,所述对原始用户认证数据的加密使用的是不可逆加密算法,所述原始用户认证数据是所述客户端设备的独特特性和所述客户端设备的用户的独特特性的函数,以及(b)对所述服务器计算机所需的服务授权数据的加密,所述对所述服务器计算机所需的服务授权数据的加密使用将所述原始用户认证数据用作解密参数的可逆加密算法,所述服务器计算机所需的服务授权数据将被呈现给所述服务器计算机以作为许可所述用户访问所述网络服务的条件;以及
计算处理器,其被配置为接收声称的用户认证数据以及访问所述网络服务的请求,且响应于这样的接收,执行下面的处理:
使用所述不可逆加密算法加密所述声称的用户认证数据以产生加密的声称的用户认证数据;
只有当所述加密的声称的用户认证数据匹配所存储的所述对原始用户认证数据的加密时,才解密对所述服务授权数据的加密以产生解密的服务授权数据;
代表所述用户,向使用所述第二数据端口的所述服务计算机呈现所述解密的服务授权数据以及访问所述网络服务的请求;以及
一旦在所述计算***中从所述服务器计算机接收到指示所述用户被授权访问所述网络服务的数据,在使用所述第一数据端口的所述客户端设备和使用所述第二数据端口的所述服务器计算机之间交换服务数据。
2.根据权利要求1所述的***,其中,所述客户端设备包括桌上计算机、笔记本计算机、平板计算机或智能电话。
3.根据权利要求1所述的***,其中,所述第一数据端口耦合到局域网。
4.根据权利要求1所述的***,其中,所述第二数据端口耦合到因特网。
5.根据权利要求1所述的***,其中,所述不可逆加密算法包括密码散列函数。
6.根据权利要求1所述的***,其中,所述可逆加密算法包括公钥加密算法或对称加密算法。
7.根据权利要求1所述的***,其中,所述客户端设备的独特特性包括通用唯一标识符(UUID)或全局唯一标识符(GUID)。
8.根据权利要求1所述的***,其中,所述客户端设备的用户的独特特性包括生物数据或只有所述用户知道的密码。
9.根据权利要求1所述的***,其中,所述计算处理器进一步被配置为在所述第一数据端口上使用仅在所述计算***和所述客户端设备之间共享的秘密来执行密码数据通信。
10.根据权利要求1所述的***,其中,所述计算处理器进一步被配置为在所述第二数据端口上使用仅在所述计算***和所述服务器计算机之间共享的秘密来执行密码数据通信。
11.根据权利要求1所述的***,其中,所述计算处理器进一步被配置为避免将所述客户端设备的网络地址传送到所述第二数据端口,以及避免将所述服务器计算机的网络地址传送到所述第一数据端口。
12.一种提供客户端设备和服务器计算机之间的密码隔离的方法,所述方法使用在客户端设备和用于向所述客户端设备提供网络服务的服务器计算机之间进行中转的计算***中,所述方法包括:
在所述客户端设备的请求下,由所述计算***存储对原始用户认证数据的加密,所述对原始用户认证数据的加密使用的是不可逆加密算法,所述原始用户认证数据是所述客户端设备的独特特性和所述客户端设备的用户的独特特性的函数;
在所述服务器计算机的请求下,由所述计算***存储对所述服务器计算机所需的服务授权数据的加密,所述对所述服务器计算机所需的服务授权数据的加密使用将所述原始用户认证数据用作解密参数的可逆加密算法,所述服务器计算机所需的服务授权数据将被呈现给所述服务器计算机以作为许可所述用户访问所述网络服务的条件;
一旦在所述计算***中接收到声称的用户认证数据以及访问所述网络服务的请求:
使用所述不可逆加密算法加密所述声称的用户认证数据以产生加密的声称的用户认证数据;
只有当所述加密的声称的用户认证数据匹配存所储的所述对原始用户认证数据的加密时,才解密对所述服务授权数据的加密以产生解密的服务授权数据;
代表所述用户,向所述服务计算机呈现所述解密的服务授权数据以及访问所述网络服务的请求;以及
一旦在所述计算***中从所述服务器计算机接收到指示所述用户被授权访问所述网络服务的数据,在所述客户端设备和所述服务器计算机之间交换服务数据。
13.根据权利要求12所述的方法,其中,所述客户端设备包括桌上计算机、笔记本计算机、平板计算机或智能电话。
14.根据权利要求12所述的方法,其中,所述不可逆加密算法包括密码散列函数。
15.根据权利要求12所述的方法,其中,所述可逆加密算法包括公钥加密算法或对称加密算法。
16.根据权利要求12所述的方法,其中,所述客户端设备的独特特性包括通用唯一标识符(UUID)或全局唯一标识符(GUID)。
17.根据权利要求12所述的方法,其中,所述客户端设备的用户的独特特性包括生物数据或只有用户知道的密码。
18.根据权利要求12所述的方法,其中,进一步包括使用仅在所述计算***和所述客户端设备之间共享的秘密来执行密码数据通信。
19.根据权利要求12所述的方法,其中,进一步包括使用仅在所述计算***和所述服务器计算机之间共享的秘密来执行密码数据通信。
20.一种非瞬时有形存储介质,其中存储有计算机程序代码,所述计算机程序代码用于使用在客户端设备和用于向所述客户端设备提供网络服务的服务器计算机之间进行中转的计算***提供所述客户端设备和所述服务器计算机之间的密码隔离,所述存储介质包括用于以下的计算机程序代码:
在所述客户端设备的请求下,由所述计算***存储对原始用户认证数据的加密,所述对原始用户认证数据的加密使用的是不可逆加密算法,所述原始用户认证数据是所述客户端设备的独特特性和所述客户端设备的用户的独特特性的函数;
在所述服务器计算机的请求下,由所述计算***存储对所述服务器计算机所需的服务授权数据的加密,所述对所述服务器计算机所需的服务授权数据的加密使用将所述原始用户认证数据用作解密参数的可逆加密算法,所述服务器计算机所需的服务授权数据将被呈现给所述服务器计算机以作为许可所述用户访问所述网络服务的条件;
一旦在所述计算***中接收到声称的用户认证数据以及访问所述网络服务的请求:
使用所述不可逆加密算法加密所述声称的用户认证数据以产生加密的声称的用户认证数据;
只有当所述加密的声称的用户认证数据匹配所存储的所述对原始用户认证数据的加密时,才解密对所述服务授权数据的加密以产生解密的服务授权数据;
代表所述用户,向所述服务计算机呈现所述解密的服务授权数据以及访问所述网络服务的请求;以及
一旦在所述计算***中从所述服务器计算机接收到指示所述用户被授权访问所述网络服务的数据,在所述客户端设备和所述服务器计算机之间交换服务数据。
CN201580031637.XA 2014-05-14 2015-05-14 三层安全和计算架构 Expired - Fee Related CN106576050B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201461996704P 2014-05-14 2014-05-14
US61/996,704 2014-05-14
PCT/US2015/030902 WO2015175841A1 (en) 2014-05-14 2015-05-14 Three-tiered security and computational architecture

Publications (2)

Publication Number Publication Date
CN106576050A CN106576050A (zh) 2017-04-19
CN106576050B true CN106576050B (zh) 2020-07-28

Family

ID=54480715

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580031637.XA Expired - Fee Related CN106576050B (zh) 2014-05-14 2015-05-14 三层安全和计算架构

Country Status (5)

Country Link
US (2) US9722791B2 (zh)
EP (1) EP3143724B1 (zh)
JP (1) JP6266170B2 (zh)
CN (1) CN106576050B (zh)
WO (1) WO2015175841A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10198595B2 (en) * 2015-12-22 2019-02-05 Walmart Apollo, Llc Data breach detection system
CN108989307A (zh) * 2018-07-10 2018-12-11 刘芳 用于项目管理多层加解密***
US10812537B1 (en) * 2018-07-23 2020-10-20 Amazon Technologies, Inc. Using network locality to automatically trigger arbitrary workflows

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1705941A1 (en) * 2005-03-24 2006-09-27 BRITISH TELECOMMUNICATIONS public limited company Secure communication of password information in a network
CN103368973A (zh) * 2013-07-25 2013-10-23 浪潮(北京)电子信息产业有限公司 一种云操作***安全体系
CN104040553A (zh) * 2012-01-03 2014-09-10 英赛瑟库尔公司 用于执行nfc装置中的应用程序的方法

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6912655B1 (en) * 1999-08-09 2005-06-28 Tristrata Security Inc. Network security architecture system utilizing seals
US7113994B1 (en) 2000-01-24 2006-09-26 Microsoft Corporation System and method of proxy authentication in a secured network
JP2001251297A (ja) * 2000-03-07 2001-09-14 Cti Co Ltd 情報処理装置、該情報処理装置を具備する暗号通信システム及び暗号通信方法
US7370351B1 (en) * 2001-03-22 2008-05-06 Novell, Inc. Cross domain authentication and security services using proxies for HTTP access
US7100054B2 (en) * 2001-08-09 2006-08-29 American Power Conversion Computer network security system
JP2004088768A (ja) * 2002-08-06 2004-03-18 Matsushita Electric Ind Co Ltd パケットデータ中継装置及びその方法
US7840993B2 (en) * 2005-05-04 2010-11-23 Tricipher, Inc. Protecting one-time-passwords against man-in-the-middle attacks
US8045995B2 (en) * 2007-05-31 2011-10-25 Yahoo! Inc. Centralized location broker
IL187492A0 (en) * 2007-09-06 2008-02-09 Human Interface Security Ltd Information protection device
US20120191615A1 (en) * 2009-07-27 2012-07-26 Suridx, Inc. Secure Credit Transactions
US8776212B2 (en) * 2010-12-14 2014-07-08 Suridx, Inc. Protecting computers using an identity-based router
US9146881B2 (en) * 2011-06-03 2015-09-29 Commandhub, Inc. Mobile data vault
US20130061310A1 (en) * 2011-09-06 2013-03-07 Wesley W. Whitmyer, Jr. Security server for cloud computing
US9887989B2 (en) * 2012-06-23 2018-02-06 Pomian & Corella, Llc Protecting passwords and biometrics against back-end security breaches
US20140019745A1 (en) 2012-07-12 2014-01-16 David S. Dodgson Cryptographic isolation of virtual machines
EP2893690A4 (en) * 2012-09-10 2016-02-24 Nwstor Ltd DATA SECURITY MANAGEMENT SYSTEM
US9154488B2 (en) * 2013-05-03 2015-10-06 Citrix Systems, Inc. Secured access to resources using a proxy
CN106134155B (zh) 2014-03-29 2020-01-24 阿卡麦科技公司 与覆盖网络相关的方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1705941A1 (en) * 2005-03-24 2006-09-27 BRITISH TELECOMMUNICATIONS public limited company Secure communication of password information in a network
CN104040553A (zh) * 2012-01-03 2014-09-10 英赛瑟库尔公司 用于执行nfc装置中的应用程序的方法
CN103368973A (zh) * 2013-07-25 2013-10-23 浪潮(北京)电子信息产业有限公司 一种云操作***安全体系

Also Published As

Publication number Publication date
CN106576050A (zh) 2017-04-19
JP6266170B2 (ja) 2018-01-24
JP2017518719A (ja) 2017-07-06
EP3143724B1 (en) 2018-12-19
US20150333908A1 (en) 2015-11-19
WO2015175841A1 (en) 2015-11-19
US9722791B2 (en) 2017-08-01
EP3143724A1 (en) 2017-03-22
US20170295142A1 (en) 2017-10-12
EP3143724A4 (en) 2018-01-17

Similar Documents

Publication Publication Date Title
Indu et al. Identity and access management in cloud environment: Mechanisms and challenges
CN109417553B (zh) 经由内部网络监视来检测使用泄漏证书的攻击
US20240121211A1 (en) Systems and methods for continuous fingerprinting to detect session hijacking inside zero trust private networks
Jakimoski Security techniques for data protection in cloud computing
US9686080B2 (en) System and method to provide secure credential
US8074264B2 (en) Secure key distribution to internet clients
US20170324758A1 (en) Detecting and reacting to malicious activity in decrypted application data
US20030196084A1 (en) System and method for secure wireless communications using PKI
US20080276309A1 (en) System and Method for Securing Software Applications
EP3639498B1 (en) Certificate pinning in highly secure network environments using public key certificates obtained from a dhcp (dynamic host configuration protocol) server
Kaur et al. A Secure Two‐Factor Authentication Framework in Cloud Computing
JP2023514736A (ja) 安全な通信のための方法及びシステム
JP2015536061A (ja) クライアントをサーバに登録するための方法および装置
US20210377224A1 (en) Secure and auditable proxy technology using trusted execution environments
US20170295142A1 (en) Three-Tiered Security and Computational Architecture
US11689517B2 (en) Method for distributed application segmentation through authorization
US11177958B2 (en) Protection of authentication tokens
Tutubala et al. A hybrid framework to improve data security in cloud computing
US11463433B1 (en) Secure bearer-sensitive authentication and digital object transmission system and method for spoof prevention
Yasin et al. Enhancing anti-phishing by a robust multi-level authentication technique (EARMAT).
Jang System Access Control Technique for Secure Cloud Computing
Krishnamoorthy et al. Proposal of HMAC based Protocol for Message Authenication in Kerberos Authentication Protocol
ALnwihel et al. A Novel Cloud Authentication Framework
Azizul et al. Authentication and Authorization Design in Honeybee Computing
Mathisen Confidential

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20200728

Termination date: 20210514

CF01 Termination of patent right due to non-payment of annual fee