安全区块链管理技术的制作方法

文档序号:19251968发布日期:2019-11-27 20:22阅读:209来源:国知局
安全区块链管理技术的制作方法



背景技术:

区块链技术正变得越来越普遍。“区块链”可以是一种分布式数据库,它维护不断增长的记录列表,以防篡改和修订。区块链可以包含多个交互记录区块。区块链中的每个块还可以包含时间戳和前一个块的链接。例如,每个区块可以包含或附加到上一个区块的散列。换句话说,区块链中的交易记录可存储为一系列“块”或包含在给定时间周期内发生的数笔交易的记录的永久性文件。在完成块且验证块之后可由区块链提供商将块附加到区块链。可以分发区块链,并且可以在一个或多个位置维护区块链的副本。在一些实例中,区块链可用于验证交易。区块链的安全性可以使用加密方案获得。

虽然利用区块链可以带来许多好处,但当前技术要求将每个交互记录报告至区块链。鉴于区块链技术越来越受欢迎,可以证明管理和跟踪系统内每个被连接的装置之间的每个交互很困难。因此,当前技术包括固有延迟问题。

本发明的实施例单独地以及共同地解决这些问题和其它问题。



技术实现要素:

本发明的实施例涉及用于安全区块链管理的技术。

本发明的一个实施例涉及一种方法。所述方法包括由数据处理计算机促进在第一电子装置的第一应用程序与第二电子装置的第二应用程序之间交换多个数据传输消息。在至少一个实施例中,所述多个数据传输消息中的每一个数据传输消息被数字签名。所述方法还包括由所述数据处理计算机根据所述交换维护与所述第一电子装置的第一用户以及所述第二电子装置的第二用户相关联的电子记录。所述方法还包括由数据处理计算机确定所述电子记录的传输值。所述方法还包括由所述数据处理计算机将包括所述净传输值的数据传送到区块链提供商。在至少一个实施例中,所述区块链提供商接收所述数据可使得所述区块链提供商用所述传输值更新分类账。

本发明的另一实施例涉及被配置成执行上述方法的数据处理计算机。

本发明的另一实施例涉及一种方法,其包括由计算装置维护第一记录和第二记录,所述第一记录与第一电子装置和第二电子装置之间的第一信任关系相关联,所述第二记录与所述第二电子装置和第三电子装置之间的第二信任关系相关联。所述方法还包括由所述计算装置从所述第一电子装置的第一应用程序接收执行与所述第一电子装置和所述第三电子装置相关联的数据传输的请求。所述方法还包括由所述计算装置代表所述第一电子装置将第一数据传输消息传送到所述第二电子装置的第二应用程序。所述方法还包括由所述计算装置代表所述第二电子装置将第二数据传输消息传送到所述第三电子装置的第三应用程序。所述方法还包括由所述计算装置根据所述第一数据传输消息更新与所述第一电子装置和所述第二电子装置相关联的第一记录。所述方法还包括由所述计算装置根据所述第二数据传输消息更新与所述第二电子装置和所述第三电子装置相关联的第二记录。所述方法还包括由所述计算装置确定所述第一记录和所述第二记录的传输值。所述方法还包括由所述计算装置将包括所述传输值的数据传送到区块链提供商,其中所述区块链提供商接收所述数据使所述区块链提供商用所述第一记录和所述第二记录的所述传输值来更新分类账。

关于本发明的实施例的其它细节可见于具体实施方式和附图。

附图说明

图1显示了根据一些实施例用于管理区块链的系统的框图。

图2描绘了能够实施图1的用户装置的至少一些实施例的示例性计算机架构。

图3描绘了能够实施图1的数据处理计算机的至少一些实施例的示例性计算机架构。

图4显示了用于创建传输信道的方法的流程图。

图5显示了用于更新区块链分类账的方法的流程图。

图6显示了说明信任环境的示意图。

图7显示了一个流程图,说明在两方到三方之间执行数据传输的方法。

具体实施方式

在以下描述中,将描述各种实施例。出于解释的目的,阐述特定配置和细节以便提供对实施例的透彻理解。然而,所属领域的技术人员也应清楚,可在无所述特定细节的情况下实践实施例。此外,可能省略或简化众所周知的特征以免使描述的实施例模糊不清。

在论述本发明的一些实施例的细节之前,对一些术语的描述可有助于理解各种实施例。

“用户装置”可以包括用户可以携带和操作的任何合适的电子装置,所述装置还可提供与网络远程通信的能力。远程通信能力的实例包含使用移动电话(无线)网络、无线数据网络(例如,3g、4g或类似网络)、wi-fi、wi-max或可提供例如因特网或专用网络等网络访问的任何其它通信介质。用户装置的实例包括移动电话(例如蜂窝电话)、pda、平板计算机、上网本、膝上型计算机、个人音乐播放器、手持式专用阅读器等。用户装置的其他实例包括可穿戴装置,诸如智能手表、健身手环、脚链、戒指、耳环等,以及具有远程通信能力的汽车。用户装置可包括用于执行此类功能的任何合适硬件和软件,且还可包括多个装置或组件(例如,当装置通过连接至另一装置—即,将另一装置用作调制解调器—而能够远程访问网络时,联系在一起的两个电子装置可被认为是单个用户装置)。

“凭证”可以是充当价值、拥有权、身份或授权的可靠证据的任何合适的信息。凭证可为可被呈现或者含于能够充当确认的任何对象或文档当中的一串数字、字母或任何其它合适的字符。

“应用程序”可以是存储在计算机可读介质(例如,存储器元件或安全元件)上的计算机代码或其它数据,所述计算机代码或其它数据可由处理器执行以完成任务。

“令牌”可以限定应用到传输信道的阈值限制。由令牌定义的阈值限制可以与传输信道的参与者关联。令牌可以定义与网络货币和/或法定货币相关联的金额。在一些实施例中,令牌可以由一定金额的法定货币支持,或令牌可以不由法定货币支持。在至少一个实施例中,令牌可以被生成,使得与令牌相关联的金额可以变成用户(例如,区块链用户)不可花费的。例如,区块链提供商可以在分类账中记录用户已接收令牌,并且可以保留对应于分类账内的令牌的金额,使得用户不能花费所保留的金额超过一次。

“令牌请求消息”可以是用于请求令牌的电子消息。令牌请求消息可包括可以用于标识支付账户的信息,和/或用于生成令牌的信息。例如,令牌请求消息可以包括支付凭证、用户识别信息(例如,姓名、字母数字标识符、用户装置标识符等)、与所请求的令牌相关联的金额、传输信道限制(例如,与传输信道和/或传输信道的用户相关联的阈值限制)、密码和/或任何其他合适的信息。

“令牌响应消息”可以是对令牌请求作出响应的消息。令牌响应消息可包含令牌请求被批准还是被拒绝的指示。令牌响应消息还可以包括令牌(例如,金额和/或阈值限制)、用户识别信息(例如,姓名、字母数字标识符、用户装置标识符等)、传输信道限制(例如,与传输信道和/或传输信道的用户相关联的阈值限制)、密码和/或任何其他合适的信息。

“传输信道请求消息”可以是用于请求传输信道的电子消息。在一些实施例中,传输信道请求消息可以包括信道发起者(例如,用户标识符、用户装置标识符等)和任何合适数量的信道参与者(例如,一个或多个其他用户标识符、一个或多个其他用户装置标识符等)。在至少一个实例中,传输信道请求消息可以包括与传输信道的阈值限制相关联的数据字段,和/或与关联一个或多个用户/用户装置的阈值限制有关的数据字段。在一些实施例中,可以使用与用户/用户装置相关联的私钥来对传输信道请求消息签名,使得可以使用与用户/用户装置相关联的公钥来对其进行验证(如适用)。传输信道请求消息可以包括请求类型指示符。请求类型指示符可以指示请求是要打开数据传输信道或请求是要关闭数据传输信道。在至少一个实例中,指示用户正请求关闭信道的传输信道请求消息可以称为“关闭信道请求消息”。在至少一个实例中,指示用户正请求打开信道的传输信道请求消息可以称为“打开信道请求消息”。

“传输信道响应消息”可以是用于响应传输信道请求消息的电子消息。在一些实施例中,传输信道响应消息可以包括信道发起者(例如,用户标识符、用户装置标识符等)和任何合适数量的信道参与者(例如,一个或多个其他用户标识符、一个或多个其他用户装置标识符等)。在至少一个实例中,传输信道响应消息可以包括与传输信道的阈值限制相关联的数据字段、与一个或多个用户/用户装置相关联的阈值限制有关的数据字段、与传输信道和/或用户装置相关联的令牌(例如,金额和/或阈值限制)、与用户/用户装置相关联的公钥/私钥。在至少一个实施例中,传输信道响应消息可以指示响应指示符,响应指示符指示信道创建是否成功或不成功。传输信道响应消息可以包括请求类型指示符。请求类型指示符可以指示响应与请求打开数据传输信道的请求有关,或响应与关闭数据传输信道的请求有关。在至少一个实例中,指示对请求关闭信道的响应的传输信道响应消息可以称为“关闭信道响应消息”。在至少一个实例中,指示对请求打开信道的响应的传输信道响应消息可以称为“打开信道响应消息”。

如上面讨论的,区块链可以是分布式数据库,其维护不断增长的记录的列表,以防篡改和修订。区块链可以包含多个交互记录区块。区块链中的每个块还可以包含时间戳和前一个块的链接。例如,每个区块可以包含或附加到上一个区块的散列。换句话说,区块链中的交易记录可存储为一系列“块”或包含在给定时间周期内发生的数笔交易的记录的永久性文件。在块完成并经过验证之后,可以通过合适的节点将块附加到区块链。在本发明的实施例中,区块链可以是分布式的,并且可以在验证网络中的每个节点处维护区块链的副本。验证网络中的任何节点随后可以使用区块链来验证交易。区块链的安全性可以使用加密方案获得。

“区块链提供商计算机”可以是被配置成提供区块链功能的电子装置。区块链提供商计算机可以包括被配置成维护区块链的各个方面(例如,一个或多个分类账、令牌管理等)的单个装置或多个装置。在一些实例中,区块链提供商计算机还可以提供令牌管理功能。因此,在一些实施例中,可以设想区块链和令牌管理功能可以共同由区块链提供商计算机执行。

“数据传输请求消息”可以是用于请求数据传输的电子消息。在一些实例中,数据传输请求消息可以由用户装置(例如,由个体操作的用户装置)发起。数据传输请求消息可以指示数据传输的接收者(例如,与不同的用户装置相关联的另一个体)。例如,另一电子装置(例如,服务器、由另一个体/实体操作的另一电子装置)和/或用户(例如,个体和/或实体)可以被指定为数据传输请求消息的接收者。数据传输请求消息可以指示与数据传输相关联的值。举例来说,所述值可以指示当前金额、数字资产金额、积分数目(例如,奖励积分、得分等)或任何合适的可转移数据的值/面额。在至少一个实例中,数据传输请求消息可以包括数据字段,数据字段包括但不限于发起者标识符数据字段、接收者标识符数据字段、传输值数据字段、数字签名数据字段、净交易值、时间戳数据字段等。在至少一个实例中,数据传输请求消息可以由数据处理计算机发起。在一些实例中,净交易值可以是适合于立即记录在由区块链提供商计算机管理的分类账内的格式。在一些实施例中,可以使用与用户/用户装置相关联的私钥来对数据传输请求消息签名,使得可以使用与用户/用户装置相关联的公钥来对其进行验证(如适用)。

“数据传输响应消息”可以是用于响应数据传输请求消息的电子消息。在一些实例中,数据传输响应消息可以由用户装置(例如,由个休和/或实体操作的电子装置)发起。数据传输响应消息可以指示对应的数据传输请求消息的发起者。例如,另一用户装置(例如,服务器、由另一个体/实体操作的另一电子装置)和/或用户(例如,个体和/或实体)可以被指定为与数据传输响应消息对应的数据传输请求消息的发起者。数据传输响应消息可以指示数据传输的值(例如,从对应数据传输请求消息接收的值)。举例来说,所述值可以指示当前金额、数字资产金额、积分数目(例如,奖励积分、得分等)或任何合适的可转移数据的值/面额。在至少一个实例中,数据传输响应消息可以包括数据字段,所述数据字段包括但不限于发起者标识符数据字段、接收者标识符数据字段、传输值数据字段、数字签名数据字段、时间戳数据字段、响应代码等。在至少一个实施例中,数据传输响应消息可以用发送方的私钥进行数字签名,而在其他实施例中,数据请求响应消息可以不经过数字签名。在一些实例中,响应代码可以指示数据传输请求是否已被批准或被拒绝。

“电子记录”可以是以电子方式存储的一个或多个交易的任何记录。例如,电子记录可以包括与一个或多个身份(例如,两个或更多个用户、两个或更多个用户装置等)相关联的多个交互记录。在一些实施例中,可利用电子记录来记录从两个或更多个电子装置接收和/或传送到两个或更多个电子装置的每个交互记录。在一些实施例中,电子记录可以与一个或多个阈值限制相关联。每个阈值限制可以指示由特定用户和/或传输信道发起的数据交易不可超过的值。例如,与两个用户/电子装置相关联的电子记录还可以与两个阈值限制相关联。第一阈值限制可以指示由第一用户发起的数据交易不可超过的值,而第二阈值限制可指示由第二用户发起的数据交易不可超过的第二值。在至少一个实例中,电子记录可维护公钥与用户装置之间的关联,和/或维护由区块链提供商维护的令牌(例如,金额和/或阈值限制)和用户装置之间的关联。

“密码密钥”可以是任何位串,以供密码算法使用以将明文变换成密文或将密文变换成明文。密码密钥可包含对称密钥和非对称密钥。加密密钥可用于对数据传输请求/响应消息进行签名。例如,可以使用私钥对数据传输请求/响应消息进行签名。可接着使用对应于私钥的公钥来验证签名的数据传输请求/响应消息。

“私钥”是一种由一方保密的密码密钥。私钥可以用于对交易签名,使得交易可以由另一电子装置验证。例如,可以使用一个或多个数据字段计算散列值。密码算法可以使用私钥来对散列值签名,使得另一电子装置可以利用公钥来验证签名,验证值可以与未加密的数据传输请求/响应消息有效载荷比较,以确定数据传输请求/响应消息的有效性和完整性。

“公钥”可以是一种分发给某个实体或可供某个实体(而不是持有对应私钥的一方)使用的密码密钥类型。可以使公钥对电子装置可用,以便与公钥相关联的经签名的交易可以以与上文讨论类似的方式由电子装置验证。

“授权请求消息”可以是请求对交易的授权的电子消息。在一些实施例中,授权请求消息被发送至支付处理器网络和/或支付卡的发行方以请求交易授权。根据一些实施例的授权请求消息可以符合iso8583,iso8583是用于交换与用户使用支付装置或支付账户进行的支付相关联的电子交易信息的系统的标准。授权请求消息可包含可与支付装置或支付账户相关联的发行方账户标识符。授权请求消息还可以包括与“识别信息”对应的额外数据元素,包含(只作为实例):服务代码、cvv(卡检验值)、dcvv(动态卡检验值)、pan(主账号或“账号”)、用户名、到期日期等等。授权请求消息还可以包括“交易信息”,例如与当前交易相关联的任何信息,例如交易金额、商家识别符、商家位置、购方银行识别号(bin)、卡片接受器id、识别正购买的项目的信息等,以及可用于确定是否识别和/或授权交易的任何其它信息。

“授权响应消息”可以是响应于授权请求的消息。在一些情况下,授权响应消息可以是由发行金融机构或交易处理计算机生成的对授权请求消息的电子消息应答。授权响应消息可包含仅作为实例以下状态指示符中的一个或多个状态指示符:批准—交易被批准;拒绝—交易未被批准;或呼叫中心—挂起更多信息的响应,商家必须呼叫免费授权电话号码。授权响应消息还可以包含授权代码,其可以是信用卡发行银行响应于电子消息中的授权请求消息(直接地或者通过交易处理计算机)返回给商家的访问装置(例如pos设备)的指示交易被批准的代码。所述代码可充当授权的证据。如上文指出的,在一些实施例中,交易处理计算机可生成或向商家转发授权响应消息。

“用户”可以包括个体和/或实体。在一些实施例中,用户可以与一个或多个个人账户和/或电子装置相关联。用户还可以被称为持卡人、账户持有者、消费者、商家等。

“数据处理计算机”可以由能够提供数据处理服务的实体操作。数据处理计算机可以提供处理交互记录和/或管理与一个或多个用户/电子装置相关联的电子记录的功能。数据处理计算机可以被配置成从两个或更多个电子装置和/或区块链提供商传送和接收消息(例如,令牌请求/响应消息、数据传输请求/响应消息等)。

“服务器计算机”可包括功能强大的计算机或计算机集群。举例来说,服务器计算机可以是大型主机、小型计算机集群或像单元一样工作的一组服务器。在一个实例中,服务器计算机可以是耦合到网络服务器的数据库服务器。服务器计算机可耦合到数据库,且可包含用于服务来自一个或多个客户端计算机的请求的任何硬件、软件、其它逻辑或前述内容的组合。服务器计算机可包括一个或多个计算设备,且可使用各种计算结构、布置和编译中的任一种来服务来自一个或多个客户端计算机的请求。

图1显示了根据一些实施例用于管理区块链的系统100的框图。系统100可以包括用户装置102(例如,用户装置102-1、用户装置102-2、用户装置102-3和用户装置102-4)。应当理解,用户装置102可以包括任何适当数量的用户装置。系统100还可以包括区块链提供商计算机104和数据处理计算机108。这些系统和计算机中的每一个可以通信方式彼此耦合(例如,经由网络106)。为了简化说明,图1中示出特定数目的组件。然而,应理解,本发明的实施例可包含多于一个每种组件。另外,本发明的一些实施例可包含比图1中所示的所有组件少或多的组件。另外,图1中的组件可以使用任何合适的通信协议经由任何合适的通信媒体(包含因特网)通信。

区块链提供商计算机104可以具有任何合适的特性。区域链提供商计算机104可以个别地包括处理器和耦合至处理器的计算机可读介质,所述计算机可读介质包括可由处理器执行以执行本文中描述的功能的代码。区块链提供商计算机104可以通信方式耦合到数据处理计算机108(例如,经由网络106)。在至少一些实施例中,区块链提供商计算机104可以另外以通信方式耦合到用户装置102(例如,经由网络106)。

