CN109690549B - 跨不同方来跟踪对象 - Google Patents
跨不同方来跟踪对象 Download PDFInfo
- Publication number
- CN109690549B CN109690549B CN201680089142.7A CN201680089142A CN109690549B CN 109690549 B CN109690549 B CN 109690549B CN 201680089142 A CN201680089142 A CN 201680089142A CN 109690549 B CN109690549 B CN 109690549B
- Authority
- CN
- China
- Prior art keywords
- rule set
- request
- record
- parties
- party
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 claims abstract description 34
- 230000004044 response Effects 0.000 claims abstract description 31
- 238000010200 validation analysis Methods 0.000 claims abstract description 11
- 238000012545 processing Methods 0.000 claims description 19
- 238000012790 confirmation Methods 0.000 claims description 13
- 238000004590 computer program Methods 0.000 claims description 12
- 238000012795 verification Methods 0.000 claims description 6
- 230000009471 action Effects 0.000 claims description 5
- 238000004891 communication Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 238000012546 transfer Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000012800 visualization Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000003999 initiator Substances 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
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/604—Tools and structures for managing or administering access control systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
-
- 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/64—Protecting data integrity, e.g. using checksums, certificates or signatures
- G06F21/645—Protecting data integrity, e.g. using checksums, certificates or signatures using a third party
-
- 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
-
- 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/21—Design, administration or maintenance of databases
- G06F16/219—Managing data history or versioning
-
- 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/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2474—Sequence data queries, e.g. querying versioned data
-
- 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
-
- 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/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- 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/0833—Tracking
-
- 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
-
- 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/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/3242—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 keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
-
- 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/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
-
- 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
- G06Q2220/00—Business processing using cryptography
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Business, Economics & Management (AREA)
- Automation & Control Theory (AREA)
- Economics (AREA)
- Data Mining & Analysis (AREA)
- Development Economics (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Tourism & Hospitality (AREA)
- Quality & Reliability (AREA)
- Operations Research (AREA)
- Entrepreneurship & Innovation (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Computational Linguistics (AREA)
- Fuzzy Systems (AREA)
- Power Engineering (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Tests Of Electronic Circuits (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Information Transfer Between Computers (AREA)
- Supply And Installment Of Electrical Components (AREA)
Abstract
在本文中描述的主题的实现中,提出了一种用于跨多方来控制和跟踪对象的新的方法。可以通过多方的确认来启用规则集。规则集可以定义对与对象相关的操作的约束。在接收到对与对象相关的操作的请求时,可以基于多方同意的规则集来验证所请求的操作。响应于验证所请求的操作是有效的,可以执行所请求的操作,并且可以创建针对操作的记录并且将其存储在多方可访问的区块链数据库中。
Description
背景技术
诸如个人、公司、组织或其他实体等不同方通常具有其自己的数据库,用于在多方之间记录感兴趣的对象,诸如资产、文档、商品等。每一方都保持其自己的记录,并且定期相互检查记录是否相互一致。由于不同的数据格式、模式和同步频率或甚至错误,要求所有方在所有情况下达成共识是苛刻的。组织跨组织活动的另一种方式涉及在多方中选择一方来保持所有记录,或者找到独立的第三方来存储所有记录。但是,在这些集中式解决方案中,作为中央管理方的一方很容易受到攻击。因此,跨不同方可靠地控制和跟踪对象的流动或分发是具有挑战性的。
发明内容
根据本文中描述的主题的实现,提出了一种用于跨不同方来控制和跟踪对象的新的方法。为了允许这些方中的一个或多个跨这些不同方来控制和跟踪对象的流动,针对多方实现了规则集。规则集定义对与对象相关的一个或多个操作的(多个)约束。在从一方接收到对与该对象相关的操作的请求时,可以基于该规则集来验证所请求的操作。如果所请求的操作有效,则将执行操作,并且创建针对操作的记录,该记录特定于规则集。然后将记录存储在多方可访问的区块链数据库中。区块链数据库(其也可以称为区块链账簿或区块链分布式数据库)是分布式数据库,其保持被保护以防止篡改和修改的不断增长的数据记录列表。以这种方式,可以在不同方之间有效且高效地控制和跟踪对象的分发和流动。
应当理解,本“发明内容”并非旨在标识本文中描述的主题的实现的关键或必要特征,也不旨在用于限制本文中描述的主题的范围。通过以下描述,本文中描述的主题的其他特征将变得易于理解。
附图说明
在附图和以下描述中阐述了本文中描述的主题的一个或多个实现的细节。根据说明书、附图和权利要求,本公开的其他特征、方面和优点将变得很清楚,在附图中:
图1是示出根据本文中描述的主题的实现的***的示意图;
图2是示出根据本文中描述的主题的示例实现的用于设置规则集的方法的流程图;
图3是示出根据本文中描述的主题的示例实现的用于执行与对象相关的操作的方法的流程图;
图4是示出根据本文中描述的主题的示例实现的用于验证与对象相关的操作的方法的流程图;
图5是示出根据本文中描述的主题的示例实现的用于跟踪对象的方法的流程图;
图6是示出根据本文中描述的主题的示例实现的用于询问操作的状态的方法的流程图;
图7是适合于实现本文中描述的主题的一个或多个实现的设备的框图;以及
图8是示出根据本文中描述的主题的示例实现的对象跟踪的示例可视化的示意图。
在整个附图中,相同或相似的附图标记将始终表示相同或相似的元素。
具体实施方式
现在将参考一些示例实现来描述本文中描述的主题的原理。应当理解,这些实现被描述仅用于说明以帮助本领域技术人员理解和实现本文中描述的主题,而不暗示对本公开的范围的任何限制。本文中描述的公开可以以除了下面描述的方式之外的各种方式来实现。
如本文中使用的,术语“包括(include)”及其变体应当被理解为表示“包括但不限于”的开放式术语。术语“基于”应当被理解为“至少部分基于”。除非另有说明,否则术语“一个(a)”应当被理解为“一个或多个”。术语“一个实现”和“实现”应当被理解为“至少一个实现”。术语“另一实现”应当被理解为“至少一个其他实现”。
此外,应当理解,在本文中描述的主题的上下文中,术语“第一”、“第二”、“第三”等用于指示个体元件或组件,而不暗示关于这些元件的顺序的任何限制。此外,除非另有说明,否则第一元件可以与第二元件相同或不同。下面可以包括其他明确的和隐含的定义。
传统上,如上所述,诸如组织、公司、个人等一方可能无法在将该方的对象传送到另一方之后可靠地控制和跟踪如何在其他方之间传送该对象。如本文中使用的,对象可以指代表示文档、商品、资产等的任何数字信息。换言之,在对象离开该方的边界之后,它可能失去控制。例如,慈善组织的捐赠者希望在捐赠物被捐赠给慈善组织之后控制和跟踪他的捐赠物的流动。以这种方式,捐赠者希望确保捐赠物确实按预期被使用。作为另一示例,在社交网络上共享其照片的用户还希望出于隐私目的来控制和跟踪照片的流动。然而,传统的数据库管理***通常不允许一方可靠且容易地控制和跟踪其对象的流动,因为每一方都保持和控制其自己的数据库***。
为了至少部分解决上述和其他潜在问题,根据本文中描述的主题的实现,提出了一种用于跨不同方来控制和跟踪对象的新的方法。
示例***
首先参考图1,图1示出了示出其中可以实现本文中描述的主题的示例实现的环境100的示意图。
如图所示,存在多方101至105,诸如个人、组织或任何其他实体。应当理解,尽管示出了五方101-105,但是***100可以包括任何合适数目的方。每一方可以具有诸如膝上型计算机、台式计算机、平板计算机、服务器、移动设备、可穿戴设备等设备。多方101-105可以经由网络彼此通信连接。网络的示例可以包括但不限于有线或无线网络,诸如局域网(“LAN”)、城域网(“MAN”)、广域网(“WAN”)或因特网、通信网络、近场通信连接或其任何组合。
环境100还包括区块链数据库110和管理模块120。管理模块120与多方101至105通信并且控制区块链数据库110。也就是说,管理模块120可以被视为数据库管理***(DBMS)。应当理解,尽管被示出为单独的组件,但是区块链数据库110和管理模块120可以彼此集成。具体地,在一些实现中,管理模块120可以是分布式模块。
区块链数据库110由多方101至105可访问。区块链数据库110可以是分布式数据库,其保持被保护以防止篡改和修订的数据记录列表。记录按数据块进行组织,每个块保持批量的个体记录。例如,如图所示,记录1-6存储在块1301、1302和130N中。在一些实现中,块可以逐个加密地连接。块可以包括签名,并且一个块的签名取决于前面的块的签名和记录。例如,一个块的签名可以从前面的块的签名和记录的散列值来计算。通过以下描述应当理解,对象的所有操作在该数据库管理***中是不可变的、可控制的和可跟踪的。
如上所述,可以在多方101至105之间传送、共享或以其他方式流动一个或多个对象。对象的示例包括但不限于电子文档、照片、视频、音频、资产等。每一方可以对对象执行操作,诸如传送、共享、消费、删除等。
根据本文中描述的主题的实现,一方可以定义用于描述关于与感兴趣对象相关的一个或多个操作的一个或多个约束的规则集150。为了便于讨论,在以下描述中,术语“(多个)规则”和“规则集”可以可互换地使用。
一般而言,规则集150可以与关于对象的一个或多个操作的任何方面和/或属性相关。示例规则集150将在以下段落中进一步描述。在一些实现中,例如,规则集150可以由对象的所有者发起。当然,任何其他相关方也可以提出规则集150。为了便于讨论,在以下讨论中,假定一方101发起规则集150。
规则集150可以以任何合适的格式实现。例如,在一些实现中,规则集150可以包括由任何合适的编程语言和/或脚本语言编写的可执行代码。替代地或另外地,规则集150可以以诸如扩展标记语言(XML)文本或明文等格式化文本来描述。规则集150可以由管理模块120存储在区块链数据库110中或者存储在任何其他合适的存储装置中。
在从一方101接收到(160)对设置规则集150的请求之后,管理模块120向多方102至105广播规则集150。如果一方接受规则集150,则该方可以向管理模块120发送回确认消息。在一些实现中,如果***中的预定数目的多方确认规则集150,则规则集150被启用。在一些实现中,管理模块120可以直接地或在询问时向一方101发送(165)关于所提议的规则集150是否已经被其他方接受并且因此被启用的通知。下面将参考图2描述该方面的示例过程。
然后,一方可以发送用于发起对象的操作的请求。例如,在图1所示的示例中,管理模块120从一方102接收(170)对于向一方104传送对象的请求。管理模块120基于已经预先存储的规则集150来验证(172)所请求的操作。
如果确定所请求的操作有效,则管理模块120引起操作被执行。在这种情况下,管理模块120创建针对操作的记录并且将记录存储(174)到区块链110中。该记录除了其他以外可以包括特定于规则集150的事件标识(ID)。也就是说,由多方101至105在规则集150下对对象执行的所有操作或动作属于相同事件,并且属于该事件的所有操作或动作可以与相同事件ID一起被记录在区块链中。
分布式区块链数据库110包括多个存储装置。存储在一个存储设备中的记录将与其他存储装置同步。例如,存储装置将检查存储在其中的记录是否与存储在预定数目的相邻存储装置中的记录相同。如果记录不相同,则该存储装置将根据存储在相邻存储装置中的记录来修改存储在其中的记录。以这种方式,对象的流动是可跟踪的和不可变的,这将在下面讨论。
在一些实现中,管理模块120的实例可以在分布式区块链数据库110上实现,使得多方可以与管理模块120的任何实例或所有实例交互。替代地,管理模块120的实例可以在多方上实现,使得个体方可以与管理模块120的相应实例交互。因此,存储在区块链数据库110的多个存储装置中的记录将被同步,使得可以控制和跟踪对象的流动。
在一些实现中,不同方可以对与其对象相关的一个或多个操作设置相同的(多个)约束。在这种情况下,例如,在生成相应的事件ID以区分不同方时,可以考虑全局控制和随机生成的数字。
另一方面,如果所请求的操作无效,则管理模块120可以拒绝请求。例如,管理模块120可以直接地或在询问时向节点102发送(175)通知以通知操作是否已经被执行。将参考图3描述示例实现,并且将在以下段落中讨论数字内容分发的示例实现。
当诸如一方101等一方想要跨不同方来跟踪对象的流动时,它可以发送跟踪请求。一旦接收到(180)该请求,管理模块120从区块链数据库110中检索(182)针对与对象相关的操作的一个或多个记录。在一些实现中,跟踪请求可以包括事件ID,并且针对与对象相关的操作的记录可以基于事件ID来检索。然后,管理模块120将检索到的记录返回(185)给一方101。这样,可以向一方101通知事件中的对象的流动或分发。如果通过检查记录发现任何违规,则一方101可以相应地做出反应。将参考图5描述示例实现。
示例过程
现在将详细讨论上述过程的一些示例实现。图2是示出根据本文中描述的主题的示例实现的用于设置规则集150的方法200的流程图。在210处,管理模块120从一方101接收对设置规则集150的请求。例如,规则集150可以预先存储在区块链110中。
如上所述,规则集150可以与关于对象的操作的任何方面和/或属性相关。例如,规则集150可以指定一方可以传送对象的最大次数或对象可以被传送到或共享的目标。作为另一示例,规则集150可以指定允许一方消费对象的条件。替代地或另外地,规则集150可以指定对不同方的相应许可级别以控制对象的跟踪。例如,规则集150可以防止一方102跟踪一方101的对象。在又一实现中,规则集150可以指定用于设置与对象的一个或多个操作相关的时间限制的定时器。
例如,假定一方101将对象传送给一方102,并且规则集150指定用于设置与对象相关的时间限制的定时器。例如,在将对象传送或提供给一方的情况下,定时器可以指定允许接收方使用或消费该对象的时间段。如果接收方在该时间段内没有消费该对象,则可以撤回或移除该对象。在这种情况下,首先将对象传送到一方102,并且创建和存储传送的记录。如果管理模块120检测到一方102在由规则集150设置的预定时间内没有将对象传送到一方104,则管理模块120将触发用于将对象返回到一方101的操作。
在220处,管理模块120向多方广播规则集150,使得其他方102至105每个可以确定是否接受由一方101提出的规则集150。
在230处,如果从多方102至105中的至少一方接收到关于规则集150的确认,则管理模块120可以启用规则集150。此外,可以为每个接收到的确认创建和存储记录。例如,假定多方102、103和105将其确认发送到管理模块120。确认可以分别包括多方102、103和105的签名。对于每个确认,管理模块120创建包括例如以下中的至少一个的记录:特定于规则集150的事件ID、对确认的描述、以及指示发送确认的时间点的时间戳。
在一些实现中,确认记录还可以包括对规则集150的引用。该引用可以实现为指针或统一资源指示符(URI)。替代地或另外地,确认可以包括相应方的签名和用于解密签名的公钥。例如,可以通过使用私钥加密事件ID、公钥和/或对规则集150的引用来计算签名。
如上所述,诸如一方101等原始方可以发起关于其对象的规则集150,并且因此可以在对象已经被传送到另一方之后控制如何在其他方之间传送对象。例如,在社交网络上共享他/她的照片的用户可以发起指定该对象只能被传送到某些指定网络的规则集150。否则,将拒绝共享操作。以这种方式,可以控制照片的分发。
图3是示出根据本文中描述的主题的示例实现的用于对对象执行操作的方法300的流程图。在310处,管理模块120从诸如一方102等一方接收对与对象相关的操作的请求。例如,所请求的操作是将对象的至少一部分传送或共享给诸如一方104等另一方。
该请求可以包括所请求的操作和对象的描述或ID。另外,在一些实现中,该请求还可以包括以下中的至少一个:由多方101至105同意的特定于规则集150的事件ID、对规则集150的引用、该方的签名、用于解密发起方(在该示例中为一方102)的签名的公钥、以及指示发送请求的时间点的时间戳。在一些实现中,可以将针对操作的ID计算为事件ID的散列值、对操作的描述、公钥和对规则集150的引用。
在320处,管理模块120基于由多方同意的规则集150来验证所请求的操作。这方面的示例实现在图4中示出。管理模块120将首先检查区块链数据库110以确定是否存在针对确认的记录,该记录包括方102的签名。然后,在410处,管理模块120可以从请求中提取对规则集150的引用。在420处,管理模块120基于引用来寻址和检索规则集150。在430处,管理模块120通过检查所请求的操作的描述是否符合规则集150来验证所请求的操作。例如,在规则集150包含可执行代码的情况下,管理模块120可以引起代码被执行以检查是否存在任何违规。
可选地,在一些实现中,在440处,管理模块120可以向多方广播与操作相关的通知。例如,管理模块120可以向同意规则集150的所有方101至105广播通知以通知正在验证或执行操作。替代地,管理模块120可以仅将通知发送到在规则集150中指定的某一方或多方。
仍然参考图3,如果在320处确定所请求的操作有效,则管理模块120在330处引起操作被执行,并且在340处创建针对操作的记录。该记录至少包括特定于所使用的规则集150的事件ID。此外,在一些实现中,操作记录还可以包括以下中的一个或多个:对规则集150的引用、针对操作的ID、对操作的描述、相关方的签名、用于解密签名的公钥、以及指示发送请求的时间点的时间戳。在一些实现中,例如,可以从操作请求来获取要被包括在记录中的一些或所有信息。
然后,在350处,将所创建的记录存储在区块链数据库110中。以这种方式,将用唯一的事件ID来记录对象的所有操作。稍后,一方可以通过在区块链110中搜索具有相应事件ID的记录来跟踪该对象的流动,如下面将讨论的。
另一方面,如果在320处确定违反了规则集150,则管理模块120可以在360处拒绝该请求。在这种情况下,将不创建针对操作的记录。替代地,在其他实现中,管理模块120仍然可以创建和存储针对操作的记录,并且为该记录分配操作已经被拒绝的指示符。
因为从原始方(诸如一方101)接收对象的一方(诸如一方102)只能执行基于规则集150而验证的操作,所以原始方可以在对象已经被传送到另一方之后控制对象如何在其他方之间被传送。例如,在社交网络中,共享照片随后可以仅与由照片的原始所有者指定的其他用户共享。作为另一示例,慈善组织的捐赠者可以指定她的捐赠物仅可以用于某种目的。
图5是示出根据本文中描述的主题的示例实现的用于跟踪对象的方法500的流程图。在510处,管理模块120从多方101至105中的任何一方接收对跟踪对象的请求。作为响应,在520处,管理模块120从区块链数据库110中检索针对与对象相关的操作的一个或多个记录。在530处,管理模块120将检索到的记录提供给询问方。如上所述,基于规则集150而验证的对象的操作可以共享相同的事件ID。也就是说,可以通过事件ID检索针对属于相同事件的操作的记录。基于这些记录,询问方可以知道例如对象首先从一方101传送到一方102,并且然后从一方102传送到一方104,等等。在一些实现中,可以对检索到的操作进行可视化以清楚地呈现对象的流动或分发。因此,一方可以可靠且容易地跟踪其对象的流动。将参考图8描述可视化的示例。
图6是示出根据本文中描述的主题的示例实现的用于询问操作的状态的方法600的流程图。在610处,管理模块120接收对操作的状态的询问。如本文中使用的,术语“状态”指示操作是否已经被成功执行。
在620处,响应于询问,管理模块120可以确定已经被附加到区块链数据库110中的针对目标操作的记录的后续记录的数目。
在630处,管理模块120基于后续记录的数目来确定操作的状态。从区块链数据库110的机制可知,如果后续附加记录的数目超过预定数目,则表示针对该操作的记录已经被***中涉及的足够大量的多方接受。在这种情况下,可以认为操作是成功的。否则,相对少量的附加记录可能指示操作记录未被其他方识别,例如,由于通信延迟和/或其他因素。结果,后续记录的数目可以用于确定操作状态。在一些实现中,管理模块120可以自己确定操作状态。替代地,管理模块120可以将附加到记录的后续记录的块返回到询问方102,使得一方102可以基于后续记录的数目来确定操作的状态。
结果,询问方可以获取操作的当前状态,并且基于该状态来确定是否采取进一步操作。例如,如果一方102发现其请求的操作被拒绝,则一方102可以再次发送对该操作的另一请求。
图7是适合于实现本文中描述的主题的一个或多个实现的设备700的框图。例如,设备700可以用作如上面参考图2讨论的管理模块120。应当理解,设备700并不旨在对本文中描述的主题的使用范围或功能提出任何限制,因为各种实现可以在不同的通用或专用计算环境中实现。
如图所示,设备700包括至少一个处理单元(或处理器)710和存储器720。处理单元710执行计算机可执行指令,并且可以是真实或虚拟处理器。在多处理***中,多个处理单元执行计算机可执行指令以增加处理能力。存储器720可以是易失性存储器(例如,寄存器、高速缓存、RAM)、非易失性存储器(例如,ROM、EEPROM、闪存)或其某种组合。
在图7所示的示例中,设备700还包括存储装置730、一个或多个输入设备740、一个或多个输出设备750和一个或多个通信连接760。诸如总线、控制器或网络等互连机制(未示出)互连设备700的组件。通常,操作***软件(未示出)为在设备700中执行的其他软件提供操作环境,并且协调设备700的组件的活动。
存储装置730可以是可移除的或不可移除的,并且可以包括计算机可读存储介质,诸如闪存驱动器、磁盘或可以用于存储信息并且可以在设备700内访问的任何其他介质。(多个)输入设备740可以是各种不同输入设备中的一个或多个。例如,(多个)输入设备740可以包括用户设备,诸如鼠标、键盘、轨迹球等。(多个)输入设备740可以实现一种或多种自然用户界面技术,诸如语音识别或触摸和手写笔识别。作为其他示例,(多个)输入设备740可以包括扫描设备;网络适配器;或向设备700提供输入的另一设备。(多个)输出设备750可以是显示器、打印机、扬声器、网络适配器或提供来自设备700的输出的另一设备。(多个)输入设备740和(多个)输出设备750可以并入诸如触摸屏或虚拟现实***等单个***或设备中。
(多个)通信连接760使得能够通过通信介质与另一计算实体进行通信。另外,设备700的组件的功能可以在单个计算机器中实现,或者在能够通过通信连接进行通信的多个计算机器中实现。因此,设备700可以使用到一个或多个其他服务器、网络PC或另一公共网络节点的逻辑连接来在联网环境(例如,环境100)中操作。作为示例而非限制,通信介质包括有线或无线联网技术。
根据本文中描述的主题的实现,管理模块120可以在设备700上执行以控制和跟踪与关于对象的事件相关的操作。在由处理单元760执行时,管理模块120的至少一部分将被加载到存储器720中。管理模块120的其他部分(如果有的话)可以存储在存储装置730或任何其他非易失性存储介质中。在操作中,管理模块120可以执行如上所述的一个或多方法/过程。
示例场景
现在将在数字版权管理(CRM)的上下文中描述本文中描述的主题的示例实现。例如,一方(例如,发布者)希望容易且可靠地控制和跟踪其数字内容的流动并且确保数字内容由预期的一方(例如,观看者)在指定的时间限制内或以指定的次数来使用。数字内容的示例包括但不限于视频、音频、图像、评论或任何其他合适的数字内容。
为此,发布者可以为数字内容规定规则集150并且经由管理模块120将规则集150存储在区块链110中。例如,规则集150可以指定从发布者接收到数字内容的任何观看者可以仅在15天内消费数字内容。数字内容仅可以由观看者在该时段内访问或消费。规则集150还可以指定观看者可以将数字内容共享给其他观看者不超过10次。
在一个实现中,设置和验证规则集150可以实现为可执行代码。示例代码段如下所示:
发布者向管理模块120发送对设置代码的请求。管理模块120广播代码以用于其他方的确认。然后,发布者可以发送将数字内容传送给第一观看者的请求。管理模块120将检查区块链数据库110以确定第一观看者是否接受规则集150。如果是,则管理模块120从请求中提取对代码的引用,访问代码并且引起代码被执行以检查是否存在任何违规。
在确定所请求的操作有效时,管理模块120允许将数字内容分发给第一观看者。创建针对该分发操作的记录并且将其存储到区块链110中。该记录特定于规则集150。如上所述,由发布者和第一观看者在规则集150下对数字内容执行的所有操作或动作属于相同事件。结果,其在区块链120中的记录将具有相同的事件ID。
假定第一观看者想要与第二观看者共享数字内容。在接收到这样的请求时,管理模块120基于规则集150来验证所请求的操作。更具体地,在该示例中,通过执行代码,管理模块120可以检查第一观看者已经将数字内容共享给其他观看者的次数。如果该数目等于十(10),则管理模块120将拒绝对共享数字内容的请求。
另外,如由规则集150规定的,任何观看者只能在15天内消费数字内容。因此,一旦数字内容被分发给第一观看者,管理模块120就可以设置定时器以监测第一观看者拥有数字内容的时间长度。一旦过去15天,管理模块120就触发用于从第一观看者移除数字内容的操作。
此外,发布者和/或观看者可以检查他们发起的操作的状态。例如,如果发布者想要跨不同方跟踪数字内容的流动,则它可以发送包括事件ID的跟踪请求。作为响应,管理模块120从区块链数据库110中检索包括该事件ID的一个或多个记录,并且将检索到的记录返回给发布者。在一些实现中,可以对这些记录进行可视化以呈现数字内容的流动。例如,图8示出了示出数字内容的流动的用户界面(UI)800的示意图。
在UI 800的所示状态下,发布者810可以清楚地看到数字内容的分发路径,其中数字内容首先被传送到第一观看者802。一方802又将数字内容共享给观看者803和804,并且观看者804进一步将内容共享给另一观看者805。应当理解,UI 800仅是示例,而不暗示对本文中描述的主题的范围的任何限制。可以使用任何其他合适形式的UI来向终端用户呈现数字内容的流动。
以这种方式,如果发布者发现数字内容被非法地分发给某一方(例如,竞争者),则发布者可以采取行动来保护其版权。因此,发布者可以有效且高效地控制和跟踪其数字内容的流动。
为了说明本文中描述的主题的精神和原理,上面已经描述了其一些具体实现。通过设置用于定义对与对象相关的一个或多个操作的一个或多个约束的规则集,并且基于事件ID来跟踪对象,可以允许一方以简单、可靠和可信赖的方式跨其他方来控制和跟踪其最初拥有的对象的流动或分发。
通常,各种示例实现可以用硬件或专用电路、软件、逻辑或其任何组合来实现。一些方面可以用硬件实现,而其他方面可以用可以由控制器、微处理器或其他计算设备执行的固件或软件实现。虽然本文中描述的主题的示例实现的各个方面被示出和描述为框图、流程图或使用某种其他图形表示,但是应当理解,作为非限制性示例,本文中描述的框、装置、***、技术或方法可以用硬件、软件、固件、专用电路或逻辑、通用硬件或控制器或其他计算设备或其某种组合来实现。
在本文中描述的主题的上下文中,机器可读介质可以是可以包含或存储供指令执行***、装置或设备使用或与其相结合使用的程序的任何有形介质。机器可读介质可以是机器可读信号介质或机器可读存储介质。机器可读介质可以包括但不限于电子、磁、光、电磁、红外或半导体***、装置或设备、或前述的任何合适组合。机器可读存储介质的更具体示例将包括具有一个或多个电线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪存)、光纤、便携式光盘只读存储器(CD-ROM)、光学存储设备、磁存储设备或前述的任何合适组合。
用于执行本文中描述的主题的方法的计算机程序代码可以以一种或多种编程语言的任何组合来编写。这些计算机程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,使得程序代码在由计算机或其他可编程数据处理装置的处理器执行时引起在流程图和/或框图中指定的功能或操作被实现。程序代码可以完全在计算机上执行,部分在计算机上执行,作为独立的软件包来执行,部分在计算机上并且部分在远程计算机上执行,或者完全在远程计算机或服务器上执行。
此外,尽管以特定顺序描绘了操作,但是这不应当被理解为要求以所示的特定顺序或按顺序执行这些操作,或者执行所有示出的操作,以实现期望的结果。在某些情况下,多任务处理和并行处理可能是有利的。同样,虽然上述讨论中包含若干具体实现细节,但是这些不应当被解释为对任何公开或可能要求保护的内容的范围的限制,而是作为对可以特定于特定公开的特定实现的特征的描述。在本说明书中在分开的实现的上下文中描述的某些特征也可以在单个实现中组合实现。相反,在单个实现的上下文中描述的各种特征也可以在多个实现中单独地或以任何合适的子组合来实现。
现在仅出于说明的目的,下面将列出一些示例实现。
在一些实现中,本文中描述的主题可以实施为一种方法。该方法包括从多方中的第一方接收对与对象相关的操作的请求;基于多方同意的规则集来验证所请求的操作,该规则集定义对与该对象相关的一个或多个操作的一个或多个约束;以及响应于验证所请求的操作有效,引起操作被执行;创建针对操作的记录,该记录特定于该规则集;以及将记录存储在多方可访问的区块链数据库中。
在一些实现中,该方法还包括通过以下为多方设置规则集:从多方中的第二方接收对设置规则集的请求;向多方广播规则集;以及响应于从多方中的至少一方接收到关于规则集的确认,启用规则集。
在一些实现中,启用规则集包括:响应于从多方中的第三方接收到关于规则集的确认,创建针对确认的记录,该记录包括第三方的签名;以及将针对确认的记录存储在区块链数据库中。
在一些实现中,该方法还包括:从多方中的第四方接收对跟踪对象的请求;响应于接收到对跟踪对象的请求,从区块链数据库中检索针对与该对象相关的操作的一个或多个记录;以及将检索到的记录提供给第四方。
在一些实现中,验证所请求的操作还包括:响应于接收到对操作的请求,向多方广播与操作相关的通知。
在一些实现中,验证所请求的操作包括:从请求中提取对规则集的引用;以及基于引用来寻址规则集以进行验证。
在一些实现中,规则集包括可执行代码,并且其中验证所请求的操作包括:通过引起代码被执行来验证所请求的操作。
在一些实现中,第一记录还包括以下中的至少一个:特定于规则集的事件标识(ID)、对规则集的引用、针对操作的ID、对操作的描述、第一方的签名、用于解密第一方的签名的公钥、以及指示发送第一请求的时间点的时间戳。
在一些实现中,该方法还包括:接收对操作的状态的询问,该状态指示操作是否成功执行;响应于询问,确定附加到区块链数据库中的针对操作的记录的后续记录的数目;以及基于后续记录的数目来确定操作的状态。
在一些实现中,本文中描述的主题可以实施为一种设备。该设备包括处理单元和存储器。存储器耦合到处理单元并且存储用于由处理单元执行的指令。这些指令在由处理单元执行时引起该设备从多方中的第一方接收对与对象相关的操作的请求;基于多方同意的规则集来验证所请求的操作,该规则集定义对与该对象相关的一个或多个操作的一个或多个约束;以及响应于验证所请求的操作有效,引起操作被执行,创建针对操作的记录,该记录特定于规则集,以及将记录存储在多方可访问的区块链数据库中。
在一些实现中,这些指令在由处理单元执行时还引起该设备通过以下为多方设置规则集:从多方中的第二方接收对设置规则集的请求;向多方广播规则集;以及响应于从多方中的至少一些方接收到关于规则集的确认,启用规则集。
在一些实现中,启用规则集包括:响应于从多方中的第三方接收到关于规则集的确认,创建针对确认的记录,该记录包括第三方的签名;以及将针对确认的记录存储在区块链数据库中。
在一些实现中,这些指令在由处理单元执行时还引起该设备:从多方中的第四方接收对跟踪对象的请求;响应于接收到对跟踪对象的请求,从区块链数据库中检索针对与该对象相关的操作的一个或多个记录;以及将检索到的记录提供给第四方。
在一些实现中,验证所请求的操作还包括:响应于接收到对操作的请求,向多方广播与操作相关的通知。
在一些实现中,验证所请求的操作包括:从请求中提取对规则集的引用;以及基于引用来寻址规则集以进行验证。
在一些实现中,规则集包括可执行代码,并且验证所请求的操作包括:通过引起代码被执行来验证所请求的操作。
在一些实现中,记录还包括以下中的至少一个:特定于规则集的事件ID、对规则集的引用、针对操作的ID、对操作的描述、第一方的签名、用于解密第一方的签名的公钥、以及指示发送请求的时间点的时间戳。
在一些实现中,这些指令在由处理单元执行时还引起该设备:接收对操作的状态的询问,该状态指示操作是否成功执行;响应于询问,确定附加到区块链数据库中的针对操作的记录的后续记录的数目;以及基于后续记录的数目来确定操作的状态。
在一些实现中,本文中描述的主题可以实施为一种计算机程序产品。该计算机程序产品有形地存储在非暂态机器可读介质上并且包括机器可执行指令。这些指令当在设备上执行时引起该设备:从多方中的第一方接收对与对象相关的操作的请求;基于多方同意的规则集来验证所请求的操作,该规则集定义对与该对象相关的一个或多个操作的一个或多个约束;以及响应于验证所请求的操作有效,引起操作被执行,创建针对操作的记录,该记录特定于规则集,以及将记录存储在多方可访问的区块链数据库中。
在一些实现中,这些指令当在设备上执行时还引起该设备通过以下为多方设置规则集:从多方中的第二方接收对设置规则集的请求;向多方广播规则集;并且响应于从多方中的至少一些方接收到关于规则集的确认,启用规则集。
在一些实现中,启用规则集包括:响应于从多方中的第三方接收到关于规则集的确认,创建针对确认的记录,该记录包括第三方的签名;以及将针对确认的记录存储在区块链数据库中。
在一些实现中,这些指令当在设备上执行时还引起该设备:从多方中的第四方接收对跟踪对象的请求;响应于接收到对跟踪对象的请求,从区块链数据库中检索针对与该对象相关的操作的一个或多个记录;以及将检索到的记录提供给第四方。
在一些实现中,验证所请求的操作还包括:响应于接收到对操作的请求,向多方广播与操作相关的通知。
在一些实现中,验证所请求的操作包括:从请求中提取对规则集的引用;以及基于引用来寻址规则集以进行验证。
在一些实现中,规则集包括可执行代码,并且验证所请求的操作包括:通过引起代码被执行来验证所请求的操作。
在一些实现中,记录还包括以下中的至少一个:特定于规则集的事件ID、对规则集的引用、针对操作的ID、对操作的描述、第一方的签名、用于解密第一方的签名的公钥、以及指示发送请求的时间点的时间戳。
在一些实现中,这些指令当在设备上执行时还引起该设备:接收对操作的状态的询问,该状态指示操作是否成功执行;响应于询问,确定附加到区块链数据库中的针对操作的记录的后续记录的数目;以及基于后续记录的数目来确定操作的状态。
当结合附图阅读时,鉴于前面的描述,对本公开的前述示例实现的各种修改、调节对于相关领域的技术人员而言将变得很清楚。任何和所有修改仍将落入本公开的非限制性和示例性实现的范围内。此外,具有前述描述和附图中呈现的教导的益处的本公开的这些实现所属领域的技术人员将能想到本文中阐述的公开的其他实现。
因此,应当理解,本公开的实现不限于所公开的具体实现,并且修改和其他实现旨在被包括在所附权利要求的范围内。尽管本文中使用特定术语,但是它们仅在一般性和描述性意义上使用,而不是用于限制的目的。
Claims (20)
1.一种跨不同方来跟踪对象的方法,包括:
从多方中的第一方接收对与对象相关的操作的请求;
基于所述多方同意的规则集来验证请求的所述操作,所述验证包括向所述多方广播与所述操作相关的通知,所述规则集定义对与所述对象相关的一个或多个操作的一个或多个约束,所述规则集通过以下来设置:
从所述多方中的至少一方接收对设置所述规则集的请求;
向所述多方广播所述规则集;以及
响应于从所述多方中的一方或多方接收到对所述规则集的确认,通过创建针对所述确认的记录并且将所述记录存储在区块链数据库中,来启用所述规则集;以及
响应于验证请求的所述操作有效:
引起所述操作被执行;
创建针对所述操作的记录,所述记录特定于所述规则集;以及
将所述记录存储在所述区块链数据库中,其中所存储的记录使所述对象能够被跟踪。
2.根据权利要求1所述的方法,还包括:
从所述多方中的第四方接收对跟踪所述对象的请求;
响应于接收到所述对跟踪所述对象的请求,从所述区块链数据库中检索针对与所述对象相关的操作的一个或多个记录;以及
将检索到的所述记录提供给所述第四方。
3.根据权利要求1所述的方法,其中验证请求的所述操作包括:
从所述请求中提取对所述规则集的引用;以及
基于所述引用来寻址所述规则集以进行所述验证。
4.根据权利要求1所述的方法,其中所述规则集包括可执行代码,并且其中验证请求的所述操作还包括:
通过引起所述代码被执行来验证请求的所述操作。
5.根据权利要求1所述的方法,其中所述记录还包括以下中的至少一个:
特定于所述规则集的事件标识ID,
对所述规则集的引用,
针对所述操作的ID,
对所述操作的描述,
所述第一方的签名,
用于解密所述第一方的所述签名的公钥,以及
指示所述请求被发送的时间点的时间戳。
6.根据权利要求1所述的方法,还包括:
接收对所述操作的状态的询问,所述状态指示所述操作是否被成功执行;
响应于所述询问,确定附加到所述区块链数据库中的针对所述操作的所述记录的后续记录的数目;以及
基于所述后续记录的数目来确定所述操作的所述状态。
7.一种跨不同方来跟踪对象的设备,包括:
处理单元;以及
存储器,耦合到所述处理单元并且存储用于由所述处理单元执行的指令,所述指令在由所述处理单元执行时引起所述设备执行包括以下的动作:
从多方中的第一方接收对与对象相关的操作的请求;
基于所述多方同意的规则集来验证请求的所述操作,所述验证包括向所述多方广播与所述操作相关的通知,所述规则集定义对与所述对象相关的一个或多个操作的一个或多个约束,所述规则集通过以下来设置:
从所述多方中的至少一方接收对设置所述规则集的请求;
向所述多方广播所述规则集;以及
响应于从所述多方中的一方或多方接收到对所述规则集的确认,通过创建针对所述确认的记录并且将所述记录存储在区块链数据库中,来启用所述规则集;以及
响应于验证请求的所述操作有效:
引起所述操作被执行;
创建针对所述操作的记录,所述记录特定于所述规则集;以及
将所述记录存储在所述区块链数据库中,其中所存储的记录使所述对象能够被跟踪。
8.根据权利要求7所述的设备,所述动作还包括:
从所述多方中的第四方接收对跟踪所述对象的请求;
响应于接收到对跟踪所述对象的所述请求,从所述区块链数据库中检索针对与所述对象相关的操作的一个或多个记录;以及
将检索到的所述记录提供给所述第四方。
9.根据权利要求7所述的设备,其中验证请求的所述操作包括:
从所述请求中提取对所述规则集的引用;以及
基于所述引用来寻址所述规则集以进行所述验证。
10.根据权利要求7所述的设备,其中所述规则集包括可执行代码,并且其中验证请求的所述操作包括:
通过引起所述代码被执行来验证请求的所述操作。
11.根据权利要求7所述的设备,其中所述记录还包括以下中的至少一个:
特定于所述规则集的事件ID,
对所述规则集的引用,
针对所述操作的ID,
对所述操作的描述,
所述第一方的签名,
用于解密所述第一方的所述签名的公钥,以及
指示所述请求被发送的时间点的时间戳。
12.根据权利要求7所述的设备,所述动作还包括:
接收对所述操作的状态的询问,所述状态指示所述操作是否被成功执行;
响应于所述询问,确定附加到所述区块链数据库中的针对所述操作的所述记录的后续记录的数目;以及
基于所述后续记录的数目来确定所述操作的所述状态。
13.一种计算机程序产品,有形地存储在非暂态机器可读介质上并且包括机器可执行指令,所述指令当在设备上被执行时引起所述设备:
从多方中的第一方接收对与对象相关的操作的请求;
基于所述多方同意的规则集来验证请求的所述操作,所述验证包括向所述多方广播与所述操作相关的通知,所述规则集定义对与所述对象相关的一个或多个操作的一个或多个约束,所述规则集通过以下来设置:
从所述多方中的至少一方接收对设置所述规则集的请求;
向所述多方广播所述规则集;以及
响应于从所述多方中的一方或多方接收到对所述规则集的确认,通过创建针对所述确认的记录并且将所述记录存储在区块链数据库中,来启用所述规则集;以及
响应于验证请求的所述操作有效:
引起所述操作被执行;
创建针对所述操作的记录,所述记录特定于所述规则集;以及
将所述记录存储在所述区块链数据库中,其中所存储的记录使所述对象能够被跟踪。
14.根据权利要求13所述的计算机程序产品,其中所述指令当在所述设备上被执行时还引起所述设备通过以下为所述多方设置所述规则集:
从所述多方中的一方接收对跟踪所述对象的请求;
响应于接收到对跟踪所述对象的所述请求,从所述区块链数据库中检索针对与所述对象相关的操作的一个或多个记录;以及
将检索到的所述记录提供给所述方。
15.根据权利要求14所述的计算机程序产品,其中对跟踪所述对象的所述请求包括事件ID,所述事件ID被用于从所述区块链数据库中提取所述对象。
16.根据权利要求13所述的计算机程序产品,其中验证请求的所述操作包括:
从所述请求中提取对所述规则集的引用;以及
基于所述引用来寻址所述规则集以进行所述验证。
17.根据权利要求16所述的计算机程序产品,其中所述引用被实现为指针或统一资源指示符URI。
18.根据权利要求13所述的计算机程序产品,其中所述规则集包括可执行代码,并且其中验证请求的所述操作还包括:
通过引起所述代码被执行来验证请求的所述操作。
19.根据权利要求13所述的计算机程序产品,其中所述记录还包括以下中的至少一个:
特定于所述规则集的事件标识ID,
对所述规则集的引用,
针对所述操作的ID,
对所述操作的描述,
所述第一方的签名,
用于解密所述第一方的所述签名的公钥,以及
指示所述请求被发送的时间点的时间戳。
20.根据权利要求13所述的计算机程序产品,其中所述指令当在所述设备上被执行时还引起所述设备:
接收对所述操作的状态的询问,所述状态指示所述操作是否被成功执行;
响应于所述询问,确定附加到所述区块链数据库中的针对所述操作的所述记录的后续记录的数目;以及
基于所述后续记录的数目来确定所述操作的所述状态。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310922183.1A CN116910785A (zh) | 2016-09-09 | 2016-09-09 | 跨不同方来跟踪对象 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2016/098610 WO2018045574A1 (en) | 2016-09-09 | 2016-09-09 | Tracing objects across different parties |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310922183.1A Division CN116910785A (zh) | 2016-09-09 | 2016-09-09 | 跨不同方来跟踪对象 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109690549A CN109690549A (zh) | 2019-04-26 |
CN109690549B true CN109690549B (zh) | 2023-08-01 |
Family
ID=61561624
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310922183.1A Pending CN116910785A (zh) | 2016-09-09 | 2016-09-09 | 跨不同方来跟踪对象 |
CN201680089142.7A Active CN109690549B (zh) | 2016-09-09 | 2016-09-09 | 跨不同方来跟踪对象 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310922183.1A Pending CN116910785A (zh) | 2016-09-09 | 2016-09-09 | 跨不同方来跟踪对象 |
Country Status (17)
Country | Link |
---|---|
US (2) | US11210426B2 (zh) |
EP (1) | EP3479219A4 (zh) |
JP (1) | JP6839267B2 (zh) |
KR (1) | KR102556741B1 (zh) |
CN (2) | CN116910785A (zh) |
AU (1) | AU2016422515A1 (zh) |
BR (1) | BR112019002548A2 (zh) |
CA (1) | CA3033144A1 (zh) |
CL (1) | CL2019000517A1 (zh) |
CO (1) | CO2019001989A2 (zh) |
MX (1) | MX2019002573A (zh) |
MY (1) | MY196099A (zh) |
PH (1) | PH12019550020A1 (zh) |
RU (1) | RU2730899C1 (zh) |
SG (1) | SG11201901403VA (zh) |
WO (1) | WO2018045574A1 (zh) |
ZA (1) | ZA201901666B (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11582654B2 (en) | 2016-11-04 | 2023-02-14 | Telefonaktiebolaget Lm Ericsson (Publ) | Systems and methods of handing over a wireless device |
EP3379447B1 (de) * | 2017-03-22 | 2022-04-27 | Siemens Aktiengesellschaft | Verfahren und vorrichtung zum manipulationssicheren speichern von informationen bezüglich objektbezogener massnahmen |
EP3631724A1 (en) | 2017-05-22 | 2020-04-08 | Nchain Holdings Limited | Secure provision of undetermined data from an undetermined source into the locking script of a blockchain transaction |
GB201811263D0 (en) * | 2018-07-10 | 2018-08-29 | Netmaster Solutions Ltd | A method and system for managing digital using a blockchain |
WO2020032937A1 (en) | 2018-08-07 | 2020-02-13 | Cisco Technology, Inc. | System and method for accessing a data repository |
CN109684875A (zh) * | 2018-11-30 | 2019-04-26 | 深圳灵图慧视科技有限公司 | 布料检测记录方法、装置、设备及存储介质 |
KR20200085095A (ko) | 2019-01-04 | 2020-07-14 | 삼성전자주식회사 | 블록체인 기반으로 데이터를 관리하는 전자 장치 및 데이터 관리 방법 |
US11010394B2 (en) * | 2019-02-15 | 2021-05-18 | Drfirst.Com, Inc. | Efficient access of chainable records |
US20210029163A1 (en) | 2019-07-24 | 2021-01-28 | International Business Machines Corporation | Security layer for configuring blockchain |
US11488094B2 (en) * | 2019-08-08 | 2022-11-01 | Toyota Motor North America, Inc. | Tracking of transport transfers |
US11720120B2 (en) | 2019-08-08 | 2023-08-08 | Toyota Motor North America, Inc. | Tracking of transport transfers |
US11494469B2 (en) * | 2020-04-29 | 2022-11-08 | International Business Machines Corporation | Ownership assignment for a communication system component |
CN112104892B (zh) * | 2020-09-11 | 2021-12-10 | 腾讯科技(深圳)有限公司 | 一种多媒体信息处理方法、装置、电子设备及存储介质 |
GB202018919D0 (en) * | 2020-12-01 | 2021-01-13 | Smarter Contracts Ltd | Consent Management |
US20220270079A1 (en) * | 2021-02-23 | 2022-08-25 | International Business Machines Corporation | Cognation of a digital corollary in a blockchain network |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1722086A (zh) * | 2004-06-21 | 2006-01-18 | 微软公司 | 用于数据库跟踪的计划性检索和重放的api |
CN102236763A (zh) * | 2010-05-05 | 2011-11-09 | 微软公司 | 基于数据驱动角色的安全 |
Family Cites Families (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2130643C1 (ru) | 1998-10-21 | 1999-05-20 | Открытое акционерное общество "Всероссийский научно-исследовательский институт автоматизации управления в непромышленной сфере" | Способ обеспечения доступа к данным в системе управления базами данных "линтер-вс" |
AU766313B2 (en) | 1999-03-18 | 2003-10-16 | Bolero International Limited | Transaction support system |
US7003470B1 (en) | 1999-10-29 | 2006-02-21 | University Healthsystem Consortium | Funds flow system for academic health centers |
CN100550009C (zh) * | 2002-08-01 | 2009-10-14 | 甲骨文国际公司 | 异步信息共享*** |
DE10333888B3 (de) | 2003-07-22 | 2005-04-07 | Siemens Ag | Verfahren zum Steuern eines Datenaustauschs |
US8261345B2 (en) | 2006-10-23 | 2012-09-04 | Endeavors Technologies, Inc. | Rule-based application access management |
US8024241B2 (en) | 2007-07-13 | 2011-09-20 | Sas Institute Inc. | Computer-implemented systems and methods for cost flow analysis |
US8353005B2 (en) * | 2008-02-29 | 2013-01-08 | Microsoft Corporation | Unified management policy |
US8055559B2 (en) | 2008-08-01 | 2011-11-08 | Hantz Group, Inc. | Multi-company business accounting system and method for same including account receivable |
US8533022B2 (en) | 2011-09-13 | 2013-09-10 | Nandakumar Krishnan Nair | Enterprise wide value chain management system (EVCM) for tracking, analyzing and improving organizational value chain performance and disruptions utilizing corrective actions |
US20130201193A1 (en) | 2012-02-02 | 2013-08-08 | Apptio, Inc. | System and method for visualizing trace of costs across a graph of financial allocation rules |
US9002890B2 (en) | 2012-03-14 | 2015-04-07 | International Business Machines Corporation | Rule-based access control list management |
US10885526B2 (en) | 2012-10-19 | 2021-01-05 | International Business Machines Corporation | Monitoring flows in an evolving transaction network using dynamic rules |
US9229787B2 (en) * | 2012-12-13 | 2016-01-05 | Software Ag | Method and system for propagating modification operations in service-oriented architecture |
US9159149B2 (en) | 2013-03-14 | 2015-10-13 | Interntional Business Machines Corporation | Visualizing data transfers in distributed file system |
US20160132889A1 (en) | 2014-03-01 | 2016-05-12 | Govindaraj Setlur | System and method for payer controlled payment processing system |
US9608829B2 (en) | 2014-07-25 | 2017-03-28 | Blockchain Technologies Corporation | System and method for creating a multi-branched blockchain with configurable protocol rules |
WO2016063092A1 (en) * | 2014-10-23 | 2016-04-28 | Dele Atanda | Intelligent personal information management system |
US20160217436A1 (en) * | 2015-01-25 | 2016-07-28 | Dror Samuel Brama | Method, System and Program Product for Tracking and Securing Transactions of Authenticated Items over Block Chain Systems. |
US9965628B2 (en) * | 2015-03-02 | 2018-05-08 | Dell Products Lp | Device reporting and protection systems and methods using a secure distributed transactional ledger |
CN104735164B (zh) | 2015-04-10 | 2018-05-18 | 网易(杭州)网络有限公司 | 一种保存文件信息的方法和装置 |
US10097356B2 (en) * | 2015-07-02 | 2018-10-09 | Nasdaq, Inc. | Systems and methods of secure provenance for distributed transaction databases |
US9298806B1 (en) | 2015-07-08 | 2016-03-29 | Coinlab, Inc. | System and method for analyzing transactions in a distributed ledger |
US20170011460A1 (en) * | 2015-07-09 | 2017-01-12 | Ouisa, LLC | Systems and methods for trading, clearing and settling securities transactions using blockchain technology |
US9300678B1 (en) | 2015-08-03 | 2016-03-29 | Truepic Llc | Systems and methods for authenticating photographic image data |
US10402792B2 (en) * | 2015-08-13 | 2019-09-03 | The Toronto-Dominion Bank | Systems and method for tracking enterprise events using hybrid public-private blockchain ledgers |
EP3345360B1 (en) * | 2015-09-04 | 2021-03-03 | Nec Corporation | Method for storing an object on a plurality of storage nodes |
US20170140408A1 (en) * | 2015-11-16 | 2017-05-18 | Bank Of America Corporation | Transparent self-managing rewards program using blockchain and smart contracts |
US10013573B2 (en) * | 2015-12-16 | 2018-07-03 | International Business Machines Corporation | Personal ledger blockchain |
CN105573828B (zh) * | 2015-12-17 | 2019-04-12 | 布比(北京)网络技术有限公司 | 一种操作处理方法及装置 |
CN105761143B (zh) * | 2016-02-01 | 2019-04-05 | 上海凭安网络科技有限公司 | 一种基于区块链的多方共建信用记录的方法 |
CN105809062B (zh) * | 2016-03-01 | 2019-01-25 | 布比(北京)网络技术有限公司 | 一种合约构建、执行方法及装置 |
CN105893042A (zh) * | 2016-03-31 | 2016-08-24 | 北京航空航天大学 | 一种基于区块链的智能合约的实现方法 |
US10720232B2 (en) * | 2016-04-13 | 2020-07-21 | Accenture Global Solutions Limited | Distributed healthcare records management |
US10803537B2 (en) * | 2016-04-18 | 2020-10-13 | R3 Ltd. | System and method for managing transactions in dynamic digital documents |
US20170344988A1 (en) * | 2016-05-24 | 2017-11-30 | Ubs Ag | System and method for facilitating blockchain-based validation |
US20170345011A1 (en) * | 2016-05-26 | 2017-11-30 | Hitfin, Inc. | System and method executed on a blockchain network |
US20210211468A1 (en) * | 2016-05-27 | 2021-07-08 | Wells Fargo Bank, N.A. | Systems and methods for service compliance via blockchain |
US10580100B2 (en) * | 2016-06-06 | 2020-03-03 | Chicago Mercantile Exchange Inc. | Data payment and authentication via a shared data structure |
US10097344B2 (en) * | 2016-07-15 | 2018-10-09 | Mastercard International Incorporated | Method and system for partitioned blockchains and enhanced privacy for permissioned blockchains |
EP3491572B1 (en) * | 2016-07-26 | 2021-09-01 | NEC Corporation | Method for controlling access to a shared resource |
US11431486B2 (en) * | 2019-05-22 | 2022-08-30 | Salesforce.Com, Inc. | System or method to implement consensus on read on distributed ledger/blockchain |
-
2016
- 2016-09-09 AU AU2016422515A patent/AU2016422515A1/en not_active Abandoned
- 2016-09-09 MY MYPI2019000586A patent/MY196099A/en unknown
- 2016-09-09 BR BR112019002548-0A patent/BR112019002548A2/pt not_active Application Discontinuation
- 2016-09-09 KR KR1020197006728A patent/KR102556741B1/ko active IP Right Grant
- 2016-09-09 SG SG11201901403VA patent/SG11201901403VA/en unknown
- 2016-09-09 JP JP2019513386A patent/JP6839267B2/ja active Active
- 2016-09-09 RU RU2019106301A patent/RU2730899C1/ru active
- 2016-09-09 MX MX2019002573A patent/MX2019002573A/es unknown
- 2016-09-09 US US16/331,868 patent/US11210426B2/en active Active
- 2016-09-09 CN CN202310922183.1A patent/CN116910785A/zh active Pending
- 2016-09-09 CA CA3033144A patent/CA3033144A1/en active Pending
- 2016-09-09 EP EP16915508.2A patent/EP3479219A4/en active Pending
- 2016-09-09 WO PCT/CN2016/098610 patent/WO2018045574A1/en unknown
- 2016-09-09 CN CN201680089142.7A patent/CN109690549B/zh active Active
-
2019
- 2019-02-07 PH PH12019550020A patent/PH12019550020A1/en unknown
- 2019-02-27 CL CL2019000517A patent/CL2019000517A1/es unknown
- 2019-02-28 CO CONC2019/0001989A patent/CO2019001989A2/es unknown
- 2019-03-18 ZA ZA2019/01666A patent/ZA201901666B/en unknown
-
2021
- 2021-11-17 US US17/528,423 patent/US20220075900A1/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1722086A (zh) * | 2004-06-21 | 2006-01-18 | 微软公司 | 用于数据库跟踪的计划性检索和重放的api |
CN102236763A (zh) * | 2010-05-05 | 2011-11-09 | 微软公司 | 基于数据驱动角色的安全 |
Non-Patent Citations (1)
Title |
---|
Decentralizing privacy: using blockchain to protect personal data;ZYSKIND G;IEEE computer society;全文 * |
Also Published As
Publication number | Publication date |
---|---|
US20220075900A1 (en) | 2022-03-10 |
CL2019000517A1 (es) | 2019-07-05 |
CO2019001989A2 (es) | 2019-03-08 |
AU2016422515A1 (en) | 2019-02-21 |
CA3033144A1 (en) | 2018-03-15 |
KR102556741B1 (ko) | 2023-07-17 |
CN116910785A (zh) | 2023-10-20 |
MY196099A (en) | 2023-03-14 |
KR20190046843A (ko) | 2019-05-07 |
JP6839267B2 (ja) | 2021-03-03 |
SG11201901403VA (en) | 2019-03-28 |
EP3479219A4 (en) | 2020-02-26 |
ZA201901666B (en) | 2020-10-28 |
US20210182433A1 (en) | 2021-06-17 |
RU2730899C1 (ru) | 2020-08-26 |
US11210426B2 (en) | 2021-12-28 |
JP2019533229A (ja) | 2019-11-14 |
MX2019002573A (es) | 2019-08-01 |
EP3479219A1 (en) | 2019-05-08 |
PH12019550020A1 (en) | 2019-10-28 |
WO2018045574A1 (en) | 2018-03-15 |
CN109690549A (zh) | 2019-04-26 |
BR112019002548A2 (pt) | 2019-05-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109690549B (zh) | 跨不同方来跟踪对象 | |
KR102084674B1 (ko) | 블록체인 기반 컨텐츠 관리 방법 및 상기 방법을 수행하는 시스템 | |
US11790118B2 (en) | Cloud-based system for protecting sensitive information in shared content | |
CN107145768B (zh) | 版权管理方法和*** | |
US10841628B1 (en) | System and techniques for digital data lineage verification | |
CN105830133B (zh) | 文件保管***及用户终端 | |
US10095848B2 (en) | System, method and apparatus for securely distributing content | |
US20190392407A1 (en) | Encrypted asset transfer system and method for facilitating transfer of digital assets | |
CN115730277A (zh) | 使用非同质化代币nft的补充数字内容访问控制 | |
US9455961B2 (en) | System, method and apparatus for securely distributing content | |
US20230418984A1 (en) | Artwork managing method, computer, and program | |
US20240062190A1 (en) | Generating and maintaining digital tokens on a blockchain using physical device identifiers | |
WO2021048331A1 (en) | Method and system for securely sharing a digital file | |
WO2020085226A1 (ja) | 制御方法、コンテンツ管理システム、プログラム、及び、データ構造 | |
WO2020130864A1 (en) | System for automatic management and depositing of documents (images) hash in block-chain technology | |
JP2024088955A (ja) | 検証システム、検証方法、及び検証プログラム | |
KR20240033513A (ko) | 이미지 인증을 위한 방법, 컴퓨터 장치, 및 컴퓨터 프로그램 | |
CA3174357A1 (en) | Method and system for providing a trackable digital asset and its use thereof |
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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40005845 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |