CN110546939A - 用于记录表示多个交互的数据的系统和方法 - Google Patents

用于记录表示多个交互的数据的系统和方法 Download PDF

Info

Publication number
CN110546939A
CN110546939A CN201880027081.0A CN201880027081A CN110546939A CN 110546939 A CN110546939 A CN 110546939A CN 201880027081 A CN201880027081 A CN 201880027081A CN 110546939 A CN110546939 A CN 110546939A
Authority
CN
China
Prior art keywords
node computer
computer
node
management node
digital signature
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.)
Granted
Application number
CN201880027081.0A
Other languages
English (en)
Other versions
CN110546939B (zh
Inventor
A·德卡达斯
S·慕克吉
M·雅各布斯
D·汉斯托克
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.)
Visa International Service Association
Original Assignee
Visa International Service Association
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 Visa International Service Association filed Critical Visa International Service Association
Priority to CN202210773767.2A priority Critical patent/CN115065485A/zh
Publication of CN110546939A publication Critical patent/CN110546939A/zh
Application granted granted Critical
Publication of CN110546939B publication Critical patent/CN110546939B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2379Updates performed during online database operations; commit processing
    • 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/3236Cryptographic 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 using cryptographic hash functions
    • H04L9/3239Cryptographic 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 using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • 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/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • 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/3247Cryptographic 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 digital signatures
    • 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/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • 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/56Financial cryptography, e.g. electronic payment or e-cash

Abstract

公开了一种用于将多个交互组合到单个记录条目中的方法。可以创建表示交互集的数据包,并且与交互相关联的每个实体都可以查看所述数据包。每个实体都可以通过对所述数据包进行数字签名来指示同意所述交互。一旦被每个参与实体签名,所述数据包就可以存储在例如区块链之类的记录中。

Description