在至少一个实施例中,区块链提供商计算机104可以被配置成执行令牌管理功能,包括令牌的维护和/或实施(例如,与用户和/或信道相关联的金额和/或阈值限制)。在至少一个实例中,区块链提供商计算机104可以被配置成接收来自数据处理计算机108和/或用户装置102的令牌请求消息,并向数据处理计算机108和/或用户装置102提供令牌响应消息。在一些实施例中,区块链提供商计算机104可以被配置成提供和维护令牌(例如,金额和/或阈值限制)的映射以及令牌所关联的用户/实体。

在至少一个实施例中,区块链提供商计算机104还可以被配置成个别地从用户装置102和/或从数据处理计算机108(例如,经由网络106)接收数据传输请求消息。区块链提供商计算机104还可以被配置成根据所接收的数据传输请求消息和/或令牌请求消息来执行包括管理一个或多个分类账的功能。

用户装置102可以个别地包括处理器和耦合至处理器的计算机可读介质,所述计算机可读介质包括可由处理器执行以执行本文中描述的功能的代码。用户装置102可通过通信介质(例如,网络106)以通信方式耦合到数据处理计算机108和/或区块链提供商计算机104,以便交换信息(例如,交互记录)。用户装置102可以个别地包括一个或多个软件模块,所述一个或多个软件模块包括软件应用程序(例如,数据传输应用程序)。软件应用程序可以被配置成管理与用户装置102发起和/或接收的数据传输有关的信息。

数据处理计算机108可以与任何合适的数据处理提供商相关联。数据处理计算机108可以个别地包括处理器和耦合至处理器的计算机可读介质,所述计算机可读介质包括可由处理器执行以执行本文中描述的功能的代码。数据处理计算机108的实例包括能够与网络106通信以及发起/处理信息的任何装置,所述信息包括传输信道请求/响应消息、令牌请求/响应消息和/或数据传输请求/响应消息。数据处理计算机108可以通过通信介质(例如,网络106)向用户装置102和/或区块链提供商计算机104中的至少一者传送数据和/或从用户装置102和/或区块链提供商计算机104中的至少一者接收数据。在至少一个实施例中,数据处理计算机108可以被配置成管理与一个或多个用户/用户装置102相关联的电子记录。在某些情况下,电子记录可以包括与数据请求/响应消息相关联的一个或多个交互记录。在又一些另外的实例中,数据处理计算机108可以被配置成实施与一个或多个用户/用户装置102相关联的一个或多个阈值限制。在至少一个实施例中,数据处理计算机108可以被配置成为用户装置102中的至少一个生成和存储公钥和/或私钥。数据处理计算机108可以利用与用户装置相关联的存储的公钥来验证来自用户装置的消息(例如,传输信道请求/响应消息、数据传输请求/响应消息),以便验证由用户装置发起的消息。

在至少一个实施例中,数据处理计算机108可以被配置成促进在用户装置102中的两个或更多个用户装置之间交换传输信道请求/响应消息和/或数据传输请求/响应消息。例如,数据处理计算机108可以被配置成充当中间装置,以促进通过如图1所描绘的传输信道a、b、c和d交换传输信道请求/响应消息和/或数据传输请求/响应消息。在一个非限制性实例中,用户装置102-1可以提交传输信道请求消息(例如,通过在用户装置102-1上操作的应用程序),请求创建传输信道。在接收时或在另一合适的时间,数据处理计算机108可以将传输信道请求消息转发到用户装置102-3。用户装置102-3的用户可以指示(例如,使用在用户装置102-3上操作的应用程序)是否希望允许创建与用户装置102-1和用户装置102-3相关联的传输信道(例如,电子记录)。如果用户装置102-3的用户拒绝传输信道请求,则数据处理计算机108可以被配置成制止进一步处理。然而,如果用户装置102-3的用户同意传输信道请求,则传输信道响应消息可以从用户装置102-3传送到数据处理计算机108。在至少一个实施例中,传输信道请求消息可以直接在用户装置102-1和用户装置102-3之间交换。在这些实例中,传输信道响应消息可以由一个或两个用户装置传送,并且可由数据处理计算机108接收。

在至少一个实施例中,在接收指示传输信道已被发起和被批准的传输信道响应消息时,数据处理计算机108可以被配置成创建与用户装置102-1和用户装置102-3相关联的电子记录。创建与用户装置102-1和用户装置102-3相关联的电子记录的过程可被称为“打开信道”。在一些实例中,数据处理计算机108可以另外通过传输信道请求消息和/或传输信道响应消息接收一个或多个阈值限制。每个阈值限制可以与用户装置102-1、用户装置102-3或电子记录相关联。

在一些实例中,数据处理计算机108可以被配置成代表用户装置102-1和/或用户装置102-3从区块链提供商计算机104请求一个或多个令牌。令牌可以与从传输信道请求消息接收的金额和/或阈值限制相关联。在一些实例中,数据处理计算机108可以在打开传输信道(例如,创建与用户装置相关联的电子记录)之前等待,直到接收用于与传输信道相关联的每个装置的令牌响应消息(例如,指示已记录令牌的金额和/或阈值限制)。在至少一个实施例中,所接收的令牌响应消息可个别地包括用户的数据转账金额不能超过的令牌(例如,金额和/或阈值限制)。在其他实例中,所接收的令牌可以个别地表示与记录在电子记录内的一组数据传输相关联的组合数据转账金额不能超过的阈值限制。

在创建与用户装置102-1和用户装置102-3相关联的电子记录之后,数据处理计算机108可以被配置成接收来自用户装置102-1和/或用户装置102-3的数据传输请求消息。在接收每个数据传输请求消息后,数据处理计算机108可以配置成将数据传输请求消息转发到其他用户装置。在从其他装置接收指示数据传输请求被批准的数据传输响应消息时,数据处理计算机108可以被配置成在与用户装置相关联的电子记录内将数据传输记录为交互记录。

在至少一个实施例中,用户装置102-1或用户装置102-3中的至少一者可以发起传输信道请求消息,所述传输信道请求消息指示希望关闭与用户装置102-1和用户装置102-3相关联的传输信道。在一些情况下,数据处理计算机108可以被配置成维护传输信道(例如,电子记录),直到从每个数据接收者接收传输信道请求消息。举例来说,考虑在用户装置102-1和用户装置102-3之间打开了传输信道,但只有用户装置102-1接收到与由用户装置102-3发起的一个或多个数据传输请求消息对应的任何数据。在本实例中,在从用户装置102-1接收请求关闭传输信道的传输信道请求消息时,可以关闭传输信道(例如,电子记录可以被删除)。如果两个装置都从其他装置接收数据,那么在一些实例中,在传输信道将被实际关闭(例如,删除电子记录)之前,将需要来自两个用户装置的请求将传输信道关闭的传输信道请求消息。

在至少一个实例中,在关闭信道时或在另一合适的时间,数据处理计算机108可以被配置成确定指示用户装置102-1与用户装置102-3之间数据的单向数据传输的净转账金额。例如,在某些情况下,用户装置可以交换网络货币和/或法定货币。在关闭信道时,数据处理计算机108可以配置成确定要交换的净转账金额。在一些实施例中,数据处理计算机108可以将净转账金额在单个消息(例如,数据传输请求消息)中提供到区块链提供商计算机104。在一些实例中,数据处理计算机108可以被配置成以适于在分类账中立即记录的格式通过数据传输请求消息提供净转账金额。在接收数据传输请求消息后,区块链提供商计算机104可以被配置成在适合记录此类信息的分类账中记录净转账金额。在一些情况下,区块链提供商计算机104可以被配置成向数据处理计算机108传送数据传输响应消息,以指示在分类账中记录净交易金额是否成功或不成功。

应当理解,在一些实施例中,对“打开信道”的任何提及包括创建可以与两个或更多个信道参与者相关联的电子记录。当信道打开时(电子记录存在),可以在电子记录中记录任何合适数量的交易(例如,数据传输请求/响应消息中包含的信息)。在一些实施例中,任何对“关闭信道”的提及包括删除可能与两个或更多个信道参与者相关联的先前创建的电子记录。在关闭信道(例如,删除电子记录)之前,可以汇总与电子记录中记录的任何合适数量的交易相对应的金额,并且可以提供与汇总(例如,总交易金额)相关的信息(例如,提供到区块链提供商计算机)。

在至少一个实施例中,图1中的计算机、网络和装置之间的消息可使用安全通信协议来传送,所述安全通信协议例如但不限于:文件传输协议(ftp);超文本传输协议(http);安全超文本传输协议(https);安全套接层(ssl);iso(例如,iso8583)和/或其类似者。

图1中的每个实体可以通过任何合适的通信信道或通信网络进行通信。合适的通信网络(例如,网络106)可以是下列中的任一个和/或其组合:直接互连;互联网;局域网(lan);城域网(man);作为互联网上节点的运行任务(omni);安全自定义连接;广域网(wan);无线网络(例如,采用例如但不限于无线应用协议(wap)、i-模式和/或其类似者的协议);和/或其类似者。

