CN112433985A - 控制提交给计算系统的信息的组合 - Google Patents

控制提交给计算系统的信息的组合 Download PDF

Info

Publication number
CN112433985A
CN112433985A CN202010715849.2A CN202010715849A CN112433985A CN 112433985 A CN112433985 A CN 112433985A CN 202010715849 A CN202010715849 A CN 202010715849A CN 112433985 A CN112433985 A CN 112433985A
Authority
CN
China
Prior art keywords
computing system
information item
target computing
information
server
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.)
Pending
Application number
CN202010715849.2A
Other languages
English (en)
Inventor
S·皮西尼尼
A·巴加罗洛
M·卡米萨
M·因佩里亚
P·M·M·蒙特尼罗
P·奥塔维亚诺
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN112433985A publication Critical patent/CN112433985A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/13File access structures, e.g. distributed indices
    • G06F16/137Hash-based
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/176Support for shared access to files; File sharing support
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Medical Informatics (AREA)
  • Data Mining & Analysis (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本公开的实施例涉及控制提交给计算系统的信息的组合。本公开提出了一种用于控制对象的信息项的分发的方法和系统。该方法和系统包括:验证(将由目标计算系统接收的)新信息项和(已经对目标计算系统可用的)可用信息项的组合与一个或多个共享规则的符合性;根据该验证的结果来控制目标计算系统对新信息项的接收。

Description

控制提交给计算系统的信息的组合
技术领域
本公开涉及信息技术领域。更具体地,本公开涉及对计算系统中的信息的控制。
背景技术
在下文中,通过与本公开的上下文有关的技术的讨论来引入本公开的背景。然而,即使当该讨论涉及文档、动作、人工制品等时,也不暗示或表示所讨论的技术是现有技术的一部分或在与本公开相关的领域中是公知常识。
在多种上下文中,(存储在计算系统中的)信息的控制是一个关键问题。特别是,只要当信息与对应对象(subject)特别相关,控制其向第三方的分发就很重要。典型的示例是个人信息,即与可标识的人有关的信息。实际上,个人信息向第三方的分发可能会涉及对于对应人的隐私的威胁;例如,个人信息可能用于令人讨厌(例如,传输垃圾邮件)甚至危险(例如,跟踪)的目的。
因此,大多数国家/地区具有管理个人信息的保护的隐私法;例如,在欧盟,这是由通用数据保护条例(GDPR)规定的。通常,隐私法赋予任何人控制使用对应的个人信息的方式和程度的权利。例如,这要求由该人明确给出同意,以授权第三方对此个人信息的每次使用;特别是,必须有特定的同意以授权第三方(该人已向其提交了个人信息)与其他第三方共享此个人信息。
人们经常将他们的个人信息提交给大量第三方。在互联网中尤其如此。确实,如今,大多数人使用互联网例行执行许多活动(例如,购买商品、利用功能性、查找信息等)。为此目的,人们不断地向对应的服务提供方提交个人信息,例如当需要向其注册时。
此外,人们通常授权第三方与其他第三方共享向其提交的个人信息。特别是,这通常是由于这样的事实,尤其是在互联网中,大多数人几乎自动接受隐私条款,而没有真正注意被授予的授权。实际上,需要对隐私条款的接受是如此经常,以至于人们通常不阅读它们,更不用说仔细地阅读了(因为操作相当令人讨厌);此外,当隐私条款被在线接受时(例如在互联网中),几乎没有给出对法律约束行为的意识。
这导致个人信息的大量传播。特别地,发明人已经意识到,在第三方之间共享个人信息可能带来意想不到的,并且通常是不希望的效果。即使人们完全可接受不同的第三方对于对应个人信息的使用,这也可能发生。实际上,人的不同条个人信息可能被提交给第三方,因为第三方中的每个第三方对不同条个人信息的使用不会造成任何问题。然而,由于第三方之间共享个人信息,因此每个第三方也可能从其他第三方接收同一人的其他条个人信息。结果,第三方可能访问对于该人而言无法接受的复合的个人信息。
实际上,本身不关键的特定条个人信息在彼此结合时可能变得关键。例如,一个人向第一第三方提交其名称,并且向第二第三方提交其城镇;通常,这不会造成任何问题,因为仅名称和仅城镇不允许标识该人。然而,个人信息可以在两个第三方之间被共享,例如,由于第一第三方已经被授权这样做。在这种情况下,第二第三方可以从第一第三方接收该人的名称。结果,第二第三方可以(直接从该人)访问该人的城镇和(间接从第一第三方)访问该人的名称。相反,这可能是危险的,因为现在个人信息(名称和城镇)允许标识该人。
上述情况由于以下事实而被加剧:人们经常授权第三方与其他第三方共享向其提交的个人信息,这些其他第三方被简单地如此指示(并且未被单独地标识)。因此,如果不是不可能,人们也很难设想由信息的共享可能引起的可能的问题。
发明内容
这里呈现了本公开的简化概述以便提供对本公开的基本理解;然而,本概述的唯一目的是以简化的形式介绍本公开的一些概念,作为其随后的更详细描述的序言,并且本概述不应被解释为对本公开关键要素的标识或对其范围的界定。
概括而言,本公开基于控制信息的可能组合的思想。
特别地,一个实施例提供了一种用于控制对象的信息项的分发的方法。该方法包括:验证(将由目标计算系统接收的)新信息项和(已经对目标计算系统可用的)可用信息项的组合与一个或多个共享规则的符合性;根据该验证的结果来控制目标计算系统对新信息项的接收。
另一方面提供了一种用于实现该方法的计算机程序。
另一方面提供了一种对应的计算机程序产品。
另一方面提供了一种对应的计算系统。
在根据本发明的实施例的一个方面,一种用于控制对象的多个信息项的分发的方法包括:由目标计算系统接收信息项中的一个或多个新信息项的指示,该信息项被提交给与目标计算系统相关联的目标实体。该方法包括由目标计算系统接收对象的一个或多个共享规则,该共享规则基于信息项的一个或多个组合。该方法包括由目标计算系统取回对目标计算系统可用的信息项中的任何可用信息项的指示。该方法包括:由目标计算系统验证新信息项和可用信息项的组合与共享规则的符合性;以及由目标计算系统根据所述验证符合性的结果来控制对新信息项的接收。
在根据本发明的实施例的另一方面,一种用于控制对象的多个信息项的分发的计算机程序产品,其包括计算机可读存储介质,该计算机可读存储介质具有随其体现的程序指令。该程序指令由计算系统可读取,以使该计算系统执行一种方法,该方法包括:接收信息项中的一个或多个新信息项的指示,该一个或多个新信息项将被提交给与该计算系统相关联的目标实体;接收对象的一个或多个共享规则,共享规则基于信息项的一个或多个组合;取回对计算系统可用的信息项中的任何可用信息项的指示;验证新信息项和可用信息项的组合与共享规则的符合性;以及根据所述验证符合性的结果来控制对新信息项的接收。
在根据本发明的实施例的另一方面,一种用于控制对象的多个信息项的分发的计算系统,其包括电路装置,该电路装置用于接收信息项的一个或多个新信息项的指示,该一个或多个新信息项将被提交给与计算系统关联的目标实体。该系统包括用于接收对象的一个或多个共享规则的电路装置,其中共享规则基于信息项的一个或多个组合。电路装置用于取回对计算系统可用的信息项中的任何可用信息项的指示。该系统包括用于验证新信息项和可用信息项的组合与共享规则的符合性的电路装置。该系统包括用于根据所述验证符合性的结果来控制对新信息项的接收的电路装置。
更具体地,本公开的一个或多个方面在独立权利要求中被陈述,并且其有利特征在从属权利要求中被陈述,并且所有权利要求的措词在此通过引用逐字地并入本文(其中参考任何特定方面所提供的任何有利特征进行必要的修改后适用于所有其他方面)。
附图说明
参照下文的本公开的详细描述,将最好地理解本公开的解决方案和本公开的其他特征和优点,所述详细描述仅通过非限制性指示的方式给出,并且将结合附图来阅读,(在附图中,为简单起见,对应的元件用相同或类似的附图标记表示,并且不重复其解释,并且每个实体的名称通常用于表示其类型和属性,例如值、内容和代表)。特别地:
图1A、图1B、图1C和图1D示出了根据本公开的实施例的解决方案的应用的示例,
图2示出了其中可以实践根据本公开的实施例的解决方案的信息技术基础设施的示意性框图,
图3示出了可以用于实现根据本公开的实施例的解决方案的主要软件组件,以及
图4A、图4B、图4C和图4D示出了活动图,该活动图描述了与根据本公开的实施例的解决方案的实现有关的活动的流程。
具体实施方式
特别地参考图1A-图1D,示出了根据本公开的实施例的解决方案的应用的示例。
从图1A开始,用户(即人)105使用客户端计算系统、或者简单地使用客户端110来访问服务器计算系统、或者简单地使用例如在互联网中提供对应服务的服务器115x。用户105可能被要求向服务器115x提交个人信息以用于利用服务,同时授权与服务器115x相关联的第三方以使用该个人信息。该授权通过用户105接受对应的隐私条款(例如,通过在网页中打勾选项)来被授予;在该阶段,用户105还可以授权第三方与其他第三方共享个人信息。
在根据本公开的实施例的解决方案中,用户105针对他/她的个人信息创建一个或多个共享规则。共享规则基于信息项的一个或多个组合(限定对应多条个人信息);例如,每个共享规则指示两个或更多个信息项可能不能一起可用于任何第三方,即,它们的组合不被允许。一旦用户105要求客户端110向服务器115x提交一个或多个(新的)信息项,对应的验证分组就被传输到服务器115x。验证分组包括对新信息项的指示(诸如它们的哈希值);此外,验证分组包括一个或多个共享规则(诸如与新信息项有关的共享规则)。例如,验证分组指示新信息项Ia和Ib将被提交给服务器115x,并且验证分组包括指示信息项Ib和Id的组合不被允许的共享规则(NOT(Ib+Id))。当服务器115x接收到验证分组时,已经可用于服务器115x的任何(可用)信息项的指示(例如,从对应的数据库中)被取回。新/可用信息项的组合与共享规则的符合性(compliance)被验证。然后,根据该符合性验证的结果来控制服务器115x对新信息项的接收。例如,假设用户105的信息项Id对于服务器115x不可用,则符合性验证的结果为肯定,并且因此服务器115x被允许从客户端110接收(存储在其中的)新信息项Ia和Ib(例如,通过返回对应的对其接受)。
转到图1B,用户105还使用客户端110访问另一服务器计算系统、或者简单地访问提供另一对应服务的服务器115y。同样在这种情况下,用户105可能被要求向服务器115y提交个人信息以用于利用服务,同时授权与服务器115y相关联的第三方使用该个人信息(通过接受对应的隐私条款)。如上所述,一旦用户105要求客户端110向服务器115y提交一个或多个(新)信息项,则对应的验证分组被传输到服务器115y。例如,验证分组指示新信息项Ia和Id将被提交给服务器115y,并且验证分组包括指示信息项Ib和Id的组合不被允许的相同共享规则。当服务器115y接收到验证分组时,任何可用信息项的指示被取回并且新/可用信息项的组合与共享规则的符合性被验证,以因此用于控制服务器115y对新信息项的接收。例如,假设用户105的信息项Ib对于服务器115y不可用,则符合性验证的结果为肯定,并且服务器115y被允许从客户端110接收(存储在其中的)新信息项Ia和Id。
转到图1C,用户105可能被要求向服务器115x提交其他个人信息以用于利用服务,同时授权与服务器115x相关联的第三方使用及共享该个人信息(通过接受对应的隐私条款)。如上所述,一旦用户105要求客户端110向服务器115x提交一个或多个(新)信息项,对应的验证分组就被传输到服务器115x。例如,验证分组指示新信息项Ic将被提交给服务器115x,并且验证分组包括指示信息项Ic和Id的组合不被允许的共享规则(NOT(Ic+Id))。当服务器115x接收到验证分组时,可用信息项的指示被取回;在这种情况下,可用信息项包括先前已经由客户端110接收到的信息项Ia和Ib。然后,新/可用信息项的组合与共享规则的符合性被验证。同样在这种情况下,符合性验证的结果为肯定,并且因此服务器115x被允许从客户端110接收(存储在其中的)新信息项Ic。
转到图1D,稍后在服务器115x上可能需要将信息项Ib提交给服务器115y(先前已经由用户105授权这样做)。如上所述,服务器115x将对应的验证分组传输给服务器115y。验证分组指示(新)信息项Ib将被提交给服务器115y,并且验证分组包括指示信息项Ib和Id的组合不被允许的对应的共享规则。当服务器115y接收到验证分组时,可用信息项的指示被取回;在这种情况下,可用信息项包括先前已经从客户端110接收到的信息项Ia和Id。然后,新/可用信息项的组合与共享规则的符合性被验证。因此,由于新信息项Ib和可用信息项Id的组合不被允许,所以符合性验证的结果现在为否定。在这种情况下,服务器115y被防止从服务器115x接收新信息项Ib(例如,通过将对应的拒绝返回给服务器115x)。此外,对应的通知(由于服务器115y上的信息项Id的可用性而拒绝服务器115y接收新信息项Ib)被传输给客户端110,以便相应地告知用户105。
例如,用户不希望被任何第三方经由他/她的名称和城镇而标识。为此,用户创建指示名称和城镇的组合不被允许的共享规则。然后,用户可以将名称提交给评论网站(用于发布被贴标签有其名称的关于产品/服务的评论)。此外,用户可以将城镇提交给市场研究网站(用于参与基于城镇的调查)。在这两种情况下,向对应的第三方(分别是评论公司和市场研究公司)提交不同条信息(名称和城镇)均符合共享规则(因为单独地使用名称和城镇不造成任何问题)。然而,即使用户已经授权第三方中的任何第三方共享对应的信息项,它们也都无法访问名称和城镇两者。例如,如果评论网站试图将名称提交给市场研究网站,则对应的符合性验证结果为否定。因此,市场研究网站被防止接收名称(从而避免了名称与已经可用的城镇的组合)。
上述解决方案显著改进了对个人信息的控制,尤其是个人信息向第三方的分发。
特别地,以这种方式,可能避免或至少基本上减少由于(用户已经向其提交了个人信息的)第三方之间共享个人信息而导致的任何意外(和不希望的)影响。更具体地说,所提出的解决方案防止第三方访问对于用户而言无法接受的任何复合的个人信息;该结果也可以被实现即使复合的个人信息是由于本身并不关键的、并且然后可能已经由用户单独地提交给不同的第三方的特定条个人信息的组合而导致的。
上述解决方案具有普遍适用性,因为它不要求可能共享个人信息的第三方的知识。因此,当用户授权第三方与正如这样被简单指示的(并且未被单独标识的)其他第三方共享向其提交的个人信息时,相同的解决方案特别有利。
现在参考图2,示出了信息技术基础设施200的示意框图,其中可以实践根据本公开的实施例的解决方案。
信息技术基础设施200包括任何数量的上述客户端110和通常由附图标记115表示的服务器(整体上称为计算机110-115)。计算机110-115通过(电信)网络205进行通信。例如,信息技术基础设施200基于互联网。在这种情况下,服务器115是通过全局类型的网络205彼此连接的Web服务器;客户端110(通过对应的访问提供方,图中未示出)访问互联网,以便利用由服务器115提供的服务。例如,服务器115允许访问提供银行、保险、预订、社交、旅行等服务的对应网站。
计算机110-115中的每个计算机包括若干个单元,这些单元通过具有一个或多个级别的总线结构210(具有根据计算机110-115的类型适当缩放的架构)在它们之间被连接。特别地,一个或多个微处理器(μP)215控制计算机110-115的操作;非易失性存储器(ROM)220存储用于计算机110-115的引导的基本代码,并且易失性存储器(RAM)225被微处理器215用作工作存储器。计算机110-115设有用于存储程序和数据的大容量存储器230(例如,用于客户端110的硬盘和其中实现服务器115的对应数据中心的存储设备)。此外,计算机110-115包括用于外围设备、或输入/输出(I/O)单元235的多个控制器;例如,每个客户端110的外围设备235包括键盘、鼠标、监视器、用于连接到网络205的网络适配器(NIC)、和用于读取/写入可移除存储单元(诸如DVD之类的光盘)的驱动器,而每个服务器115的外围设备235包括网卡,其用于将服务器115插入对应的数据中心,然后将服务器连接到数据中心的控制台(例如,个人计算机,也设有如上所述的用于读取/写入可移除存储单元的驱动器)以及连接到数据中心的交换机/路由器子系统(用于其与网络205的通信)。
现在参考图3,示出了可以用于实现根据本公开的实施例的解决方案的主要软件组件。
特别地,所有软件组件(程序和数据)利用附图标记300被整体表示。软件组件300通常被存储在大容量存储器中,并且在程序运行时(至少部分地)被加载到计算机110-115的工作存储器中。例如,程序最初从可移除存储单元或从网络(图中未示出)被安装到大容量存储器中。在这方面,每个程序可以是代码的模块、段或部分,其包括用于实现指定的逻辑功能的一个或多个可执行指令。
从客户端110中的每个客户端(图中仅示出一个)开始,它包括以下组件。浏览器305用于上网冲浪;就本公开而言,浏览器305用于访问服务器115以用于利用对应的服务。在根据本公开实施例的解决方案中,验证客户端310控制向服务器115提交客户端110的用户的个人信息(图中未示出)。为此,验证客户端310与浏览器305进行交互(例如,被实现为对应的插件),以用于拦截与服务器115的通信。验证客户端310利用哈希引擎315。哈希引擎315用于将任意大小的输入值映射到固定大小的哈希值(从不同的输入值获得相同哈希值的风险很小)。为此,哈希引擎315应用哈希函数;哈希函数是一种单向类型(即,逆转实际上是不可行的)的确定性函数(即,对于相同的输入值始终产生相同的哈希值)。验证客户端310(以读取模式)访问限定信息项的信息项存储库320和限定用户的共享规则的共享规则存储库325;信息项存储库320和共享规则存储库325在用户的所有客户端110之间被同步,例如,由对应的一对用户标识符和密码来访问。信息项存储库320存储针对限定用户的个人信息的对应信息项的一个或多个条目。每个条目包括信息项的(信息)标识符(例如,其类型例如“名称”、“城镇”、“财政代码”、“电话号码”、“电子邮件地址”、“信用卡号”等)和信息项的哈希值。共享规则存储库325存储针对用户的对应共享规则的一个或多个条目。每个条目依据信息标识符来限定共享规则(例如,列出其组合不被允许的两个或更多个信息项的信息标识符(例如,NOT“名称”+“城镇”))。编辑器330可用于用户以用于编辑信息项和共享规则。编辑器330(以读取/写入模式)访问信息项存储库320和共享规则存储库325。
转到每个服务器115(图中仅示出一个),它包括以下组件。Web服务器335管理与服务器115的任何通信,特别是通过处理由客户端110的浏览器305提交给服务器115的任何请求。Web应用340实现由服务器115提供的服务。Web应用340(以读取/写入模式)访问个人信息存储库345,以获得由授权对应用途的所有用户已经提交给服务器115的个人信息。个人信息存储库345存储针对每个用户的条目。条目包括用户标识符、对应的个人信息的信息项、以及授权的指示(有或没有与其他第三方共享个人信息的可能性),该授权已经由用户授予与服务器115相关联的第三方以用于使用个人信息。在根据本公开的实施例的解决方案中,验证服务器350控制由客户端110或其他服务器115对提交给服务器115的个人信息的接收。为此,验证服务器350被客户端110的验证客户端310和被其他服务器115的验证服务器350信任。这意味着可以依靠验证服务器350来实施对接收个人信息的所需控制。例如,该结果由对应软件解决方案的分发者保证;特别地,分发者借助于基于一对公钥/私钥的对应数字签名和公钥基础结构(PKI)中的数字证书,来确保验证服务器350的真实性和完整性。验证服务器350介于Web服务器335与Web应用340之间以用于拦截它们的通信。验证服务器350利用哈希引擎355(与上面相同)。验证服务器350(以读取模式)访问用于服务器的用户的用户存储库360。用户存储库360存储针对每个用户的条目。条目包括用户标识符、被存储在对应的存储库345中的用户的(可用)信息项的哈希值、以及与这些可用信息项有关的共享规则。
现在参考图4A-图4D,示出了活动图,该活动图描述了与根据本公开的实施例的解决方案的实现有关的活动的流程。
特别地,活动图表示可以用于利用方法400控制个人信息的分发的示例性过程。在这方面,每个方框可以对应于用于在上述计算机上实现指定的逻辑功能的一个或多个可执行指令。
从通用客户端的泳道开始,每当其用户经由浏览器向通用服务器提交任何信息时,该过程就进入方框401。例如,用户已经访问服务器以从其下载网页。该网页限定了一种(在线)表单(form),该表单包括用于录入输入信息的一个或多个输入字段。用户利用所需的输入信息填写表单,然后点击提交按钮。响应于此,浏览器将对应的提交命令传输给服务器(包括输入信息)。在根据本公开的实施例的解决方案中,验证客户端在方框402处截取提交命令(例如,利用挂钩(hooking)技术)。然后进入一个循环以用于分析提交命令中所包含的输入信息。循环在方框403处开始,其中验证客户端考虑对应存储库中的(当前)信息项的信息标识符和哈希值(按照任意顺序从第一个开始)。在方框404处,验证客户端在输入信息中搜索哈希值。为此,验证客户端命令哈希引擎计算(例如,被录入到对应的输入字段中的)每条输入信息的哈希值(此操作仅在循环的开始处被执行一次);然后,验证客户端验证信息项的哈希值是否与输入信息的哈希值中的任何哈希值匹配。根据该搜索的结果,活动的流程在方框405处分支。如果在输入信息中找到哈希值,则意味着输入信息包含信息项,则验证客户端在方框406处将哈希值和信息标识符添加到信息项列表(最初为空)中,该信息项列表指示将被提交给服务器的用户的个人信息。然后,该过程进入方框407中。如果在输入信息中未找到哈希值,这意味着该输入信息不包含对应的信息项,则也从方框405直接到达同一点。在该点处,验证客户端验证最后一个信息项是否已经被处理。如果否,则活动的流程返回到方框403以对下一信息项重复相同的操作。相反地(一旦所有信息项都已经被处理),通过下降到方框408退出循环。
现在,活动的流程根据信息项列表的内容分支。如果信息项列表不为空,意味着输入信息包含用户的个人信息,则验证客户端在方框409处从对应的存储库中取回任何(相关)共享规则,该存储库与将被提交给服务器的(新)信息项有关。特别地,相关共享规则是包含信息项列表的信息标识符中的至少一个信息标识符的规则。在方框410处,验证客户端通过利用(从信息项列表中取回的)对应的哈希值来替换信息项列表的信息标识符,来恢复相关共享规则中的每个相关共享规则。在方框411处,验证客户端通过添加(例如,从配置参数中取回的)用户标识符、(在信息项列表中的)新信息项的哈希值、和相关共享规则,来构建对应的验证分组。在方框412处,验证客户端利用(例如,从软件解决方案的分发者取回的)服务器的验证服务器的公共密钥来对验证分组进行加密。在方框413处,验证客户端将(经加密的)验证分组传输给服务器(可能在验证验证服务器的真实性和完整性之后)。
转到服务器的泳道,验证服务器在方框414处从客户端接收验证分组;当验证服务器从另一服务器接收到类似的验证分组时,活动的流程也将到达相同的点(如下所述)。验证服务器在方框415处利用其私钥解密验证分组(并且它提取用户标识符、新信息项的哈希值和相关共享规则)。验证分组的加密允许确保验证分组仅可以被验证服务器处理(特别是不能被Web应用处理,新信息项的提交将被控制用于该Web应用)。验证服务器在方框416处(从对应的存储库中)取回用户的可用信息项的哈希值。然后进入一个循环以用于验证新/可用信息项的组合与相关共享规则的符合性。循环在方框417处开始,其中,验证服务器考虑(当前的)相关共享规则(按照任意顺序从第一个开始)。在方框418处,验证服务器在新/可用信息项中搜索相关共享规则的哈希值。根据该搜索的结果,活动的流程在方框419处分支。如果在新/可用信息项中找到了相关共享规则的所有哈希值(意味着新/可用信息项的组合不被允许),则通过下降进入方框420中来退出循环,在方框420中验证服务器将(验证与共享规则的符合性的)验证结果设置为否定。相反,如果在新/可用信息项中未找到相关共享规则的一个或多个哈希值,则过程进入方框421,其中验证服务器验证最后一个相关共享规则是否已经被处理。如果否,则活动的流程返回到方框417以对下一相关共享规则重复相同的操作。相反地(一旦所有相关共享规则都已经被处理),则通过下降进入方框422中退出循环,在方框422中验证服务器将验证结果设置为肯定(因为新/可用信息项的组合被允许)。此外,在方框423处,验证服务器将新信息项的哈希值和相关共享规则添加到对应存储库中的用户的条目;可以不加选择地执行此操作(更简单的实现),也可以仅在(如由验证客户端检测到的并且在被添加到验证分组的对应标志中所通知的)用户已经授权与服务器相关联的第三方共享新信息项时执行此操作(更低的存储使用)。哈希值的使用允许验证服务器验证新/可用信息项与相关共享规则的符合性,而无需向服务器提供实际的新信息项。然后,活动的流程从方框420或方框423继续到方框424。在该点处,验证服务器构建结果分组。结果分组包含验证结果;此外,当验证结果为否定时,结果分组还可以包含不符合信息,该不符合信息指示新/可用信息项的组合不被允许的原因(例如,指示(不符合的)相关共享规则,其哈希值被全部包括在新/可用信息项的哈希值中)。在方框425处,验证服务器利用其私钥对结果分组进行加密。活动的流程根据验证分组的源在方框426处分支。如果验证分组已经从客户端被接收,则验证服务器在方框427处将(经加密的)结果分组返回到客户端。然后,过程返回到方框414等待来自任何客户端/服务器的下一验证分组。
再次参考客户端的泳道,在方框428处,验证客户端从服务器接收结果分组(服务器处于针对其的等待状态中)。在方框429处,验证客户端通过使用验证服务器的公钥来解密结果分组(并提取验证结果和可能的不符合信息)。结果分组的加密允许确保验证结果实际上已经由(可信)验证服务器提供。活动的流程根据验证结果在方框430处分支。如果验证结果是否定的,则验证客户端在方框431处在客户端的监视器上显示对应的警报。例如,验证客户端确定不符合共享规则中与(服务器的可用信息项的)信息项列表中的哈希值不同的哈希值,并且(从对应的存储库中)取回其信息标识符;然后,警报指示新信息项(由来自信息项列表的它们的信息标识符指示)与可用信息项(由如此确定的它们的信息标识符指示)的组合在服务器上不被允许。相反,如果验证结果为肯定,则过程从方框430传递到方框432;如果信息项列表为空,意味着输入信息不包含用户的个人信息,则也从方框408直接到达同一点。在这两种情况下,验证客户端都会按照常规将提交命令(包含可能会被提交给服务器的个人信息或不包含任何个人信息)传输给服务器。然后,该过程从方框431或方框432返回至方框401,等待下一次将信息提交给任何服务器。
转到服务器的泳道,在方框433处,Web服务器从客户端接收提交命令;当服务器从另一服务器接收到类似的提交命令时,过程也会到达相同的点(如下所述)。Web服务器将提交命令传递给Web应用,其按照常规在方框434处处理提交命令。特别地,如果提交命令包含用户的个人信息(在接受对应的隐私条款的情况下,该接受被同时提供或伴随另一提交命令被提供),则Web应用相应地更新个人信息存储库。然后,过程返回到方框433等待来自任何客户端/服务器的下一提交命令。
参考回方框426,如果验证分组已经从另一服务器被接收,则在方框435处,验证服务器将(经加密的)结果分组返回到另一服务器(在下文中描述)。活动的流程根据验证结果在方框436处分支。如果验证结果是否定的,则验证服务器在方框437处为客户端建立通知分组。通知分组包括(目标)服务器和另一(源)服务器的对应标识符(例如,它们的域名)以及与上述相同的不符合信息。在方框437处,验证服务器将通知分组传输给客户端(可能利用其私钥进行加密)。然后,过程返回到方框414等待来自任何客户端/服务器的下一验证分组。
再次参考客户端的泳道,在方框439处,验证客户端从服务器接收通知分组(并且,如果必要则在解密通知分组之后,提取源服务器的标识符、目标服务器的标识符和不符合信息)。在方框440处,验证客户端在客户端的监视器上显示对应的通知。例如,验证客户端(从对应的存储库中)取回不符合的共享规则中的哈希值的信息标识符;然后,通知指示信息项(由其信息标识符指示)的组合不被允许从源服务器到目标服务器。然后,过程返回到框439,等待来自任何服务器的下一通知分组。
以完全独立的方式,每当Web应用(经由Web服务器)向另一(目标)服务器传输包含将向其提交的(输出)信息的提交命令时,过程就进入方框441。在根据本公开的实施例的解决方案中,验证服务器在方框442处拦截提交命令(例如,利用挂钩技术)。如上所述,然后进入循环以用于分析提交命令中所包含的输出信息。循环在方框443处开始,在方框443中,验证服务器考虑对应存储库中的(当前)用户的条目中的(当前)信息项的哈希值(按照任意顺序从第一个开始)。验证服务器在方框444处,通过计算例如被提供在对应参数中的每条输出信息的哈希值,在如上所述的输出信息中搜索哈希值(该操作仅在循环的开始处被执行一次),并验证信息项的哈希值是否与输出信息的哈希值中的任何哈希值匹配。根据该搜索的结果,活动的流程在方框446处分支。如果在输出信息中找到哈希值,意味着输出信息包含对应的信息项,则验证服务器在方框445处将用户标识符和哈希值添加到信息项列表(最初为空),该信息项列表指示将被提交给目标服务器的用户的个人信息。然后该过程下降进入到方框447中。如果在输出信息中未找到哈希值,这意味着它不包含对应的信息项,则也从方框445到达同一点。在该点处,验证服务器验证最后一个用户的最后一个信息项是否已经被处理。如果否,则活动的流程返回到方框443以对(同一用户或下一用户的)下一信息项重复相同的操作。相反(一旦所有用户的所有信息项已经被处理),则通过下降到方框448退出循环。
现在,活动的流程根据信息项列表的内容分支。如果信息项列表不为空,意味着输出信息包含一个或多个用户的个人信息,则验证服务器在方框449处从对应的存储库中取回任何(相关)共享规则,其与将被提交给目标服务器的(新)信息项有关。特别地,相关共享规则是信息项列表的每个用户标识符的相关共享规则,这些相关共享规则包含信息项列表中相同用户的哈希值中的至少一个哈希值。验证服务器在方框450处,通过添加信息项列表的用户标识符以及针对他们中的每一个的信息项列表的对应哈希值和相关共享规则,来构建对应的验证分组。在方框451处,验证服务器利用目标服务器的验证服务器的公钥来加密验证分组。验证服务器在方框452处将(经加密的)验证分组传输给目标服务器(可能在验证其验证服务器的真实性和完整性之后),以用于如上所述的其处理。
验证服务器在方框453处从目标服务器接收对应的结果分组(目标服务器处于针对其的等待状态中)。如上所述,验证服务器在方框454处通过使用目标服务器的验证服务器的公钥来解密结果分组(并且提取验证结果和可能的不符合信息)。活动的流程根据验证结果在方框455处分支。如果验证结果是否定的,则在方框456处,验证服务器录入错误条件(可能例如经由电子邮件向服务器的管理员发送对应的警报)。相反,如果验证结果为肯定,则过程继续到方框457;如果信息项列表为空,意味着输出信息不包含任何用户的个人信息,则也可以从方框448直接到达同一点。在两种情况下,验证服务器都按照常规将提交命令(包含可能与目标服务器共享的个人信息或不包含任何个人信息)传输给目标服务器。然后,该过程从方框456或方框457返回至方框441,等待来自Web应用的下一提交命令。
自然地,为了满足局部和特定要求,本领域技术人员可以对本公开应用许多逻辑和/或物理修改和变更。更具体地,尽管已经参照本公开的一个或多个实施例以某种程度的特定性描述了本公开,但是应当理解,形式和细节中的各种省略、替换和改变以及其他实施例是可能的。特别地,甚至可以在无需前述描述中阐述的特定细节(诸如数值)的情况下实践本公开的不同实施例,以提供对其的更深入的理解;相反,众所周知的特征可能已经被省略或简化,以便避免不必要的细节使描述不清楚。而且,明确旨在的是,结合本公开的任何实施例所描述的特定元素和/或方法步骤可以作为一般设计选择的问题而并入任何其他实施例中。而且,在相同的组、不同的实施例、示例或备选方案中所呈现的项不应被解释为实际上彼此等效(而是应解释为它们是单独的自主实体)。在任何情况下,每个数值应被理解为根据适用的公差进行修改;特别地,术语“基本上”、“大约(about)”、“约(approximately)”等应被理解为“在10%以内”。此外,数值的每个范围应旨在明确指定沿该范围内的连续体(包括其端点)的任何可能的数字。顺序限定词或其他限定词仅用作标记来区分具有相同名称的元素,但它们本身并不表示任何优先权、优先级或顺序。术语“包括(include)”、“包括(comprise)”,“具有”,“包含”,“涉及”等应旨在具有开放的、非详尽的含义(即,不限于所列举的项),这些术语基于、取决于、根据、依据等应被视为非排他性关系(即,可能涉及其他可能的变量),术语“一/一个”应被视为一个或多个项(除非另外明确指示),术语“用于……的部件(或任何部件加功能表述)”应被视为被适配或被配置用于执行相关功能的任何结构。
例如,实施例提供一种用于控制对象的多个信息项的分发的方法。然而,信息项可以是任何数量的、任何类型的(例如,个人信息、敏感信息、商业和/或技术信息等)、以任何形式的(例如,文本、音频、图像、视频等),并且它们可能与任何对象(例如,个人、公司、组织等)有关。
在一个实施例中,方法包括由目标计算系统执行的以下步骤。然而,目标计算系统可以是任何类型的(请参阅下文)。
在一个实施例中,方法包括(由目标计算系统)接收对信息项中的一个或多个新信息项的指示。然而,新信息项可以是任何数量的,它们可以以任何方式(例如,通过其哈希值、其信息标识符、甚至直接通过信息项本身)被指示,并且它们可以以任何方式被接收(例如,单独或与共享规则一起,以加密或明文形式等)。
在一个实施例中,新信息项将被提交给与目标计算系统相关联的目标实体。然而,目标实体可以是任何类型的(例如,公司、组织等),并且其可以以任何方式与目标计算系统相关联(例如,与属于该组织的并且运行专用于控制信息项的分发的软件模块的目标计算系统相关联、与和该组织分离并作为一个整体专用于控制信息项的分发的目标计算系统相关联等)。
在一个实施例中,方法包括(由目标计算系统)接收对象的一个或多个共享规则。然而,共享规则可以是任何数量的,并且它们可以以任何方式被接收(例如,单独或与新信息的指示一起,以加密或明文的形式,直接被接收或响应于新信息项的指示而被下载等)。
在一个实施例中,共享规则基于信息项的一个或多个组合。然而,共享规则可以以任何方式基于信息项目的任何数量和类型的组合(例如,指示(以任何方式,诸如由其哈希值、信息标识符、实际值等被指示的)两个或更多个信息项的组合通常不被允许、仅在诸如具有一个或多个特性的特定目标计算系统上不被允许、仅在诸如时间、位置等之类的特定情况下不被允许等)。
在一个实施例中,方法包括(由目标计算系统)取回对目标计算系统可用的信息项中的任何可用信息项的指示。然而,可用信息项可以以任何方式被取回(例如,直接从专用存储器结构中取回、间接地经由其他软件应用从存储个人信息的通用存储器结构中取回、本地或远程地取回等等),并且它们可以以任何方式被指示(相对于新信息项相同或不同)。
在一个实施例中,方法包括(由目标计算系统)验证新信息项和可用信息项的组合与共享规则的符合性。然而,可以以任何方式(例如,通过匹配信息项的哈希值、信息标识符、实际值等)来验证符合性。
在一个实施例中,方法包括(由目标计算系统)根据所述验证符合性的结果来控制对新信息项的接收。然而,可以根据符合性验证的结果以任何方式控制对新信息项的接收(例如,在肯定结果的情况下通过以诸如直接接受或转发它们之类的任何方式接受新信息项,在否定结果的情况下通过拒绝新信息项或要求向对象的确认以用于新信息项的接受等)。
在一个实施例中,所述接收新信息项的指示、接收共享规则、取回可用信息项的指示、验证符合性以及控制对新信息项的接收由目标计算系统的可信实体执行。然而,可信实体可以是任何类型(例如,在目标计算系统上运行的软件模块、整个目标计算系统等)。
在一个实施例中,可信实体被对象的源计算系统信任。然而,可信实体可以被任何源计算系统以任何方式(例如,借助于数字证书、安全通信隧道等)信任(请参阅下文)。
在一个实施例中,方法包括(由目标计算系统)根据所述验证符合性的结果来控制新信息项向目标实体的转发。然而,转发可以是任何类型的(例如,转发给在同一目标计算系统上运行的软件模块、转发给另一计算系统等),并且可以根据验证的结果以任何方式(例如,使能传输、防止传输、要求向对象的确认以用于使能传输等)来控制转发。
在一个实施例中,方法包括响应于所述验证符合性的肯定结果,(由目标计算系统)接受对新信息项的接收。然而,可以以任何方式接受对新信息项的接收(例如,使能其实际传输、直接接收它等)。
在一个实施例中,方法包括响应于所述验证符合性的否定结果,(由目标计算系统)拒绝对新信息项的接收。然而,可以以任何方式拒绝对新信息项的接收(例如,防止其实际传输、无视它、有或没有对(已经从其接收到新信息项的指示的)计算系统和/或对对象的源计算系统的通知等)。
在一个实施例中,方法包括(由目标计算系统)将所述拒绝对新信息项的接收通知给对象的源计算系统。然而,该通知可以是任何类型的(例如,简单地指示拒绝、添加任何不符合信息,诸如第一不符合共享规则或所有不符合共享规则,等等),并且可以以任何方式使用该通知(例如,通过发送即时消息、电子邮件等及其任何组合来输出任何对应的通知,诸如视觉消息、声音消息等)。
在一个实施例中,方法包括(由目标计算系统)与共享规则相关联地接收新信息项的指示。然而,可以以任何方式接收此信息(例如,以单个消息或被链接在一起的两个或更多个消息的形式,每个消息均呈验证分组、远程命令等形式)。
在一个实施例中,方法包括(由目标计算系统)从(对象的源计算系统已经向其提交了新信息项的)另一目标计算系统接收新信息项的指示。然而,可以以任何方式从另一目标计算系统接收新信息项的指示(相对于何时直接从源计算系统接收信息,可以相同或不同)。
在一个实施例中,方法包括响应于对新信息项的接收而(由目标计算系统)存储共享规则。然而,响应于对新信息项的接收(例如,不加区别地接收、仅当新信息项可以被共享时接收等),可以以任何方式(例如,在数据库,文件等中)存储共享规则。
在一个实施例中,方法包括(由目标计算系统)将新信息项的指示与共享规则相关联地传输给(将向其提交新信息项的)另一目标计算系统。然而,该信息可以以任何方式被传输(相对于如上所述的其的接收,可以相同或不同)。
在一个实施例中,方法包括(由目标计算系统)与对象的标识符相关联地接收新信息项的指示。然而,对象的标识符可以是任何类型的(例如,用户ID、电子邮件地址、源计算系统的标识符等),并且其可以以任何方式与新信息项的指示相关联(例如,在同一消息中被指定或在链接到用于接收新信息项的指示的消息的单独消息中被指定、从与用于(诸如从其源地址)接收新信息项的指示的消息中还复,等等)。
在一个实施例中,方法包括(由目标计算系统)取回与对象的标识符相关联的可用信息项的指示。然而,可以以任何方式来取回与对象的标识符相关联的可用信息项(例如,通过查询公用存储器结构、通过读取专用于对象的存储器结构等)。
在一个实施例中,方法包括(由目标计算系统)响应于其接收,将新信息项与对象的标识符相关联地存储。然而,对象的标识符可以以任何方式与新信息项相关联(例如,通过将对象的标识符写入公用存储器结构的对应记录中、通过将新信息项写入专用于对象的存储器结构中等)。
在一个实施例中,方法包括(由目标计算系统)接收验证分组,该验证分组包括加密形式的新信息项的指示和/或共享规则。然而,验证分组可以是任何类型的(例如,消息、仅具有新信息项的指示,仅具有共享规则或具有这两者的命令、有或没有附加信息,等等)并且可以以任何方式加密验证分组(例如,利用目标计算系统的可信实体的公钥或秘钥等)。
在一个实施例中,方法包括(由目标计算系统)解密验证分组。然而,可以以任何方式解密验证分组(例如,利用对应的私钥、利用相同的秘钥、利用对可信实体已知而对目标实体未知的私钥/秘钥,等等)。
在一个实施例中,方法包括(由目标计算系统)接收包括新信息项的对应哈希值的新信息项的指示。然而,哈希值可以是任何类型的(例如,基于密码哈希、列表哈希、通用哈希、滚动哈希等)。
在一个实施例中,方法包括(由目标计算系统)基于信息项的对应哈希值的组合来接收共享规则。然而,共享规则可以以任何方式基于信息项的哈希值(例如,直接地通过包含哈希值、间接地通过包含用于取回哈希值的信息标识符,等等)。
在一个实施例中,方法包括(由目标计算系统)取回包括可用信息项的对应哈希值的可用信息项的指示。然而,可以以任何方式取回可用信息项的哈希值(例如,通过从专用器存储结构中读取它们、通过从可用于目标计算系统的信息来计算它们,等等)。
在一个实施例中,信息项是人的个人信息。然而,个人信息可以是任何类型的(例如,可以用来区分或追踪人的任何条信息,诸如名称、社会保险号、出生日期和地点、照片、生物特征记录,可能被链接到该人的任何条信息,诸如医疗、教育、财务或就业情况、客户的网络地址、社交帐户等)。
另一实施例提供一种用于控制对象的多个信息项的分发的方法,其中,方法包括:由对象的源计算系统将信息项中的一个或多个新信息项的指示传输给与将向其提交新信息项的目标实体相关联的目标计算系统,由源计算系统将对象的一个或多个共享规则传输给目标计算系统,该共享规则基于信息项的一个或多个组合,由源计算系统从目标计算系统接收验证新信息项和对目标计算系统可用的信息项中的任何可用信息项的组合与共享规则的符合性的结果,以及由源计算系统根据验证的结果控制新信息项向目标计算系统的传输。上文指出的相同考虑也适用于该实施例。
通常,如果利用等效方法实现相同的解决方案(通过使用更多步骤或步骤的部分的具有相同功能的类似步骤,去除一些不必要的步骤或添加其他可选步骤),则类似的考虑也适用;此外,可以(至少部分地)按照不同的顺序、同时或以交错的方式执行步骤。
实施例提供一种计算机程序,该计算机程序被配置为使计算系统执行上述方法中的每个方法。一个实施例提供了一种用于控制对象的多个信息项的分发的计算机程序产品。该计算机程序产品包括计算机可读存储介质,该计算机可读存储介质具有随其体现的程序指令。程序指令由计算系统可执行以使计算系统执行上述方法中的每种方法。然而,计算机程序可以被实现为独立模块,也可以被实现为用于预先存在的软件程序(例如,用于目标计算系统的Web服务器或用于源计算系统的浏览器)的插件,或直接在其中被实现。此外,计算机程序可以在任何目标/源计算系统上被执行(见下文)。在任何情况下,根据本公开的实施例的解决方案甚至可以利用硬件结构(例如,通过集成在一个或多个半导体材料芯片中的电子电路)、或被适当编程或以其他方式配置的软件和硬件的组合来实现。
实施例提供了一种计算系统,其包括被配置用于执行上述方法中的每个方法的步骤的部件。一个实施例提供了一种包括电路的计算系统,该电路(即,例如由软件适当配置的任何硬件)用于执行相同方法中的每个方法的步骤。然而,计算系统可以是任何类型的(例如,目标计算系统、源计算系统、一个或多个源计算系统与一个或多个目标计算系统的组合,等等)。而且,目标计算系统可以是任何类型的(例如,物理机、虚拟机、云服务等),源计算系统可以是任何类型的(例如,台式机、膝上型电脑、平板电脑、智能手机等),并且它们可以使用任何种类的连接(例如,有线或无线连接、电话连接、卫星连接等)通过任何网络(例如,全球网络、广域网、局域网等)进行通信。
通常,如果计算系统具有不同的结构或包括等效组件或具有其他操作特性,则类似的考虑也适用。在任何情况下,其每个组件都可以被分成更多的元件,或者可以将两个或更多个的组件组合在一起成为一个元件;此外,可以复制每个组件以支持并行执行对应的操作。此外,除非另外说明,否则不同组件之间的任何交互通常不需要是连续的,并且该交互可以是直接的或通过一个或多个中介是间接的。
在任何可能的技术细节结合层面,本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如互联网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于实施本公开的操作的计算机可读程序指令可以是汇编程序指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据或以一种或多种编程语言(包括面向对象的编程语言,诸如Smalltalk,C++等)和常规过程编程语言(诸如“C”编程语言或类似编程语言)的任何组合编写的源代码或目标代码。计算机可读程序指令可以完全在用户计算机上执行、部分在用户的计算机上执行、作为独立软件包执行、部分在用户的计算机上并且部分在远程计算机上执行、或完全在远程计算机或服务器上执行。在后一种情况下,远程计算机可以通过任何类型的网络(包括局域网(LAN)或广域网(WAN))连接到用户的计算机,或者可以与外部计算机建立连接(例如,通过使用互联网服务提供商的互联网)。在一些实施例中,包括例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA)的电子电路可以通过利用计算机可读程序指令的状态信息来执行计算机可读程序指令以个性化电子电路,以便执行本公开的方面。
这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按照相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