用于记录表示多个交互的数据的系统和方法
相关申请交叉引用
本申请是2017年4月26日提交的第62/490,502号美国临时申请的非临时申请并要求其提交日的权益,所述美国临时申请的全部内容以引用方式并入本文以用于所有目的。
背景技术
区块链网络的设计使网络内的多个端点计算机能够提交新信息。当计算机向区块链提交新信息时,信息会不变地存储下来。这种存储信息的方式对许多情景都很有用。
例如,室友们可以决定如何划分宿舍卫生事务。第一室友可能许诺扫地。第二室友可能许诺倒垃圾。为了定下协议,两个室友都可以在区块链上记录他们的许诺。这样,如果任何一个室友对另一个室友的许诺提出异议,他们可以通过参考区块链记录来解决争议。
然而,区块链技术目前不适合记录所有类型的信息。例如,在某些情况下,多个操作者会按顺序工作或以其它方式做出贡献来完成单个项目。但是,在典型的区块链技术中,每个操作者都有单独的私钥,这意味着每个操作者只能做出与自己的操作有关的许诺,而不能做出与他人的操作有关的许诺。因此,区块链只能存储每个人完成项目的一部分的许诺,这样无法简单记录整个项目的完成情况。
例如,房屋建筑项目通常分为由不同操作者完成的多个阶段。地勤人员可以准备地基,水管工可以安装水管,电工可以安装电线,屋顶工可以盖屋顶等。充其量,每个操作者都可以向区块链输入完成自己任务的各自的许诺。这形成与房屋建筑项目相关的许多不同的区块链条目,这些条目是断开的并且难以跟踪。结果,难以查证每个单独任务的完成情况,以及整个房屋的完成情况。
本发明的实施例单独地或共同地解决了这些和其它问题。
发明内容
本发明的实施例提供用于将多个记录条目合并为一个条目以及允许多方促成单个记录的系统和方法。
第一节点计算机可以创建定义多个交互的数据包,每个交互与不同的实体相关联。例如,数据包可以指示与第一节点计算机相关联的第一交互、与第二节点计算机相关联的第二交互、与第三节点计算机相关联的第三交互等。数据包可以包含几个单独的交互,所述交互当全部执行时形成单个完整的项目。
实施例允许每个节点计算机分别接收、分析并批准数据包。每个节点计算机可以使用其唯一私钥来生成数据包的数字签名。在一些实施例中,对数据包进行数字签名可以指示节点计算机同意数据包中的信息。因此,数字签名可以用作节点计算机承诺执行数据包中指示的一个或多个操作的证据。
一旦与数据包相关联的每个节点计算机已批准数据包并对数据包进行了数字签名,就可以将数据包和生成的数字签名添加到区块链记录。
本发明的一个实施例涉及一种方法。所述方法包括由管理节点计算机从第一节点计算机接收表示多个交互的数据。所述多个交互包含与所述第一节点计算机相关联的第一交互和与所述管理节点计算机相关联的第二交互。所述方法还包含接收与表示所述多个交互的所述数据相关联的第一数字签名。所述第一数字签名是利用与所述第一节点计算机相关联的第一私钥生成的。另外,所述第一数字签名指示所述第一节点计算机同意所述第一交互。所述方法还包括利用与所述管理节点计算机相关联的第二私钥生成第二数字签名。所述第二数字签名指示所述管理节点计算机同意所述第二交互。所述方法还包含创建区块链的区块,所述区块包含表示所述多个交互的所述数据。
本发明的另一实施例涉及一种配置成执行上述方法的管理节点计算机。
本发明的另一实施例涉及一种方法,所述方法包括由第一节点计算机生成表示多个交互的数据。所述多个交互包含与所述第一节点计算机相关联的第一交互和与管理节点计算机相关联的第二交互。所述方法还包含利用第一私钥生成第一数字签名。所述第一数字签名与表示所述多个交互的所述数据相关联。另外,所述第一数字签名指示所述第一节点计算机同意所述第一交互。所述方法还包括将表示多个交互的所述数据和所述第一数字签名传输到管理节点计算机。然后,所述管理节点计算机利用第二私钥生成第二数字签名,并且所述第二数字签名指示所述管理节点计算机同意所述第二交互。所述管理节点计算机还创建区块链的区块,所述区块包含表示所述多个交互的所述数据。
本发明的另一实施例涉及一种配置成执行上述方法的第一节点计算机。
关于本发明的实施例的更多细节可以见于具体实施方式和附图说明。
附图说明
图1示出根据本发明的实施例的系统的框图。
图2示出根据本发明的实施例的管理节点计算机的框图。
图3示出根据本发明的实施例的第一节点计算机的框图。
图4示出根据本发明的实施例的网络中的节点的实例。
图5示出根据本发明的实施例的原子交易的实例。
图6示出根据本发明的实施例的账户关联的框图。
图7A-7C示出说明根据本发明的实施例的用于同时一起记录多个交互的方法的流程图。
具体实施方式
本发明的实施例提供用于同时一起记录多个交互以及允许多方促成单个记录的系统和方法。第一节点计算机(例如,或其它记录提交实体)可以生成包含关于多个交互的信息的数据包。然后,第一节点计算机可以将数据包传输给负责交互之一的每一方(例如,管理节点)。然后,每个责任方都可以生成数据包的数字签名,他们的数字签名指示他们保证将完成他们负责的任何交互。一旦每个责任方已批准数据包并对数据包进行了数字签名,就可以将数据包和数字签名添加到区块链记录。
因此,可以一起记录几个交互,而不是分开提交和记录。由于一条记录经过验证并输入到以前可能有多条记录的地方,因此可以提高记录保存效率并减少记录处理带宽。另外,数据包可以包含关于彼此相关的交互的信息,例如支付交易中的不同转账步骤,或促成建筑项目的单独的任务。因此,单个数据包可以用于记录较大项目的多个部分。这意味着可以更好地组织记录系统,并允许通过查找单个记录条目来识别整个项目。
另外,在一些实施例中,可直到所有责任方都批准并进行数字签名才会记录数据包(例如,记录在区块链记录中)。这意味着,一个责任操作者可直到每个其他操作者都对他们的操作作出承诺才不可逆地承诺进行操作。例如,如果第一操作者对数据包进行数字签名(例如,指示待定承诺)而第二操作者拒绝签名,则可以删除所述数据包而不记录所述数据包,使得第一操作者解除其待定承诺。类似地,直到每个操作者都承诺进行自己的一部分才会最终确定项目计划。因此,一些操作者可能会同意计划的第一草案,但并非所有操作者都同意。可以对计划进行迭代修订,直到每个操作者都同意(例如,通过数字签名)数据包中列出的详细信息才最终确定并永久记录计划。因此,本发明的实施例通过允许各个操作者首先尝试性地承诺然后在所有操作者都同意之后永久地承诺来帮助创建交互记录和计划。
在国际申请US2017/046364和国际申请US2017/059744中描述了可以包含在本发明的实施例中的附加特征,所述申请出于所有目的以全文引用的方式并入本文中。
在论述本发明的特定实施例之前,可详细地描述一些术语。
“交互”可以包含活动、交换或沟通。实例交互包含执行任务(例如,安装管道)、价值转移(例如,支付交易或访问权限转移)以及提供更新的信息(例如,医疗记录、学术记录等)。
“价值”可以包含金额、资产或具有价值的信息集。例如,价值可以包含货币金额、访问权限或登录凭证。价值可以通过从第一所有者转移到第二所有者来更改所有权。价值转移的实例包含转移货币的支付交易,例如转移游戏积分或手机通话时间的积分转移,以及转移活动门票或财产契约的财产转移。
“数据包”可以指数字信息的集合。例如,数据包可以是以二进制格式存在的信息。在一些实施例中,数据包可以包含关于记录中可描述的任何内容(例如交互)的信息。例如,数据包可以包含任何合适类型的数字信息,例如活动数据、所有权数据、产品状态数据、项目更新数据等。实施例允许数据包包含表示多个交互的数据。例如,数据包可以包含有关例如两个或更多个支付交易或两个或更多个建筑活动的多个交互的数字信息。
术语“节点”可以指连接点。在一些实施例中,节点可以是物理电子装置,其能够创建、接收或传输数据。在其它实施例中,节点可以是计算装置上的软件模块,所述软件模块是通信网络中的连接点。在一些实施例中,节点可以是记录保存网络内的计算装置。节点可以创建数据包、转移数据包、接收数据包、验证数据包、访问中心记录和/或执行任何其它合适的功能。不同类型的节点可能够执行记录网络中的不同组的功能。在一些实施例中,节点可与金融机构计算机(例如银行)、支付处理器计算机、第三方计算机或任何其它合适的实体相关联和/或由它们运营。
“记录”可以指一个或多个交互的证据。数字记录可以是交互的电子文档。记录可以包含记录标识符和记录信息。例如,记录信息可以包含描述一个或多个交互的信息和/或与交互相关联的信息(例如,数字签名)。记录信息还可以包含多个数据包,其中每个数据包包含描述不同多个交互的不同数据。记录标识符可以是用于标识记录的数字、标题或其它数据值。记录标识符可能是非描述性的,因为它可能不会提供关于记录中的记录信息的任何有意义的信息。记录实例包含医疗记录、学术记录、交易分类账中的交易记录等。记录的另一实例是区块链中的区块。单个区块可以是单个记录,且区块链可以是一系列记录。区块链标头是记录标识符的实例,且区块链主体是记录信息的实例。
术语“交易分类账”可以指来自先前交易的数据汇编。交易分类账可以是数据库或其它相当的文件结构,其可以配置成存储来自所有先前交易的数据,包含交易的日期和时间、交易金额,以及交易的参与者的标识信息(例如,交易金额的发送方和接收方)。在一些实施例中,交易分类账可以呈电子分类账(例如,区块链)的形式,其中已经存储在电子分类账中的数据是不可更改的。
“区块链”可以是数据库,其维护不断增长的记录列表,以防篡改和修订。区块链可以包含记录在一个或多个节点上的多个交互记录区块。区块链中的每个区块还可以包含时间戳和前一个区块的链接。例如,每个区块可以包含或附加到前一个区块的散列。换句话说,区块链中的交互记录可以存储为一系列“区块”或包含给定时间周期内发生的数笔交易的记录的永久性文件。在区块完成并经过验证之后,可以通过合适的节点将区块附加到区块链。在本发明的实施例中,区块链可以是分布式的,并且可以在区块链网络中的每个节点处维护区块链的副本。
“密钥对”可以包含一对相联系的加密密钥。例如,密钥对可以包含公钥和对应的私钥。在密钥对中,第一密钥(例如,公钥)可以用于加密消息,而第二密钥(例如,私钥)可用于解密所加密的消息。另外,公钥能够查证用对应的私钥创建的数字签名。公钥可以分布在整个网络中,以便能够查证使用对应的私钥签名的消息。公钥和私钥可以呈任何合适的格式,包含基于RSA或椭圆曲线密码学(ECC)的格式。在一些实施例中,可以使用非对称密钥对算法来生成密钥对。然而,如本领域的普通技术人员所理解,也可以使用其它手段来生成密钥对。
术语“数字签名”可以指消息的电子签名。数字签名可以是数字数据值、字母数字数据值或包含图形表示的任何其它类型的数据。数字签名可以是使用加密算法从消息和私钥生成的唯一数据值。在一些实施例中,可以使用采用公钥的验证算法来查证签名。
“企业标识符”可以包含用户的标识符。例如,企业标识符可以是向记录保存网络中的节点提交新记录信息的终端用户的全局唯一标识符,或从节点接收关于新记录信息(例如,价值转移)的信息的终端用户的全局唯一标识符。在一些实施例中,企业标识符还可以指示与用户相关联的特定节点。企业标识符可以包含字母数字字符、特殊字符和任何其它合适的符号。
“地址标识符”可以包含参与者的标识符。例如,地址标识符可以表示网络中的节点或服务提供者。在一些实施例中,通信可以通过包含特定节点的地址标识符而定向到所述节点。地址标识符可以包含一串字符,例如字母、数字等。例如,地址标识符可以是一串5个、10个、15个或任何其它合适数目个字符。在一些实施例中,与参与者相关联的公钥可以用作参与者的地址标识符。
“类别标识符”可以包含表示特定类型的记录的数据值。类别标识符可以用于识别可记录信息的任何合适的类别。例如,类别标识符可以配置成标识医疗信息类型记录、学历类型记录、产品标识符类型记录、员工数据类型记录、活动类型记录(例如,建筑活动、管道施工活动等)、各种类型的价值转移记录(例如,美元支付、英磅支付、人民币支付、数字版权数据转移、财产契约转移、活动门票转移、游戏积分转移、能源税收抵免转移、手机通话时间转移等)或任何其它合适类型的记录。类别可以以任何合适方式划分。在一些实施例中,类别标识符还可以指示特定参与者被授权创建和/或接收所述类型的记录的数据包。类别标识符可以包含一串字符,例如字母、数字等。例如,地址标识符可以是一串5个、10个、15个或任何其它合适数目个字符。
“服务器计算机”可以包含功能强大的计算机或计算机集群。例如,服务器计算机可以是大型主机、小型计算机集群或像单元一样工作的一组服务器。在一个实例中,服务器计算机可以是耦合到网络服务器的数据库服务器。服务器计算机可耦合到数据库,且可以包含用于服务来自一个或多个客户端计算机的请求的任何硬件、软件、其它逻辑或前述内容的组合。
图1示出包括若干部件的系统100。系统100包括由管理节点计算机150管理的记录网络。第一节点计算机165、第二节点计算机145以及任何其它合适数目个节点计算机参与网络。由第一用户(未示出)操作的第一用户计算机110可以通过第一节点计算机165提交记录更新指令,且由第二用户(未示出)操作的第二用户计算机130可以通过第二节点计算机145接收记录更新。系统100中示出的所有计算机都可通过任何合适的通信信道或通信网络与彼此进行操作性通信。合适的通信网络可以是下列中的任一个和/或组合:直接互连;互联网;局域网(LAN);城域网(MAN);作为互联网上节点的运行任务(OMNI);安全定制连接;广域网(WAN);无线网络(例如,采用例如但不限于无线应用协议(WAP)、I-模式等的协议)等。
可以使用安全通信协议,例如但不限于:文件传输协议(FTP)、超文本传输协议(HTTP)、安全超文本传输协议(HTTPS)、安全套接层(SSL)、ISO(例如,ISO 8583)等来传输计算机、网络与装置之间的消息。
系统100可以配置成创建和维护任何合适类型的记录。管理节点计算机150可以通过提供多个服务来管理记录保存过程。例如,管理节点计算机150可以为区块链构建新的区块,所述新的区块包含更新后的记录信息。管理节点计算机150还可以登记节点和终端用户,并调节参与节点的行为以便使得记录安全且可靠。管理节点计算机150可以另外查证新数据包,并通知参与节点有关新交互和区块。
当管理节点计算机150可以构建并维护记录时,第一节点计算机165和第二节点计算机145可以向管理节点计算机150提交新信息以供记录。第一节点计算机165和第二节点计算机145可以通过创建并提交具有各种类别的交互的数据包来执行这一操作。第一节点计算机165和第二节点计算机145可以基于从第一用户计算机110和/或第二用户计算机130接收的交互指令而创建数据包。
尽管图1具体说明了第一节点计算机165和第二节点计算机145,但系统100可以包含任何合适数量的附加节点计算机(如在图1中空心圆所表示)。另外,第一节点计算机165和第二节点计算机145可与非第一用户计算机110和第二用户计算机130的其它用户计算机通信。另外,系统100可以包含超过一个管理节点计算机150来管理记录网络。
系统100可以用于处理、批准并记录任何合适类型的信息。例如,系统100可以用于记录关于新交互的信息,例如新项目和活动、新价值转移、新医疗患者数据、新学业成就等。
此外,系统可以将多个交互组合到单个数据包中,然后再组合到单个区块链记录中。例如,代替为不同的交互提交不同的数据包,第一节点计算机165可以提交包含关于多个交互的信息的单个数据包。如下所述,多个节点可以提供其数字签名以指示对这种数据包的批准,并且可以直到每个相关联的节点提供其数字签名才将所述数据包接受到记录中。
图2中示出了根据本发明的一些实施例的管理节点计算机150的实例。管理节点计算机150包括处理器150A、网络接口150B、记录数据库150C、节点数据库150D、用户数据库150P、密钥数据库150Q和计算机可读介质150E。
记录数据库150C可以存储记录。例如,从网络中的节点接收的数据包可插入到记录中并存储在记录数据库150C中。在一些实施例中,记录可采取具有区块记录的区块链的形式,每一区块包含表示一个或多个交互的一个或多个数据包。
节点数据库150D可以包含关于节点的信息,例如第一节点计算机165和第二节点计算机145。例如,节点数据库可以包含与第一节点计算机165相关联的标识符,例如地址标识符和一个或多个类别标识符。节点数据库150D还可以包含关于与不同节点相关联的例如支出限值等限制的信息。
用户数据库150P可以包含关于例如第一用户和第二用户的所登记终端用户以及与用户相关联的装置(例如,第一用户计算机110和第二用户计算机130)的信息。这可以包含企业标识符,以及关于与用户相关联的节点的信息。例如,第二用户计算机的企业标识符可与第二节点计算机的地址标识符以及特定类别标识符相关联。
密钥数据库150Q可以存储加密密钥。例如,密钥数据库150Q可以包含每一节点的公钥,以及与管理节点计算机150相关联的私钥。在一些实施例中,密钥数据库150Q可以采取硬件安全模块(HSM)的形式。
计算机可读介质150E可以包括登记模块150F、验证模块150J、签名模块150K、记录更新模块150L、结算模块150M和任何其它合适的软件模块。计算机可读介质150E还可以包括代码,所述代码可由处理器150A执行以实现方法,所述方法包括:从第一节点计算机接收表示多个交互的数据,所述多个交互包含与第一节点计算机相关联的第一交互和与管理节点计算机相关联的第二交互;接收与表示所述多个交互的数据相关联的第一数字签名,所述第一数字签名是利用与第一节点计算机相关联的第一私钥生成的,并且所述第一数字签名指示第一节点计算机同意第一交互;利用与管理节点计算机相关联的第二私钥生成第二数字签名,所述第二数字签名指示管理节点计算机同意第二交互;以及创建区块链的区块,所述区块包含表示所述多个交互的所述数据。
登记模块150F可以包括代码,所述代码使处理器150A登记加入记录网络的节点计算机。例如,登记模块150F可以含有逻辑,所述逻辑使处理器150A评估实体是否可登记,以及向新的实体分配什么风险等级。风险等级可能受以下影响:实体是不是众所周知且可靠的组织;它是否已建立结算账户或其它结算过程;它是否位于风险国家等。除了分配风险等级之外,管理节点计算机150还可基于风险概况发行所述节点的活动限值。活动限值可以包含例如最大交易阈值限值和/或速度限值,例如关于在某一时间段(例如,一天、一周或一个月)内可以提交的支付交易次数或总交易价值的限值。
登记模块150F还可以包含用于为新登记的节点生成并分配唯一地址标识符的指令。另外,可存在用于生成密钥并将密钥分配给新登记的节点的指令。例如,管理节点计算机150可以为节点生成密钥对。管理节点计算机150可以存储公钥并向节点计算机提供私钥。
登记模块150F可以另外包含用于登记终端用户的指令。例如,管理节点计算机150可以从节点接收关于新用户的信息(例如,名称、地址、账号、电话号码、企业的公司简介等),存储用户信息,然后向用户分配唯一企业标识符。在一些实施例中,企业标识符可以包含指示相关联的节点或节点的地址标识符的字符子集。
验证模块150J可以包括使处理器150A验证新数据包以便可以在记录中输入数据包的代码。例如,验证模块150J可以含有逻辑,所述逻辑使处理器150A检查包含地址标识符和类别标识符的数据包均有效且与同一节点计算机相关联,并且检查新数据包尚未超出且目前不会超出与所提交的类别标识符相关联的限值。
验证模块150J可以另外含有逻辑,所述逻辑使处理器150A验证与数据包相关联的所有实体(例如,一个或多个节点和一个或多个用户)已向网络注册并且已经筛选符合条件者。管理节点计算机150还可以评估交易风险,例如通过评估所涉及的一方或多方的交易速度,或通过确定提交节点是否已发出任何警告。
验证模块150J可以另外包括使处理器150A查证一个或多个数字签名的真实性的代码。例如,验证模块150J可以含有逻辑,所述逻辑使处理器150A使用节点计算机的公钥来查证与所述节点计算机相关联的数字签名的真实性。
签名模块150K可以包括使处理器150A生成数字签名的代码。例如,签名模块150K可以含有逻辑,所述逻辑使处理器150A使用管理节点私钥生成数据包的数字签名。管理节点计算机的数字签名可以用于指示数据包的真实性,并且可以提供转移有效且可信的保证。
在一些实施例中,数据包可以包含关于多于一个交互的信息,并且管理节点计算机的数字签名可以指示管理节点计算机150已经承诺完成示出为管理节点计算机的责任的任何交互。例如,数据包可以描述两个交易,包含由第一节点计算机165(例如,向管理节点计算机150)进行的第一支付的第一交易以及包含由管理节点计算机150(例如,向第二节点计算机145)进行的第二支付的第二交易。因此,即使支付者(例如,第一节点计算机165)没有完成第一支付,管理节点计算机的数字签名也可以证明管理节点计算机150将完成第二交易并向接收方交付许诺价值。
另外,每个数字签名都可以激活智能合同。例如,第一智能合同可以保持第一节点计算机165对第一交易负责,并且第二智能合同可以保持管理节点计算机150对第二交易负责。在某个时间量之后,智能合同可以自动地发起结算过程。在一些实施例中,管理节点计算机150可以在中心银行处强制进行两个账户之间的结算。
记录更新模块150L可以包括使处理器150A维护并更新记录集的代码。例如,记录更新模块150L可以含有逻辑,所述逻辑使处理器150A记录关于新交互(例如,如新数据包中所指示)的信息。在一些实施例中,记录更新模块150L可以包含用于将具有表示多个交互的数据的新数据包(例如,以及相关联的数字签名)包含在下一个区块链区块中的指令。
记录更新模块150L可以另外包含用于在新数据包创建时通知与数据包中描述的交互相关联的各方的指令。例如,当对新支付交易进行验证和签名时,管理节点计算机150可以向接收节点(例如,第二节点计算机145)和/或用户计算机发送关于新支付交易的信息。
在一些实施例中,参与节点计算机可以不维护单独的记录集,而是相反地可以引用管理节点计算机150的集中维护的记录。例如,第一节点计算机165和第二节点计算机145可各自为轻节点。在这种情况下,管理节点计算机150可以向这些节点提供对中心记录的实时访问,或管理节点计算机150可以提供有规律的记录更新(例如,可以每10秒、每1分钟、每5分钟等发送更新)。因此,其它节点可以在记录交互之后立即或很快知道新交互。
在一些实施例中,参与节点计算机可能无法看到所有记录信息,它们可能只能查看过滤后的记录或在准许的情况下查看记录。例如在管理节点计算机150处访问记录时,第一节点计算机165、第二节点计算机145、第一用户计算机110和/或第二用户计算机130可能只能查看与它们相关联的交互记录(例如,它们是其中一方的交易)。例如,第二节点计算机145可能够查看所有区块标头,但是可能只能查看与它相关联的区块主体和交互记录。
在一些实施例中,可以存在多个管理节点计算机150,每一管理节点计算机接收并处理具有关于不同交互的信息的不同数据包,然后更新它们自己的记录。这些不同的管理节点计算机可以彼此通信,以共享新记录并确认它们的记录包含相同的交互。
结算模块150M可以包括使处理器150A在账户之间结算许诺价值的代码。例如,结算模块150M可以含有逻辑,所述逻辑使处理器150A在中心银行处从第一节点的结算账户借记在交互记录中指示的金额,并将相同的金额(或减少了评估费用的金额)贷记到第二节点的结算账户。
在一些实施例中,结算可以分多个步骤进行(例如,由于使用多个交易来转移价值)。例如,第一结算可以包含从第一节点的结算账户借记在第一交互记录中指示的第一金额,并将相同的第一金额贷记到管理节点的结算账户。然后,第二结算可以包含从管理节点的结算账户借记在第二交互记录中指示的第二金额,并将相同的第二金额贷记到第二节点的结算账户。结果,通过管理节点将价值从第一节点转移到第二节点。
在一些实施例中,第二金额可以小于第一金额(例如,由于转账手续费或汇率)。另外,第二金额可以使用与第一金额不同类型的货币来结算(例如,第一交易可以在美元账户之间结算,第二交易可以使用人民币结算)。下面参考图5-6描述其它结算细节。
返回参考图1,如上文所提及,第一节点计算机165可以通过创建并提交具有新交互数据的新数据包来参与记录网络以代表一个或多个用户更新记录。
图3中示出根据本发明的一些实施例的第一节点计算机165的实例。第一节点计算机165包括处理器165A、网络接口165B、标识符数据库165C、密钥数据库165E和计算机可读介质165F。
标识符数据库165C可以存储关于第一节点计算机的标识符的信息,例如地址标识符和一个或多个类别标识符。标识符数据库165C还可以包含关于一个或多个用户的信息,例如企业标识符、相关联的类别类型和/或用户账户。
密钥数据库165E可以存储加密密钥。例如,密钥数据库165E可以包含与第一节点计算机165相关联的私钥以及与管理节点计算机150相关联的公钥。在一些实施例中,密钥数据库165E可以采取硬件安全模块(HSM)的形式。
计算机可读介质165F可以包括登记模块165G、用户登记模块165K、数据包模块165L、节点查找模块165M、价值分析模块165N、签名模块165P、记录提交模块165Q以及任何其它合适的软件模块。计算机可读介质165F还可以包括代码,所述代码可由处理器165A执行以实现方法,所述方法包括:生成表示多个交互的数据,所述多个交互包含与第一节点计算机相关联的第一交互和与管理节点计算机相关联的第二交互;利用第一私钥生成第一数字签名,所述第一数字签名与表示所述多个交互的数据相关联,所述第一数字签名指示第一节点计算机同意第一交互;以及将表示多个交互的数据和第一数字签名传输到管理节点计算机,其中所述管理节点计算机利用第二私钥生成第二数字签名,所述第二数字签名指示管理节点计算机同意第二交互,并且其中管理节点计算机创建区块链的区块,所述区块包含表示所述多个交互的数据。
登记模块165G可以包括使处理器165A用管理节点计算机150进行登记以参与记录网络的代码。例如,登记模块165G可以含有逻辑,所述逻辑使处理器165A发送包含关于第一节点的信息的登记请求消息,所述信息例如地址、银行标识符、结算账户和/或任何其它合适的信息。登记模块165G还包含从管理节点计算机150接收并存储地址标识符、管理节点公钥、第一节点私钥、一个或多个类别标识符和任何其它合适的登记信息的指令。
用户登记模块165K可以包括使处理器165A便于登记终端用户的代码。例如,用户登记模块165K可以含有逻辑,所述逻辑使处理器165A向管理节点计算机150提供用户信息(例如,名称、住宅和/或企业地址、出生日期、电话号码、账号、账户用户名、账户密码、电子邮件地址、由政府颁发的标识号,如驾照号码、护照号码或社会保障号码等)。第一节点计算机165还可以从管理节点计算机150接收并存储第一用户计算机110的企业标识符,并将所述企业标识符提供到第一用户计算机110。
数据包模块165L可以包括使处理器165A生成新数据包的代码。例如,数据包模块165L可以含有逻辑,所述逻辑使处理器165A从第一用户计算机110接收指令并基于所述指令创建用于一个或多个交互的数据包。数据包可以包含将新记录输入到分类账中的任何合适信息。在支付交易的实例中,数据包可以包含关于发送账户、接收账户、发送货币、接收货币的信息,和/或任何其它合适的信息。
在一些实施例中,可以创建数据包以包含详细描述多个交易的信息。例如,数据包可以描述第一交易(例如,第一发送方、第一接收方、第一货币类型、第一金额等)以及第二交易(例如,第二发送方、第二接收方、第二货币类型、第二金额等)。相应地,第一节点计算机165可以生成描述用于将价值传输到接收方的多个步骤的数据包。如下所述,参与转移的各方可以通过提供数字签名同意数据包中的详细信息。
节点查找模块165M可以包括使处理器165A基于用户而识别节点的代码。例如,节点查找模块165M可以含有逻辑,所述逻辑使处理器165A基于第二用户计算机被指示为交易接收方而识别第二节点计算机。例如,第二节点的地址标识符可以基于包含在第二用户的企业标识符中的字符子集进行识别,或地址标识符可与数据库(例如,在管理节点计算机150处访问的数据库)中的第二用户的企业标识符相关联。节点查找模块165M还可以包含向新数据包添加所识别的地址标识符的指令。
价值分析模块165N可以包括使处理器165A确定交互的价值的代码。例如,价值分析模块165N可以含有逻辑,所述逻辑使处理器165A确定将从第一用户计算机110扣除以便向第二用户计算机130交付呈第二货币形式的第二金额的呈第一货币形式的第一金额。这一确定可以包含查找当前外汇汇率并计算转账手续费(例如,当前外汇汇率和转账手续费均可由管理节点计算机150提供)。以第一货币借记的金额、以第二货币贷记的金额、货币汇率和/或评估的费用可以包含在新数据包中。
签名模块165P可以包括使处理器165A创建数字签名的代码。例如,签名模块165P可以含有逻辑,所述逻辑使处理器165A将私钥和数学算法应用到数据包,使得针对所述数据包生成数字签名。第一节点计算机的数字签名可以用作证明它确实是创建并提交数据包的第一节点计算机165的证据。第一节点计算机的数字签名也可以指示第一节点计算机对数据包中指定的一个或多个交互的承诺。例如,通过对数据包进行签名,第一节点计算机165可以承诺完成第一支付交易,其中将第一价值从第一节点转移到管理节点。
记录提交模块165Q可以包括使处理器165A提交具有新交互的新数据包以供记录的代码。例如,记录提交模块165Q可以含有逻辑,所述逻辑使处理器165A向管理节点计算机150发送新数据包、相关联的数字签名和/或任何其它合适的信息。
在一些实施例中,第一节点计算机165可以向用户提供在记录网络中提交具有新交互的新数据包之外的附加服务。例如,第一节点计算机165可以是与金融机构、医院、政府机构、学术机构、移动电话服务提供者或任何其它合适的服务提供者相关联的计算机。相应地,在一些实施例中,第一节点计算机165可以代表用户维护账户。账户可以依据服务提供者的类型而存储标识信息、医疗记录、学术记录、财务信息或任何其它合适的细节。
在其中第一节点计算机165与金融机构相关联的实施例中,第一节点计算机165可以代表用户存储价值。第一节点计算机165还可能够代表用户提供价值(例如,提供支付)。金融机构的实例是发行方,其通常可以指为用户发行和维护账户(例如,银行账户)的企业实体(例如,银行)。
在一些实施例中,第一节点计算机165可以表示多个相关联的计算机。例如,上文对于网络参与所描述的功能性和与银行服务相关联的功能性可在若干个协作计算机当中划分。
返回参考图1,如上文所提及,第二节点计算机145可以参与记录网络。在一些实施例中,第二节点计算机145可以验证新数据包的真实性,并且可以通知第二用户计算机130有关所述数据包中的新交互数据。
第二节点计算机145可以一种或多种方式验证新数据包是真实的。例如,第二节点计算机145可以查证第一节点计算机的数字签名和管理节点计算机的签名均为真实的(例如,使用它们相应的公钥)。
在一些实施例中,第二节点计算机145可能只查证管理节点计算机的签名是真实的,因为第二节点计算机145可能受管理节点的操作影响。例如,第一节点计算机的签名可能只保证第一节点向管理节点交付价值,这可能不会直接影响第二节点。相比之下,管理节点计算机的签名可能只保证管理节点向第二节点交付价值。相应地,第二节点可能只与管理节点的操作和签名有关,而与第一节点的操作和签名无关。
在一些实施例中,第二节点计算机145可以通过访问中心记录(例如,区块链记录)并确认交互和/或数据包已被添加到记录中来查证交互和/或数据包的真实性。
第二节点计算机145在本文中主要被描述为代表第二用户计算机130接收关于新交互(例如,通过数据包)的信息的节点。然而,在一些实施例中,第二节点计算机145可以包含上文关于第一节点计算机165所描述的功能性中的一些或全部。例如,第二节点计算机145可以代表第二用户计算机130或其它相关联的用户向记录网络提交具有新交互数据的数据包。类似地,在一些实施例中,第一节点计算机165可以包含关于第二节点计算机145所描述的功能性中的一些或全部(例如,第一节点计算机165可以代表第一用户计算机110接收并验证数据包)。
类似于第一节点计算机165,第二节点计算机145还可以与例如银行的服务提供者相关联。因此,第二节点计算机145可以代管第二用户账户,并且可以代表第二用户存储和接收价值。例如,第二节点计算机145可与收单方相关联,收单方通常可以是与特定资源提供者或其它实体有业务关系的企业实体(例如,商业银行)。一些实体可以执行发行方和收单方两者的功能。一些实施例可以涵盖此类单实体发行方-收单方。
在一些实施例中,第二节点计算机145可以具有高信任水平:例如由于两个有效的数字签名、由于数据包包含在区块链记录中、由于数据包包含几个相关联的标识符(例如,类别标识符和/或地址标识符)或由于任何其它合适的证据而将交付许诺的值。因此,第二节点计算机145可以使在所接收的数据包中指示的价值在第二用户的账户中立即可用(例如,可取出),即使所述价值尚未结算和接收也如此。另外,由于管理节点可以是大型的、受信任的中心实体,因此第二节点可以在管理节点中具有高信任水平。如上所述,第二节点可只需要信任管理节点,因为如果第一节点不跟进,第二节点不会受到影响。相应地,即使单独使用管理节点的数字签名,也可以为第二节点提供高信任水平。
如上所述,多个节点可以加入记录网络,并且每个节点可以代表多个用户发送和接收具有交互数据的数据包。用户可以是个人、企业、组织的记录更新管理员或任何其它合适类型的用户。例如,第一用户可以是个人,且第二用户可以是参与交易的资源提供者(例如,商家),并且可以销售商品或服务或提供对商品或服务的访问。
在一些实施例中,终端用户可以与多个企业标识符相关联。例如,针对与用户相关联的每一不同货币和银行,可以向用户分配不同的企业标识符。第一用户可以在第一节点计算机165处具有多个账户,每个账户具有不同货币。相应地,第一用户计算机110可以针对用于第一节点计算机165的每种货币类型而存储不同企业标识符。第一用户还可以使用在不同银行节点处的另一账户参与交易,并且可以具有与这一附加银行相关联的另一企业标识符。
图4中示出记录网络的实例。在一些实施例中,如图4所示,几个节点可能够在录制网络内提供和接收具有交互数据的数据包。示出了实例转移,其中第一节点计算机165正在向第二节点计算机145提供具有交互数据(例如,用于支付交易)的数据包。如图所示,第一节点计算机165可以将数据包发送到管理节点计算机150,管理节点计算机150然后可以将数据包转发到第二节点计算机145。管理节点计算机150还可以在将数据包发送到第二节点计算机145之前验证数据包并对其进行数字签名。记录网络可以包含任何其它合适数量的节点计算机(例如,可以充当发送方和接收方)以及附加的管理节点计算机。每个管理节点计算机都可以维护已在节点之间转移的数据包的交互分类账,并且管理节点计算机可以相互更新以维护同步分类账。
如上文所提及,在一些实施例中,记录系统可以利用区块链。区块链中的每个区块可以包含关于一个或多个交互的信息(例如,来自一个或多个数据包)。区块链分类账可能只能在检测到的情况下更改。这确保了对与交易有关的信息进行的任何篡改都会被察觉到,例如试图将交易价值重新分配给不适当的实体。区块标头和包含交易信息(例如,和任何其它合适的信息)的区块主体可以一起构成一个区块。
如上文所提及,在一些实施例中,数据包和记录条目可以包含关于多个交互的信息。这可以允许单个数据包和记录条目包含关于完成事件(例如支付交易或项目)的所有必要步骤的信息。例如,建筑项目可能涉及由几个实体执行的若干活动(例如,由水管工进行的管道施工,由电工进行的电气工作等)。在创建建筑计划并从每个工作人员获得承诺时,拥有单个数据包和记录条目来描述每个活动并反映每个工作人员的承诺将是有益的,而不是为每个活动和工作人员分开输入记录。在另一实例中,第一节点可能无法直接向第二节点发送支付(例如,因为它们没有直接关系)。替代地,可能需要将支付分成多个组成交易(可以称为原子交易),其中将管理节点用作促进支付价值转移的中介机构。同样,将所有原子交易一起描述在单个数据包中而不是分开记录,效率更高。图5中示出组合使用原子交易以将价值从发送方转移到接收方的实例。
图5中的原子交易实例示出了将价值从第一节点计算机165转移到第二节点计算机145的技术,其中第一节点计算机165和第二节点计算机145不一定具有直接关系或直接通信线路。净价值转移使用两个单独的分摊交易(称为原子交易)完成。第一行表示第一原子交易。如第一行所示,第一子交易包含第一节点计算机165发送第一价值V1,以及管理节点计算机150接收第一价值V1。第二行表示第二交易,其中管理节点计算机150发送第二价值V2,以及第二节点计算机145接收第二价值V2。通过原子交易的组合,第一节点计算机165能够有效地将第二价值V2发送到第二节点计算机145。在一些实施例中,第一价值V1和第二价值V2可以是相同的金额和/或相同的货币。在其它实施例中,它们可以是不同的货币,并且可以在转换期间评估兑换费。
为了发起向第二节点计算机145发送价值,第一节点计算机165可以生成数据包。数据包可以定义两个原子交易。例如,数据包可以包含图5所示的不同交易的信息。换言之,数据包可以指定哪个实体负责发送每个价值,哪个实体要接收每个价值,每个交易中发送的金额,每个交易中使用的货币(或其它价值类别)的类型,从中取款和向其存款的具体账户,和/或任何其它合适的信息。数据包还可以包含关于可能的汇率和/或兑换费的信息(例如,可以由管理节点保留的信息),这两者都可以反映在第一价值V1和第二价值V2之间的差中。数据包可以被验证和记录,并且可以充当价值许诺。价值的实际转移(例如结算)可能会在以后发生。
如图5所示,数据包可以由负责数据包中定义的操作的每个实体进行数字签名。例如,如第一行所示,第一节点计算机165可以为数据包提供数字签名,这指示第一节点承诺将第一价值V1发送到管理节点计算机150。另外,如第二行所示,管理节点计算机150可以提供第二数字签名(例如,如果管理节点计算机150批准交易),这指示管理节点承诺将第二价值V2发送到第二节点计算机145。一旦所有操作者(例如,第一节点计算机165和管理节点计算机150)已经对数据包进行签名,数据包(或数据包中定义的交易)和相关联的数字签名就可以记录在分类账中(例如,发布至区块链),以便记录两个交易。
稍后,可以结算每个原子交易。例如,可以从第一节点的账户中提取第一价值V1并贷记到管理节点的账户,并且可以从管理节点的账户中提取第二价值V2并贷记到第二节点的账户。由于管理节点的承诺,即使第一结算失败,也可以执行第二结算。
如上文所提及,其它类型的交互也可以一起记录在单个数据包中。例如,总承包商可以草拟建造房屋的计划。总承包商可以将任务分配给每种类型的熟练工作人员(例如,建筑师、水管工、电工、屋顶工、木工、石匠等),并且可以在数据包中定义每个任务。每个工作人员都可以查看数据包,并可以通过提供数字签名来同意定义的任务和条款。如果所有工作人员都同意并签名,则可以认为计划已最终确定,因为没有异议。相应地,已完成的数据包可以存储在记录(例如,区块链记录)中,以使表示许诺活动的信息无法被处理,并且相关方可以参考记录并查看每个工作人员同意的内容(并确认在每个任务完成时总项目将完成)。
对于价值转移(例如,支付交易),结算可以以多种方式进行。可以关于图6描述一些结算技术,其中示出了结算账户的框图。图6示出了几个管理节点结算账户605,包含第一账户605A、第二账户605B、第三账户605C和第四账户605D。这些可以表示不同类型货币的账户、不同地区的账户,或备份账户。例如,第一账户605A可以包含美元货币,因此可能够使用美元来发送和接收价值,而第二账户605B可以包含人民币,因此可能够使用人民币来发送和接收价值。还可以包含附加的管理节点账户605。
图6还包含与不同节点相关联的几个结算账户。例如,第一节点账户610可以与第一节点计算机165相关联,并且第二节点账户620可以与第二节点计算机145相关联。第三节点账户630、第四节点账户640、第五节点账户650、第六节点账户660、第七节点账户670、第八节点账户680可以各自与一个或多个附加节点计算机相关联。
在一些实施例中,所有结算账户均在中心银行注资并维持。中心银行可以与管理节点相关联、与之通信和/或由其操作。因此,管理节点计算机150可以通过与中心银行通信来控制交易的结算。其它实施例可以替代地使用代理账户(例如,在没有中心银行的情况下在不同节点之间建立的账户),以及其它替代结算安排。
图6示出连接到中心管理节点账户605的每个节点账户(例如,就像带辐条的集线器)。这展示了管理节点账户605可以如何用作不同节点账户之间的公共连接。
例如,第一节点可能与第二节点没有直接关系,但是可以在管理节点的帮助下并通过使用原子交易将价值转移到第二节点。中心银行可以使第一节点账户610减少第一交易价值,并且使管理节点账户(例如,第一账户605A)增加第一交易价值。然后,中心银行可以使管理节点账户(例如,第二账户605B)减少第二交易价值,并且使第二节点账户620增加第二交易价值。
因此,管理节点账户605使得能够有效地将支付从第一节点账户610转移到第二节点账户620。另外,多个管理账户605的使用使得能够以第一货币从第一节点账户610中提取支付(例如,因为管理节点的第一账户605A可以接收第一货币的价值),并以第二货币贷记到第二节点账户中620(例如,因为管理节点的第二账户605B可以以第二货币发送价值)。
在一些实施例中,系统可以利用净额结算实务。例如,在一天结束时,可以将第一节点计算机165与第二节点计算机145之间的所有交易进行组合,以确定第一节点计算机165应付第二节点计算机145的一个净额(反之亦然)。例如,第一节点计算机165可能应付第二节点计算机145净额100,000元人民币。在原子交易的情况下,这实际上可以意味着确定第一净价值(例如,第一节点计算机165与管理节点计算机150之间的所有原子交易的净价值)以及第二净价值(例如,管理节点计算机150与第二节点计算机145之间的所有相应原子交易的净价值)。例如,第一节点计算机165可能应付管理节点计算机150净价值17,000美元,并且管理节点计算机150可能应付第二节点计算机145净价值100,000元人民币。一旦确定了净头寸,就可以进行一组原子结算交易以转移净交易价值(例如,第一节点账户610与管理节点的第一账户605A之间的第一结算交易,以及管理节点的第二账户605B与第二节点账户620之间的第二结算交易)。
这种净额结算交易可以发生在网络中的每个节点之间。例如,也可以在第一节点账户610与第三节点账户630之间进行净额结算,并且可以重复类似的过程以将净价值从第一节点账户610转移到第三节点账户630(例如,通过使用管理节点账户和原子结算交易)。
在一些实施例中,系统可以利用网络范围内的多边结算实务,其中计算每个节点账户与网络的其余部分之间的净头寸。例如,第一节点账户610相对于第二节点账户620可具有净负头寸(例如,应付95,000美元),相对于第三节点账户630可具有净正头寸(例如,应收27,000美元),以及相对于第三节点账户630可具有净正头寸(例如,应收43,000美元)。代替分开结算这些头寸中的每个头寸,可以将它们全部组合以使得可以在第一节点账户610与管理节点的第一账户605A之间进行单次总转账(例如,发送25,000美元)。类似地,可以使用单次总转移来结算其它节点账户的头寸。
在一些实施例中,这种多边结算可能不需要中心管理节点账户605。例如,代替确定每个节点账户与中心管理员账户605之间的网络总头寸,可以确定作为群组的所有节点账户之间的净头寸(例如,第一节点账户610应付25,000美元,第二节点账户620应收13,000元人民币,第三节点账户630应付9,600美元等),然后可以根据它们各自的净头寸同时对它们进行贷记或借记(例如,不使用管理节点账户605作为中介步骤)。
可以关于图7A-7C描述根据本发明的实施例的方法700。还将参考其它图中的一些要素。在本发明的实施例中,方法700中所示的步骤可以顺序地或以任何合适的顺序执行。在一些实施例中,所述步骤中的一个或多个可为可选的。
下文描述的各种消息可以使用任何合适形式的通信。在一些实施例中,请求或响应可以呈电子消息格式,例如,电子邮件、短消息服务(SMS)消息、多介质消息服务(MMS)消息、超文本传输协议(HTTP)请求消息、传输控制协议(TCP)包、网页表单提交。请求或响应可以指向任何合适的位置,例如,电子邮件地址、电话号码、互联网协议(IP)地址或统一资源定位符(URL)。在一些实施例中,请求或响应可以包括不同消息类型的混合,例如,电子邮件消息和SMS消息两者。
在步骤S101,第一节点计算机165向管理节点计算机150传输注册请求消息。注册请求消息可以包含关于第一节点计算机165的信息(例如,地址、组织名称、银行标识符)和/或任何其它合适的信息。注册请求也可以请求用作节点的权限,并发送和/或接收具有新交互数据的数据包,以及请求创建具有特定类别的交互数据的数据包的权限。
在步骤S102,管理节点计算机150登记第一节点计算机165以参与记录网络。管理节点计算机150可以执行风险分析以查证第一节点计算机165的受信任程度是否足以参与记录网络。接着,管理节点计算机150可以为第一节点计算机165发行地址标识符,以及发行一个或多个类别标识符。
管理节点计算机150可以存储关于第一节点计算机165的信息(例如,地址标识符、银行名称等),并向第一节点计算机165传输指示第一节点计算机165成功登记的注册响应消息。响应消息可以包含地址标识符和/或发行标识符。
此时,管理节点计算机150还可以向第一节点计算机165提供任何合适的软件(例如,软件开发工具包)以与记录网络交互。
此时或在任何其它合适的时间,第一节点计算机165还可以在中心银行(例如,由管理节点计算机150管理的银行)处建立结算账户,或以其它方式建立结算协议(例如,使用具有中心结算账户的往来银行)。第一节点计算机165可以在注册响应消息中指示已针对一种或多种货币类型建立了结算账户。
通过向管理节点计算机150注册并建立结算账户,第一节点计算机165有效地创建与管理节点计算机150的直接交互关系。第一节点计算机165和管理节点计算机150可以直接进行通信,彼此发出支付许诺,使用结算账户向彼此转移资金,从而可以彼此信任。
第二节点计算机145可以通过向管理节点计算机150注册并建立结算账户来创建类似的信任关系。因此,管理节点计算机150可以成为第一节点计算机165与第二节点计算机145之间的公共联系,使得管理节点计算机150可以在第一节点计算机165和第二节点计算机145没有直接关系或以其它方式彼此信任的情况下促进价值从第一节点计算机165转移到第二节点计算机145(例如,使用两个原子交易步骤)。
另外,在注册之后,第一节点计算机165可以促进最终用户的注册。第一用户可能想要使用记录网络,并且可使用第一用户计算机110来向第一节点计算机165传送登记请求,以及第一用户想要用于交易的货币类型。
在步骤S103,第一节点计算机165可以代表第一用户向管理节点计算机150传输注册请求消息。第一节点计算机165可以向管理节点计算机150提供任何合适的关于第一用户的信息,例如名称、地址、组织信息、支付账户信息(例如,余额和货币类型)、信用评分等。
在步骤S104,管理节点计算机150可以确定是否登记第一用户(例如,基于风险概况)。管理节点计算机150还可以生成并发行第一用户计算机110的企业标识符。
在一些实施例中,企业标识符仅可用于某一记录类别和由第一节点计算机165提交的数据包。另外,在一些实施例中,可以格式化企业标识符的子集(例如,5个字符)以指示与第一节点计算机165和/或记录类别的关联。
管理节点计算机150可以将第一用户计算机的新企业标识符传输回到第一节点计算机165。接着,在步骤S105,第一节点计算机165可以存储企业标识符(例如,与第一用户的账户相关联)并将企业标识符转发到第一用户计算机110。
在登记并获得企业标识符后,第一用户计算机110现在可以发起新交互数据的记录。例如,如果企业标识符与货币的使用相关联,则第一用户计算机110现在可以通过区块链网络向另一用户发送支付。
在步骤S106,第一用户计算机110向第一节点计算机165传输记录请求。例如,第一用户计算机110可以提交向第二用户计算机130发送支付的请求。记录请求可以包含第一用户计算机的企业标识符、接收方(例如,第二用户计算机)的企业标识符及特定记录类别的记录更新信息。
在支付交易实例中,记录更新信息可以包括用作支付来源的货币类型,向接收方交付的货币类型,以及向接收方交付的货币金额。例如,第一用户可能希望向第二用户发送1000新加坡元的支付,但是第一用户可能希望从美元账户进行支付。
在步骤S107,第一节点计算机165确定与第二用户计算机130相关联的节点,使得具有交互数据的数据包可定址到所述节点。例如,在一些实施例中,第一节点计算机165可以与管理节点计算机150通信以查询与第二用户计算机的企业标识符关联的节点和/或接收方,以及验证第二用户计算机的企业标识符。在一些实施例中,第一节点计算机165可以使用本地存储的查找表来识别与第二用户计算机的企业标识符相关联的节点。在其它实施例中,第一节点计算机165可以解析第二用户计算机的企业标识符以确定第二节点计算机的地址标识符。
在步骤S108,第一节点计算机165生成表示多个交互的数据。数据可以格式化为可以输入到记录中的数据包。多个交互可以包含与第一节点计算机165相关联的第一交互(例如,将第一价值从第一节点传输到管理节点)以及与管理节点计算机150相关联的第二交互(例如,将第二价值从管理节点计算机传输到第二节点计算机)。这两个交互可以组合以完成第一用户计算机110所请求的支付转移。
例如,第一节点计算机165可以确定,为了向第二用户(或第二用户的银行)发送1000新加坡元的支付,需要进行两次交易。第一节点计算机165还可以确定发送支付所需的源资金的金额(例如,基于汇率和/或兑换费)。第一交易可以用于从第一节点的账户中提取源资金(例如779美元),并将这些资金提供给管理节点账户。第二交易可以用于从管理节点账户中提取交付资金(例如1000新加坡元),并将资金提供给第二节点的账户。因此,数据包可以包含表示多个交互的数据,所述多个交互设计用于有效地将价值从第一节点计算机传输到第二节点计算机。
数据包可以包含用于描述多个原子交易的任何合适信息。例如,除了上文所提及的账户、金额、货币类型等,数据包还可以包含第一用户计算机的企业标识符、第二用户计算机的企业标识符、第一节点计算机的地址标识符和/或类别标识符、第二节点计算机的地址标识符和/或类别标识符,和/或任何其它合适的信息。
在步骤S109,第一节点计算机165生成与表示多个交互的数据相关联的第一数字签名。例如,第一节点计算机165可以使用数据包中的一些或全部信息生成单向散列,然后使用私钥(例如,与第一节点计算机165相关联的第一私钥)对散列进行加密。散列数据值和/或数字签名可以附接到数据包上,从而使得数据包的数据篡改显而易见。第一数字签名的存在可以指示第一节点计算机165同意数据包中的信息(例如,第一交互)。由于数据包可以包含关于由第一节点计算机165发送的第一支付的信息,因此第一数字签名可以指示第一节点计算机165已承诺提供第一支付(或以其它方式保证将提供支付)。
在步骤S110,第一节点计算机165将表示多个交互的数据和第一数字签名传输到管理节点计算机150以用于验证并输入到区块链记录中。
在步骤S111,管理节点计算机150可以验证第一节点计算机的数字签名和/或散列值。例如,管理节点计算机150可以执行散列值的校验和程序。这可以包含基于数据包生成第二散列值以及检查第二散列值匹配接收到的散列值。管理节点计算机150可以使用第一节点计算机的公钥查证数字签名。如果散列或数字签名无法被查证,则管理节点计算机150可以拒绝数据包。
管理节点计算机150还可以查证第一节点计算机的类别标识符和地址标识符全都有效,且都与第一节点计算机165相关联。管理节点计算机150还可以查证是否正确使用了类别标识符。例如,如果数据包包含从美元账户发送价值的交互数据,则管理节点计算机150可以查证第一节点计算机的类别标识符还与美元的使用相关联。
如果步骤S111以及任何其它合适的查证步骤已成功完成,则管理节点计算机150可以将数据包视为有效,并且可以确信第一节点计算机165将跟进许诺的第一支付。
在步骤S112,管理节点计算机150生成数据包的第二数字签名(例如,使用与管理节点计算机150相关联的私钥)。第二数字签名的存在可以指示管理节点计算机150同意数据包中的信息(例如,第二交互)。由于数据包可以包含关于由管理节点计算机150发送的第二支付的信息,因此第二数字签名可以指示管理节点计算机150已承诺提供第二支付(或以其它方式保证将提供第二支付)。在一些实施例中,第二数字签名可以指示即使没有传输第一价值(例如,因为第一节点计算机165未能交付第一价值)也将传输第二价值。
在步骤S113,管理节点计算机150可以将关于交互的信息(和/或整个数据包)添加到记录。例如,管理节点计算机150可以创建区块链的新区块,所述区块包含表示多个交互的数据(例如,以及一个或多个其它新数据包)以及数字签名。因此,可以使用单个记录条目来记录多个相关交易。另外,输入到区块链分类账中的单个条目可以显示两个(或更多)不同的实体已经承诺两个(或更多)不同的交互。数据包和记录条目还可以包含说明不同原子交易设计成共同实现特定结果的信息。
在步骤S114,管理节点计算机150可以将数据包的副本传输到第二节点计算机145(例如,通知第二节点计算机145有关交易)。管理节点计算机150还可以使得区块链记录可由第二节点计算机145访问。
在步骤S115,第二节点计算机145可以查证数据包的真实性。例如,第二节点计算机145可以确认数据包已被输入到区块链记录中(例如,通过在管理节点计算机150处访问区块链记录)。第二节点计算机145还可以查证数据包包含两个数字签名:一个来自第一节点计算机165,一个来自管理节点计算机150。第二节点计算机145还可以检查管理节点计算机150(或其它受信任实体)是负责向第二节点计算机145提供最终价值的管理节点计算机,并且管理节点计算机150已经明确同意交付最终价值(例如,通过数字签名)。第二节点计算机145还可以查证数字签名(例如,使用适当的公钥)。所有这些查证组合起来可以创建数据包真实性的高信任水平,以及将完成许诺的交互的高信任水平(例如,即使第一节点计算机165出现问题)。
在步骤S116,第二节点计算机145可以基于数据包更新它的本地记录。例如,第二节点计算机145可以将许诺的交易价值(例如,如数据包中所指示)贷记到第二用户的银行账户。因为在交互中可能存在高信任水平,所以第二节点计算机145可以对第二用户的账户进行贷记,以便可以在实际结算管理节点账户和第二节点账户的交易价值之前提取资金。
稍后,可以采取多个步骤来结算数据包中指定的交易价值。管理节点计算机150可以向中心银行发送指令(例如,数据包),以便中心银行能够执行结算(例如,如上文相对于图6描述)。在一些实施例中,中心银行计算机可以访问由管理节点计算机150维护的记录(例如,区块链分类账),可以分析记录以确定要完成的结算交易。中心银行计算机可以查看指令和/或数据包以确定要完成的两个(或更多)计划的支付交易。
在步骤S117,可以执行第一交互。例如,中心银行计算机可以按照数据包中的第一交易指定的进行资金转移。这可以包含从第一节点的结算账户借记第一价值,且接着将相同的第一价值贷记到管理节点结算账户。
在步骤S118,可以执行第二交互。例如,中心银行计算机可以按照数据包中的第二交易指定的进行资金转移。这可以包含从管理节点结算账户借记第二价值,且接着将相同的第二价值贷记到第二节点的结算账户。如上所述,第二价值可以具有与第一价值不同的金额和/或货币类型。
相应地,虽然交互(例如,支付)是由第一节点计算机165和管理节点计算机150许诺并同意,但实际转移活动可以由中心银行计算机(或其它合适的实体)执行。
如上文关于图6所述,实施例还允许针对与多个数据包相关联的多个交易进行批量结算(例如,一天结束时)。另外,可以在计算每个节点与网络其余部分之间的净头寸的情况下执行多边结算,这样就无需为每个节点到节点对进行单独结算。
本发明的实施例有许多优点。例如,在本发明的实施例中,可以使用单个数据包来定义多个交互。代替分开记录交互集而使得重复每个交互的记录过程,可以一起定义、处理和记录多个交互。例如,可以创建数据包以包含关于几个交互(例如,而不是一个交互)的信息,并且可以将所述数据包传递给每个参与实体,以便可以由每个参与实体(例如,而不是一个实体)对其进行审查、批准和/或数字签名然后再进行记录。因此,合并且减少了记录交互集的工作,提高了记录交互的效率,并且减少了在处理一组交互时使用的带宽。
另外,可以将相关的交互集记录为捆绑,以便可以将相关数据分组在一起。这改善了整个记录的组织和可访问性。例如,在建筑项目的实例中,可以创建表示整个项目的单个数据包,并且所述数据包可以包含关于完成项目所需的多个任务的信息。每个操作者都可以查看和批准数据包(例如,对数据包进行数字签名),然后可以将数据包和相关联的数字签名输入到区块链记录中。因此,可以通过在区块链记录中查找单个数据包来找到建筑项目的所有任务。这样可以轻松查看每个任务,查证已分配完成项目的所有必要任务,并查证每个操作者都已经承诺完成所分配的任务(例如,检查他们的数字签名)。
本发明的实施例还有利地提高了区块链分类账的可信度。中心受信任管理员可以登记每个节点和终端用户,跟踪参与者行为(例如,监测异常活动)并确保参与者不会超过支出限值。此外,每个数据包都可以由提交节点和管理节点进行数字签名,并且管理节点可以将新的数据包输入到安全的区块链中。因此,接收节点可以确保已经完成了许多安全检查,不会擦除或更改数据包,因此数据包是合法且可信赖的。
此外,在记录条目包含支付许诺的实例中,接收节点可以确信将出于许多原因交付许诺价值。例如,支付交易可以分为两个原子交易,并且最终将价值交付给接收账户可以是管理节点的责任。接收节点可以与管理节点具有直接关系,并且在管理节点中具有高信任水平(例如,与可能未知的发送节点相对),因此,即使原始发送节点没有跟进第一支付步骤,也可以相信管理节点将跟进最终支付。
现在将描述可用于实施本文所述的任何实体或部件的计算机系统。计算机系统中的子系统通过系统总线互连。附加子系统包含打印机、键盘、固定磁盘和监视器,监视器可耦合到显示器适配器。外围设备和输入/输出(I/O)装置可耦合到I/O控制器,且可通过本领域已知的任何数量的手段(例如串行端口)连接到计算机系统。例如,串行端口或外部接口可用于将计算机装置连接到例如互联网的广域网、鼠标输入设备或扫描仪。通过系统总线的互连允许中心处理器与每一子系统通信,并控制来自系统存储器或固定磁盘的指令的执行,以及子系统之间的信息交换。系统存储器和/或固定磁盘可体现计算机可读介质。
如上所述,本发明的服务可涉及实施一个或多个功能、过程、操作或方法步骤。在一些实施例中,由于通过适当编程的计算设备、微处理器、数据处理器等执行指令集或软件代码,可实施功能、过程、操作或方法步骤。指令集或软件代码可存储在由计算装置、微处理器等访问的存储器或其它形式的数据存储元件中。在其它实施例中,功能、过程、操作或方法步骤可由固件或专用处理器、集成电路等实施。
本申请中描述的任何软件部件或功能可实施为使用任何适当计算机语言(例如,例如Java、C++或Perl)、使用例如传统的或面向对象的技术由处理器执行的软件代码。软件代码可作为一系列指令或命令存储在计算机可读介质上,例如随机访问存储器(RAM)、只读存储器(ROM)、例如硬盘驱动器的磁介质或软盘、或例如CD-ROM的光学介质。任何这样的计算机可读介质可驻留在单个计算装置上或内部,且可存在于系统或网络内的不同计算装置上或内部。
虽然已经详细描述了且在附图中示出了某些示范性实施例,但应理解,这样的实施例仅仅是对本发明的说明而非限制,且本发明不限于所示出和描述的具体安排和构造,因为本领域的普通技术人员可想到各种其它修改。
如本文所使用,除非明确指示有相反的意思,否则使用“一个”、“一种”或“所述”旨在指示“至少一个”。