图2描绘了能够实施图1的系统100的用户装置(例如,图1的用户装置102-1、图1的用户装置102的实例)的至少一些实施例的示例性计算机架构200。用户装置102-1可以包括处理器204和耦合到处理器的计算机可读介质210,计算机可读介质210包括可由处理器204执行的用于执行本文所描述的功能的代码。应理解,相对于图2的模块描述的任何功能可以组合以由单个模块执行,或者可由位于用户装置102-1外部的模块执行。图2示出了以通信方式耦合到数据存储器202的用户装置102-1。可以如图2所描绘的配置数据存储器202,或者可以将数据存储器202整体或部分地作为用户装置102-1的一部分来提供。数据存储器202可以是常规的、容错的、关系的、可扩展的、安全的数据库,诸如oracletm或sybasetm。数据存储器202可以使用诸如阵列、散列图、(链接)列表、结构化文本文件(例如,xml)、表格和/或类似的各种数据结构来实现。此类数据结构可存储在存储器中和/或结构化的文件中。数据存储器202可以被配置成存储与用户装置102-1(和/或特定传输信道)相关联的密码密钥对。

处理器204可耦合到系统存储器206和外部通信接口208。计算机可读介质210也可操作地耦合到处理器204。

计算机可读介质210可以包括许多软件和/或硬件模块,包括传输信道管理器212和数据传输引擎214。可利用更多或更少软件/硬件模块来执行本文所描述的功能。在至少一个实例中,传输信道管理器212和/或数据传输引擎214可以包括在软件应用程序中,所述软件应用程序存储在计算机可读介质210中并且在用户装置102-1上运行。

传输信道管理器212可以包括在被执行时使处理器204处理传输信道请求/响应消息的代码。在一些情况下,传输信道管理器212可以使处理器204接收(例如,通过在用户装置102-1上运行的应用程序)用户装置102-1的用户希望与另一用户装置的另一用户进行数据传输的指示。响应于该请求,传输信道管理器212可以被配置成使处理器204将传输信道请求消息发送到另一电子装置(例如,另一用户装置、图1的数据处理计算机108等)。

在至少一个实例中,传输信道管理器212可以被配置成接收传输信道响应消息(例如,从另一用户装置和/或从数据处理计算机108)。传输信道管理器212可以被配置成使处理器204从所接收的传输信道响应消息中提取令牌(例如,金额和/或阈值限制)、公钥和/或私钥。在提取后或在另一合适的时间,传输信道管理器212可以被配置成使处理器204在数据存储器202或另一合适的存储位置存储令牌(例如,金额和/或阈值限制)和/或公钥/私钥。在一些实施例中,数据传输引擎214的功能可以被禁用,直到令牌和/或公私密钥对已经被传输信道管理器212接收和/或存储在数据存储器202中。

在至少一个实例中,数据传输引擎214可以被配置成使处理器204接收要发起数据传输的指示(例如,通过例如在用户装置102-1上运行的应用程序从用户装置102-1的用户)。所述指示可以指定至少一个数据传输值(例如,网络货币或法定货币的面额)以及数据传输的预期接收者(例如,与另一用户关联的另一用户装置)。在一些实例中,在接收此类指示时,数据传输引擎214可以被配置成向与用户装置102-1的用户相关联的支付账户的发行方传送授权请求消息。授权请求消息可以用于预留与用户的支付账户相关联的资金,以便创建传输信道。在一些实例中,数据传输引擎214可以被配置成使处理器204维护可用于传输的当前金额(例如,在数据存储器202中存储的记录中)。在至少一个实例中,可用的当前金额可以最初设置为通过授权请求消息授权的金额。在其他实例中,数据传输引擎214可以利用用户指定的值作为可用于传输的当前金额,而不需要使用授权请求消息。

在至少一个实施例中,数据传输引擎214可以被配置成使处理器204访问存储在数据存储器202中的私钥。在一些实例中,数据传输引擎214可以使处理器204从指示中接收的数据生成数据传输请求消息。数据传输引擎214还可以被配置成使处理器204利用私钥来对数据传输请求消息进行数字签名。在至少一个实施例中,数据传输引擎214可以被配置成使处理器204传送已签名(或未签名)数据传输请求消息(例如,传输到另一用户装置和/或图1的数据处理计算机108)。在一些实例中,数据传输引擎214可以被配置成使处理器204接收指示数据传输请求成功或不成功的数据传输响应消息(例如,从另一用户装置和/或数据处理计算机108)。数据传输引擎214可以被配置成使处理器204更新数据存储器202中包含的记录,该记录维护用户装置102-1的用户可用的供转账的当前金额(例如,用于转移全部,或用于与一个或多个其他用户相关联的特定传输信道)。另外或替代地,可以将用户可用的当前金额作为数据传输响应消息的一部分接收。数据传输引擎214可以被配置成使处理器204在任何合适的时间向用户提供当前金额(例如,通过在用户装置102-1上运行的应用程序)。

作为非限制性实例,用户装置102-1的用户可以向另一用户装置的另一用户发起20美元的数据传输。在接收指示数据传输成功的数据传输响应消息时,当前金额可以被确定(例如,在更新存储在数据存储器202中的电子记录时或从接收的数据传输响应消息提取当前金额时)并提供以给用户装置102-1的用户(例如,通过在用户装置102-1上运行的应用程序)显示。因此,在用户装置102-1的用户之前具有100美元的示例中,数据传输将金额减少到80美元,并且可以向用户提供指示(例如,通过在用户装置102-1上运行的应用程序)。

在至少一个实施例中,数据传输引擎214可以被配置成接收数据传输请求消息(例如,从图1的另一用户装置和/或数据处理计算机108接收)。所接收的数据传输请求消息最终可以由希望向用户装置102-1的用户传输数据的另一用户发起。在至少一个实例中,数据传输引擎214可以使处理器204将来自数据传输请求消息的信息提供至用户装置102-1的用户(例如,通过在用户装置102-1上运行的应用程序)。数据传输引擎214可以被配置成使处理器204接收来自用户的(例如,通过在用户装置102-1上运行的应用程序)批准或拒绝所请求的数据传输的指示。数据传输引擎214可以被配置成使处理器204基于批准/拒绝生成和传送数据传输响应消息。例如,由数据传输引擎214传送的数据传输响应消息可以指示数据传输被批准或被拒绝。

在至少一个实例中,数据传输引擎214可以被配置成使处理器204向用户提供数据传输成功或不成功的指示。在至少一个实施例中,数据传输引擎214可以被配置成使处理器204从数据传输响应消息提取用户可用的当前金额以供转账。在一些实例中,数据传输引擎214可以被配置成使处理器204更新存储在数据存储器202中的记录,所述记录维护用户装置102-1的用户可用的以供转账的当前金额(例如,用于转移全部,或用于与一个或多个其他用户相关联的特定传输信道)。在至少一个实施例中,数据传输引擎214可以被配置成使处理器204向用户装置102-1的用户提供当前金额(例如,通过在用户装置102-1上运行的应用程序)。

作为非限制性实例,所接收的数据请求消息可以是从另一用户向用户装置102-1的用户转账40美元的请求。如果用户同意所请求的数据传输,数据传输引擎214可以向用户提供已转账40美元的指示(例如,可供转账的当前金额已增加40美元)。在一些实例中,数据传输引擎214可以被配置成使处理器给用户提供可用的当前金额。

图3描绘了能够实施图1的系统100的数据处理计算机108的至少一些实施例的示例性计算机架构300。数据处理计算机108可以个别地包括处理器304和耦合至处理器304的计算机可读介质310,所述计算机可读介质310包括可由处理器304执行以执行本文中描述的功能的代码。应理解,关于图3的模块描述的任何功能可以组合以由单个模块执行,或者可由位于数据处理计算机108外部的模块执行。图3示出了以通信方式耦合到数据存储器302的数据处理计算机108。可以如图3所描绘的配置数据存储器302,或者可以将数据存储器302整体或部分作为数据处理计算机108的一部分来提供。数据存储器302可以是常规的、容错的、关系的、可扩展的、安全的数据库,诸如oracletm或sybasetm。数据存储器302可以使用诸如阵列、散列图、(链接)列表、结构化文本文件(例如,xml)、表格和/或类似的各种数据结构来实现。此类数据结构可存储在存储器中和/或结构化的文件中。数据存储器302可以被配置成存储与图1的用户装置102相关联的密码密钥对。数据存储器302可以被配置成存储一个或多个电子记录,所述一个或多个电子记录可以个别地与用户装置102中的两个或更多个用户装置和/或与特定传输信道相关联。所存储的电子记录可以个别地维护与两个用户装置相关联的任何合适数目的数据传输。

处理器304可耦合到系统存储器306和外部通信接口308。计算机可读介质310也可操作地耦合到处理器304。

计算机可读介质310可以包括许多软件和/或硬件模块,包括传输信道管理器312、数据传输引擎314、密钥生成器316和区块链引擎318。可利用更多或更少软件/硬件模块来执行本文所描述的功能。应当理解,可以设想对于数据处理计算机108描述的功能的任何部分可以替代性地由一个或多个用户装置(例如,图1的用户装置102)提供,作为在相应的用户装置上运行的软件/硬件模块(例如,应用程序)的一部分。

传输信道管理器312可以包括在被执行时使处理器304处理传输信道请求/响应消息(例如,来自用户装置102)和/或令牌请求/响应消息(例如,来自图1的区块链提供商计算机104)的代码。