Claims (16)

1.一种用于控制对象的多个信息项的分发的方法,其中所述方法包括:
由目标计算系统接收所述信息项中的一个或多个新信息项的指示,所述一个或多个新信息项将被提交给与所述目标计算系统相关联的目标实体,
由所述目标计算系统接收所述对象的一个或多个共享规则,所述共享规则基于所述信息项的一个或多个组合,
由所述目标计算系统取回对所述目标计算系统可用的所述信息项中的任何可用信息项的指示,
由所述目标计算系统验证所述新信息项和所述可用信息项的组合与所述共享规则的符合性,以及
由所述目标计算系统根据所述验证所述符合性的结果,控制对所述新信息项的接收。
2.根据权利要求1所述的方法,其中所述接收所述新信息项的所述指示、接收所述共享规则、取回所述可用信息项的所述指示、验证所述符合性和控制对所述新信息项的所述接收由所述目标计算系统的可信实体执行,所述可信实体被所述对象的源计算系统信任。
3.根据权利要求1所述的方法,其中,所述方法包括:
由所述目标计算系统根据所述验证所述符合性的结果,控制所述新信息项向所述目标实体的转发。
4.根据权利要求1所述的方法,其中所述方法包括:
由所述目标计算系统响应于所述验证所述符合性的肯定结果,接受对所述新信息项的所述接收。
5.根据权利要求1所述的方法,其中所述方法包括:
由所述目标计算系统响应于所述验证所述符合性的否定结果,拒绝对所述新信息项的所述接收。
6.根据权利要求5所述的方法,其中所述方法包括:
由所述目标计算系统向所述对象的源计算系统通知所述拒绝对所述新信息项的所述接收。
7.根据权利要求1所述的方法,其中所述方法包括:
由所述目标计算系统与所述共享规则相关联地接收所述新信息项的所述指示。
8.根据权利要求1所述的方法,其中所述方法包括:
由所述目标计算系统从另一目标计算系统接收所述新信息项的所述指示,所述新信息项已经由所述对象的源计算系统提交给所述另一目标计算系统。
9.根据权利要求1所述的方法,其中所述方法包括:
由所述目标计算系统响应于对所述新信息项的所述接收,存储所述共享规则,以及
由所述目标计算系统将所述新信息项的所述指示与所述共享规则相关联地传输给另一目标计算系统,所述新信息项将被提交给所述另一目标计算系统。
10.根据权利要求1所述的方法,其中所述方法包括:
由所述目标计算系统与所述对象的标识符相关联地接收所述新信息项的所述指示,
由所述目标计算系统取回与所述对象的所述标识符相关联的所述可用信息项的所述指示,以及
由所述目标计算系统响应于所述接收,将所述新信息项与所述对象的所述标识符相关联地存储。
11.根据权利要求1所述的方法,其中所述方法包括:
由所述目标计算系统接收验证分组,所述验证分组包括加密形式的所述新信息项的所述指示和/或所述共享规则,以及
由所述目标计算系统解密所述验证分组。
12.根据权利要求1所述的方法,其中所述方法包括:
由所述目标计算系统接收所述新信息项的所述指示,所述指示包括所述新信息项的对应哈希值,
由所述目标计算系统基于所述信息项的对应哈希值的组合,接收所述共享规则,以及
由所述目标计算系统取回所述可用信息的所述指示,所述指示包括所述可用信息项的对应哈希值。
13.根据权利要求1所述的方法,其中所述信息项是人的个人信息。
14.一种用于控制对象的多个信息项的分发的计算机程序产品,所述计算机程序产品包括计算机可读存储介质,所述计算机可读存储介质具有随其体现的程序指令,所述程序指令能够由计算系统读取以使所述计算系统执行根据权利要求1至13中任一项所述的方法的步骤。
15.一种用于控制对象的多个信息项的分发的计算系统,所述计算系统包括电路装置,所述电路装置被单独配置为执行根据权利要求1至13中任一项所述的方法的每个步骤。
16.一种包括模块的系统,所述模块被单独配置为执行根据权利要求1至13中任一项所述的方法的每个步骤。
CN202010715849.2A 2019-08-26 2020-07-23 控制提交给计算系统的信息的组合 Pending CN112433985A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/551,271 US11244069B2 (en) 2019-08-26 2019-08-26 Controlling combination of information submitted to computing systems
US16/551,271 2019-08-26

