用区块链实施的用于安全投票和分配的计数系统和方法技术方案

技术编号:33958572 阅读:27 留言:0更新日期:2022-06-30 00:04
本发明专利技术主要涉及区块链实施方案,适用于但不限于与比特币区块链一起使用。本发明专利技术涉及用于管理投票、计数、选择和/或决策过程的技术方案,可用于实现自动化处理,如设备/系统控制、过程控制、分布式计算和存储等。本发明专利技术提供了一种事件检测、监视和/或计数机制。该事件可以是:例如由给定实体进行的投票、决策或选择。本发明专利技术提供一种计数解决方案,其中的计算资源与区块链同时并行运行,并管理基于循环的操作。计算资源持续监视区块链的状态以及任何其他区块链外的输入数据或源。循环的执行受到区块链状态的影响。由计算资源所执行循环的每次迭代都记录在写入区块链的交易中,且作为哈希存储在交易的元数据中。如果计算资源找到包含与循环相关的哈希交易,则它将访问代码的相关部分。循环包含一个条件语句,该条件语句使计算资源能够决定采取哪种操作。而条件可能取决于区块链的状态或任何其他数据源。该操作可以是区块链上或链外任何类型的操作。因此,计算资源和区块链的结合提供了图灵完备解决方案。源和区块链的结合提供了图灵完备解决方案。源和区块链的结合提供了图灵完备解决方案。

【技术实现步骤摘要】
用区块链实施的用于安全投票和分配的计数系统和方法
[0001]本申请是申请日为2017年2月14日,申请号为201780009343.6,专利技术名称为“用区块链实施的用于安全投票和分配的计数系统和方法”的PCT国家阶段申请的分案申请。


[0002]本专利技术主要涉及区块链实施方式和技术。本专利技术特别适合但不限于与比特币区块链一起使用以及用于诸如设备/系统控制,过程控制,分布式计算和存储的应用。特别地,本专利技术涉及用于管理投票、计数、选择和/或决策过程的技术解决方案。本专利技术不限于在政治投票应用或场景中使用。

技术介绍

[0003]在本文档中,我们使用术语“区块链”包括基于共识的电子类、基于计算机的、以及分布式账簿的所有形式,其包括但不限于区块链和交易链技术,许可和未许可的账簿,共享账簿及其变体。尽管其他区块链实施方案已经被提出并开发,但是区块链技术最广为人知的应用是比特币账簿。虽然出于方便和说明的目的本文会提及比特币,但需要注意的是,本专利技术不限于与比特币区块链及其他区块链实施方案一起使用。此外,协议也属于本专利技术的范围。
[0004]区块链是一种基于共识的电子账簿。电子账簿是一种基于计算机的分散式分布式系统,由块组成,而这些块又由交易组成。每个交易是编码区块链系统中参与者之间的数字资产控制转移的数据结构,并且包括至少一个输入和至少一个输出。每个块包含前一个块的哈希。这些块被链接在一起以创建一个永久的不可更改的记录—记录自区块链开始创建以来写入区块链的所有交易。交易包含嵌入其输入和输出中的称为脚本的小程序,这些程序指定了如何以及通过谁来访问交易的输出。在比特币平台上,这些脚本是使用基于堆栈的脚本语言编写的。
[0005]为了将交易写入区块链,必须对其进行“验证”。网络节点(矿工,miner)执行该工作以确保每个交易都有效,并拒绝网络中的无效交易。安装在节点上的软件客户端通过执行其锁定和解锁脚本功能对未使用完的交易(Unspent transaction,UTXO)执行此验证工作。如果锁定和解锁脚本的执行评估为TRUE,则交易有效并且将被写入区块链。因此,为了将交易写入区块链,交易必须i)由接收交易的第一个节点验证

如果交易被验证,则节点将其传送到网络中的其他节点;ii)被添加至由矿工建造的新区块;以及iii)被挖矿,即被添加至过去交易的公共账簿中。
[0006]尽管区块链技术因用于加密货币实施方案而广为人知,但数字企业家已经开始探索使用比特币所基于的安全加密系统以及可存储在区块链上的数据来实现新系统。这些包括但不限于:
[0007]·
存储元数据
[0008]·
实现数字令牌(digital tokens)
[0009]·
建立使用数字签名签署的合同
[0010]如果区块链可以用于不限于加密货币领域的自动化任务和过程,那将是非常有利的。这样的解决方案将能够利用区块链的优势(例如:事件的永久性防篡改记录、分布式处理、安全加密功能等),并在应用中更加通用。
[0011]区块链社区当前感兴趣的一个领域是图灵完备性,特别是如何利用图灵完备性推动区块链技术的研发。出于安全方面的考虑,这些技术的研发旨在限制功能。
[0012]比特币脚本语言是否是图灵完备的是有争议的,因为它本身不支持复杂的流控制功能,例如,即将发生的循环。这种限制的一个优点是程序具有可预测的执行次数(Execution times)。
[0013]将比特币脚本限制为线性或树状决策任务的另一个重要优点是:避免了无限循环,这可以用作启动诸如拒绝服务(DoS或DDoS)攻击等漏洞利用的手段。由于这种限制,比特币脚本通常仅限用于线性任务而不用于更复杂的应用程序,如自动化任务的控制、设备管理等。
[0014]以太坊区块链平台通过结合“内置”图灵完备语言Solidity来解决这个问题。这种语言是以太坊平台的原生语言,因此用Solidity编写的脚本可以包括控制流机制,如循环。但是,以太坊已遭受到了多次攻击和漏洞利用。
[0015]鉴于上述安全问题,以及比特币脚本语言的广泛使用性和熟悉性,区块链社区的大部分人仍然希望保留与区块链技术相关的这些有限脚本语言的使用。
[0016]因此,我们期望提供一种解决方案。该方案有助于将图灵完备功能例如循环机制和其他复杂控制结构与区块链脚本集成或结合,同时避免潜在安全弱点(例如无限循环)的破坏性影响。这样的解决方案将具有许多益处,包括:
[0017]·
实现复杂区块链相关交易的自动化;
[0018]·
控制记录在区块链上的元数据流;
[0019]·
扩展区块链平台的功能和应用,这些平台不依赖或有目的地汇编图灵完备语言。
[0020]现在已经设计出这种改进的解决方案。本专利技术提供了一种解决方案,其包括并行计算资源与区块链的新的结合,使得能够在典型的区块链脚本之外仿真、模拟和/或编入循环和其他图灵完备功能。反过来,这给与例如分布式数据存储、分布式计算和无人机控制或任何IoT(物联网)设备相关的自动化任务的许多应用提供了便利。此类应用程序可以包括使用区块链进行元数据存储、管理数字令牌和建立合同。另一个有用的应用是投票或选择计数过程的自动化。
[0021]以下提供本专利技术
的背景资料:US2016/027229A;WO2016/022864A和US6061449A。以下在提交申请时也可获得的在线资源提供了技术背景:
[0022]https://nxt.org/what