在至少一个实例中,响应于接收传输信道请求消息(例如,从用户装置102-1),传输信道管理器312可以被配置成使处理器304从区块链提供商(例如,区块链提供商计算机104)请求令牌(例如,通过令牌请求消息)。传输信道管理器312还可以被配置成使处理器304从区块链提供商接收令牌响应消息,所述令牌响应消息包括与用户装置(例如,用户装置102-1)相关联的令牌(例如,金额和/或阈值限制)。传输信道管理器312可以被配置成使处理器304从所接收的令牌信道响应消息中提取令牌(例如,金额和/或阈值限制)。在提取后或在另一合适的时间,传输信道管理器312可以被配置成使处理器304在数据存储器302或另一合适的存储位置存储令牌。作为非限制性实例,传输信道管理器可以创建与用户装置102-1和用户装置102-2相关联的电子记录,并且可以在电子记录内或在单独的记录中存储所接收的令牌(例如,金额和/或阈值限制)作为与用户装置102-1的关联。在至少一个实例中,传输信道管理器312可以被配置成使处理器304从传输信道请求消息提取阈值限制,并且将阈值限制与用户装置102-1和/或电子记录相关联。

在至少一个实施例中,传输信道管理器312(例如,在接收传输信道请求消息时,或在接收令牌响应消息时)可以被配置成使处理器304激励密钥生成器316以生成用于用户装置(例如,用户装置102-1)的公钥/私钥对。在一些实例中,密钥生成器316可以被配置成使处理器304生成用于用户装置的公钥/私钥对,并且维护公钥和生成的公钥/私钥用于的用户装置之间的关联(例如,在电子记录或存储在数据存储器302中的另一合适的记录中)。

在至少一个实施例中,传输信道管理器312可以被配置成使处理器304将在所接收的传输信道请求消息中指示的传输信道请求消息传送或转发到另一用户装置(例如,图1的用户装置102-2)。作为非限制性实例,传输信道管理器312可以被配置成在接收和/或存储与用户装置102-1相关联的令牌(例如,金额和/或阈值限制)时,使处理器304将传输信道请求消息传送/转发到用户装置102-2。传输信道管理器312可以被配置成使处理器304从用户装置102-2接收指示传输信道被批准或被拒绝的传输信道响应消息。在一些情况下,传输信道响应消息可以包括与用户装置102-2相关联的阈值限制。在至少一个实例中,传输信道管理器312可以被配置成使处理器304从传输信道响应消息提取阈值限制,并且将阈值限制与用户装置102-2关联。如果传输信道请求获得批准,传输信道管理器312可以被配置成使处理器304重复上述令牌请求过程,以便警示区块链提供商与用户装置102-2相关联的令牌(例如,金额和/或阈值限制)。所接收的用于用户装置102-2的令牌可以在与用户装置102-1和用户装置102-2关联的电子记录内或在单独的记录中存储为与用户装置102-2的关联。在传输信道请求被拒绝的实例中,传输信道管理器312可以被配置成使处理器304删除电子记录,并将指示信道请求被拒绝的传输信道响应消息传送到用户装置102-1。

在至少一个实施例中,传输信道管理器312(例如,在接收指示传输信道被批准的传输信道响应消息时)可以被配置成使处理器304激励密钥生成器316以生成用于用户装置102-2的公钥/私钥对。在一些实例中,密钥生成器316可以被配置成使处理器304生成用于用户装置102-2的公钥/私钥对,并维护公钥和生成的公钥/私钥用于的用户装置102-2之间的关联(例如,在电子记录中或者在存储在数据存储器302中的另一合适的记录中)。公钥和/或私钥可以由处理器304传送(例如,通过传输信道响应消息)到用户装置102-2以用于存储。

在至少一个实施例中,传输信道管理器312可以被配置成向传输信道请求消息的发起者(例如,用户装置102-1)传送指示传输信道已被批准的传输信道响应消息。传输信道响应消息可以包括与用户装置102-1相关联的公共和/或私钥。

在至少一个实施例中,数据传输引擎314可以被配置成使处理器304接收数据传输请求消息(例如,从用户装置102-1)。在接收时或在另一合适的时间,数据传输引擎314可以利用与发起者(例如,用户装置102-1)相关联的公钥来验证数据传输请求消息的数字签名数据字段。被验证的信息可用于验证消息实际上由发起者发送,且消息未被篡改。在一些实施例中,数据传输引擎314可以被配置成使处理器304访问存储在电子记录中的并且与请求的发起者(例如,用户装置102-1)相关联的一个或多个阈值限制。如果数据传输请求符合阈值限制(例如,与当前的数据传输和以前的数据传输相关联的合并货币金额不超过阈值限制),则数据传输引擎314可以被配置成使处理器304将数据传输请求消息转发给预期接收者(例如,用户装置102-2)。如果数据传输请求将导致超出阈值限制,则数据传输引擎314可以被配置成使处理器304通过将指示传输被拒绝的数据传输响应消息发送回接收者,从而拒绝数据传输请求消息。在某些情况下,数据传输响应消息可以包括代码或者关于数据传输请求被拒绝的原因的某种指示。

在一些实施例中,数据传输引擎314可以从数据传输的预期接收者(例如,用户装置102-2)接收数据传输响应消息。数据传输响应消息可以指示接收者是否已接受或拒绝数据传输。在接收指示接受数据传输的数据传输响应消息时或在另一合适的时间,数据传输引擎314可以被配置成使处理器304向数据传输请求(例如,用户装置102-1)的发起者传送指示数据传输成功/被接受的数据传输响应消息。因此,数据传输引擎314可以被配置成使处理器304在电子记录(例如,存储在数据存储器202中的与用户装置102-1和用户装置102-2相关联的电子记录)中记录数据传输。

在至少一个实施例中,传输信道管理器312可以被配置成使处理器304接收指示用户(例如,用户装置102-1的用户)希望关闭信道的传输信道请求消息。传输信道请求消息可以经过数字签名,并且传输信道管理器312可以被配置成使处理器304使用与发起者关联的公钥(例如,存储在电子记录中并与用户装置102-1相关联的公钥)验证消息。如果消息有效,则传输信道管理器312可以被配置成使处理器304确定在任何先前处理的数据传输中哪些装置是接收者。如果发起关闭信道请求的用户装置是先前处理的数据传输的唯一接收者,则传输信道管理器312可以使处理器304继续关闭信道步骤。然而,如果其他用户装置(例如,用户装置102-2)为先前处理的数据传输的接收者,则传输信道管理器312可以被配置成使处理器304将传输信道请求消息转发到其他装置(例如,用户装置102-2),以便激励来自其他装置的指示其他装置的用户同意关闭信道的传输信道请求消息。在至少一个实施例中,传输信道管理器312可以被配置成在继续关闭信道步骤之前等待,直到处理器304接收此类指示。

在至少一个实施例中,传输信道管理器312可以被配置成使处理器304从其他装置(例如,用户装置102-2)接收指示关闭信道请求已被批准的传输信道请求消息。此消息可以由发起者(例如,用户装置102-2)数字签名,并且传输信道管理器312可以使处理器304利用与用户装置(例如,用户装置102-2)相关联的公钥来验证消息,以便验证消息并确保其完整性。在确定传输信道请求消息是有效的之后,传输信道管理器312可以激励区块链引擎318开始汇总步骤。

在至少一个实施例中,区块链引擎318可以被配置成使处理器304汇总包含在与两个或更多个装置(例如,用户装置102-1和用户装置102-2)相关联的电子记录内的所有先前处理的数据传输。区块链引擎318可以被配置成使处理器304根据汇总结果计算净传输值。在至少一些实例中,区块链引擎318可以格式化净传输值,以符合数据格式,该数据格式允许将净传输值立即记录在由提供商维护的区块链(例如,分类账)中。区块链引擎318可以使将净传输值传送到区块链提供商计算机104(例如,通过数据传输请求消息)。在接收时或在另一合适的时间,区块链提供商计算机104可以使净传输值记录在分类账中作为单个交易。

图4显示了用于创建传输信道的方法400的流程图。在步骤402处,用户装置102-1可以通过将传输信道请求消息传送到数据处理计算机108来请求与用户装置102-2的信道。传输信道请求消息可以包括与用户装置102-2相关联的阈值限制,其指示对于在信道内发生的数据传输用户不希望超过的总交易金额。

在步骤404处,在接收传输信道请求消息时,数据处理计算机108可以请求区块链提供商将令牌(例如,金额和/或阈值限制)与用户装置102-1关联。可以使用令牌请求消息请求令牌。在一些实例中,令牌请求消息可以包括与用户装置102-1的用户相关联的支付信息(例如,信用卡和/或支付账户信息)。

在步骤406处,区块链提供商计算机104可以记录令牌(例如,金额和/或阈值限制)作为与用户装置102-1的关联,并且可以在由区块链提供商管理的分类账内记录该关联。在某些情况下,在分类账内记录该关联有效地保留区块链分类账中用于特定信道和/或由特定用户使用的金额(例如,对应于令牌的数字或法定货币的面额)。在一些实施例中,这防止金额用在区块链分类账内的其他信道或其他地方。在至少一个实施例中,请求令牌与用户装置相关联可以包括向第三方(例如,与令牌请求消息中包含的支付信息相关联的金融机构)生成和传送授权请求消息。授权请求消息可以使第三方验证与支付信息相关联的可用资金。区块链提供商计算机104可以接收指示资金可用或资金不可用的授权响应消息。在一些情况下,将令牌(例如,金额和/或阈值限制)与用户装置相关联可以取决于接收指示资金可用的授权响应消息。在至少一个实施例中,与授权响应消息相关联的资金可以提供至区块链提供商,以在信道的存在/执行期间保持。