Claims (16)

1.一种方法,其包括:
由管理节点计算机从第一节点计算机接收表示多个交互的数据,所述多个交互包含与所述第一节点计算机相关联的第一交互和与所述管理节点计算机相关联的第二交互;
由所述管理节点计算机接收与表示所述多个交互的所述数据相关联的第一数字签名,所述第一数字签名是利用与所述第一节点计算机相关联的第一私钥生成的,且所述第一数字签名指示所述第一节点计算机同意所述第一交互;
由所述管理节点计算机利用与所述管理节点计算机相关联的第二私钥生成第二数字签名,所述第二数字签名指示所述管理节点计算机同意所述第二交互;以及
由所述管理节点计算机创建区块链的区块,所述区块包含表示所述多个交互的所述数据。
2.根据权利要求1所述的方法,其进一步包括:
由所述管理节点计算机使用与所述第一节点计算机相关联的第一公钥查证所述第一数字签名。
3.根据权利要求1所述的方法,其中所述第一交互包含将第一价值从所述第一节点计算机传输到所述管理节点计算机,并且其中所述第二交互包含将第二价值从所述管理节点计算机传输到所述第二节点计算机。
4.根据权利要求3所述的方法,其中所述第二数字签名指示即使没有传输所述第一价值也将传输所述第二价值。
5.根据权利要求1所述的方法,其中由所述第一节点计算机生成表示所述多个交互的所述数据,并且其中所述第一节点计算机设计所述多个交互以将价值从所述第一节点计算机传输到所述第二节点计算机。
6.一种管理节点计算机,其包括:
处理器;以及
计算机可读介质,所述计算机可读介质包括代码,所述代码能由所述处理器执行以实现方法,所述方法包括:
从第一节点计算机接收表示多个交互的数据,所述多个交互包含与所述第一节点计算机相关联的第一交互和与所述管理节点计算机相关联的第二交互;
接收与表示所述多个交互的所述数据相关联的第一数字签名,所述第一数字签名是利用与所述第一节点计算机相关联的第一私钥生成的,且所述第一数字签名指示所述第一节点计算机同意所述第一交互;
利用与所述管理节点计算机相关联的第二私钥生成第二数字签名,所述第二数字签名指示所述管理节点计算机同意所述第二交互;以及
创建区块链的区块,所述区块包含表示所述多个交互的所述数据。
7.根据权利要求6所述的管理节点计算机,其进一步包括:
使用与所述第一节点计算机相关联的第一公钥查证所述第一数字签名。
8.根据权利要求6所述的管理节点计算机,其中所述第一交互包含将第一价值从所述第一节点计算机传输到所述管理节点计算机,并且其中所述第二交互包含将第二价值从所述管理节点计算机传输到所述第二节点计算机。
9.根据权利要求8所述的管理节点计算机,其中所述第二数字签名指示即使没有传输所述第一价值也将传输所述第二价值。
10.根据权利要求6所述的管理节点计算机,其中由所述第一节点计算机生成表示所述多个交互的所述数据,并且其中所述第一节点计算机设计所述多个交互以将价值从所述第一节点计算机传输到所述第二节点计算机。
11.一种方法,其包括:
由第一节点计算机生成表示多个交互的数据,所述多个交互包含与所述第一节点计算机相关联的第一交互和与管理节点计算机相关联的第二交互;
由所述第一节点计算机利用第一私钥生成第一数字签名,所述第一数字签名与表示所述多个交互的所述数据相关联,所述第一数字签名指示所述第一节点计算机同意所述第一交互;以及
由所述第一节点计算机将表示多个交互的所述数据和所述第一数字签名传输到管理节点计算机,其中所述管理节点计算机利用第二私钥生成第二数字签名,所述第二数字签名指示所述管理节点计算机同意所述第二交互,并且其中所述管理节点计算机创建区块链的区块,所述区块包含表示所述多个交互的所述数据。
12.根据权利要求11所述的方法,其中所述管理节点计算机使用与所述第一节点计算机相关联的第一公钥查证所述第一数字签名。
13.根据权利要求11所述的方法,其中所述第一交互包含将第一价值从所述第一节点计算机传输到所述管理节点计算机,并且其中所述第二交互包含将第二价值从所述管理节点计算机传输到所述第二节点计算机。
14.根据权利要求13所述的方法,其中所述第二数字签名指示即使没有传输所述第一价值也将传输所述第二价值。
15.根据权利要求11所述的方法,其中所述第一节点计算机设计所述多个交互以将价值从所述第一节点计算机传输到所述第二节点计算机。
16.一种第一节点计算机,其包括:
处理器;以及
计算机可读介质,所述计算机可读介质包括代码,所述代码能由所述处理器执行以实现根据权利要求11至15中任一项所述的方法。
CN201880027081.0A 2017-04-26 2018-04-13 用于记录表示多个交互的数据的系统和方法 Active CN110546939B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210773767.2A CN115065485A (zh) 2017-04-26 2018-04-13 用于记录表示多个交互的数据的系统和方法

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201762490502P 2017-04-26 2017-04-26
US62/490,502 2017-04-26
PCT/US2018/027455 WO2018200215A1 (en) 2017-04-26 2018-04-13 Systems and methods for recording data representing multiple interactions

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202210773767.2A Division CN115065485A (zh) 2017-04-26 2018-04-13 用于记录表示多个交互的数据的系统和方法

Publications (2)

Publication Number Publication Date
CN110546939A true CN110546939A (zh) 2019-12-06
CN110546939B CN110546939B (zh) 2022-07-26

Family

ID=63918696

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202210773767.2A Pending CN115065485A (zh) 2017-04-26 2018-04-13 用于记录表示多个交互的数据的系统和方法
CN201880027081.0A Active CN110546939B (zh) 2017-04-26 2018-04-13 用于记录表示多个交互的数据的系统和方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN202210773767.2A Pending CN115065485A (zh) 2017-04-26 2018-04-13 用于记录表示多个交互的数据的系统和方法

Country Status (7)

Country Link
US (1) US11429592B2 (zh)
EP (1) EP3616388A4 (zh)
CN (2) CN115065485A (zh)
AU (2) AU2018257949B2 (zh)
CA (1) CA3059438A1 (zh)
RU (1) RU2019137970A (zh)
WO (1) WO2018200215A1 (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3646570B1 (en) * 2017-06-30 2023-11-29 nChain Licensing AG Probabilistic relay for efficient propagation in a blockchain network
US10790976B1 (en) * 2018-08-01 2020-09-29 Bloomio Ag System and method of blockchain wallet recovery
CN109241181A (zh) * 2018-08-08 2019-01-18 北京百度网讯科技有限公司 数据库操作方法和装置
US11128472B2 (en) * 2018-09-04 2021-09-21 Red Hat, Inc. Signature verification using blockchain
EP3809625A4 (en) * 2018-10-09 2021-09-08 Huawei Technologies Co., Ltd. CHIP, PROCESS FOR GENERATING A PRIVATE KEY AND PROCEDURE FOR TRUSTED VERIFICATION
AU2019396425B2 (en) * 2018-12-10 2023-03-16 Algorand Labs S.r.l. Using virtual blockchain protocols to implement a fair electronic exchange
BE1027181B1 (de) * 2019-04-09 2020-11-09 Phoenix Contact Gmbh & Co Verfahren und System zum sicheren Bereitstellen von Daten eines Gegenstands über dessen gesamten Lebenszyklus
CN110086628B (zh) * 2019-04-23 2022-02-25 西安邮电大学 单源网络编码环境下椭圆曲线签名的方法
US20210092127A1 (en) * 2019-09-19 2021-03-25 Microsoft Technology Licensing, Llc Writing role-backed access control to chain
CN112766971A (zh) * 2021-03-30 2021-05-07 支付宝(杭州)信息技术有限公司 在区块链中发送交易和执行交易的方法和装置

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130197939A1 (en) * 2012-01-26 2013-08-01 Netspective Communications Llc Social health care record system and method
CN105761143A (zh) * 2016-02-01 2016-07-13 上海凭安网络科技有限公司 一种基于区块链的多方共建信用记录的方法
EP3073670A1 (en) * 2015-03-27 2016-09-28 BGC International, Inc. A system and a method for personal identification and verification
GB201617872D0 (en) * 2016-10-21 2016-12-07 Cygnetise Limited Methods and apparatus for recording a change of authorisation state of one or more authorisation agents
CN106230852A (zh) * 2016-08-29 2016-12-14 中国银联股份有限公司 基于以太坊区块链技术的金融服务应用系统
CN106296138A (zh) * 2016-08-09 2017-01-04 西安电子科技大学 基于部分盲签名技术的比特币支付系统及其方法
US20170046651A1 (en) * 2015-08-13 2017-02-16 The Toronto-Dominion Bank Systems and method for tracking enterprise events using hybrid public-private blockchain ledgers
CN106452785A (zh) * 2016-09-29 2017-02-22 财付通支付科技有限公司 区块链网络、分支节点及区块链网络应用方法
US20170091397A1 (en) * 2012-01-26 2017-03-30 Netspective Communications Llc Device-driven non-intermediated blockchain system over a social integrity network

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7899800B2 (en) * 2006-08-18 2011-03-01 Isilon Systems, Inc. Systems and methods for providing nonlinear journaling
US8045568B2 (en) * 2006-09-29 2011-10-25 Genband Us Llc Enterprise mobility
US9729327B2 (en) * 2013-10-29 2017-08-08 International Business Machines Corporation Computer-based optimization of digital signature generation for records based on eventual selection criteria for products and services
US9608829B2 (en) * 2014-07-25 2017-03-28 Blockchain Technologies Corporation System and method for creating a multi-branched blockchain with configurable protocol rules
US9935925B2 (en) * 2014-10-03 2018-04-03 Intrinsic Id B.V. Method for establishing a cryptographically protected communication channel
US20160275461A1 (en) 2015-03-20 2016-09-22 Rivetz Corp. Automated attestation of device integrity using the block chain
US20160283920A1 (en) 2015-03-28 2016-09-29 Justin Fisher Authentication and verification of digital data utilizing blockchain technology
EP3278287A4 (en) 2015-03-31 2018-08-22 Nasdaq, Inc. Systems and methods of blockchain transaction recordation
US20160342989A1 (en) * 2015-05-21 2016-11-24 Mastercard International Incorporated Method and system for processing blockchain-based transactions on existing payment networks
US10097356B2 (en) 2015-07-02 2018-10-09 Nasdaq, Inc. Systems and methods of secure provenance for distributed transaction databases
US10303785B2 (en) 2015-08-10 2019-05-28 International Business Machines Corporation Optimizing online schema processing for busy database objects
US10345484B2 (en) 2015-09-01 2019-07-09 Southern Company Services, Inc. Storm confirmation and path prediction system
AU2017225932C1 (en) * 2016-02-29 2021-06-24 Securekey Technologies Inc. Systems and methods for distributed identity verification
US11373183B2 (en) 2016-05-06 2022-06-28 Mastercard International Incorporated Method and system for instantaneous payment using recorded guarantees
US10972287B2 (en) 2016-11-03 2021-04-06 Visa International Service Association Systems and methods for creating a universal record

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130197939A1 (en) * 2012-01-26 2013-08-01 Netspective Communications Llc Social health care record system and method
US20170091397A1 (en) * 2012-01-26 2017-03-30 Netspective Communications Llc Device-driven non-intermediated blockchain system over a social integrity network
EP3073670A1 (en) * 2015-03-27 2016-09-28 BGC International, Inc. A system and a method for personal identification and verification
US20170046651A1 (en) * 2015-08-13 2017-02-16 The Toronto-Dominion Bank Systems and method for tracking enterprise events using hybrid public-private blockchain ledgers
CN105761143A (zh) * 2016-02-01 2016-07-13 上海凭安网络科技有限公司 一种基于区块链的多方共建信用记录的方法
CN106296138A (zh) * 2016-08-09 2017-01-04 西安电子科技大学 基于部分盲签名技术的比特币支付系统及其方法
CN106230852A (zh) * 2016-08-29 2016-12-14 中国银联股份有限公司 基于以太坊区块链技术的金融服务应用系统
CN106452785A (zh) * 2016-09-29 2017-02-22 财付通支付科技有限公司 区块链网络、分支节点及区块链网络应用方法
GB201617872D0 (en) * 2016-10-21 2016-12-07 Cygnetise Limited Methods and apparatus for recording a change of authorisation state of one or more authorisation agents

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
魏尚北等: ""密码学的区块链技术在电子货币交易中的应用研究"", 《科技创新与生产力》 *

Also Published As

Publication number Publication date
CN110546939B (zh) 2022-07-26
AU2018257949B2 (en) 2022-08-25
CA3059438A1 (en) 2018-11-01
AU2022241492B2 (en) 2024-02-08
EP3616388A1 (en) 2020-03-04
RU2019137970A (ru) 2021-05-26
US20200379979A1 (en) 2020-12-03
EP3616388A4 (en) 2020-04-01
WO2018200215A1 (en) 2018-11-01
US20220342872A1 (en) 2022-10-27
AU2018257949A1 (en) 2019-10-24
US11429592B2 (en) 2022-08-30
CN115065485A (zh) 2022-09-16
AU2022241492A1 (en) 2022-10-20

Similar Documents

Publication Publication Date Title
AU2022202133B2 (en) Systems and methods for creating a universal record
CN110546939B (zh) 用于记录表示多个交互的数据的系统和方法
US11734682B2 (en) Systems and methods for creating multiple records based on an ordered smart contract
EP3676849B1 (en) Layered recording networks
EP3414720A1 (en) Methods and systems for using digital signatures to create trusted digital asset transfers
US11971879B2 (en) Systems and methods for recording data representing multiple interactions

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