CN114762292A - 用于运输过程的动态权限指派和强制执行 - Google Patents
用于运输过程的动态权限指派和强制执行 Download PDFInfo
- Publication number
- CN114762292A CN114762292A CN202080082357.2A CN202080082357A CN114762292A CN 114762292 A CN114762292 A CN 114762292A CN 202080082357 A CN202080082357 A CN 202080082357A CN 114762292 A CN114762292 A CN 114762292A
- Authority
- CN
- China
- Prior art keywords
- blockchain
- data
- party
- read
- transportation process
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2308—Concurrency control
- G06F16/2315—Optimistic concurrency control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/083—Shipping
- G06Q10/0835—Relationships between shipper or supplier and carriers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/083—Shipping
- G06Q10/0838—Historical data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3236—Cryptographic 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/3239—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3247—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3297—Cryptographic 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 time stamps, e.g. generation of time stamps
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Business, Economics & Management (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Economics (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Computer Hardware Design (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Entrepreneurship & Innovation (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- Development Economics (AREA)
- General Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Databases & Information Systems (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Storage Device Security (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
示例性操作可包括以下一者或多者:接收多方运输过程的运输数据;基于所述接收到的运输数据来识别与所述多方运输过程相关联的文档和事件;基于预定义角色来动态地确定对所述多方运输过程的所述文档和所述事件的读和写权限;以及将所述多方运输过程的标识符和所述动态地确定的读和写权限存储在区块链上的区块中。
Description
技术领域
本申请总体涉及在区块链上存储数据,并且更具体地,涉及一种基于角色来动态地确定多方运输过程中各方的权限并基于权限来管理对运输数据的访问的系统。
背景技术
集中式数据库在处于一个位置的单个数据库(例如,数据库服务器)中存储和维护数据。该位置通常是中央计算机,例如台式机中央处理单元(CPU)、服务器CPU或大型计算机。典型地可从多个不同的点访问存储在集中式数据库上的信息。多个用户或客户端工作站可同时地在集中式数据库上工作,例如基于客户端/服务器配置。集中式数据库由于其单个位置而易于管理、维护和控制,尤其是出于安全目的。在集中式数据库内,数据冗余被最小化,因为一组给定的数据仅具有一个主记录。
然而,集中式数据库存在重大缺点。例如,如果不存在容错考虑,则集中式数据库具有单点故障。因此,如果发生硬件故障(例如,硬件、固件和/或软件故障),则数据库内的所有数据都会丢失并且所有用户的工作都会中断。另外,集中式数据库高度地依赖网络连接。因此,连接越慢,每次数据库访问所需的时间量就越会增加。另一个缺点是当集中式数据库由于单个位置而经历高流量时就会出现瓶颈。此外,集中式数据库提供对数据的有限访问,因为数据库仅维护数据的一个副本。
各组织最近转向将区块链作为用于安全地存储不受中央实体限制且可从多个点访问的数据的手段。在区块链网络中,对等者负责共同地在区块链上管理和存储数据。区块链可存储在能在区块链对等者之间分布/复制的分类账上。区块链通过使用分散式架构来提供用于保护非信任方的交互的新机制。
同时,装运/运输生态系统对全球经济做出了巨大贡献。例如,自集装箱化革命以来,运输行业已经成长到惊人规模,并且涵盖船舶/驳船、卡车、火车、航空器,以及将货物从一个地理位置移动到另一个地理位置的任何其他手段。然而,与大多数如此规模的事物一样,该行业已经出现了显著的低效性和复杂性。例如,各方之间的沟通可能很困难,因为许多方彼此不直接打交道。另外,各方在大多数的事务中具有不同的优先级,这会产生截然不同的目标/观点。运输过程也会经受诈骗和浪费时间/资源的影响,尤其是因为仍然依靠纸质文档作为证明。因此,需要的是一种克服这些缺点和限制的解决方案。
发明内容
一个示例性实施方案提供了一种设备,所述设备包括以下一者或多者:网络接口,所述网络接口被配置为接收多方运输过程的运输数据;以及处理器,所述处理器被配置为进行以下一者或多者:基于所述接收到的运输数据来识别与所述多方运输过程相关联的文档和事件;基于预定义角色来动态地确定对所述多方运输过程的所述文档和所述事件的读和写权限;以及将所述多方运输过程的标识符和所述动态地确定的读和写权限存储在区块链上的区块中。
另一个示例性实施方案提供了一种方法,所述方法包括以下一者或多者:接收多方运输过程的运输数据;基于所述接收到的运输数据来识别与所述多方运输过程相关联的文档和事件;基于预定义角色来动态地确定对所述多方运输过程的所述文档和所述事件的读和写权限;以及将所述多方运输过程的标识符和所述动态地确定的读和写权限存储在区块链上的区块中。
另外的示例性实施方案提供了一种非暂时性计算机可读介质,所述非暂时性计算机可读介质包括指令,所述指令在由处理器读时致使所述处理器执行以下一者或多者:接收多方运输过程的运输数据;基于所述接收到的运输数据来识别与所述多方运输过程相关联的文档和事件;基于预定义角色来动态地确定对所述多方运输过程的所述文档和所述事件的读和写权限;以及将所述多方运输过程的标识符和所述动态地确定的读和写权限存储在区块链上的区块中。
从第一方面来看,本发明提供了一种设备,所述设备包括:网络接口,所述网络接口被配置为接收多方运输过程的运输数据;以及处理器,所述处理器被配置为:基于所述接收到的运输数据来识别与所述多方运输过程相关联的文档和事件;基于预定义角色来动态地确定对所述多方运输过程的所述文档和所述事件的读和写权限;以及将所述多方运输过程的标识符和所述动态地确定的读和写权限存储在区块链上的区块中。
优选地,本发明提供了一种设备,其中所述处理器被配置为基于通过所述区块链的链码映射到所述多方运输过程中包括的多个方的预定义角色来导出所述方对所述区块链读和写数据的权限。
优选地,本发明提供了一种设备,其中所述处理器还被配置为接收对访问所述多方运输过程的文档和事件中的一者或多者的请求,并且基于存储在所述区块链中的所述动态地确定的读和写权限来授权所述请求。
优选地,本发明提供了一种设备,其中所述处理器还被配置为接收对访问所述多方运输过程的文档和事件中的一者或多者的请求,并且基于存储在所述区块链中的所述动态地确定的读和写权限来拒绝所述请求。
优选地,本发明提供了一种设备,其中所述处理器基于所述多方运输过程的始发地、目的地和一个或多个中间位置来确定所述读和写权限。
优选地,本发明提供了一种设备,其中所述网络接口还被配置为接收所述多方过程的事件数据更新,并且将所述事件数据更新和对所述事件数据更新的读和写权限存储在所述区块链上的区块中。
优选地,本发明提供了一种设备,其中所述事件数据更新包括对先前存储的文档的修改。
优选地,本发明提供了一种设备,其中所述事件数据更新包括对先前确定的对事件及其数据的读和写权限的修改。
从另一个角度来看,本发明提供了一种方法,所述方法包括:接收多方运输过程的运输数据;基于所述接收到的运输数据来识别与所述多方运输过程相关联的文档和事件;基于预定义角色来动态地确定对所述多方运输过程的所述文档和所述事件的读和写权限;以及将所述多方运输过程的标识符和所述动态地确定的读和写权限存储在区块链上的区块中。
优选地,本发明提供了一种方法,其中所述动态地确定包括基于通过所述区块链的链码映射到所述多方运输过程中包括的多个方的预定义角色来导出所述方对所述区块链读和写数据的权限。
优选地,本发明提供了一种方法,所述方法还包括接收对访问所述多方运输过程的文档和事件中的一者或多者的请求,并且基于存储在所述区块链中的所述动态地确定的读和写权限来授权所述请求。
优选地,本发明提供了一种方法,所述方法还包括接收对访问所述多方运输过程的文档和事件中的一者或多者的请求,并且基于存储在所述区块链中的所述动态地确定的读和写权限来拒绝所述请求。
优选地,本发明提供了一种方法,其中所述动态地确定所述读和写权限还基于所述多方运输过程的始发地、目的地和一个或多个中间位置来确定。
优选地,本发明提供了一种方法,所述方法还包括接收所述多方过程的事件数据更新,并且将所述事件数据更新和对所述事件数据更新的读和写权限存储在所述区块链上的区块中。
优选地,本发明提供了一种方法,其中所述事件数据更新包括对先前存储的文档的修改。
优选地,本发明提供了一种方法,其中所述事件数据更新包括对先前确定的对事件及其数据的读和写权限的修改。
从另一个方面来看,本发明提供了一种非暂时性计算机可读介质,所述非暂时性计算机可读介质包括指令,所述指令在由处理器读时致使所述处理器执行方法,所述方法包括:接收多方运输过程的运输数据;基于所述接收到的运输数据来识别与所述多方运输过程相关联的文档和事件;基于预定义角色来动态地确定对所述多方运输过程的所述文档和所述事件的读和写权限;以及将所述多方运输过程的标识符和所述动态地确定的读和写权限存储在区块链上的区块中。
优选地,本发明提供了一种非暂时性计算机可读介质,其中所述动态地确定包括基于通过所述区块链的链码映射到所述多方运输过程中包括的多个方的预定义角色来导出所述方对所述区块链读和写数据的权限。
优选地,本发明提供了一种非暂时性计算机可读介质,其中所述方法还包括接收对访问所述多方运输过程的文档和事件中的一者或多者的请求,并且基于存储在所述区块链中的所述动态地确定的读和写权限来授权所述请求。
优选地,本发明提供了一种非暂时性计算机可读介质,其中所述方法还包括接收对访问所述多方运输过程的文档和事件中的一者或多者的请求,并且基于存储在所述区块链中的所述动态地确定的读和写权限来拒绝所述请求。
附图说明
图1是示出根据示例性实施方案的用于管理货物运输及其相关联里程碑(事件和文档)的贸易生态系统的图示。
图2A是示出根据示例性实施方案的区块链架构配置的图示。
图2B是示出根据示例性实施方案的区块链事务流程的图示。
图3A是示出根据示例性实施方案的需权限区块链网络的图示。
图3B是示出根据示例性实施方案的另一个需权限区块链网络的图示。
图3C是示出根据示例性实施方案的无需权限区块链网络的图示。
图4A是示出根据示例性实施方案的用于指派权限并控制访问的主机平台的服务的图示。
图4B是示出根据示例性实施方案的参与者类型与参与者角色之间的映射的图示。
图4C是示出根据示例性实施方案的基于角色来存储对文档的访问权的表的图示。
图4D是示出根据示例性实施方案的动态地确定对文档和事件的读和写权限的过程的图示。
图5是示出根据示例性实施方案的动态地确定读和写权限的方法的图示。
图6A是示出根据示例性实施方案的被配置为执行本文描述的一个或多个操作的示例性系统的图示。
图6B是示出根据示例性实施方案的被配置为执行本文描述的一个或多个操作的另一个示例性系统的图示。
图6C是示出根据示例性实施方案的被配置为利用智能合约的另一个示例性系统的图示。
图6D是示出根据示例性实施方案的被配置为利用区块链的又一个示例性系统的图示。
图7A是示出根据示例性实施方案的将新区块添加到分布式分类账的过程的图示。
图7B是示出根据示例性实施方案的新数据区块的内容的图示。
图7C是示出根据示例性实施方案的用于数字内容的区块链的图示。
图7D是示出根据示例性实施方案的可表示区块链中的区块的结构的区块的图示。
图8A是示出根据示例性实施方案的存储机器学习(人工智能)数据的示例性区块链的图示。
图8B是示出根据示例性实施方案的示例性量子安全区块链的图示。
图9是示出支持示例性实施方案中的一者或多者的示例性系统的图示。
具体实施方式
将容易理解,如在本文的附图中大体地描述和示出的部件可以多种不同的配置进行布置和设计。因此,如在附图中表示的方法、设备、非暂时性计算机可读介质和系统中的至少一者的实施方案的以下详细描述不旨在限制所要求保护的本申请的范围,而仅表示选定的实施方案。
在一个或多个实施方案中,如贯穿本说明书所描述的当前特征、结构或特性可以任何合适的方式组合或去除。例如,短语“示例性实施方案”、“一些实施方案”或其他类似语言的使用贯穿本说明书是指结合实施方案描述的特定特征、结构或特性可被包括在至少一个实施方案中这一事实。因此,短语“示例性实施方案”、“在一些实施方案中”、“在其他实施方案中”或其他类似语言的出现贯穿本说明书不一定都是指同一组实施方案,并且在一个或多个实施方案中,所描述的特征、结构或特性可以任何合适的方式组合或去除。另外,在图示中,元件之间的任何连接都可准许单向和/或双向通信,即使所描绘的连接是单向或双向箭头也是如此。而且,附图中描绘的任何装置都可以是不同的装置。例如,如果移动装置被示为正在发送信息,则也可使用有线装置来发送信息。
另外,虽然在实施方案的描述中可能已经使用了术语“消息”,但是本申请可应用于许多类型的网络和数据。此外,虽然在示例性实施方案中可描绘某些类型的连接、消息和信令,但是本申请不限于某一类型的连接、消息和信令。
示例性实施方案提供了用于动态地确定对多方运输过程的数据的读和写权限并经由区块链基于动态地确定的权限来控制对数据的访问的方法、系统、部件、非暂时性计算机可读介质、装置和/或网络。
在一个实施方案中,本申请利用分散式数据库(诸如区块链),该分散式数据库是分布式存储系统,其包括彼此通信的多个节点。分散式数据库包括只可附加的不可变数据结构,该只可附加的不可变数据结构类似于能够维护互不信任方之间的记录的分布式分类账。不信任方在本文中称为对等者或对等节点。每个对等者维护数据库记录的副本,并且在分布式对等者间未达成共识的情况下,单个对等者无法修改数据库记录。例如,对等者可执行共识协议来验证区块链存储事务,将存储事务分组到区块中,并且在区块上构建散列链。为了一致性,在必要时,该过程通过对存储事务进行排序来形成分类账。在各种实施方案中,可使用需权限和/或无需权限区块链。在公共或无需权限区块链中,任何人都可在没有具体身份的情况下参与。公共区块链可涉及本机加密货币并基于各种协议(诸如工作量证明(PoW))来使用共识。另一方面,需权限区块链数据库在一组有共同目标但不完全地信任彼此的实体(诸如交换资金、商品、信息等的企业)之间提供安全交互。
本申请可利用操作任意可编程逻辑、针对分散式存储方案定制并被称为“智能合约”或“链码”的区块链。在一些情况下,可能存在用于管理功能和参数的专用链码,该专用链码被称为系统链码。本申请还可利用智能合约,该智能合约是受信任的分布式应用程序,其利用区块链数据库的防篡改性质和节点之间的底层协定,该底层协定被称为背书或背书策略。与本申请相关联的区块链事务可在递交到区块链之前被“背书”,而未背书的事务将被忽略。背书策略允许链码以背书所需的一组对等节点的形式指定事务的背书人。当客户端将事务发送到背书策略中指定的对等者时,将执行事务以验证该事务。在验证之后,事务进入排序阶段,在该排序阶段,使用共识协议来产生被分组到区块中的背书事务的有序序列。
本申请可利用作为区块链系统的通信实体的节点。在不同类型的多个节点可在同一物理服务器上运行的意义上,“节点”可执行逻辑功能。节点在信任域中分组并与以各种方式控制它们的逻辑实体相关联。节点可包括不同的类型,诸如将事务调用提交给背书人(例如,对等者)并且将事务提议广播到排序服务(例如,排序节点)的客户端或提交客户端节点。另一种类型的节点是对等节点,该对等节点可接收客户端提交的事务,递交事务并且维护区块链事务的分类账的状态和副本。对等者也可扮演背书人的角色,但是这不是必需的。排序服务节点或排序者是为所有节点运行通信服务的节点,并且该节点实现交付保证,诸如当递交事务和修改区块链的世界状态时对系统中的对等节点中的每一者的广播,这是通常包括控制和设置信息的初始区块链事务的另一个名称。
本申请可利用分类账,该分类账是区块链的所有状态转变的定序防篡改记录。状态转变可能由参与方(例如,客户端节点、排序节点、背书人节点、对等节点等)提交的链码调用(即,事务)引起。每个参与方(诸如对等节点)可维护分类账的副本。事务可能造成一组资产键值对作为一个或多个操作数(诸如创建、更新、删除等)被递交给分类账。分类账包括用于将不可变定序记录存储在区块中的区块链(也被称为链)。分类账还包括维护区块链的当前状态的状态数据库。
本申请可利用链,该链是被构造为散列链接区块的事务日志,并且每个区块含有N个事务的序列,其中N等于或大于一。区块头包括区块的事务的散列,以及先前区块的头的散列。以此方式,分类账上的所有事务都可被定序并加密地链接在一起。因此,不可能在不破坏散列链接的情况下篡改分类账数据。最近添加的区块链区块的散列表示链上的在其之前出现的每个事务,从而可以确保所有对等节点处于一致且受信任的状态。链可存储在对等节点文件系统(即,本地、附加存储、云等)上,从而高效地支持区块链工作负载的只可附加性质。
不可变分类账的当前状态表示链事务日志中包括的所有键的最新值。由于当前状态表示通道已知的最新键值,因此其有时被称为世界状态。链码调用针对分类账的当前状态数据执行事务。为了使这些链码交互高效,可将键的最新值存储在状态数据库中。状态数据库可能只是链事务日志的索引视图,因此可随时从链重新生成该状态数据库。状态数据库可在对等节点启动时和在事务被接受之前自地动恢复(或在需要时生成)。
全球贸易生态系统对全球经济做出了巨大贡献。例如,海运是最关键的货物贸易手段之一。自20世纪60年代的集装箱化革命以来,贸易生态系统已经成长到惊人规模,但是与大多数的庞大规模的事物一样,贸易生态系统已经出现了低效性和复杂性。这些低效性来自于试图在所涉及的所有不同方之间创建点对点连接、可能被困在孤岛中的数据、对事务的截然不同的观点以及经受诈骗和浪费时间的过程。一直以来都在抑制创新和速度的纸质过程的负担下支撑。
存在与管理全球贸易有关的两种主要类型的数据,包括装运里程碑(本文称为事件)和贸易文档编制。里程碑可包括集装箱的行程的各种步骤,例如,在集装箱实际上移动之前确定的预计到达日期、在始发点处密封集装箱的时间、集装箱在行程的各种点处所暴露于的空气温度等。这些示例只是对供应链生态系统规划和执行装运非常关键的许多里程碑中的几个。同样关键的是正式地定义和授权装运的文档。文档包括装箱单和提单文档以及因地区和贸易路线而变化的多种文档。该文档在供应链中扮演核心角色。
海运(以及其他形式的运输)是相当有竞争性且受高度监管的。承运人必须相信参与平台将不会使他们面临竞争或监管风险。例如,海运承运人可能会产生其他人会用到的关键文档(例如,提单、海运单等)。以相同方式,网络上的其他参与者需要出示文档并保证只有正确方才获得对其的访问。私人信息的示例包括(但可能不限于)装运参与者、文档、详细的位置数据(地址)等。需要的是与生态系统上的所有参与者共享数据而同时维护保密或私人信息安全并仅可由正确方访问或改变的方法。
示例性实施方案提供了一种可动态地将权限指派给多方运输过程中涉及的参与者(例如,组织等)的系统。该系统可存储映射到不同的参与者类型的预定义角色。当参与者被识别为是过程的一部分时,该系统可针对该特定过程确定参与者的角色,并且基于确定的角色来动态地指派对过程的文档和事件数据的读和写权限。指派给参与者的角色可基于参与者在过程中的位置而不同。因此,该系统可在运行时基于过程的特定细节来动态地确定参与者的角色,并且相应地指派读/写权限。此外,该系统可将此类权限存储到区块链,使得安全地/不可变地进行存储,并且可跨网络中的不同位置/点进行访问。在新数据变得可用时,可更新区块链上的权限以反映改变的数据,并且可相应地更新/指派权限。当参与者(或其用户)尝试访问数据时,区块链可强制执行访问权限,从而防止对数据的未授权访问,同时还为不同方提供查看数据的方便机制。
本文描述的系统以动态和自动化方式支持对数据、资源和文档的全球贸易权限和受控访问,而无需针对过程中涉及的参与者以点对点方式定义访问。示例性实施方案将每一方可在给定的装运中承担的角色的概念与每个角色可产生/访问的文档类型和事件类型组合。此外,该系统可导出需要在运行时针对访问每个文档或数据片段的每个用户强制执行的访问控制。例如,为了确定给定的参与者对贸易信息(包括里程碑和文档)的访问权,该系统可从有关参与者在给定的装运中的角色的信息来确定访问控制。在运行时期间,各种策略服务强制执行权限,使得每一方仅能看到允许的数据。在一些实施方案中,该系统可使运输服务能够覆写针对给定的装运的权限,允许文档的上传者基于其偏好来调整权限,支持对装运层次结构的每个级别的访问控制等。
本文描述的系统的益处中的一些包括为多方提供对数据的访问,而不必创建与它们所涉及的各方中的每一方的一对一连接。因此,各方体都有许多优点,包括跨装运走廊的端对端可见性和对信息的实时访问,产生丰富的港口合作和改善的码头规划。该系统还提供装运事件和文档的数字审计追踪,这降低了客户服务和网络集成成本并减少了货物误申报。该系统还提供共享且数字化的进口/出口信息,这产生了更可靠的风险评估、更少的文书工作和更容易的与国家平台的连接。该系统还提供对装运的供应链事件的实时访问并为内陆运输提供改善的资产规划和利用,从而减少瓶颈。另外,随着整个供应链的精简,可预测性显著地提高,从而允许更早地通知问题并减少库存。该系统还提供跟踪与追溯工具的效力,这允许改善清关经纪工具。此外,区块链的使用为贸易金融提供不可变信息源,从而为金融服务提供对实时数据的访问。
如本文进一步描述,可动态地授权参与者对区块链数据(诸如与多方运输过程相关联的事件数据(里程碑)和文档)的访问。如本文所描述,术语“运输”应当被理解为是指运输货物或商品的任何方法,包括海洋/船舶、铁路/火车、公路/卡车、班机/航空器等。
参与者类型的示例包括但不限于货物所有者、代理人、海运承运人、运输中介、内陆运输人、码头营运商、海关当局、金融服务等。
可授予参与者类型的角色的示例包括但不限于买方、卖方、出口商、进口商、发货人、收货人、运输服务买方、运输服务提供商、始发地或目的地第三方物流(3PL)、报关行(出口、进口等)、海运码头(始发地、目的地等)、铁路营运商、卡车营运商、驳船营运商、支线船、转运码头、港口社区服务(PCS)、出口当局、进口当局、银行(卖方的银行、买方的银行等)、保险提供商等。
每个参与者类型可映射到多个不同的角色。例如,货物所有者可基于货物所有者在多方运输过程中的活动而扮演卖方、买方、出口商、进口商、发货人、收货人、运输服务买方等角色。当本文进一步描述的策略服务接收到多方运输过程的细节时,该策略服务可基于映射且基于参与者在运输过程中的动作来向每个参与者指派一个角色或多个角色。例如,如果货物所有者既是出售货物的原始所有者,也是货物从一个国家到下一个国家的托运人,则货物所有者可担任卖方、出口商和发货人的角色。
可能是多方运输过程的一部分的文档的示例包括但不限于订舱确认、发票、装运指示、提单、海运单、分提单、代运人货物收据、到货通知、危险品申报单、订舱请求等。
在多方运输过程期间可能发生的事件的示例包括但不限于管理员事件、始发地规划事件、海洋规划事件、目的地规划事件、始发地估计事件、海洋估计事件、目的地估计事件、始发地实际事件、海洋实际事件、目的地实际事件等。
通过动态地将参与者到多方运输层次结构内的角色的映射与各方角色对装运的不同里程碑事件和对不同贸易文档的权限的断言进行组合,该系统可导出并强制执行对访问(读/写)多方运输过程的某些数据的权限。作为非限制性示例,该系统可确定海运承运人可上传装运的提单文档,但是内陆运输人(例如,卡车司机)不能访问该文档。整个系统由导出权限信息并然后将其作为访问来自系统的对象(包括里程碑事件和文档)的一部分强制执行的服务构成。
图1示出了根据示例性实施方案的用于管理货物运输的贸易生态系统100。参考图1,主机平台130可托管本文描述的系统,并且可包括应用程序编程接口(API)132、一个或多个服务134和区块链136。系统的参与者110可经由一个或多个应用程序120或API 132来访问服务134以上传多方运输过程的初始运输数据(例如,所涉及的各方、路线信息、货物信息等)。基于该信息,服务134可识别所涉及的各方中的每一者的角色并动态地指派对多方运输过程的文档和事件数据的访问权(例如,读和/或写数据)。动态地指派的访问信息以及多方运输过程、事件和文档还有各方的标识符可存储在区块链136上。
同时,API 132可实现多方运输过程中的参与者110与主机平台130之间、应用程序120与主机平台130之间等的数据通信。货物相关数据也可从参与者110上传,并且经由集成框架112集成为适合于平台130的格式。例如,可捕获货物的成像数据(例如,扫描产品ID或集装箱ID),然后将其与呈文本描述的形式的上下文信息(诸如货物的地理位置、拥有货物的当前参与者、拥有货物的运输工具(驳船、卡车、铁路等)的标识符、货物所在的环境的传感器数据(例如,温度、速度、湿度等)等)一起提交给区块链136。数据可以不可变方式存储在区块链136上,使得各方稍后可在出现问题的情况下审查数据。这可提供迅速地理解货物/装运未能满足预期的原因等。
最初,参与者110可作为解决方案的组织参与其中。每个参与者可被指派参与者类型,该参与者类型定义组织在装运中可承担的一组具体角色。例如,货物所有者的参与者类型可扮演卖方、买方、进口商、出口商、发货人、收货人、运输服务买方等角色。服务134可指派角色,定义多方运输过程中的每个角色/每一方的读/写权限,并且基于定义的读和写权限来控制对多方运输过程的数据的访问。例如,可允许某一方读某个文档或里程碑事件的数据,但是可能不允许该方写数据。作为另一个示例,可允许某一方查看一些文档,但不是多方运输过程中涉及的所有文档。服务134可动态地指派权限并随后基于动态地指派的权限来控制对数据的访问。多方运输过程的数据可存储在区块链136、链下系统等上。
例如,货物在其通过多方运输过程移动时的事件/里程碑可与区块链136相关联地存储。事件数据可经由集成框架112从参与者110上传。事件数据可存储在区块链136上。作为另一个示例,事件数据可链外存储,其中事件数据的散列(用于检验目的)存储在区块链136上。事件的示例包括集装箱状态事件,该集装箱状态事件是指集装箱的PID(物理ID),以及集装箱在给定的时间所在的位置。例如,可捕获PID的图像并将其与上下文信息一起上传到主机平台130。服务134可在事件数据被链外存储时创建事件数据的散列并将其存储在区块链136上。当(例如,多方运输过程的参与者的)用户随后尝试访问事件数据时,可通过策略服务(其包括智能合约)来控制访问,并且这将关于图4A至图4D进一步描述。对事件数据的访问可以是基于在运行时期间动态地指派给参与者的角色。
同样地,与多方运输过程相关联的文档可存储在区块链136上,或者它们可链外存储,其中文档的散列存储在区块链136上。与事件数据类似,对文档数据的访问可由策略服务控制,并且对文档的访问可以是基于在运行时期间动态地指派给参与者的角色。
可认证与主机平台130的交互中的每一者,并且可将用户和组织(参与者)映射到通过CA(证书颁发机构)在区块链上注册的数字身份。此外,区块链136的使用为解决方案带来了很多优点。例如,区块链136提供可解决当多个不信任方一起进行事务时可能发生的问题(诸如缺乏信任等)的不可变、共享、复制的分类账。区块链136还提供单一版本的真实情况。这可能是有帮助的,因为争议是常见的,并且解决成本很高。此外,区块链136可用于证明真实性和所有权。区块链136可用于跟踪和控制对文书工作(全球贸易文档、供应链金融等)的多个步骤的访问。区块链136还提供跨多方的事件的可靠可见性,包括召回、监管链跟踪、起源等。由于区块链136的分布式性质,区块链136还可通过不可变分类账来提供可审计性并防止诈骗/篡改。
图2A示出了根据示例性实施方案的区块链架构配置200。参考图2A,区块链架构200可包括某些区块链元素,例如一组区块链节点202。区块链节点202可包括一个或多个节点204至210(这四个节点仅作为示例描绘)。这些节点参与多个活动,诸如区块链事务添加和验证过程(共识)。区块链节点204至210中的一者或多者可基于背书策略来背书事务,并且可为架构200中的所有区块链节点提供排序服务。区块链节点204至210中的每一者可在其中安装区块链平台212、应用程序代码220(例如,智能合约等)、应用程序编程接口(API)222、应用程序224等。例如,区块链节点可发起区块链事务并设法写入存储在区块链层216中的区块链不可变分类账,该区块链不可变分类账的副本也可存储在区块链平台212的基础物理基础设施214上。区块链配置可包括应用程序224,该应用程序链接到APIS 222以访问和执行存储的程序/应用程序代码220(例如,区块链客户端、链码、智能合约等),该程序/应用程序代码可根据参与者寻求的定制配置来创建,并且可维护其状态、接收外部信息并与区块链API通信。这可在所有区块链节点204至210上部署和安装。
区块链基础或平台212可包括区块链数据、服务(例如,加密信任服务、虚拟执行环境等)以及可用于接收和存储新事务并为设法访问数据条目的审计员提供访问的基础物理计算机基础设施的各种层。区块链层216可暴露提供对处理程序代码和使用物理基础设施214所必需的虚拟执行环境的访问的接口。加密信任服务218可用于检验事务(诸如资产置换事务)并保持信息私密。
图2A的区块链架构配置可经由区块链平台212所暴露的一个或多个接口和由该区块链平台提供的服务来处理和执行程序/应用程序代码220。代码220可控制区块链资产。例如,代码220可存储和传输数据,并且可由节点204至210以智能合约的形式执行并将链码与服从其执行的条件或其他代码元素相关联。作为非限制性示例,可创建智能合约以执行提醒、更新和/或经受改变、更新等的其他通知。智能合约本身可用于识别与授权和访问要求以及分类账的使用相关联的规则。例如,读数据可由应用程序代码220中的智能合约处理,以确定正确访问并仅返回请求方可见的结果。同样,写数据可由应用程序代码220中的智能合约处理,以确定是否允许该方/组织对具体资产的访问权。
可以编程语言创建智能合约,并且然后在所有区块链节点的通道上进行关联/实例化/部署。智能合约可包括用区块链通道或分类账(例如,区块链对等者的分布式网络)注册、存储和/或复制的可执行代码。事务由应用程序或区块链客户端提交,这可能引起执行智能合约代码以用于验证或共识目的。成功地执行智能合约可能触发对数字区块链分类账的状态的受信任修改。可通过区块链内通信协议贯穿区块链对等者的分布式网络自动地复制由智能合约执行引起的对区块链分类账的修改。
智能合约可以键值对的格式将数据写入区块链。此外,智能合约代码可读出存储在区块链中的值并将其用于应用程序操作。智能合约代码可将各种逻辑操作的输出写入区块链。写入区块链的数据可以是公开的,并且/或者可以是加密的并维护为私密的。由智能合约使用/生成的临时数据由供应的执行环境保存在存储器中,然后一旦识别出区块链所需的数据,就将其删除。
链码可包括智能合约的代码解释以及附加的特征。如本文所描述,链码可以是部署在区块链节点网络上的程序代码,其中该链码在共识过程期间由链验证器一起执行和验证。
图2B示出了根据示例性实施方案的区块链的节点之间的区块链事务流程250的示例。参考图2B,事务流程可包括由应用程序客户端节点260发送到背书对等节点281的事务提议291。背书节点281可检验客户端签名并执行链码函数来发起事务。在281中执行链码可包括权限查验,以查验调用事务的方/组织的正确读和/或写权限。例如,可查验一方是否被授权查看文档或事件数据。输出可包括链码结果、在链码中读的一组键/值版本(读集)和在链码中写的一组键/值(写集)。如果被批准,则将提议响应292连同背书签名一起发送回客户端260。客户端260将背书汇编成事务有效负载293并将其广播到排序服务节点284。排序服务节点284然后将排序事务作为区块交付到通道上的所有对等者281至283。在递交到区块链之前,每个对等者281至283可验证事务。例如,对等者可查验背书策略以确保指定的对等者的正确分配已经对结果进行签名并针对事务有效负载293验证了签名。
再次参考图2B,客户端节点260通过构建请求并将其发送到作为背书人的对等节点281来发起事务291。客户端260可包括利用支持的软件开发工具包(SDK)的应用程序,该SDK利用可用的API来生成事务提议。该提议是对调用链码函数的请求,使得可向分类账读和/或写数据(即,为资产写新的键值对)。SDK可用作shim以将事务提议打包成适当地架构的格式(例如,在远程程序调用(RPC)上的协议缓冲器)并采用客户端的加密凭据来产生事务提议的唯一签名。
作为响应,背书对等节点281可检验(a)良好地形成事务提议,(b)过去尚未提交事务(重放-攻击保护),(c)签名是有效的,以及(d)提交者(在示例中是客户端260)被适当地授权以在该通道上执行提议的操作。背书对等节点281可将事务提议输入作为调用的链码函数的论证。然后,针对当前状态数据库执行链码以产生包括响应值、读集和写集的事务结果。然而,此时未对分类账进行更新。在292中,将该组值连同背书对等节点281的签名一起作为提议响应292传送回客户端260的SDK,该SDK对有效负载进行解析以供应用程序使用。
作为响应,客户端260的应用程序检查/检验背书对等者签名并将提议响应进行比较以确定提议响应是否相同。如果链码仅查询分类账,则应用程序将检查查询响应并典型地不会将事务提交给排序节点服务284。如果客户端应用程序打算将事务提交给排序节点服务284以更新分类账,则应用程序确定在提交之前是否已经履行指定的背书策略(即,事务所必需的所有对等者是否都背书事务)。这里,客户端可仅包括事务的多个方之一。在这种情况下,每个客户端可具有其自己的背书节点,并且每个背书节点将需要背书事务。该架构使得即使应用程序选择不检查响应或以其他方式转发未背书的事务,背书策略仍将由对等者强制执行并在递交验证阶段维持。
在成功检查之后,在步骤293中,客户端260将背书汇编成事务并在事务消息内将事务提议和响应广播到排序节点284。事务可含有读/写集、背书对等者签名和通道ID。排序节点284不需要检查事务的全部内容就能执行其操作,相反,排序节点284可简单地接收来自网络中的所有通道的事务,按通道按时间对它们进行排序,并且按通道创建事务的区块。
事务的区块从排序节点284交付到通道上的所有对等节点281至283。验证区块内的事务294以确保履行任何背书策略并确保自通过事务执行生成读集以来读集变量的分类账状态未发生改变。区块中的事务被标记为有效或无效。此外,在步骤295中,每个对等节点281至283将区块附加到通道的链,并且对于每个有效事务,将写集递交到当前状态数据库。发出某一事件,以向客户端应用程序通知事务(调用)已经不可变地附加到链,以及通知事务是有效还是无效。
图3A示出了需权限区块链网络300的示例,该需权限区块链网络的特征是分布式、分散式对等架构。在该示例中,区块链用户302可向需权限区块链304发起事务。在该示例中,事务可以是部署、调用或查询,并且可通过利用SDK的客户端侧应用程序、直接地通过API等发布。网络可提供对监管者306(诸如审计员)的访问。区块链网络营运商308管理成员权限,诸如将监管者306登记为“审计员”并将区块链用户302登记为“客户端”。审计员可被限制为仅查询分类账,而客户端可被授权部署、调用和查询某些类型的链码。
区块链开发者310可编写链码和客户端侧应用程序。区块链开发者310可通过接口将链码直接地部署到网络。在该示例中,区块链用户302通过对等节点314连接到需权限区块链304。在进行任何事务之前,对等节点314从管理用户角色和权限的证书颁发机构316检索用户的登记和事务证书。区块链用户必须拥有这些数字证书才能在需权限区块链304上进行事务。同时,尝试利用链码的用户可能被要求检验其凭据。
图3B示出了需权限区块链网络320的另一个示例,该需权限区块链网络的特征是分布式、分散式对等架构。在该示例中,区块链用户322可向需权限区块链324提交事务。在该示例中,事务可以是部署、调用或查询,并且可通过利用SDK的客户端侧应用程序、直接地通过API等发布。网络可提供对监管者326(诸如审计员)的访问。区块链网络营运商328管理成员权限,诸如将监管者326登记为“审计员”并将区块链用户322登记为“客户端”。审计员可被限制为仅查询分类账,而客户端可被授权部署、调用和查询某些类型的链码。
区块链开发者330编写链码和客户端侧应用程序。区块链开发者330可通过接口将链码直接地部署到网络。为了在链码中包括来自传统数据源332的凭据,开发者330可使用带外连接来访问数据。在该示例中,区块链用户322通过对等节点334连接到网络。在进行任何事务之前,对等节点334从证书颁发机构336检索用户的登记和事务证书。在一些情况下,区块链用户必须拥有这些数字证书才能在需权限区块链324上进行事务。同时,尝试利用链码的用户可能被要求在传统的数据源332上检验其凭据。为了确认用户的授权,链码可通过传统的处理平台338使用到该数据的带外连接。
在一些实施方案中,本文的区块链可以是无需权限区块链。与要求权限才能加入的需权限区块链相比,任何人都可加入无需权限区块链。例如,为了加入无需权限区块链,用户可创建个人地址并开始与网络交互(通过提交事务并因此将条目添加到分类账)。另外地,所有方都可选择在系统上运行节点并采用挖矿协议来帮助检验事务。
图3C示出了事务由包括多个节点354的无需权限区块链352处理的过程350。发送者356期望经由无需权限区块链352向接收者358发送支付款项或某种其他形式的价值(例如,契约、医疗记录、合约、商品、服务或可封装在数字记录中的任何其他资产)。在一个实施方案中,发送者装置356和接收者装置358中的每一者都可具有提供用户接口控制和事务参数显示的数字钱包(与区块链352相关联)。作为响应,事务贯穿区块链352广播到节点354。取决于区块链352的网络参数,节点基于由无需权限区块链352创建者建立的规则(其可以是预定义的或动态地指派的)来检验360事务。例如,这可包括检验所涉及的各方的身份等。可立即地检验事务,或者可将事务与其他事务一起放入队列中,并且节点354基于一组网络规则来确定事务是否有效。
在结构362中,有效事务形成为区块并用锁(散列)密封。该过程可由挖矿节点在节点354之间执行。挖矿节点可利用附加的软件专门地用于对无需权限区块链352的区块进行挖矿并创建该无需权限区块链的区块。每个区块可由使用通过网络协定的算法创建的散列(例如,256位数等)标识。每个区块可包括头、指向链中的前一个区块的头的散列的指针或对该散列的引用以及一组有效事务。对前一个区块的散列的引用与区块的安全独立链的创建相关联。
在可将区块添加到区块链之前,必须验证区块。对无需权限区块链352的验证可包括工作量证明(PoW),该PoW是从区块的头导出的谜题的解决方案。尽管在图3C的示例中未示出,但是用于验证区块的另一个过程是权益证明。与其中算法奖励解决数学问题的矿工的工作量证明不同,在权益证明的情况下,新区块的创建者是取决于其财富(也定义为“权益”)而以确定性方式选择的。然后,由选定/选择的节点执行类似的证明。
在挖矿364的情况下,节点试图通过对一个变量进行增量改变来解决区块,直到解决方案满足网络范围的目标。这创建PoW,从而确保正确答案。换句话说,潜在的解决方案必须证明计算资源在解决问题时被耗尽。在一些类型的无需权限区块链中,矿工可能会因正确地对区块进行挖矿而被奖励价值(例如,硬币等)。
这里,PoW过程以及区块的链接使对区块链的修改变得极其困难,因为攻击者必须修改所有后续区块才能使对一个区块的修改被接受。此外,随着对新区块进行挖矿,修改区块的难度增加,并且后续区块的数量也增加。在分发366的情况下,成功地验证的区块通过无需权限区块链352进行分发,并且所有节点354将区块添加到主流链,该主流链是无需权限区块链352的可审计分类账。此外,由发送者356提交的事务中的价值被存入或以其他方式转移到接收者装置358的数字钱包。
图4A示出了根据示例性实施方案的用于指派权限并控制访问的主机平台的服务420。在该示例中,服务420包括权限服务422、访问控制服务424和角色确定服务426。这里,访问控制服务424和角色确定服务426可被称为策略服务。权限服务422可被植入用于导出参与者角色可具有的权限的模板。例如,装运中的发货人角色可写(上传)商业发票文档但不能读进口申报单文档。这些权限可由角色确定服务426和访问控制服务424访问。
当由用户装置406(例如,与装运的参与者相关联的用户或系统等)创建新装运时,用户装置406可提供装运信息436,该装运信息包括与多方运输过程相关联的数据,包括指定参与者402(标识符)、地理始发地、目的地、转运港口、运输规划、里程碑事件、贸易文档等的细节。作为响应,角色确定服务426可分析接收到的装运信息436,构建运输概要并确定哪些参与者402应当被添加到多方运输过程和扮演哪个角色。装运的标识符、参与者/角色的标识符、对文档和事件的访问权等可作为角色/装运数据412存储在区块链上。这里,角色和装运数据412可作为事务存储在区块链的区块的散列链接链上的数据区块中。
例如,角色确定服务426可接收标识多运输过程及其细节的装运信息436。作为响应,角色确定服务426可识别码头/港口,该码头/港口对应于装运信息436中的在被标识为始发地、目的地、转运等位置处的地理位置。码头/港口可作为码头添加到装运,因此它们可被正确地通知。作为另一个示例,可从装运信息436识别行经国家,并且角色确定服务426可确定装运行经的国家的海关当局(参与者),该海关当局可被添加为始发地/目的地海关。作为另一个示例,可从贸易文档识别卖方和买方。可将卖方添加为发货人角色,而可将贸易文档中标识的买方添加为收货人角色。此外,角色确定服务426可通过不同的服务(例如,查询服务、订阅服务等)向识别出的参与者/角色中的每一者的用户指派对系统的访问权限以读/写事件或文档。
随着集装箱、货物、底托、装运等移动通过多方运输过程的链,可存储不同的事件。例如,参与者402可将事件数据上传到权限服务422或其他服务。事件数据可存储在区块链410上,或者该事件数据可被散列并作为散列数据414存储在区块链上,并且写入链外存储设备428以节省区块链410上的存储。同样地,可从参与者402接收文档并将其存储在区块链410上,或者可将文档的散列存储在区块链410上的散列数据414内,并且文档本身可存储在链外存储设备428中。
同时,当用户装置404访问多方运输过程的数据/文档时,该用户装置的访问可由访问控制服务424控制。这里,访问控制服务424可基于由角色确定服务426指派的对应的参与者的读/写权限来控制对数据和文档的访问。因此,系统上的每个参与者(及其用户)仅可访问它们被允许访问的数据。在一些实施方案中,用于角色确定服务426和访问控制服务424的逻辑可使用智能合约来实现。
通过动态地将装运层次结构的每一级别上的组织到一方角色与该方角色对装运的不同里程碑和对不同贸易文档的权限的断言进行组合,该系统能够导出并强制执行对访问(读/写)给定的装运中的数据的权限。例如,导出的访问可确定海运承运人可上传装运的提单文档,但是内陆运输服务(卡车司机)不能访问该文档。整个系统由导出权限信息并然后将其作为访问来自贸易系统的对象(包括里程碑事件和文档)的一部分来执行的服务422、424和426构成。
图4B示出了根据示例性实施方案的参与者类型442与参与者角色444之间的映射440。参考图4B,多方运输过程中涉及的组织可被指派为特定参与者类型442。图4B中的参与者类型442的示例不应当被视为详尽的,并且其他参与者类型也是可能的。当组织向系统注册时,可被指派参与者类型。此外,当接收到新运输对象(识别出新装运/运输)时,角色确定服务426可将在运输对象中识别的每个参与者指派为参与者角色444中的一者或多者。如图4B所示,参与者类型442可映射到多个不同的参与者角色444。此外,一些参与者类型442可映射到相同的参与者角色444。根据各种实施方案,角色确定服务426可基于由角色确定服务426从多方运输过程的贸易文档中读出的数据、由客户提供的装运信息等来确定每个参与者应当被指派哪个参与者角色444。
图4C示出了根据示例性实施方案的基于角色来存储对文档456的访问权限的表450。参考图4C,示出了两种类型的参与者452(海运承运人和内陆运输人)的访问权的示例。如图所示,每个参与者类型452可包括多个不同的角色454,其中角色中的每一者可具有指派给其的单独访问权。因此,不同的角色454可具有对文档456的不同访问权。尽管在图4C中未示出,但是所有参与者类型和角色的访问权可由权限服务422存储和管理,并且可由访问控制服务424访问。
图4D示出了根据示例性实施方案的动态地确定对文档和事件的读和写权限的过程400D。参考图4D,角色确定服务426从装运的一方或多方接收装运信息436。作为另一个示例,可由平台根据从装运的多个方接收的事件和文档来整理装运信息436。角色确定服务426可检查文档、接收到的信息等,并且识别多个参与者461至465。此外,角色确定服务426可动态地将角色指派给每个参与者461至465。基于动态地指派的角色,角色确定服务426还可识别参与者有权访问的文档471和事件472。参与者461至465及其角色、权限等的动态指派可作为对象数据412存储在区块链410上,并且由访问控制服务424用来管理/控制对多方运输过程的数据的访问。
图5示出了根据示例性实施方案的动态地确定读和写权限的方法500。参考图5,在510中,该方法可包括接收多方运输过程的运输数据。例如,运输数据可标识始发地、目的地、装运/运输实体、中间实体、港口、海关实体、买方、卖方等。作为另一个示例,可从在510中接收的文档(诸如发票、提单、海运单等)提取运输数据。
在520中,该方法可包括基于接收到的运输数据来识别与多方运输过程相关联的文档和事件。文档可包括与多方运输过程的各方相关联的任何文档。事件(也称为里程碑)可包括在集装箱从一个位置移动到下一个位置时发生的基于集装箱的事件。
在530中,该方法可包括基于预定义角色来动态地确定对多方运输过程的文档和事件的读和写权限。例如,动态地确定可包括基于通过区块链的链码映射到多方运输过程中包括的多个方的预定义角色来导出这些方对区块链读和写数据的权限。在一些实施方案中,动态地确定读和写权限还可基于多方运输过程的始发地、目的地和一个或多个中间位置来确定。在540中,该方法还可包括将多方运输过程的标识符和动态地确定的读和写权限存储在区块链上的区块中。
在一些实施方案中,该方法可包括接收对访问多方运输过程的文档和事件中的一者或多者的请求,并且基于存储在区块链中的动态地确定的读和写权限来授权该请求。在一些实施方案中,该方法还可包括接收对访问多方运输过程的文档和事件中的一者或多者的请求,并且基于存储在区块链中的动态地确定的读和写权限来拒绝该请求。在一些实施方案中,该方法还可包括接收多方过程的事件数据更新,并且将事件数据更新和对事件数据更新的读和写权限存储在区块链上的区块中。在一些实施方案中,事件数据更新可包括对先前存储的文档的修改。在一些实施方案中,事件数据更新可包括对先前确定的对事件及其数据的读和写权限的修改。
图6A示出了根据示例性实施方案的包括被配置为执行各种操作的物理基础设施610的示例性系统600。参考图6A,物理基础设施610包括模块612和模块614。模块614包括区块链620和智能合约630(其可驻留在区块链620上),该模块可执行示例性实施方案中的任一者中包括的操作步骤608中的任一者(在模块612中)。步骤/操作608可包括所描述或描绘的实施方案中的一者或多者,并且可表示从一个或多个智能合约630和/或区块链620写或读的输出或写信息。物理基础设施610、模块612和模块614可包括一个或多个计算机、服务器、处理器、存储器和/或无线通信装置。另外,模块612和模块614可以是同一模块。
图6B示出了根据示例性实施方案的被配置为执行各种操作的另一个示例性系统640。参考图6B,系统640包括模块612和模块614。模块614包括区块链620和智能合约630(其可驻留在区块链620上),该模块可执行示例性实施方案中的任一者中包括的操作步骤608中的任一者(在模块612中)。步骤/操作608可包括所描述或描绘的实施方案中的一者或多者,并且可表示从一个或多个智能合约630和/或区块链620写或读的输出或写信息。在图6A和图6B的示例中,物理基础设施610、模块612和模块614可包括一个或多个计算机、服务器、处理器、存储器和/或无线通信装置。另外,模块612和模块614可以是同一模块。
图6C示出了根据示例性实施方案的被配置为利用缔约方之间的智能合约配置和中介服务器的示例性系统,该中介服务器被配置为在区块链上强制执行智能合约条款。参考图6C,配置650可表示通信会话、资产转移会话或由明确地识别一个或多个用户装置652和/或656的智能合约630驱动的过程或程序。智能合约执行的执行、操作和结果可由服务器654管理。智能合约630的内容可能要求作为智能合约事务的各方的实体652和656中的一者或多者的数字签名。智能合约执行的结果可作为区块链事务写入区块链620。智能合约630驻留在可驻留在区块链620上,该区块链可驻留在一个或多个计算机、服务器、处理器、存储器和/或无线通信装置上。
图6D示出了根据示例性实施方案的包括区块链的系统660。参考图6D的示例,应用程序编程接口(API)网关662提供用于访问区块链逻辑(例如,智能合约630或其他链码)和数据(例如,分布式分类账等)的通用接口。在该示例中,API网关662是用于通过将一个或多个实体652和656连接到区块链对等者(即,服务器654)来在区块链上执行事务(调用、查询等)的通用接口。这里,服务器654是区块链网络对等部件,其保存世界状态的副本和分布式分类账,从而允许客户端652和656查询关于世界状态的数据以及将事务提交到区块链网络中,其中取决于智能合约630和背书策略,背书对等者将运行智能合约630。
上述实施方案可以硬件、由处理器执行的计算机程序、固件或以上项的组合实现。计算机程序可体现在计算机可读介质(诸如存储介质)上。例如,计算机程序可驻留在随机存取存储器(“RAM”)、快闪存储器、只读存储器(“ROM”)、可擦除可编程只读存储器(“EPROM”)、电可擦除可编程只读存储器(“EEPROM”)、寄存器、硬盘、可移动盘、压缩盘只读存储器(“CD-ROM”)或本领域已知的任何其他形式的存储介质中。
示例性存储介质可耦合到处理器,使得处理器可从存储介质读信息和向该存储介质写信息。在替代方案中,存储介质可与处理器成整体。处理器和存储介质可驻留在专用集成电路(“ASIC”)中。在替代方案中,处理器和存储介质可作为分立部件存在。
图7A示出了根据示例性实施方案的将新区块添加到分布式分类账720的过程700,并且图7B示出了根据示例性实施方案的用于区块链的新数据区块结构730的内容。参考图7A,客户端(未示出)可向区块链节点711、712和/或713提交事务。客户端可以是从任何源接收的用于在区块链720上进行活动的指令。作为示例,客户端可以是代表请求者(诸如装置、人或实体)行动以针对区块链提议事务的应用程序。多个区块链对等者(例如,区块链节点711、712和713)可维护区块链网络的状态和分布式分类账720的副本。区块链网络中可存在不同类型的区块链节点/对等者,包括模拟和背书由客户端提议的事务的背书对等者以及检验背书、验证事务并向分布式分类账720递交事务的递交对等者。在该示例中,区块链节点711、712和713可扮演背书人节点、提交者节点或这两者的角色。
分布式分类账720包括在区块中存储不可变定序记录的区块链,以及维护区块链722的当前状态的状态数据库724(当前世界状态)。每个通道可存在一个分布式分类账720,并且每个对等者为其所属的每个通道维护其自己的分布式分类账720的副本。区块链722是以散列链接区块构造的事务日志,其中每个区块包含N个事务的序列。区块可包括诸如图7B中所示的各种部件和事务。可通过在当前区块的区块头中添加先前区块的头的散列来生成区块的链接(由图7A中的箭头示出)。以此方式,区块链722上的所有事务被定序并加密地链接在一起,从而防止在不破坏散列链接的情况下篡改区块链数据。此外,由于链接,区块链722中的最新区块表示在其之前发生的每个事务。区块链722可存储在对等文件系统(本地或附接存储)上,该对等文件系统支持只可附加的区块链工作负载。
区块链722和分布式分类账722的当前状态可存储在状态数据库724中。这里,当前状态数据表示区块链722的链事务日志中曾包括的所有键的最新值。链码调用针对状态数据库724中的当前状态执行事务。为了使这些链码交互非常高效,所有键的最新值都存储在状态数据库724中。状态数据库724可包括区块链722的事务日志的索引视图,因此可随时从链重新生成该状态数据库。在事务被接受之前,状态数据库724可在对等者启动时自动地恢复(或在需要时生成)。
背书节点从客户端接收事务,并基于模拟结果来背书事务。背书节点持有模拟事务提议的智能合约。当背书节点对事务进行背书时,背书节点将创建事务背书,该事务背书是背书节点对客户端应用程序的签名响应,指示对模拟事务的背书。对事务进行背书的方法取决于可在链码中指定的背书策略。背书策略的一个示例是“大多数背书对等者必须对事务进行背书”。不同的通道可有不同的背书策略。背书的事务由客户端应用程序转发给排序服务710。
排序服务710接收背书的事务,将它们排序到区块中并且将区块交付给递交对等者。例如,当达到事务阈值、计时器超时或另一个条件时,排序服务710可启动新区块。在图7A的示例中,区块链节点712是已经接收到用于存储在区块链720上的新数据区块730的递交对等者。区块链中的第一个区块可被称为创始区块,该创始区块包括关于区块链、其成员、存储在其中的数据等信息。
排序服务710可由排序者的集群组成。排序服务710不处理事务、智能合约或维护共享分类账。相反,排序服务710可接受背书的事务并指定将这些事务递交到分布式分类账720的次序。区块链网络的架构可被设计为使得“排序”的具体实现方式(例如,Solo、Kafka、BFT等)成为可插拔部件。
以一致性次序将事务写入分布式分类账720。确立事务的次序以确保状态数据库724的更新在事务被递交到网络时是有效的。与通过解决加密谜题或挖矿进行排序的加密货币区块链系统(例如,比特币等)不同,在该示例中,分布式分类账720的各方可选择最适合该网络的排序机制。
当排序服务710将新数据区块730初始化时,可将新数据区块730广播给递交对等者(例如,区块链节点711、712和713)。作为响应,每个递交对等者通过查验来验证新数据块730中的事务以确保读集和写集仍然与状态数据库724中的当前世界状态匹配。具体来说,递交对等者可确定当背书人模拟事务时存在的读数据是否与状态数据库724中的当前世界状态相同。当递交对等者验证事务时,将该事务写入分布式分类账720上的区块链722,并且用来自读-写集的写数据更新状态数据库724。如果事务失败,即,如果递交对等者发现读-写集与状态数据库724中的当前世界状态不匹配,则排序到区块中的事务仍将被包括在该区块中,但它将被标记为无效,并且状态数据库724将不会更新。
参考图7B,存储在分布式分类账720的区块链722上的新数据区块730(也称为数据区块)可包括多个数据段,诸如区块头740、区块数据750和区块元数据760。应当了解,图7B中所示的各种描述的区块及其内容(诸如新数据区块730及其内容)仅仅是示例,并且不意图限制示例性实施方案的范围。新数据块730可在区块数据750内存储N个(例如,1个、10个、100个、500个、1000个、2000个、3000个等)事务的事务信息。新数据区块730还可在区块头740中包括指向前一区块(例如,在图7A中的区块链722上)的链接。特别地,区块头740可包括前一区块的头的散列。区块头740还可包括唯一区块号、新数据区块730的区块数据750的散列等。新数据区块730的区块号可以是唯一的并以各种次序(诸如从零开始的递增/顺序次序)进行指派。
区块数据750可存储在新数据区块730内记录的每个事务的事务信息。例如,事务数据可包括以下一者或多者:事务的类型、版本、时间戳、分布式分类账720的通道ID、事务ID、时期、有效负载可见性、链码路径(部署事务)、链码名称、链码版本、输入(链码和函数)、客户(创建者)身份(诸如公钥和证书)、客户端的签名、背书人的身份、背书人签名、提议散列、链码事件、响应状态、命名空间、读集(由事务读的键和版本列表等)、写集(键和值列表等)、开始键、结束键、键的列表、默克尔树查询汇总等。可存储N个事务中的每一者的事务数据。
根据各种实施方案,区块数据750还可存储下游运输数据752,该下游运输数据可包括装运/运输的标识符、运输中涉及的各方的标识符、各方的角色、授权各方进行读和写(诸如文件、事件数据等)的权限等。运输数据752可用于基于存储在传输数据752中的权限来检验请求访问运输信息的用户是否被允许访问此类数据。运输数据752包括本文描述或描绘的步骤、特征、过程和/或动作中的一者或多者。因此,运输数据752可存储在分布式分类账720上的不可变区块日志中。将运输数据752存储在区块链上的益处中的一些反映在本文公开和描绘的各种实施方案中。
区块元数据760可存储多个元数据字段(例如,以字节数组等形式)。元数据字段可包括区块创建时的签名、对最后配置区块的引用、标识区块内的有效和无效事务的事务筛选器、对区块进行排序的排序服务持续的最后偏移等。排序服务710可添加签名、最后配置区块和排序者元数据。同时,区块的递交方(诸如区块链节点712)可添加基于背书策略的有效性/无效性信息、读/写集的检验等。事务筛选器可包括大小等于区块数据750中的事务数量的字节数组和标识事务有效还是无效的验证代码。在一些实施方案中,尽管图7B中未示出,但是区块元数据760可在其中存储推荐的智能合约的元数据。
图7C示出了根据本文描述的实施方案的针对数字内容的区块链770的实施方案。数字内容可包括一个或多个文件和相关信息。这些文件可包括媒体、图像、视频、音频、文本、链接、图形、动画、网页、文档或其他形式的数字内容。区块链的不可变、只可附加的方面作为保护数字内容的完整性、有效性和真实性的保障,从而使数字内容适合用于其中应用容许性规则的法律程序,或者其中考虑到证据或其中数字信息的呈现和使用也很重要的其他情景。在这种情况下,数字内容可被称为数字证据。
可通过各种方式来形成区块链。在一个实施方案中,数字内容可被包括在区块链本身中并从其访问。例如,区块链的每个区块可存储引用信息(例如区块头、值等)的散列值以及相关联的数字内容。散列值和相关联的数字内容然后可一起加密。因此,可通过对区块链中的每个区块进行解密来访问每个区块的数字内容,并且每个区块的散列值可作为引用前一区块的基础。这可说明如下:
在一个实施方案中,数字内容可不被包括在区块链中。例如,区块链可存储每个区块的内容的加密散列而没有任何数字内容。数字内容可与原始文件的散列值相关联地存储在另一个存储区或存储器地址。另一个存储区域可以是用于存储区块链的相同存储装置,也可以是不同的存储区域或甚至是单独的关系数据库。可通过获取或查询感兴趣的区块的散列值且然后在存储区域中查找与实际数字内容对应地存储的散列值来引用或访问每个区块的数字内容。这个操作可由例如数据库网守来执行。这可说明如下:
在图7C的示例性实施方案中,区块链770包括按有序顺序加密地链接的许多区块7781、7782、……、778N,其中N≥1。用于链接区块7781、7782、……、778N的加密可以是多个密钥化或非密钥化散列函数中的任一者。在一个实施方案中,区块7781、7782、……、778N服从散列函数,该散列函数从基于区块中的信息的输入产生n位字母数字输出(其中n是256或另一个数量)。这种散列函数的示例包括但不限于SHA型(SHA代表安全散列算法)算法、Merkle-Damagard算法、HAIFA算法、默克尔树算法、基于随机数的算法和非抗冲突PRF算法。在另一个实施方案中,区块7781、7782、……、778N可通过不同于散列函数的函数进行加密链接。为了便于说明,以下描述参考散列函数,例如,SHA-2。
区块链中的每个区块7781、7782、……、778N都包括头、文件的版本和值。由于区块链中的散列,每个区块的头和值都不同。在一个实施方案中,值可被包括在头中。如下面更详细地描述,文件的版本可以是原始文件或原始文件的不同版本。
区块链中的第一个区块7781被称为创始区块,并且包括头7721、原始文件7741和初始值7761。用于创始区块的散列方案以及所有后续区块的散列方案可有所不同。例如,第一区块7781中的所有信息可同时一起散列,或者第一区块7781中的每个或一部分信息可单独地散列并且然后可对单独散列的部分进行散列。
头7721可包括一个或多个初始参数,例如,该初始参数可包括版本号、时间戳、随机数、根信息、难度级别、共识协议、持续时间、媒体格式、来源、描述性关键字和/或与原始文件7741和/或区块链相关联的其他信息。头7721可自动地生成(例如,通过区块链网络管理软件)或由区块链参与者手动地生成。与区块链中的其他区块7782至778N中的头不同,创始区块中的头7721不引用前一区块,这仅仅是因为没有前一区块。
创始区块中的原始文件7741可以是例如由装置捕获的在其包括于区块链之前进行处理或未处理的数据。通过系统的接口从装置、媒体源或节点接收原始文件7741。原始文件7741与例如可由用户、装置和/或系统处理器手动地或自动地生成的元数据相关联。元数据可与原始文件7741相关联地包括在第一区块7781中。
创始区块中的值7761是基于原始文件7741的一个或多个唯一属性生成的初始值。在一个实施方案中,一个或多个唯一属性可包括原始文件7741的散列值、原始文件7741的元数据以及与该文件相关的其他信息。在一个实现方式中,初始值7761可基于以下唯一属性:
1)原始文件的SHA-2计算散列值
2)始发装置ID
3)原始文件的开始时间戳
4)原始文件的初始存储位置
5)供软件目前控制原始文件和相关联元数据的区块链网络成员ID
区块链中的其他区块7782至778N也具有头、文件和值。然而,与第一区块的头7721不同,其他区块中的头7722至772N中的每一者都包括紧跟在前面的区块的散列值。紧跟在前面的区块的散列值可能只是前一区块的头的散列,也可能是整个前一区块的散列值。通过将前一区块的散列值包括在剩余区块中的每一者中,可从第N区块逐区块地跟踪回到创始区块(以及相关联的原始文件),如箭头780所示,以建立可审计且不可变的监管链。
其他区块中的每个头7722至772N还可包括其他信息,例如,版本号、时间戳、随机数、根信息、难度级别、共识协议和/或一般与对应的文件和/或区块链相关联的其他参数或信息。
其他区块中的文件7742至774N可等于原始文件,也可以是创始区块中的原始文件的修改版本,具体取决于例如所执行的处理的类型。所执行的处理的类型可能因区块而异。处理可能涉及例如对前一区块中的文件的任何修改,诸如修订信息或以其他方式改变文件的内容、从文件去除信息或向文件添加或附加信息。
另外地或替代地,处理可仅涉及从前一区块复制文件、改变文件的存储位置、分析一个或多个先前区块中的文件、将文件从一个存储或存储器位置移动到另一个位置,或者执行相对于区块链的文件和/或其相关联的元数据的动作。涉及分析文件的处理可包括(例如)附加、包括或以其他方式关联与该文件关联的各种分析、统计或其他信息。
其他区块7762至776N中的每一者的值都是唯一值,并且由于所执行的处理而全都不同。例如,任一个区块中的值对应于前一区块中的值的更新版本。更新反映在向其指派值的区块的散列中。因此,区块的值提供在区块中执行了什么处理的指示,并且还允许通过区块链跟踪回到原始文件。此跟踪确认了在整个区块链中的文件的监管链。
例如,考虑对前一区块中的文件的部分进行修订、分块或像素化以便保护文件中所示的人的身份的情况。在这种情况下,包括被修订文件的区块将包括与被修订文件相关联的元数据,例如,如何执行修订、谁执行了修订操作、发生修订的时间戳等。可对元数据进行散列以形成值。由于区块的元数据与在前一区块中进行散列以形成值的信息不同,这些值彼此不同并且可在解密时恢复。
在一个实施方案中,当发生以下任一者或多者时,可更新前一区块的值(例如,计算的新散列值),以形成当前区块的值。在该示例性实施方案中,可通过对下面所述的全部或一部分信息进行散列来计算新散列值。
a)新SHA-2计算的散列值(如果文件已以任何方式处理的话(例如,如果文件已被修订、复制、更改、访问或采取某些其他动作的话))
b)文件的新存储位置
c)识别的与文件关联的新元数据
d)将文件的访问或控制从一个区块链参与者转移到另一个区块链参与者
图7D示出了根据一个实施方案的可表示区块链790中的区块的结构的区块的实施方案。该区块(区块i)包括头772i、文件774i和值776i。
头772i包括前一区块区块i-1的散列值和附加的引用信息,该附加的引用信息例如可以是本文讨论的任何类型的信息(例如,包括引用、特征、参数等的头信息)。所有区块都引用前一区块的散列值,当然,创始区块除外。前一区块的散列值可能只是前一区块中的头的散列,也可以是前一区块中的全部或一部分信息(包括文件和元数据)的散列。
文件774i包括多个数据,如按顺序的数据1、数据2、……、数据N。数据用描述与数据相关联的内容和/或特征的元数据元数据1、元数据2、……、元数据N来标记。例如,每个数据的元数据可包括指示数据的时间戳的信息、处理数据、指示数据中描绘的人或其他内容的关键字,和/或可有助于确立文件整体的有效性和内容(尤其是其作为数字证据的用途)的其他特征,例如,如结合下文所讨论的实施方案所描述。除了元数据之外,每个数据还可用对前一数据的引用REF1、REF2、……、REFN来标记,以防止篡改、文件中的间隙以及通过文件的顺序引用。
一旦元数据被指派给数据(例如,通过智能合约),就无法在不改变散列的情况下更改元数据,而改变散列可容易被识别为无效。因此,元数据创建了可被访问以供区块链中的参与者使用的信息的数据日志。
值776i是基于先前讨论的任何类型的信息计算的散列值或其他值。例如,对于任何给定的区块区块i,可更新该区块的值以反映对该区块执行的处理,例如,新散列值、新存储位置、相关联文件的新元数据、控制或访问的转移、标识符或要添加的其他动作或信息。尽管每个区块中的值被显示为与文件的数据的元数据和头分离,但是在另一个实施方案中,该值可部分或全部基于该元数据。
一旦形成区块链770,就可在任何时间点通过向区块链查询跨区块的值的事务历史来获取文件的不可变监管链。此查询或跟踪过程可始于对最近包括的区块(例如,最后(第N)区块)的值进行解密,并且然后继续对其他区块的值进行解密,直到到达创始区块并且恢复原始文件。解密也可能涉及对每个区块处的头和文件以及相关联元数据进行解密。
解密是基于每个区块中发生的加密的类型来执行的。这可涉及使用私钥、公钥或公钥-私钥对。例如,当使用非对称加密时,网络中的区块链参与者或处理器可使用预定的算法来生成公钥和私钥对。公钥和私钥通过某种数学关系相互关联。公钥可被公开分发以用作从其他用户接收消息的地址,例如,IP地址或家庭地址。私钥是保密的并且用于对发送给其他区块链参与者的消息进行数字签名。签名被包括在消息中,使得接收者可使用发送者的公钥进行检验。这样,接收者就可确定只有发送者才可发送该消息。
生成密钥对可类似于在区块链上创建账户但无须实际在任何地方注册。此外,在区块链上执行的每个事务都由发送者使用其私钥进行数字签名。此签名确保只有账户的所有者才能跟踪和处理(如果在智能合约确定的权限范围内的话)区块链的文件。
图8A和图8B示出了可在本文中并入和使用的区块链的用例的附加的示例。特别地,图8A示出了存储机器学习(人工智能)数据的区块链810的示例800。机器学习依靠大量的历史数据(或训练数据)来构建用于对新数据进行准确预测的预测模型。机器学习软件(例如,神经网络等)通常可筛选数百万条记录以找出非直观模式。
在图8A的示例中,主机平台820构建并部署用于资产830的预测监测的机器学习模型。这里,主机平台820可以是云平台、工业服务器、web服务器、个人计算机、用户装置等。资产830可以是任何类型的资产(例如,机器或设备等),诸如航空器、机车、涡轮机、医疗机械和设备、油气设备、船、船舶、车辆等。作为另一个示例,资产830可以是非有形资产,诸如股票、货币、数字硬币、保险等。
区块链810可用来显著地改善机器学习模型的训练过程802和基于经训练的机器学习模型的预测过程804。例如,在802中,历史数据可由资产830本身(或通过媒介,未示出)存储在区块链810上,而不是要求数据科学家/工程师或其他用户收集数据。这可显著地减少主机平台820在执行预测模型训练时所需的收集时间。例如,使用智能合约,数据可直接地且可靠地从起源位置传输到区块链810。通过使用区块链810来确保收集的数据的安全性和所有权,智能合约可直接地将数据从资产发送到使用该数据来构建机器学习模型的个体。这允许在资产830之间共享数据。
收集的数据可基于共识机制而存储在区块链810中。共识机制拉入(需权限节点)以确保正在记录的数据是经检验的且准确的。记录的数据是带时间戳的、加密地签名的且不可变的。因此,记录的数据是可审计的、透明的且安全的。在某些情况下(即,供应链、保健、物流等),添加直接地写入区块链的IoT装置可增加正在记录的数据的频率和准确度两者。
此外,在收集的数据上训练机器学习模型可由主机平台820进行数轮细化和测试。每一轮可以是基于附加的数据或先前未考虑的数据,以帮助扩展机器学习模型的知识。在802中,不同的训练和测试步骤(及其相关联数据)可由主机平台820存储在区块链810上。机器学习模型的每次细化(例如,变量、权重等的改变)可存储在区块链810上。这提供关于如何训练模型和用什么数据来训练模型的可检验证明。此外,当主机平台820已经实现最终训练的模型时,所得的模型可存储在区块链810上。
在已经训练模型之后,可将其部署到真实环境,在该真实环境中,可基于最终训练的机器学习模型的执行来进行预测/决策。例如,在804中,可将机器学习模型用于资产(诸如航空器、风力涡轮机、保健机器等)的基于条件的维护(CBM)。在该示例中,从资产830反馈的数据可输入机器学习模型并用于进行事件预测(诸如故障事件、错误代码等)。可将通过在主机平台820处执行机器学习模型做出的确定存储在区块链810上,以提供可审计/可检验证明。作为一个非限制性示例,机器学习模型可预测资产830的一部分的未来损坏/故障并创建替换该部分的警报或通知。在该决策背后的数据可由主机平台820存储在区块链810上。在一个实施方案中,本文描述和/或描绘的特征和/或动作可在区块链810上或相对于该区块链发生。
可将区块链的新事务聚集到新区块中并添加到现有散列值。这然后进行加密以创建新区块的新散列。这在对事务进行加密时添加到下一个事务列表,依此类推。结果是每个区块都含有所有先前区块的散列值的区块链。存储这些区块的计算机定期地比较它们的散列值以确保它们的散列值全部达成一致。任何未达成一致的计算机都丢弃引起问题的记录。该方法对于确保区块链的防篡改是有益的,但是它不是完美的。
不诚实用户操纵该系统的一种方式是以对自己有利但保持散列不变的方式改变事务列表。这可通过蛮力来完成,换句话说,通过改变记录、对结果加密和查看散列值是否相同来完成。而且,如果不是的话,则反复地尝试,直到找到匹配的散列。区块链的安全性是基于以下信念:普通计算机仅可在完全不切实际(诸如宇宙的年龄)的时间尺度上进行这种蛮力攻击。相比之下,量子计算机快得多(快数千倍),并且因此造成大得多的威胁。
图8B示出了实现量子密钥分发(QKD)以防止量子计算攻击的量子安全区块链852的示例850。在该示例中,区块链用户可使用QKD来检验彼此的身份。这使用量子粒子(诸如光子)来发送信息,窃听者无法在不破坏量子粒子的情况下复制量子粒子。以此方式,发送者和接收者通过区块链可确认彼此的身份。
在图8B中,存在四个用户854、856、858和860。每对用户可在他们之间共享密钥862(即,QKD)。由于在该示例中存在四个节点,因此存在六对节点,并且因此使用六个不同的密钥862,包括QKDAB、QKDAC、QKDAD、QKDBC、QKDBD和QKDCD。每一对可通过使用量子粒子(诸如光子)发送信息来创建QKD,窃听者无法在不破坏量子粒子的情况下复制量子粒子。以此方式,一对用户就可确认彼此的身份。
区块链852的操作是基于两个程序:(i)事务的创建,以及(ii)聚集新事务的区块的构造。可类似于传统的区块链网络来创建新事务。每个事务可含有关于发送者、接收者、创建时间、要转移的金额(或价值)、判断发送者具有用于该操作的资金的参考事务的列表等的信息。然后,将该事务记录发送到所有其他节点,在那里,该事务记录被输入未确认事务池。这里,两方(即,在854至860中的一对用户)通过提供它们的共享密钥862(QKD)来认证该事务。可将该量子签名附加到每个事务,从而使其极难被篡改。每个节点查验其关于区块链852的本地副本的条目以检验每个事务具有足够的资金。然而,事务尚未被确认。
可使用广播协议以分散式方式创建区块,而不是对区块执行传统的挖矿过程。在预定时间段(例如,数秒、数分钟、数小时等),网络可将广播协议应用于任何未确认事务,由此实现关于事务的正确版本的拜占庭协定(共识)。例如,每个节点可拥有私有值(该特定节点的事务数据)。在第一轮中,节点将其私有值传输给彼此。在后续轮中,节点传达它们在前一轮中从其他节点接收到的信息。这里,诚实节点能够在新区块内创建一组完整事务。该新区块可被添加到区块链852。在一个实施方案中,本文描述和/或描绘的特征和/或动作可在区块链852上或相对于该区块链发生。
图9示出了支持本文描述和/或描绘的示例性实施方案中的一者或多者的示例性系统900。系统900包括计算机系统/服务器902,该计算机系统/服务器可与众多其他通用或专用计算系统环境或配置一起操作。可适合于与计算机系统/服务器902一起使用的众所周知的计算系统、环境和/或配置的示例包括但不限于个人计算机系统、服务器计算机系统、瘦客户端、厚客户端、手持或膝上型装置、多处理器系统、基于微处理器的系统、机顶盒、可编程消费电子器件、网络PC、小型计算机系统、大型计算机系统以及包括以上系统或装置中的任一者的分布式云计算环境等。
计算机系统/服务器902可在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般上下文中进行描述。一般来讲,程序模块可包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、部件、逻辑、数据结构等。可在由通过通信网络链接的远程处理装置执行任务的分布式云计算环境中实践计算机系统/服务器902。在分布式云计算环境中,程序模块可位于包括存储器存储装置的本地和远程计算机系统存储介质两者中。
如图9所示,以通用计算装置的形式示出云计算节点900中的计算机系统/服务器902。计算机系统/服务器902的部件可包括但不限于一个或多个处理器或处理单元904、系统存储器906以及将包括系统存储器906的各种系统部件耦合到处理器904的总线。
总线表示若干类型的总线结构中的任一者或多者,包括存储器总线或存储器控制器、外围总线、加速图形端口和使用多种总线架构中的任一者的处理器或本地总线。以举例而非限制的方式,此类架构包括工业标准架构(ISA)总线、微通道架构(MCA)总线、增强型ISA(EISA)总线、视频电子标准协会(VESA)本地总线和外围部件互连(PCI)总线。
计算机系统/服务器902典型地包括多种计算机系统可读介质。此类介质可以是可由计算机系统/服务器902访问的任何可用的介质,并且包括易失性和非易失性介质、可移动和不可移动介质两者。在一个实施方案中,系统存储器906实现其他附图的流程图。系统存储器906可包括呈易失性存储器的形式的计算机系统可读介质,诸如随机存取存储器(RAM)910和/或高速缓存存储器912。计算机系统/服务器902还可包括其他可移动/不可移动、易失性/非易失性计算机系统存储介质。仅以举例的方式,存储系统914可被提供用于从不可移动非易失性磁性介质(未示出并且典型地称为“硬盘驱动器”)读取和向该不可移动非易失性磁性介质写入。尽管未示出,但是也可提供用于从可移动非易失性磁盘(例如,“软盘”)读取和向该可移动非易失性磁盘写入的磁盘驱动器以及用于从可移动非易失性光盘(诸如CD-ROM、DVD-ROM或其他光学介质)读取和向该可移动非易失性光盘写入的光盘驱动器。在此类情况下,每一者都可通过一个或多个数据介质接口连接到总线。如以下将进一步描绘和描述,存储器906可包括至少一个程序产品,该至少一个程序产品具有一组(例如,至少一个)程序模块,该一组程序模块被配置为进行本申请的各种实施方案的功能。
具有一组(至少一个)程序模块918的程序/实用程序916可存储在存储器906中(以举例而非限制的方式),操作系统、一个或多个应用程序、其他程序模块和程序数据也存储在该存储器中。操作系统、一个或多个应用程序、其他程序模块和程序数据或它们的某种组合中的每一者可包括联网环境的实现方式。程序模块918通常进行如本文所描述的本申请的各种实施方案的功能和/或方法。
如本领域技术人员将了解,本申请的方面可体现为系统、方法或计算机程序产品。因此,本申请的方面可采取完全硬件实施方案、完全软件实施方案(包括固件、常驻软件、微码等)或结合软件和硬件方面的实施方案的形式,所述软件和硬件方面在本文中可全部通称为“电路”、“模块”或“系统”。此外,本申请的方面可采取体现在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质具有体现在其上的计算机可读程序代码。
计算机系统/服务器902还可与一个或多个外部装置920通信,所述一个或多个外部装置诸如键盘、定点装置、显示器922等;使用户能够与计算机系统/服务器902交互的一个或多个装置;以及/或者使计算机系统/服务器902能够与一个或多个其他计算装置通信的任何装置(例如,网卡、调制解调器等)。这种通信可经由I/O接口924进行。再者,计算机系统/服务器902可经由网络适配器926与一个或多个网络通信,所述一个或多个网络诸如局域网(LAN)、通用广域网(WAN)和/或公用网(例如,互联网)。如所描绘,网络适配器926经由总线与计算机系统/服务器902的其他部件通信。应当理解,尽管未示出,但是其他硬件和/或软件部件也可与计算机系统/服务器902结合使用。示例包括但不限于:微码、装置驱动器、冗余处理单元、外部磁盘驱动器阵列、RAID系统、磁带驱动器和数据归档存储系统等。
尽管已经在附图中示出并在前述详细描述中描述了系统、方法和非暂时性计算机可读介质中的至少一者的示例性实施方案,但是将理解,本申请不限于所公开的实施方案,而是能够进行如所附权利要求中阐述和定义的众多重排、修改和替换。例如,各种附图的系统的能力可由本文描述的模块或部件中的一者或多者执行或在分布式架构中执行,并且可包括发射器、接收器或两者的对。例如,可由这些模块中的一者或多者执行由各个模块执行的功能的全部或一部分。另外,可在各种时间上并与在模块或部件内部或外部的各种事件相关地执行本文描述的功能。而且,可经由以下至少一者在模块之间发送在各种模块之间发送的信息:数据网络、互联网、语音网络、互联网协议网络、无线装置、有线装置和/或经由多个协议。而且,可直接地和/或经由其他模块中的一者或多者发送或接收由模块中的任一者发送或接收的消息。
本领域技术人员将了解,“系统”可体现为个人计算机、服务器、控制台、个人数字助理(PDA)、蜂窝电话、平板计算装置、智能电话或任何其他合适的计算装置,或者装置的组合。将上述功能呈现为由“系统”执行不旨在以任何方式限制本申请的范围,而旨在提供许多实施方案的一个示例。事实上,可以与计算技术一致的本地化和分布式形式实现本文公开的方法、系统和设备。
应当注意,本说明书描述的系统特征中的一些已经作为模块呈现,以便更特别地强调它们的实现独立性。例如,模块可实现为硬件电路,包括定制超大规模集成(VLSI)电路或门阵列、现成半导体(诸如逻辑芯片、晶体管或其他分立部件)。也可在可编程硬件装置(诸如现场可编程门阵列、可编程阵列逻辑、可编程逻辑装置、图形处理单元等)中实现模块。
也可至少部分地以软件实现模块,以供各种类型的处理器执行。识别出的可执行代码单元可例如包括计算机指令的一个或多个物理或逻辑区块,该物理或逻辑区块可例如被组织为对象、程序或函数。然而,识别出的模块的可执行文件不需要物理地定位在一起,而可包括存储在不同位置的不同指令,这些指令在逻辑地联合在一起时构成该模块并实现该模块的陈述目的。另外,模块可存储在计算机可读介质上,该计算机可读介质可以是例如硬盘驱动器、快闪装置、随机存取存储器(RAM)、磁带或用于存储数据的任何其他此类介质。
事实上,可执行代码的模块可以是单个指令,也可以是许多指令,并且甚至可分布在若干不同的代码段上、在不同的程序之间和跨若干存储器装置。类似地,操作数据可在本文中在模块内被识别和示出,并且可以任何合适的形式体现并被组织在任何合适类型的数据结构内。操作数据可被收集为单个数据集或可分布在不同的位置上(包括分布在不同的存储装置上),并且可至少部分地仅作为电子信号存在于系统或网络上。
将容易地理解,如在本文的附图中大体地描述和示出的本申请的部件可以多种不同的配置进行布置和设计。因此,实施方案的详细描述不旨在限制所要求保护的本申请的范围,而仅表示本申请的选定的实施方案。
本领域普通技术人员将容易地理解,以上内容可用按不同次序的步骤和/或用配置与所公开的那些配置不同的硬件元件来实践。因此,尽管已经基于这些优选实施方案描述了本申请,但是本领域技术人员将清楚,某些修改、变化和替代构造将是显而易见的。
虽然已经描述了本申请的优选实施方案,但是将理解,所描述的实施方案仅是说明性的,并且当考虑到等同物及其修改(例如,协议、硬件装置、软件平台等)的整个范围时,本申请的范围将仅由所附权利要求限定。
Claims (20)
1.一种设备,所述设备包括:
网络接口,所述网络接口被配置为接收多方运输过程的运输数据;以及
处理器,所述处理器被配置为:基于所述接收到的运输数据来识别与所述多方运输过程相关联的文档和事件;基于预定义角色来动态地确定对所述多方运输过程的所述文档和所述事件的读和写权限;以及将所述多方运输过程的标识符和所述动态地确定的读和写权限存储在区块链上的区块中。
2.如权利要求1所述的设备,其中所述处理器被配置为基于通过所述区块链的链码映射到所述多方运输过程中包括的多个方的预定义角色来导出所述方对所述区块链读和写数据的权限。
3.如权利要求1所述的设备,其中所述处理器还被配置为接收对访问所述多方运输过程的文档和事件中的一者或多者的请求,并且基于存储在所述区块链中的所述动态地确定的读和写权限来授权所述请求。
4.如权利要求1所述的设备,其中所述处理器还被配置为接收对访问所述多方运输过程的文档和事件中的一者或多者的请求,并且基于存储在所述区块链中的所述动态地确定的读和写权限来拒绝所述请求。
5.如权利要求1所述的设备,其中所述处理器基于所述多方运输过程的始发地、目的地和一个或多个中间位置来确定所述读和写权限。
6.如权利要求1所述的设备,其中所述网络接口还被配置为接收所述多方过程的事件数据更新,并且将所述事件数据更新和对所述事件数据更新的读和写权限存储在所述区块链上的区块中。
7.如权利要求6所述的设备,其中所述事件数据更新包括对先前存储的文档的修改。
8.如权利要求6所述的设备,其中所述事件数据更新包括对先前确定的对事件及其数据的读和写权限的修改。
9.一种方法,所述方法包括:
接收多方运输过程的运输数据;
基于所述接收到的运输数据来识别与所述多方运输过程相关联的文档和事件;
基于预定义角色来动态地确定对所述多方运输过程的所述文档和所述事件的读和写权限;以及
将所述多方运输过程的标识符和所述动态地确定的读和写权限存储在区块链上的区块中。
10.如权利要求9所述的方法,其中所述动态地确定包括基于通过所述区块链的链码映射到所述多方运输过程中包括的多个方的预定义角色来导出所述方对所述区块链读和写数据的权限。
11.如权利要求9所述的方法,所述方法还包括接收对访问所述多方运输过程的文档和事件中的一者或多者的请求,并且基于存储在所述区块链中的所述动态地确定的读和写权限来授权所述请求。
12.如权利要求9所述的方法,所述方法还包括接收对访问所述多方运输过程的文档和事件中的一者或多者的请求,并且基于存储在所述区块链中的所述动态地确定的读和写权限来拒绝所述请求。
13.如权利要求9所述的方法,其中所述动态地确定所述读和写权限还基于所述多方运输过程的始发地、目的地和一个或多个中间位置来确定。
14.如权利要求9所述的方法,所述方法还包括接收所述多方过程的事件数据更新,并且将所述事件数据更新和对所述事件数据更新的读和写权限存储在所述区块链上的区块中。
15.如权利要求14所述的方法,其中所述事件数据更新包括对先前存储的文档的修改。
16.如权利要求14所述的方法,其中所述事件数据更新包括对先前确定的对事件及其数据的读和写权限的修改。
17.一种非暂时性计算机可读介质,所述非暂时性计算机可读介质包括指令,所述指令在由处理器读时致使所述处理器执行方法,所述方法包括:
接收多方运输过程的运输数据;
基于所述接收到的运输数据来识别与所述多方运输过程相关联的文档和事件;
基于预定义角色来动态地确定对所述多方运输过程的所述文档和所述事件的读和写权限;以及
将所述多方运输过程的标识符和所述动态地确定的读和写权限存储在区块链上的区块中。
18.如权利要求17所述的非暂时性计算机可读介质,其中所述动态地确定包括基于通过所述区块链的链码映射到所述多方运输过程中包括的多个方的预定义角色来导出所述方对所述区块链读和写数据的权限。
19.如权利要求17所述的非暂时性计算机可读介质,其中所述方法还包括接收对访问所述多方运输过程的文档和事件中的一者或多者的请求,并且基于存储在所述区块链中的所述动态地确定的读和写权限来授权所述请求。
20.如权利要求17所述的非暂时性计算机可读介质,其中所述方法还包括接收对访问所述多方运输过程的文档和事件中的一者或多者的请求,并且基于存储在所述区块链中的所述动态地确定的读和写权限来拒绝所述请求。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/698,911 US11693979B2 (en) | 2019-11-27 | 2019-11-27 | Dynamic permission assignment and enforcement for transport process |
US16/698,911 | 2019-11-27 | ||
PCT/IB2020/060990 WO2021105836A1 (en) | 2019-11-27 | 2020-11-20 | Dynamic permission assignment and enforcement for transport process |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114762292A true CN114762292A (zh) | 2022-07-15 |
Family
ID=73695089
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080082357.2A Pending CN114762292A (zh) | 2019-11-27 | 2020-11-20 | 用于运输过程的动态权限指派和强制执行 |
Country Status (6)
Country | Link |
---|---|
US (1) | US11693979B2 (zh) |
JP (1) | JP2023505757A (zh) |
CN (1) | CN114762292A (zh) |
DE (1) | DE112020005794T5 (zh) |
GB (1) | GB2604561A (zh) |
WO (1) | WO2021105836A1 (zh) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10721069B2 (en) | 2018-08-18 | 2020-07-21 | Eygs Llp | Methods and systems for enhancing privacy and efficiency on distributed ledger-based networks |
US11316691B2 (en) | 2019-04-15 | 2022-04-26 | Eygs Llp | Methods and systems for enhancing network privacy of multiple party documents on distributed ledger-based networks |
US11232439B2 (en) | 2019-08-09 | 2022-01-25 | Eygs Llp | Methods and systems for preventing transaction tracing on distributed ledger-based networks |
US11481841B2 (en) | 2019-11-20 | 2022-10-25 | Eygs Llp | Systems, apparatus and methods for identifying distinguishing characteristics of fungible assets using zero-knowledge proof on a distributed ledger-based network |
US11388582B2 (en) * | 2019-11-28 | 2022-07-12 | Toyota Motor North America, Inc. | Providing media based on profile sharing |
US11788852B2 (en) | 2019-11-28 | 2023-10-17 | Toyota Motor North America, Inc. | Sharing of transport user profile |
CN110751448B (zh) * | 2019-12-20 | 2020-06-05 | 北京京邦达贸易有限公司 | 基于区块链的签单返还方法、装置、设备和可读存储介质 |
CA3180231A1 (en) | 2020-04-15 | 2021-10-21 | Eygs Llp | Intelligent assertion tokens for authenticating and controlling network communications using a distributed ledger |
CN111989663A (zh) | 2020-06-08 | 2020-11-24 | 支付宝实验室(新加坡)有限公司 | 基于区块链的智能合约池 |
SG11202102583UA (en) | 2020-06-08 | 2021-04-29 | Alipay Labs Singapore Pte Ltd | Blockchain-based document registration for custom clearance |
SG11202103081RA (en) | 2020-06-08 | 2021-04-29 | Alipay Labs Singapore Pte Ltd | Distributed storage of custom clearance data |
WO2020169127A2 (en) | 2020-06-08 | 2020-08-27 | Alipay Labs (singapore) Pte. Ltd. | User management of blockchain-based custom clearance service platform |
SG11202103063PA (en) | 2020-06-08 | 2021-04-29 | Alipay Labs Singapore Pte Ltd | Managing user authorizations for blockchain-based custom clearance services |
CN111868725B (zh) * | 2020-06-08 | 2024-05-24 | 支付宝实验室(新加坡)有限公司 | 基于区块链处理进口海关清关数据 |
JP2023031079A (ja) * | 2021-08-24 | 2023-03-08 | 富士通株式会社 | データ処理プログラム、データ処理方法およびデータ処理装置 |
CN114331732B (zh) * | 2022-03-15 | 2022-05-24 | 北京微芯感知科技有限公司 | 一种共识报文压缩方法 |
US11907229B2 (en) * | 2022-03-31 | 2024-02-20 | Gm Cruise Holdings Llc | System and method for platform-independent access bindings |
CN114938278B (zh) * | 2022-04-11 | 2023-10-31 | 北京邮电大学 | 一种零信任访问控制方法及装置 |
EP4366227A1 (en) * | 2022-11-04 | 2024-05-08 | Abb Schweiz Ag | Immutable and tamper-resistant event data |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018119585A1 (zh) | 2016-12-26 | 2018-07-05 | 深圳前海达闼云端智能科技有限公司 | 区块链的权限控制方法、装置、系统及节点设备 |
CN107426157B (zh) | 2017-04-21 | 2020-04-17 | 杭州趣链科技有限公司 | 一种基于数字证书以及ca认证体系的联盟链权限控制方法 |
US10528551B2 (en) * | 2017-09-29 | 2020-01-07 | Oracle International Corporation | System and method for providing a representational state transfer proxy service for a blockchain cloud service |
CN107909372A (zh) | 2017-10-25 | 2018-04-13 | 复旦大学 | 一种基于区块链技术的农产品溯源方法 |
CN108173850B (zh) | 2017-12-28 | 2021-03-19 | 杭州趣链科技有限公司 | 一种基于区块链智能合约的身份认证系统和身份认证方法 |
US11205178B2 (en) * | 2017-12-28 | 2021-12-21 | International Business Machines Corporation | Converting processes into multiple blockchain smart contracts |
CN108632268B (zh) | 2018-04-28 | 2021-04-09 | 腾讯科技(深圳)有限公司 | 区块链访问的鉴权方法和装置、存储介质、电子装置 |
US10692086B2 (en) * | 2018-05-07 | 2020-06-23 | Accenture Global Solutions Limited | Distributed ledger based identity and origins of supply chain application enabling financial inclusion and sustainability |
CN108768988B (zh) | 2018-05-17 | 2021-01-05 | 深圳前海微众银行股份有限公司 | 区块链访问控制方法、设备及计算机可读存储介质 |
US10846268B2 (en) * | 2018-06-08 | 2020-11-24 | Saphyre, Inc. and Gabino M. Roche Jr. | Technologies for file sharing |
US11361088B2 (en) * | 2019-02-25 | 2022-06-14 | Oocl (Infotech) Holdings Limited | Zero trust communication system for freight shipping organizations, and methods of use |
CN109872238A (zh) | 2019-02-26 | 2019-06-11 | 重庆大数美联科技有限公司 | 基于区块链的资产交易系统访问控制方法及系统 |
WO2019170174A2 (en) * | 2019-06-27 | 2019-09-12 | Alibaba Group Holding Limited | Implementing a blockchain-based workflow |
-
2019
- 2019-11-27 US US16/698,911 patent/US11693979B2/en active Active
-
2020
- 2020-11-20 DE DE112020005794.1T patent/DE112020005794T5/de active Pending
- 2020-11-20 CN CN202080082357.2A patent/CN114762292A/zh active Pending
- 2020-11-20 WO PCT/IB2020/060990 patent/WO2021105836A1/en active Application Filing
- 2020-11-20 JP JP2022531405A patent/JP2023505757A/ja active Pending
- 2020-11-20 GB GB2209139.1A patent/GB2604561A/en active Pending
Also Published As
Publication number | Publication date |
---|---|
DE112020005794T5 (de) | 2022-12-15 |
GB2604561A (en) | 2022-09-07 |
WO2021105836A1 (en) | 2021-06-03 |
JP2023505757A (ja) | 2023-02-13 |
US20210157947A1 (en) | 2021-05-27 |
US11693979B2 (en) | 2023-07-04 |
GB202209139D0 (en) | 2022-08-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11693979B2 (en) | Dynamic permission assignment and enforcement for transport process | |
US11223475B2 (en) | Document validation | |
AU2021273375B2 (en) | Cross-network identity provisioning | |
US11646900B2 (en) | Subscription service for networks | |
US11455598B2 (en) | Automated conflict resolution | |
US11488099B2 (en) | Supply-chain simulation | |
US11455403B2 (en) | Privacy-preserving document sharing | |
US20210117896A1 (en) | Supply-chain simulation | |
US11675854B2 (en) | Conflict-free version control | |
US20210224253A1 (en) | Conflict-free version control | |
US20210224405A1 (en) | Privacy-preserving document sharing | |
AU2021253009B2 (en) | Contextual integrity preservation | |
US11379474B2 (en) | Computation of containment relationships | |
US11792022B2 (en) | Resolution of conflicting data | |
US11403348B2 (en) | Conflict-free version control | |
US11683185B2 (en) | Entity certification management | |
US20210117919A1 (en) | Last-mile deliver coordination | |
US20210150597A1 (en) | Automated invoicing | |
US11222292B2 (en) | Data linkage across multiple participants | |
US20210248271A1 (en) | Document verification | |
US20210256442A1 (en) | Computation of containment relationships | |
US12033196B2 (en) | Accelerated invoicing using predictive freight events | |
US11645422B2 (en) | Document verification | |
US11570152B2 (en) | Data linkage across multiple participants | |
US20230096163A1 (en) | Accelerated invoicing using predictive freight events |
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 |