在步骤408处,数据处理计算机108可以从区块链提供商接收令牌(例如,金额和/或阈值限制)。在一些实施例中,数据处理计算机108可以将令牌(例如,金额和/或阈值限制)存储为与用户装置102-1相关联。

在步骤410处,数据处理计算机108可以将信道请求转发到用户装置102-2。在一些实施例中,信道请求可以在传输信道请求消息中传送。

在步骤412处,数据处理计算机108可以接收指示传输信道被接受/批准的消息。在一些实施例中,可以通过传输信道响应消息接收此接受/批准。传输信道响应消息可以包括与用户装置102-2相关联的阈值限制,其指示对于在信道内发生的数据传输用户不希望超过的总交易金额。

在步骤414处,在接收传输信道响应消息时,数据处理计算机108可以请求区块链提供商代表用户装置102-2将令牌与用户装置102-2关联。可以使用令牌请求消息来请求令牌(例如,金额和/或阈值限制)。

在步骤416处,区块链提供商计算机104可以将令牌(例如,金额和/或阈值限制)与用户装置102-2相关联,并且可以在由区块链提供商管理的分类账内记录令牌(例如,金额和/或阈值限制)。在某些情况下,在分类账中记录令牌有效地使金额(例如,数字或法定货币的面额)在区块链分类账内不可花费。在一些实施例中,这防止金额被花费两次。

在步骤418处,数据处理计算机108可以从区块链提供商接收令牌(例如,金额和/或阈值限制)。在一些实施例中,数据处理计算机108可以将令牌(例如,金额和/或阈值限制)存储为与用户装置102-2相关联。

在步骤420处,数据处理计算机108可以执行一组指令以在用户装置102-1和用户装置102-2之间打开信道。在至少一个实施例中,打开信道可以包括创建与用户装置102-1和用户装置102-2相关联的电子记录。数据处理计算机108可以为用户装置102-1生成公钥/私钥对,为用户装置102-2生成不同的公钥/私钥对。在一些实例中,用于每个装置的公钥和/或私钥可以存储在电子记录中或以其他方式与电子记录相关联。在至少一个实施例中,通过从用户装置102-1接收的传输信道请求消息接收的阈值限制可以存储在电子记录中或另外与电子记录相关联。类似地,通过从用户装置102-2接收的传输信道响应消息接收的阈值限制可以存储在电子记录中或另外与电子记录相关联。

在步骤422处,数据处理计算机108可以通过例如传输信道响应消息向用户装置102-1提供与用户装置102-1相关联的公钥和/或私钥。类似地,数据处理计算机108可以通过例如另一传输信道响应消息向用户装置102-2提供与用户装置102-2相关联的公钥和/或私钥。

在完成上述结合图4描述的方法时,用户装置102-1、用户装置102-2和数据处理计算机108可以继续处理数据传输请求/响应消息。

图5显示了用于更新区块链分类账的方法500的流程图。在步骤502处,用户装置102-1可以请求数据传输。在一些实例中,用户装置102-1可以通过向数据处理计算机108传送数据传输请求消息来请求数据传输。在一些实例中,可以使用与用户装置102-1相关联的私钥来对数据传输请求消息进行数字签名。数据处理计算机108可以利用与用户装置102-1相关联的公钥来验证数据传输请求消息,以便验证其真实性和有效性。在一些实例中,数据处理计算机108可以确定数据传输是否会违反与用户装置102-1相关联的阈值限制和/或与用户装置102-1和用户装置102-2相关联的电子记录。如果消息是有效的,且如果未违反阈值限制,则数据处理计算机108可以将(未加密)数据传输请求消息转发到用户装置102-2进行处理。

在步骤504处,用户装置102-2可以传送指示传输已被接受的消息(例如,数据传输响应消息)。在接收数据传输响应消息后,在步骤506处,数据处理计算机108可以记录数据传输。在至少一个实施例中,数据处理计算机108可以在与用户装置102-1和用户装置102-2相关联的电子记录中记录数据传输。

在步骤508处,用户装置102-2可以请求数据传输。在一些实例中,用户装置102-2可以通过向数据处理计算机108传送数据传输请求消息来请求数据传输。在一些实例中,可以使用与用户装置102-2相关联的私钥来对数据传输请求消息进行数字签名。数据处理计算机108可以利用与用户装置102-2相关联的公钥来验证数据传输请求消息,以便验证其真实性和有效性。在一些实例中,数据处理计算机108可以确定数据传输是否会违反与用户装置102-2相关联的阈值限制和/或与用户装置102-1和用户装置102-2相关联的电子记录。如果消息是有效的,且如果未违反阈值限制,则数据处理计算机108可以将(未加密)数据传输请求消息转发到用户装置102-1进行处理。

在步骤510处,用户装置102-1可以传送指示传输已被接受的消息(例如,数据传输响应消息)。在接收数据传输响应消息后,在步骤512处,数据处理计算机108可以记录数据传输。在至少一个实施例中,数据处理计算机108可以在与用户装置102-1和用户装置102-2相关联的电子记录中记录数据传输。

在步骤514处,用户装置102-1可以传送指示用户希望关闭信道的传输信道请求消息。在一些实施例中,传输信道请求消息可以经过数字签名。数据处理计算机108可以利用与用户装置102-1相关联的公钥来验证传输信道请求消息,以验证其真实性和完整性。应当理解,在一些实施例中,关闭信道的请求在经过数字签名的传输信道请求消息中接收。数据处理计算机108可以将传输信道请求消息转发到用户装置102-2。

在步骤516处,用户装置102-2可以传送指示用户同意关闭信道请求的传输信道响应消息。在一些实施例中,传输信道响应消息可以经过数字签名。数据处理计算机108可以利用与用户装置102-1相关联的公钥来验证传输信道响应消息,以验证其真实性和完整性。应当理解,在一些实施例中,必须在经过数字签名的传输信道响应消息中接收对关闭信道的响应。尽管在此示例中,用户装置102-2传送传输信道响应消息,但应当理解,用户装置102-2可以转而传送指示用户希望关闭信道的数字签名的传输信道请求消息。

在步骤518处,数据处理计算机108可以汇总与用户装置102-1和用户装置102-1相关联的电子记录的数据传输。数据处理计算机108可以计算指示单向传输的净传输值。例如,如果用户装置102-1比用户装置102-2传输更多数据,那么净传输值将指示从用户装置102-1到用户装置102-2的单个数据传输。

在步骤520处,数据处理计算机108可以使由区块链提供商计算机104维护的区块链被更新。在至少一个实施例中,数据处理计算机108可以将指示净传输值的数据传输的数据传输请求消息传送到区块链提供商计算机104。继续上面的实例,数据传输请求消息可以指示用户装置102-1向用户装置102-2传输净传输值金额的数据。在至少一个实施例中,数据传输请求消息可以包括净传输值。净传输值可以由数据处理计算机108以区块链格式预先格式化,使得净传输值可以立即可记录在由区块链提供商计算机104管理的分类账中。

在至少一个实施例中,传输请求消息还可以包括与信道的参与者相关联的一个或多个令牌(例如,一个或多个金额和/或阈值限制)。在一些实例中,更新区块链还可包括替换、删除或以其他方式逆转与令牌相关联的金额。例如,与用户装置102-1相关联的令牌(例如,金额和/或阈值限制)最初可以从与用户装置102-1的用户关联的金融机构请求(例如,通过授权请求消息)。在接收授权响应消息时,或在另一合适的时间,区块链提供商可以指示增加与区块链内的令牌相关联的金额。金额可以与信道相关联,使得这些资金仅可在信道内使用。作为关闭信道的过程的一部分,可以向区块链提供商提供包括净传输值(例如,100美元)的传输请求消息。区块链提供商可以被配置成记录实际转账100美元,并发放剩余资金(例如,原始不可花费的200美元中剩余的100美元),以便剩余资金对于用户可参与的其他信道是可花费的。在至少一个实施例中,区块链提供商可以与金融机构进行一次或多次交易,以返回任何剩余部分。因此,如果最初请求200美元并获得金融机构授权,在确定200美元中只花费了100美元时,则可能导致区块链提供商执行一个或多个交易,以便将100美元返还至由金融机构管理的用户账户。

图6示出了说明可信环境的示意图600。在至少一个实施例中,节点602-632中的每一个可以指示个体或实体。诸如实线634等实线可以指示两个节点(例如,节点608和节点620)之间的直接信任关系。诸如虚线636等虚线可以指示间接信任关系。

作为非限制性实例,节点602-632可以描绘家庭成员及其各自的朋友。例如,节点608、610和620可以各自为家庭成员。节点608可以表示父亲。节点610可以表示母亲。节点620可以表示母亲和父亲的孩子。节点622、节点624和节点626可以表示孩子的朋友。节点602、604和606可以表示父亲的朋友。节点618可以表示母亲的朋友。节点628可以表示由节点622表示的朋友的家庭成员。类似地,节点630可以表示由节点622表示的朋友的家庭成员,节点632可以表示由节点626表示的朋友的家庭成员。

在至少一个实施例中,每个实线都可以指示由图1的数据处理计算机108维护的信道(例如,电子记录)。因此,在一些实例中,数据处理计算机108可以维护任何合适数量的电子记录。这些电子记录可以使数据处理计算机108跟踪直接信任关系以及间接信任关系。在一些实例中,如果父亲(例如,由节点608表示)希望将数据(例如,网络货币、法定货币、奖励积分等)传输给其孩子的朋友(例如,由节点626表示),数据处理计算机108可以被配置成确定他与该人具有间接信任关系。