is

nxt/voting/
[0023]http://bitcoin

development.narkive.com/uRciVtAQ/standard

bip

draft

turing

pseudocompleteness
[0024]http://news.ycombinator.com/item?id=7287155
[0025]http://news.ycombinator.com/item?id=11372455
[0026]http://cryptonomics.org/2014/02/01/ethereum

turing

complete

技术实现思路

[0027]因此,根据本专利技术,提供了如附加权利要求中定义的解决方案。根据本专利技术,可以提供(过程)控制方法和相应的系统。本专利技术可以称为区块链实施的控制方法/系统。本专利技术可以控制自动化任务或过程。
[0028]本专利技术可用于使用区块链来仿真/模拟图灵完备性。另外/或者,本专利技术可以使涉及图灵完备控制机制的应用程序能够在区块链平台上得以执行。
[0029]另外/或者,本专利技术可被描述为用于使用区块链和/或一个或多个本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种计算机实施的方法,用于计数、监控、检测、记录或处理事件,其中,所述事件是投票、选择、操作或决策,所述方法包括以下步骤:将至少一个令牌分发或分配给至少一个实体,所述至少一个实体用于生成至少一个事件,其中:i)所述至少一个令牌由加密公钥和私钥对表示;并且ii)通过将交易广播到区块链网络来执行分发或分配,以及执行、监督或管理至少一个计算资源上的循环,所述至少一个计算资源与区块链或区块链相关平台并行或一起运行,并用于维护由所述至少一个实体生成的所述至少一个事件的记录或计数。2.根据权利要求1所述的方法,其中,所述至少一个计算资源用于将所述区块链用作图灵机的不可擦除磁带。3.根据权利要求1或2所述的方法,其中,所述至少一个计算资源用于实施图灵机的控制堆栈。4.根据任一前述权利要求所述的方法,其中,由所述至少一个计算资源执行或管理的循环是基于图灵完备语言。5.根据任一前述权利要求所述的方法,其中,所述公钥和私钥对与以下各项相关联:所述至少一个事件;或者一个或多个选择或可能的操作方案;或者代表所述至少一个事件的项目,优选地,其中,所述项目是加密货币量。6.根据任一前述权利要求所述的方法,其中,所述事件与由所述至少一个计算资源接收、检测、记录或生成的数据有关,或者与所述区块链的状态有关。7.根据任一前述权利要求所述的方法,包括以下步骤:i)使用所述至少一个计算资源来决定要广播到所述区块链网络并写入所述区块链的一组交易;或者ii)使用区块链堆栈作为数据存储空间。8.根据任一前述权利要求所述的方法,其中,所述至少一个计算资源:i)存储与所述循环有关的信息;和/或ii)是谕示或机器人。9.根据任一前述权利要求所述的方法,其中,所述区块链或区块链平台与以下各项相关联:i)功能有限的脚本语言,所述功能有限的脚本语言不能天然地支持将控制结构并入用所述语言编写的代码中,所述控制结构诸如为循环;和/或ii)区块链网络。10.根据任一前述权利要求所述的方法,包括以下步骤:使用脚本实施所述循环;以及优选地,生成所述脚本的加密哈希。11.根据任一前述权利要求所述的方法,还包括以下步骤:i)使用秘密交换协议将所述至少一个令牌分发或分配给所述至少一个实体;或者
ii)生成与所述循环相关的代码的加密哈希,并且优选地,将所述加密哈希存储在所述区块链上的交易中。12.根据任一前述权利要求所述的方法,其中:i)与所述循环的至少一次迭代有关的信息存储在所述区块链上的交易中;优选地,其中,所述信息作为元数据存储在所述交易中;和/或ii)所述计算资源用于针对包括与所述循环相关的代码的加密哈希的...

【专利技术属性】
技术研发人员:克雷格
申请(专利权)人:区块链控股有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1