Publications (1)

Publication Number Publication Date
CN112433985A true CN112433985A (zh) 2021-03-02

Family

ID=74679393

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010715849.2A Pending CN112433985A (zh) 2019-08-26 2020-07-23 控制提交给计算系统的信息的组合

Country Status (2)

Country Link
US (1) US11244069B2 (zh)
CN (1) CN112433985A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11244069B2 (en) 2019-08-26 2022-02-08 International Business Machines Corporation Controlling combination of information submitted to computing systems

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11184339B2 (en) * 2020-03-25 2021-11-23 Wipro Limited Method and system for secure communication

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150332283A1 (en) * 2014-05-13 2015-11-19 Nant Holdings Ip, Llc Healthcare transaction validation via blockchain proof-of-work, systems and methods
CN105844164A (zh) * 2015-02-04 2016-08-10 华美宏道公司 用于数据的安全共享的系统和方法
CN106021269A (zh) * 2015-03-27 2016-10-12 国际商业机器公司 用于转化社交媒体重新共享的方法和系统
US20160315894A1 (en) * 2015-04-23 2016-10-27 International Business Machines Corporation Sharing of information extracted from messages in collaborative systems
CN108351933A (zh) * 2015-10-22 2018-07-31 甲骨文国际公司 最终用户启动的访问服务器真实性检查

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7827234B2 (en) 2005-01-10 2010-11-02 International Business Machines Corporation Privacy entitlement protocols for secure data exchange, collection, monitoring and/or alerting
US20070088635A1 (en) * 2005-09-29 2007-04-19 King Jonathan B Determining policy compliance based on existing compliance results
US9172706B2 (en) * 2009-11-23 2015-10-27 At&T Intellectual Property I, L.P. Tailored protection of personally identifiable information
US9032544B2 (en) * 2010-12-22 2015-05-12 Private Access, Inc. System and method for controlling communication of private information over a network
US9665722B2 (en) 2012-08-10 2017-05-30 Visa International Service Association Privacy firewall
US10769296B2 (en) * 2013-12-10 2020-09-08 Early Warning Services, Llc System and method of permission-based data sharing
US10904261B2 (en) 2014-10-23 2021-01-26 Dele Atanda Intelligent personal information management system
CN107533586A (zh) 2015-03-23 2018-01-02 私有通道公司 用于加强生物信息学数据隐私和实现生物信息学数据广泛共享的系统、方法和设备
US10395059B2 (en) * 2015-07-15 2019-08-27 Privacy Analytics Inc. System and method to reduce a risk of re-identification of text de-identification tools
US10242213B2 (en) * 2015-09-21 2019-03-26 Privacy Analytics Inc. Asymmetric journalist risk model of data re-identification
US9977920B2 (en) * 2016-03-22 2018-05-22 Ca, Inc. Providing data privacy in computer networks using personally identifiable information by inference control
US11023617B2 (en) 2016-05-16 2021-06-01 Privacy Rating Ltd. System and method for privacy policy enforcement
US20180075138A1 (en) * 2016-09-14 2018-03-15 FileFacets Corp. Electronic document management using classification taxonomy
US10482279B2 (en) * 2016-11-08 2019-11-19 Microsoft Technology Licensing, Llc Pattern-less private data detection on data sets
US10839099B2 (en) * 2017-11-20 2020-11-17 Sap Se General data protection regulation (GDPR) infrastructure for microservices and programming model
US10891359B2 (en) * 2017-12-21 2021-01-12 Mastercard International Incorporated Management systems for personal identifying data, and methods relating thereto
US10803181B2 (en) * 2018-01-09 2020-10-13 Accenture Global Solutions Limited Data security and protection system using uniqueness factor classification and analysis
US10970414B1 (en) * 2018-08-23 2021-04-06 Intuit Inc. Automatic detection and protection of personally identifiable information
SG10201914133SA (en) * 2018-12-31 2020-07-29 Dathena Science Pte Ltd Methods and systems for personal information detection, extraction, linking, protection and management
US11704431B2 (en) * 2019-05-29 2023-07-18 Microsoft Technology Licensing, Llc Data security classification sampling and labeling
US11244069B2 (en) * 2019-08-26 2022-02-08 International Business Machines Corporation Controlling combination of information submitted to computing systems
US11275788B2 (en) * 2019-10-21 2022-03-15 International Business Machines Corporation Controlling information stored in multiple service computing systems
US11620405B2 (en) * 2019-11-08 2023-04-04 Jpmorgan Chase Bank, N.A. Automated detection, elimination, and prevention of toxic combinations for personal information data
US11604776B2 (en) * 2020-04-03 2023-03-14 International Business Machines Corporation Multi-value primary keys for plurality of unique identifiers of entities

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150332283A1 (en) * 2014-05-13 2015-11-19 Nant Holdings Ip, Llc Healthcare transaction validation via blockchain proof-of-work, systems and methods
CN105844164A (zh) * 2015-02-04 2016-08-10 华美宏道公司 用于数据的安全共享的系统和方法
CN106021269A (zh) * 2015-03-27 2016-10-12 国际商业机器公司 用于转化社交媒体重新共享的方法和系统
US20160315894A1 (en) * 2015-04-23 2016-10-27 International Business Machines Corporation Sharing of information extracted from messages in collaborative systems
CN108351933A (zh) * 2015-10-22 2018-07-31 甲骨文国际公司 最终用户启动的访问服务器真实性检查

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11244069B2 (en) 2019-08-26 2022-02-08 International Business Machines Corporation Controlling combination of information submitted to computing systems