在确定父亲(节点608)和朋友(节点626)具有间接信任关系时,数据处理计算机108可以使得呈现选项(例如,通过在相应用户装置上运行的应用程序)来允许在父亲和朋友之间传输数据。在一些实例中,数据处理计算机108可以使父亲能够通过其孩子(例如,由节点620表示)进行数据传输。例如,数据处理计算机108可以被配置成从父亲的用户装置接收指示尚未对接收者(朋友、节点626)建立信道的数据传输请求消息。数据处理计算机108还可以被配置成确定父亲确实具有与另一用户(例如,孩子)的信道,所述另一用户确实具有与预期接收者(例如,朋友)的信道。因此,在一些实例中,数据处理计算机108可以被配置成促进父子与孩子之间以及孩子与朋友之间的消息交流,以便实现在父亲和朋友之间的数据传输的等同效果。

应当理解,示意图600旨在本质上是说明性的。节点的数量可能有所不同,可以表示任何个体/实体。例如,不是表示家人和朋友,节点602-632可以表示企业和业务关系。可以有任何种变化。

图7显示了流程图700,示出了在两方到三方(例如,用户a、用户b和用户c)之间执行数据传输的方法。在至少一个实施例中,在702处,用户a可以发起传输(例如,通过在用户a的装置上运行的应用程序)。此发起动作可以呈传送到其他装置(例如,图1的用户b的用户装置或数据处理计算机108)的传输信道请求消息的形式。在一些实施例中,传输信道请求消息可以包括用户希望与信道(例如,与用户a和用户b相关联的电子记录)关联的阈值限制(例如,200美元)。在一些实例中,阈值限制可以指示用户a不希望在信道中执行的其合并数据传输的金额超过的金额。

在704处,可以创建令牌。令牌可以由用户a的用户装置或由图1的数据处理计算机108代表用户a从图1的区块链提供商计算机104请求。令牌在某些情况下可能与阈值限制相关。例如,区块链提供商计算机104可以提供令牌以表示200美元的法定货币。区块链提供商计算机104可以在分类账内记录令牌,以便使得200美元在其他地方不可花费。

在706处,可以尝试信道创建。在至少一个实施例中,传输信道请求消息可以传送到用户b的用户装置。可以在708处给用户b提供已请求信道的某种指示(例如,通过在用户b的装置上运行的应用程序)。在710处,用户b可以指示信道请求得到批准,因此,在712处可以按照如上所述的类似方式为用户b创建令牌。在所描绘的实例中,用户b的令牌也与200美元的阈值限制相关联,但并不一定是用户a和用户b的阈值限制相同的情况。

在至少一个实施例中,在为用户b创建令牌时,在714处可以创建信道。在至少一个实例中,在信道创建时,可以创建/修改与用户a和用户b相关联的电子记录。作为信道创建步骤的一部分,数据处理计算机108可以为用户a和用户b生成和分发(例如,通过传输信道响应消息)各自的公钥和/或私钥。在一些情况下,相应用户的装置可以负责生成其公钥和/或私钥对,并且可以将其公钥传播(例如,通过传输信道响应消息)到与信道关联的其他装置。作为信道创建步骤的一部分,用户a和用户b的相应阈值限制可以存储在电子记录中或另外与电子记录相关联。

在至少一个实施例中,在716处,用户a可以发起数据传输。在一些实例中,可以通过将来自用户a的装置的数据传输请求消息传送到数据处理计算机108来发起数据传输。在至少一个实例中,数据传输请求消息可以直接从用户a的装置传送到用户b的装置。在至少一个实例中,可以使用与用户a相关联的私钥对数据传输请求消息进行数字签名。接收者可利用与用户a相关联的公钥来验证和确认消息。作为非限制性实例,数据传输请求消息可以指示用户a向用户b转账50美元。在至少一个实施例中,可以分析数据传输请求消息,以便确定所请求的转账(例如50美元)是否超出与用户a相关联的阈值限制(例如200美元)。如果所请求的转账不超过阈值限制,则可以继续该过程。在某些情况下,如果所请求的转账超出与用户a相关联的阈值限制,则传输请求可以被自动拒绝,并且可以通知用户a。

在至少一个实施例中,在718处,用户b可以接受该数据传输。在至少一个实例中,有关数据传输请求的信息可以在用户b的装置上向其呈现,并且用户b可以选择是接受还是拒绝数据传输。在用户b接受数据传输的情况下,数据传输响应消息可以根据情况传送回用户a的装置或数据处理计算机108。在接收指示数据传输已被批准的数据传输响应消息后,可以更新电子记录以记录数据传输(例如,从用户a到用户b转账50美元)。

在至少一个实施例中,在720处,用户b可以发起数据传输。在一些实例中,可以通过将来自用户b的装置的数据传输请求消息传送到数据处理计算机108来发起数据传输。在至少一个实例中,数据传输请求消息可以直接从用户b的装置传送到用户a的装置。在至少一个实例中,可以使用与用户b相关联的私钥对数据传输请求消息进行数字签名。接收者可利用与用户b相关联的公钥来验证和确认消息。作为非限制性实例,数据传输请求消息可以指示用户b想要给用户a转账30美元。在至少一个实施例中,数据传输请求消息可以被分析以便确定所请求的转账(例如30美元)是否超出与用户b相关的阈值限制(例如200美元)。如果所请求的转账不超过阈值限制,则可以继续该过程。在某些情况下,如果所请求的转账超出与用户b相关联的阈值限制,则传输请求可以被自动拒绝,并且可以通知用户b。

在至少一个实施例中,在722处,用户a可以接受该数据传输。在至少一个实例中,有关数据传输请求的信息可以在用户a的装置上向其呈现,并且用户a可以选择是接受还是拒绝数据传输。在用户a接受数据传输的情况下,数据传输响应消息可以根据情况传送回用户a的装p置或数据处理计算机108。在接收指示数据传输已被批准的数据传输响应消息后,可以更新电子记录以记录数据传输(例如,从用户b到用户a转账30美元)。

在至少一个实施例中,在创建用户a和用户b的信道之前或之后,可以为用户b和用户c创建信道。在724处,可以以与上述类似的方式为用户b和用户c创建信道。在一个实例中,用户b可以设置800美元的阈值限制,而用户c可以设置400美元的阈值限制。在724处完成信道创建步骤时,可以创建电子记录并与用户b和用户c两者相关联。在一些实例中,电子记录可以在用户b和用户c的装置的一个或两个上存储和维护,而在其他示例中,电子记录可以被数据处理计算机108存储和维护。电子记录可以维护第一令牌与用户b以及第二令牌与用户c之间的关联。在一些实例中,电子记录可以维护用户b的800美元的阈值限制和用户c的400美元的阈值限制之间的关联。

在至少一个实施例中,在726处,用户b可以发起数据传输。在一些实例中,可以通过将来自用户b的装置的数据传输请求消息传送到数据处理计算机108来发起数据传输。在至少一个实例中,数据传输请求消息可以直接从用户b的装置传送到用户c的装置。在至少一个实例中,可以使用与用户b相关联的私钥对数据传输请求消息进行数字签名。接收者可利用与用户b相关联的公钥来验证和确认消息。作为非限制性实例,数据传输请求消息可以指示用户b想要给用户c转账30美元。在至少一个实施例中,数据传输请求消息可以被分析以便确定所请求的转账(例如30美元)是否超出与用户b相关的阈值限制(例如800美元)。如果所请求的转账不超过阈值限制,则可以继续该过程。在某些情况下,如果所请求的转账超出与用户b相关联的阈值限制,则传输请求可以被自动拒绝,并且可以通知用户b。

在至少一个实施例中,在728处,用户c可以接受该数据传输。在至少一个实例中,有关数据传输请求的信息可以在用户c的装置上向其呈现,并且用户c可以选择是接受还是拒绝数据传输。在用户c接受数据传输的情况下,数据传输响应消息可以根据情况传送回用户b的装置或数据处理计算机108。在接收指示数据传输已被批准的数据传输响应消息后,可以更新电子记录以记录数据传输(例如,从用户b到用户c转账30美元)。

以与上述类似的方式,在730处,用户c可以向用户b发起90美元的数据传输。在732处,用户b可以指示他同意该传输。因此,可以更新电子记录以记录数据传输(例如,从用户c到用户b)。

在至少一个实施例中,在732处,用户a可以发起数据传输。在一些实例中,可以通过将来自用户a的装置的数据传输请求消息传送到数据处理计算机108来发起数据传输。在至少一个实例中,数据传输请求消息可以直接从用户a的装置传送到用户b的装置。在至少一个实例中,可以使用与用户a相关联的私钥对数据传输请求消息进行数字签名。接收者可利用与用户b相关联的公钥来验证和确认消息。作为非限制性实例,数据传输请求消息可以指示用户a想要给将用户c转账80美元。换言之,用户a可以请求用户b代表用户a给用户c付款。在至少一个实施例中,数据传输请求消息可以被分析,以便确定所请求的转账(例如80美元)是否超出对于用户b和用户c之间的信道与用户b相关联的阈值限制(例如800美元)。如果所请求的转账不超过阈值限制,则可以继续该过程。在某些情况下,如果所请求的转账超出与用户b相关联的阈值限制,则传输请求可以被自动拒绝,并且可以通知用户a。