Also Published As

Publication number Publication date
US20210064777A1 (en) 2021-03-04
US11244069B2 (en) 2022-02-08

Similar Documents

Publication Publication Date Title
US11973860B1 (en) Systems and methods for encryption and provision of information security using platform services
US11870816B1 (en) Trusted-code generated requests
US10367796B2 (en) Methods and apparatus for recording a change of authorization state of one or more authorization agents
US11757641B2 (en) Decentralized data authentication
US20190158275A1 (en) Digital containers for smart contracts
US10666684B2 (en) Security policies with probabilistic actions
US9680654B2 (en) Systems and methods for validated secure data access based on an endorsement provided by a trusted third party
CN111316278A (zh) 安全身份和档案管理系统
US9519696B1 (en) Data transformation policies
US9825917B2 (en) System and method of dynamic issuance of privacy preserving credentials
Industry Data security standard
US9420007B1 (en) Access control using impersonization
CN110708162B (zh) 资源的获取方法、装置、计算机可读介质及电子设备
US9866391B1 (en) Permissions based communication
CN112433985A (zh) 控制提交给计算系统的信息的组合
US10417448B2 (en) Management of sensitive information access and use
US11750572B2 (en) System, method, and computer-accessible medium for hiding messages sent to third parties
US10015018B2 (en) Signing key log management
Macdonald et al. Escaping from Identity Providers: Protecting Privacy with Verifiable Credentials in Community Solid Server

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