在至少一个实施例中,在736处,用户b可以接受该数据传输。在至少一个实例中,有关数据传输请求的信息可以在用户b的装置上向其呈现,并且用户b可以选择是接受还是拒绝数据传输。在用户b接受数据传输的情况下,数据传输响应消息可以根据情况传送回用户a的装置或数据处理计算机108。在接收指示数据传输已被批准的数据传输响应消息后,可以更新电子记录以记录数据传输(例如,从用户a到用户b转账80美元)。

在至少一个实施例中,在736处由于接受该传输,在740处可以在用户b和用户c之间发起数据传输。在至少一个实例中,(数字签名的)数据传输请求消息可以从用户b的装置传送到用户c的装置。数据传输请求消息可以指示原始转让人为用户a。如果用户c不接受数据传输请求,则可以通知用户b和/或数据处理计算机108。在某些情况下,拒绝可以导致从用户b向用户a自动转账80美元的数据传输。这可以通过另一个数据传输完成,或者原始数据传输信息可以从电子记录中删除。在任何一种情况下,用户a都可以收到拒绝通知。

在至少一个实施例中,在742处,用户c可以接受该传输。因此,用户b和/或用户c的装置中的任一/两个装置或数据处理计算机108可以记录该转账(例如,从b到c转账80美元)。在此类实例中,用户b可以有效地充当用户a和用户b之间的中间人,使得用户a能够将数据传输到用户c,而无需先创建与用户c的信道。

在至少一个实施例中,如果用户b拒绝用户a向用户c传输数据的数据传输请求,或如果用户b的阈值限制已经/将超出,则在744处,可以查询路由表以确定可用于进行此传输的一个或多个其他路径。在至少一个实例中,每个信道参与者可以将其参与任何信道广播给其他信道参与者。例如,用户b的装置可以给用户a广播用户b具有与用户c、用户d(未描绘)和用户e(未描绘)的信道。在至少一个实例中,数据处理计算机108可以利用其为每个信道维护的许多电子记录将此类信息传送到每个用户装置。路由表(或其他容器)可以在用户的装置或数据处理计算机108处被维护。在一些实例中,可以从已创建的记录而不是从单独的路由表确定此类信道参与信息。在任何情况下,在746处,可以确定用户a和用户c之间的另一路径。例如,可能是用户a具有与用户f的信道,用户f具有与用户c的信道的情况。相应地,在748处,可以以与上面讨论的类似的方式给用户a提供寻求通过用户f给用户c转账的选项。在一些情况下,在750处可以确定在用户a和用户c之间不存在其他传输路径。在这些情况下,数据传输可以被拒绝,并且可以通知用户a。

在至少一个实施例中,在754处,用户a可启动关闭信道步骤。例如,用户a的装置可以将传输信道请求消息传送到用户b的装置或数据处理计算机108。传输信道请求消息可以经过数字签名。在至少一个实例中,由于用户b是至少一次数据传输的接收者(例如50美元和80美元),因此,可能需要用户b批准关闭信道的请求或个别地发起关闭信道请求。来自用户b的关闭信道请求可以酌情在传输信道请求消息或传输信道响应消息中传送。在至少一个实例中,可以对由用户b发起的传输信道请求/响应消息进行数字签名。

在至少一个实施例中,当接收两个用户同意关闭信道的指示时(或在一些情况,从任何数据传输的唯一接收者接收关闭信道的指示时),可以根据区块链格式计算并格式化净传输值,并且将其传送到区块链提供商计算机104,以便记录在分类账中。净传输值可以是记录在与用户a和用户b相关联的电子记录中的所有数据传输的汇总值。在所描绘的实例中,从用户a到用户b的净传输值将为100美元。以类似方式,用户b和用户c可以同意关闭其信道。因此,可以计算净传输值,并且可以将单个数据传输(例如,从用户b到用户c转账20美元)传送到区块链提供商计算机104以更新分类账。因此,由区块链提供商计算机104维护的分类账可以指示在已进行图7中的所有交易之后,用户a具有100美元、用户b具有1080美元,用户c具有820美元。

作为非限制性实例,考虑用户a是运动场顾客,用户b是运动场所有者,用户c是与运动场相关联的供应商(例如,在运动场内运营的食品供应商)。用户a(顾客)和用户b(所有者)可以通过与用户a和用户b相关联的传输信道进行一个或多个交易。例如,顾客使用在其智能手机上运行的应用程序,可以请求与运动场的信道。顾客可能表示他想与运动场交易,但他不希望花费超过200美元。可以使用由运动场所有者运营的装置接收和批准该请求。可以打开信道(例如,与顾客和运动场相关联的电子记录由数据处理计算机创建),200美元的阈值限制可以与信道和/或顾客关联(例如,作为在电子记录内维护的200美元与用户a之间的关联)。顾客可以与运动场进行各种交易。这些交易中的每一个都可以记录在电子记录中(例如,由数据处理计算机记录)。

继续此实例,也可能是运动场(用户b)和供应商(用户c)具有用于记录其间交易的以前存在的信道。例如,供应商可以利用信道向运动场提供资金,以便租赁运动场内的空间。顾客可以决定要从供应商那里购买餐饮。在一些实施例中,不是直接与供应商交易,顾客可以请求通过运动场向供应商提供资金。以这种方式,顾客可以利用受信任的关系(例如,顾客与运动场之间的信道),而不是必须与顾客可能与之具有很少经验或信任的一方(例如,供应商)直接交易。

顾客可以在某个时候决定他完成购买,并且可能会利用该应用程序请求关闭信道。转账金额(例如,净购买金额)可以从记录在电子记录中的购买交易中确定,并且可以向区块链提供商提供单个交易,以记录在由块链提供商维护的分类账中。

作为另一个非限制性实例,用户a可以是在线角色扮演游戏玩家,用户b可以是角色扮演游戏提供商。游戏玩家可以请求(例如,通过在其计算机上运行的应用程序)与游戏提供商的传输信道。游戏玩家可以表示他不希望在游戏玩家和游戏提供商之间进行的交易超出的阈值限制。在至少一些实例中,在以上述方式建立与游戏玩家和/或游戏提供商相关联的电子记录后,游戏玩家可以继续进行游戏内购买,这些购买将被记录为电子记录内的交易。游戏玩家可以在某个时候决定他完成购买,并且可以利用该应用程序请求关闭该信道。转账金额(例如,净购买金额)可以从记录在电子记录中的购买交易中确定,并且可以向区块链提供商提供单个交易,以记录在由区块链提供商维护的分类账中。

应当理解,本文所述的系统和方法可以用于包括视频游戏、电子商务的任何数量的上下文或环境中。

技术优势

本发明的实施例通过将交易汇总委派到其他实体(例如,数据处理计算机和/或用户装置)来降低区块链提供商的计算负担。本发明的实施例确保各方之间发生的数据传输符合区块链上记录的阈值限制,但不要求将每个数据传输报告至区块链。通过利用本文所述的技术,保持敏感数据的机密性,并且可以验证消息的完整性。因此,区块链提供商的计算负担可以减少,因为对于可以包含任何数目的数据传输的每个信道仅需要处理单个数据传输(例如,记录净传输值)。

如上所述,本发明的服务可涉及实施一个或多个功能、过程、操作或方法步骤。在一些实施例中,由于通过适当编程的计算装置、微处理器、数据处理器等执行指令集或软件代码,可实施功能、过程、操作或方法步骤。指令集或软件代码可存储在由计算装置、微处理器等访问的存储器或其它形式的数据存储元件中。在其它实施例中,功能、过程、操作或方法步骤可由固件或专用处理器、集成电路等实施。

本申请中描述的任何软件部件或功能可实施为使用任何适当计算机语言(例如,例如java、c++或perl)、使用例如传统的或面向对象的技术由处理器执行的软件代码。软件代码可作为一系列指令或命令存储在计算机可读介质上,例如随机访问存储器(ram)、只读存储器(rom)、例如硬盘驱动器的磁介质或软盘、或例如cd-rom的光学介质。任何这样的计算机可读介质可驻留在单个计算设备上或内部,且可存在于系统或网络内的不同计算设备上或内部。

虽然已经详细描述了且在附图中示出了一些示范性实施例,但应理解,这样的实施例仅仅是对本发明的说明而非限制,且本发明不限于所示出和描述的具体安排和构造,因为本领域的普通技术人员可想到各种其它修改。

如本文所使用,除非明确指示有相反的意思,否则使用“一个”、“一种”或“所述”旨在指示“至少一个”。

附加实施例

本发明的另一实施例涉及一种由用户装置执行的方法。所述方法包括由第一用户装置促进在第一用户装置的第一应用程序与第二用户装置的第二应用程序之间交换多个数据传输消息。在至少一个实施例中,所述多个数据传输消息中的每一个数据传输消息被数字签名。所述方法还包括根据所述交换由所述第一用户装置维护与所述第一电子装置的第一用户以及第二电子装置的第二用户相关联的电子记录。所述方法还包括由第一用户装置确定所述电子记录的净传输值。所述方法还包括由所述第一用户装置将包括所述净传输值的数据传送到区块链提供商。在至少一个实施例中,所述区块链提供商接收所述数据可以使所述区块链提供商用所述净传输值更新分类账。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1