基于区块链的系统以及系统中的电子设备和方法与流程

文档序号:13097192阅读:265来源:国知局
基于区块链的系统以及系统中的电子设备和方法与流程

本公开涉及信息安全领域,更具体地,涉及一种基于区块链的系统以及系统中的电子设备和方法,其能够使得所有节点对于初次引入的新对象达成共识从而将关于该新对象的记录加入到区块链中,而不需要依赖于密码币。



背景技术:

区块链(blockchain)是指通过去中心化和去信任的方式,由所有参与节点集体维护的一个可靠的分布式数据库系统,它的特点是不可更改,不可伪造。区块链由一串使用密码学方法产生的区块(block)组成,每一个区块都包含了上一个区块的哈希(hash)值,从创始区块(genesisblock)开始连接到当前区块,形成区块链。每一个区块都确保按照时间顺序在上一个区块之后产生,否则前一个区块的哈希值是未知的。

目前,以比特币为主的区块链上的应用(诸如智能合约和智能财产等)都是以区块链平台上的密码币绑定的。在比特币区块链系统中,通过挖矿(mining)来引入新币。而在非代币的区块链应用平台中,如果系统中的所有节点都是平等的,对于初次引入的对象,例如概念、智能财产、数字资产等,如何验证其真实性和有效性是一个问题。区块链作为一种分布式的共识平台,可以成为传递信任的链,但前提是本源数据(即,初次引入的数据)的可信性是可以保证的。例如,比特币的新币是作为奖励发给矿工(miner)的,此后所有涉及该新币的交易最终都会追溯到奖励这个初始环节。然而,在一个非代币的区块链平台中,尚未提出如何使得所有节点对于初次引入的数据达成共识的有效解决方案。



技术实现要素:

在下文中给出了关于本公开的简要概述,以便提供关于本公开的某些方面的基本理解。但是,应当理解,这个概述并不是关于本公开的穷举性概述。它并不是意图用来确定本公开的关键性部分或重要部分,也不是意图用来限定本公开的范围。其目的仅仅是以简化的形式给出关于本公开的某些概念,以此作为稍后给出的更详细描述的前序。

鉴于以上问题,本公开的目的是提供一种新的基于区块链的系统的架构,其能够在不需要绑定诸如比特币的密码币的情况下,使得系统中的所有节点对于初次引入的新对象达成共识以保证其真实性和有效性。

根据本公开的一方面,提供了一种基于区块链的系统中的控制节点端的电子设备,该电子设备包括处理器,该处理器被配置成:响应于系统中的待验证节点对初次引入的新对象的所有权声明,对所有权声明进行验证;以及在验证成功的情况下,对所有权声明进行签名以返回待验证节点,以由系统中的其它节点进行验证,从而将关于所有权声明的记录加入到区块链中。

根据本公开的优选实施例,处理器进一步被配置成利用零知识证明协议对所有权声明进行验证。

根据本公开的另一优选实施例,处理器进一步被配置成根据所有权声明中的标识符,利用零知识证明协议对所有权声明进行验证。

根据本公开的另一优选实施例,处理器进一步被配置成利用外部数据库对所有权声明进行验证。

根据本公开的另一优选实施例,外部数据库包括中心化数据服务平台、云计算平台和其它区块链平台中的一个或多个。

根据本公开的另一优选实施例,处理器进一步被配置成还对待验证节点的签名进行验证,并且在验证成功的情况下对所有权声明进行签名。

根据本公开的另一优选实施例,该电子设备工作为控制节点,并且该电子设备还包括:通信单元,被配置成执行数据收发操作。

根据本公开的另一方面,还提供了一种基于区块链的系统中的待验证节点端的电子设备,该电子设备包括处理器,该处理器被配置成:生成对于初次引入的新对象的所有权声明以在系统中进行广播,以由系统中的控制节点进行验证;以及根据来自控制节点的签名,生成关于所有权声明的凭证以在系统中进行广播,以由系统中的其它节点进行验证,从而将关于所有权声明的记录加入到所述区块链中。

根据本公开的另一方面,还提供了一种基于区块链的系统,包括:待验证节点,被配置成:生成对于初次引入的新对象的所有权声明以在系统中进行广播,以及根据来自控制节点的签名,生成关于所有权声明的凭证以在系统中进行广播;控制节点,被配置成:响应于所有权声明进行验证,以及在验证成功的情况下对所有权声明进行签名以返回待验证节点;以及其它节点,被配置成:响应于待验证节点广播的凭证进行验证,从而将关于所有权声明的记录加入到区块链中。

根据本公开的其它方面,还提供了与上述电子设备对应的基于区块链的系统的控制节点和待验证节点中的方法。

根据本公开的其他方面,还提供了用于实现上述根据本公开的方法的计算机程序代码和计算机程序产品以及其上记录有该用于实现上述根据本公开的方法的计算机程序代码的计算机可读存储介质。

根据本公开的实施例,在基于区块链的系统中,可以在不需要绑定密码币的情况下使得系统中的所有节点达成对于新引入的对象的共识以将该对象的记录加入到区块链中。

在下面的说明书部分中给出本公开实施例的其他方面,其中,详细说明用于充分地公开本公开实施例的优选实施例,而不对其施加限定。

附图说明

本公开可以通过参考下文中结合附图所给出的详细描述而得到更好的理解,其中在所有附图中使用了相同或相似的附图标记来表示相同或者相似的部件。所述附图连同下面的详细说明一起包含在本说明书中并形成说明书的一部分,用来进一步举例说明本公开的优选实施例和解释本公开的原理和优点。其中:

图1a至图1d是示出现有的分布式系统的架构的示例的示意图;

图2是示出根据本公开的实施例的基于区块链的系统的架构示例的示意图;

图3是示出根据本公开的实施例的基于区块链的系统中的控制节点端的电子设备的功能配置示例的框图;

图4是示出根据本公开的实施例的基于区块链的系统中的待验证节点端的电子设备的功能配置示例的框图;

图5是示出根据本公开的实施例的用于实现所有权声明的验证的示例过程的流程图;

图6是示出根据本公开的实施例的基于区块链的系统的配置示例的框图;

图7是示出根据本公开的实施例的基于区块链的系统的控制节点中的方法的过程示例的流程图;

图8是示出根据本公开的实施例的基于区块链的系统的待验证节点中的方法的过程示例的流程图;以及

图9是示出作为本公开的实施例中可采用的信息处理设备的个人计算机的示例结构的框图。

具体实施方式

在下文中将结合附图对本公开的示范性实施例进行描述。为了清楚和简明起见,在说明书中并未描述实际实施方式的所有特征。然而,应该了解,在开发任何这种实际实施例的过程中必须做出很多特定于实施方式的决定,以便实现开发人员的具体目标,例如,符合与系统及业务相关的那些限制条件,并且这些限制条件可能会随着实施方式的不同而有所改变。此外,还应该了解,虽然开发工作有可能是非常复杂和费时的,但对得益于本公开内容的本领域技术人员来说,这种开发工作仅仅是例行的任务。

在此,还需要说明的一点是,为了避免因不必要的细节而模糊了本公开,在附图中仅仅示出了与根据本公开的方案密切相关的设备结构和/或处理步骤,而省略了与本公开关系不大的其他细节。

在具体描述本公开的实施例之前,先参照图1a至图2简要描述本公开的原理和总体构思。

现有的区块链系统实际上都是一个对等计算(p2p,peer-to-peer)网络平台,即,区块链系统中的所有参与节点都是平等的。p2p可以简单定义成通过直接交换来共享计算机资源和服务,在p2p网络环境中,成千上万台彼此连接的计算机都处于对等的地位,整个网络一般来说不依赖专用的集中服务器。p2p系统是分布式系统的一种拓扑结构,如图1a所示。除了p2p系统之外,分布式系统还包括如图1b所示的中心化系统、如图1c所示的混合p2p系统以及如图1d所示的具有超级节点(superpeer)结构的p2p系统,在这些分布式系统中,一部分节点除了具有普通节点的功能之外,还可以具有例如控制、验证等附加功能以实现系统初始化配置等操作,如图1c和图1d所示的中央服务器或超级节点。

如上所述,在现有的区块链系统中,对于初始引入的对象的可靠性和真实性的验证都必须依赖于密码币。例如,在比特币的区块链系统中,用于将确定的所有权登记到比特币区块链上的方式被称为彩色币或染色币(colouredcoin)。染色币是在少量比特币上存储信息的一种元协议。一个“被染色的”币是一定数额的重新用于表达另一种资产的比特币。例如,在一张一美金的纸币上盖上写有“这是某公司的一份股权的证明”的印章,现在这张一美金的纸币就有了两层意义,它既是流通的货币,同时又是一份股权证明。染色币也是这个工作原理,通过将一笔数额不大的具体比特币交易转化为某种证明来指征另外一笔财产。所谓“染色”也仅仅是一种隐喻,并非字面意思,而是指增加属性的方式。

然而,对于非代币的区块链平台,则无法利用例如上述“染色币”的方式来将所有权登记到区块链系统中。结合现有的分布式系统的架构,如果可以结合p2p系统、混合p2p系统以及具有超级节点结构的p2p系统,即,使得一部分节点除了如其它普通节点一样进行区块链的运行和维护(包括新区块的计算和生成),还可以通过包括附加的功能而作为所谓的超级节点对初始引入的对象的可靠性和真实性进行验证。这样,不仅摆脱了对密码币的依赖,同时也保持了区块链系统的对等架构。

本发明正是基于这样的构思而做出的。图2示出了根据本公开的实施例的基于区块链的系统的架构示例。如图2所示,区别于现有区块链系统中所有节点都是完全平等的p2p架构,在该系统架构中,包括两类节点,即,控制节点(相当于superpeer架构的p2p系统中的超级节点)和普通节点,在普通节点初始引入新对象时,控制节点可以对普通节点对该新对象的所有权进行验证,包括例如资格验证、数字资产验证、学历验证等等,而在平时,控制节点则和普通节点一样进行区块链的运行和维护。此外,如图2所示,在一些情况下,控制节点还可以外接数据库以实现验证操作。控制节点的数量可以是一个或多个。

下面将结合上述本公开的原理,详细描述根据本公开的实施例的具体实现。

图3是示出根据本公开的实施例的基于区块链的系统中的控制节点端的电子设备的功能配置示例的框图。该电子设备可以位于控制节点中或者也可以工作为控制节点本身。

如图3所示,根据该实施例的电子设备300可包括验证单元302和签名单元304。应指出,这里描述的各个功能单元仅是根据其所实现的具体功能而划分的逻辑功能模块,而不是用于限制具体的实现方式。在实际实现时,上述各个功能单元可被实现为独立的物理实体,或者也可由单个实体(例如,处理器(cpu或dsp等)、集成电路等)来实现。

验证单元302可被配置成响应于系统中的待验证节点对初次引入的新对象的所有权声明而对该声明进行验证。

具体地,假如用户利用某个节点客户端宣布其具有某项所有权,则该节点客户端可称为待验证节点,也就是所谓的普通节点。该待验证节点例如可通过广播信道或者可选地根据该系统中的各个节点的地址(例如,ip地址)列表,将其所有权声明广播至该系统中的所有控制节点。

接收到所有权声明的控制节点的验证单元302可对该所有权声明进行验证。例如,如果该所有权的内容是可公开的,则用户可以上传关于该所有权的电子资料(例如,房产证明、学历证书、车辆所有证明等)以表明其所有权,于是验证单元302可以利用外部数据库来对所上传的电子资料的真实性进行验证,以验证该所有权的有效性。这里的外部数据库例如可包括中心化数据服务平台、云计算平台和其它区块链平台中的一个或多个。

应指出,控制节点与外部数据库之间的接口可以是系统在设置控制节点时的内置api(应用程序接口),或者也可以是用户在下载安装控制节点的客户端程序时另外配置的api。

替选地,如果根据预先约定或者如果所接收到的所有权声明中的标识符指示该所有权所涉及的内容是不可以公开的,需要隐私保护,则验证单元302还可以利用零知识证明协议与待验证节点进行交互,从而对该所有权声明进行验证。下面将简单介绍一下零知识证明协议的原理。

零知识证明(zero-knowledgeproof)是由goldwasser等人在20世纪80年代初提出的。它指的是证明者能够在不向验证者提供任何有用信息的情况下,使验证者相信某个论断是正确的。零知识证明实质上是一种涉及两方或更多方的协议,即两方或更多方完成一项任务所需采取的一系列步骤。证明者向验证者证明并使其相信自己知道或拥有某一消息,但证明过程不能向验证者泄漏任何关于被证明消息的信息。

下面,将作为示例具体描述利用零知识证明协议来实现所有权声明的验证的方式。具体地,根据零知识证明协议,假设所有权声明为p,则可以根据所有权声明p生成一个用于证明所有权的算法fp(),并可计算出fp-1(),可以定义从fp-1()无法推导出fp()以保证安全性。

然后,控制节点随机发送挑战x给待验证节点,待验证节点计算fp(x),并返回结果给控制节点;控制节点可代入计算,如果fp-1(fp(x))=x,则证明该待验证节点知道fp()。

为了确保安全性,可以重复上述验证过程多次,则控制节点可以确信待验证节点确实知道fp(),从而说明该待验证节点所宣称的所有权声明p是真实有效的。

应指出,这里所给出的仅是零知识证明协议的一种示例实现方式,本领域技术人员当然可根据其原理而设计出其它适当的实现形式,只要能够实现在保证待验证信息的私密性的情况下实现对信息的验证即可。

可以理解,控制节点不仅可以对公开信息进行验证,而且对于需要隐私保护的内容,同样可以利用零知识证明协议来实现验证。当然,本领域也可以想到利用除零知识证明协议之外的其它数据安全协议来实现对于需要隐私保护的信息的验证。

此外,优选地,为了进一步提高安全性待验证节点还可以对所有权声明进行签名,以由控制节点验证该所有权声明确实是由该待验证节点发出的。具体地,在基于区块链的系统中,每个节点都可以拥有一个或多个身份密钥,这些密钥可以通过公钥密码学系统实现,即,分配一对密钥,公钥和私钥,签名方利用私钥生成表明其身份的签名,验证方利用公钥验证签名的有效性。这些身份密钥可以预置在系统中,也可以在各个节点接入系统时生成,后一种情况可以在某些临时组网场合应用。

这样,待验证节点在广播所有权声明时可以同时附上其签名,从而验证单元302可以利用该待验证节点的公钥验证其签名,以验证该所有权声明确实是由该待验证节点发出的。

在验证单元302成功验证了待验证节点的所有权声明和签名之后,签名单元304可对该所有权声明进行签名以表明该所有权声明的真实性和有效性,并将该签名返回给待验证节点。待验证节点在接收到控制节点的签名之后,可以再次广播其所有权声明、控制节点的签名以及控制节点的签名,从而系统中的其它节点可以验证控制节点的签名的有效性,并且在验证成功之后将关于该所有权声明的记录作为初始记录登记在下一个新的区块中,从而加入到区块链中。这样,在随后在该基于区块链的系统中执行关于该所有权的事务(例如,所有权转让、交易等)时,就可以追溯至该初始记录。

可以看出,与诸如比特币的区块链系统中存储的都是交易信息不同,在该基于区块链的系统中,还可以包括除交易信息之外的记录(例如,上述所有权声明的记录),这样,可以在不依赖于密码币的情况下保证区块链中的所有记录的有效性以及可追溯性。

此外,应指出,系统中可能存在多个控制节点,为了节省效率,在所有控制节点都是可信的情况下,可以由最先响应的控制节点与该待验证节点进行交互式的零知识证明协议以完成验证即可。当然,对于安全性要求较高的场景,可以允许多个控制节点同时参与零知识证明协议,例如,每个控制节点都可以生成若干个挑战信息,让待验证节点进行应答。

也就是说,如上所述,系统中可能存在多个控制节点,根据具体的应用场景和安全性需求,可以由最先响应的控制节点完成验证并签名;也可以由部分(例如,超过一半比例的控制节点)或全部控制节点一起完成验证和签名。

尽管以上描述了可以利用外部数据库或者零知识证明协议来验证所有权声明,但是本领域技术人员还可以想到利用数据安全领域的其它方式来进行验证,本公开对此不做限制。

可以理解,上述电子设备300可以以芯片级来实现,或者也可通过包括其它外部部件而以设备级来实现。例如,电子设备300可以作为整机而工作为控制节点,并且电子设备300还可包括诸如收发机的通信单元用以执行数据收发操作。

与上述控制节点的实施例相对应地,下面将参照图4描述根据本公开的实施例的待验证节点端的电子设备的功能配置示例。图4是示出根据本公开的实施例的基于区块链的系统中的待验证节点端的电子设备的功能配置示例的框图。该电子设备可以位于待验证节点中或者也可以工作为待验证节点本身。

如图4所示,根据该实施例的电子设备400可包括所有权声明生成单元402和凭证生成单元404。应指出,这里描述的各个功能单元仅是根据其所实现的具体功能而划分的逻辑功能模块,而不是用于限制具体的实现方式。在实际实现时,上述各个功能单元可被实现为独立的物理实体,或者也可由单个实体(例如,处理器(cpu或dsp等)、集成电路等)来实现。

所有权声明生成单元402被配置成生成对于初次引入的新对象的所有权声明以在系统中进行广播。例如,如上所述,可以通过广播信道或者系统的地址列表而广播至各个控制节点。优选地,所有权声明生成单元402还可以利用其私钥对该所有权声明进行签名以在系统中进行广播。这样,接收到该所有权声明和待验证节点的签名的所有控制节点会对这些信息的有效性进行验证。

优选地,在该所有权声明的相关信息是私密的情况下,所有权声明生成单元402可以将其所有权声明中的特定标识符设置为指示该所有权声明是需要隐私保护的,从而接收到该声明的控制节点将会根据该指示符而发起例如零知识证明协议来验证该所有权声明的有效性。当然,如上所述,控制节点和待验证节点双方也可根据预先约定而通过零知识证明协议进行交互。响应于控制节点的发起的零知识证明协议,待验证节点可以通过例如挑战/应答机制与控制节点进行交互,以证明其所有权。

在控制节点对所有权声明和待验证节点的签名的验证成功之后,控制节点会将其签名返回给待验证节点。凭证生成单元404可被配置成根据来自控制节点的签名而生成关于所有权声明的凭证以在系统中进行广播。具体地,凭证生成单元404可以将其所有权声明、待验证节点的签名以及控制节点的签名作为凭证在系统中进行广播,从而系统中的其它节点在接收到该凭证之后对控制节点的签名进行验证,并且在验证成功的情况下将关于该所有权声明的记录加入到区块链中,以用于后续的其它操作。

应指出,如上所述,由于系统中可能存在多个控制节点,而这些控制节点都有义务对该所有权声明进行验证并返回验证结果,因此,根据具体的应用场景,在多个控制节点中的一部分或者全部均对该所有权声明进行验证并签名的情况下,凭证生成单元404在生成关于所有权声明的凭证时,需要将接收到的这些控制节点的签名都加入在该凭证中以供系统中的其它节点进行验证。

可以理解,上述电子设备400可以以芯片级来实现,或者也可通过包括其它外部部件而以设备级来实现。例如,电子设备400可以作为整机而工作为待验证节点,并且电子设备400还可包括诸如收发机的通信单元用以执行数据收发操作。

应指出,这里描述的电子设备400是与以上参照图3描述的控制节点端的电子设备300的实施例相对应的,在此未详细描述的内容可参见以上相应位置的描述,在此不再赘述。

尽管以上参照图3和图4描述了根据本公开的实施例的控制节点和待验证节点端的电子设备的功能配置示例,但是应理解,这仅是示例而非限制,本领域技术人员还可根据实际实现的需要而对上述功能模块进行添加、删除、组合、子组合和变更。

为了进一步便于理解根据本发明的技术的工作过程,下面将参照图5描述根据本公开的实施例的用于实现初始所有权声明的验证的示例过程。图5是示出根据本公开的实施例的用于实现所有权声明的验证的示例过程的流程图。

如图5所示,首先,在步骤s51中,待验证节点在系统中广播其对于某项最初引入的对象的所有权声明,该声明可附加有待验证节点的签名。

然后,在步骤s52中,控制节点对该所有权声明和待验证节点的签名进行验证。具体的验证方式可以包括但不限于上述利用外部数据库的方式或者零知识证明的方式,在此不再赘述。

如果验证失败,则该过程结束,如果验证成功,则在步骤s53中,控制节点对该所有权声明进行签名,并且将其返回至待验证节点。

然后,在步骤s54中,待验证节点再次广播其所有权声明,并且还附上控制节点的签名,以证明其确实拥有该所有权。

接下来,在步骤s55中,系统中的所有节点对控制节点的签名进行验证,并且在验证通过的情况下,将关于该所有权声明的记录加入到接下来的新区块中,从而验证过程结束。

可以看出,在本发明的实施例,其它节点通过验证控制节点的签名的有效性来达成对于待验证节点的所有权声明的共识,也就是说,控制节点的签名是一种担保,由于控制节点具有其它附加的验证功能,因此其签名可以用于表示该控制节点已验证了待验证节点的所有权是真实和有效的。这样,系统中的其它节点在验证了控制节点的签名之后可以达成共识,以将该所有权记录包括在接下来要生成的区块中,从而该记录被加入到区块链中。

根据上述本公开的实施例,在关于初次引入的新事物的所有权已登记在区块链中之后,由于关于该所有权的初始记录的真实性和可靠性是可以保证的,因此在后续进行关于所有权的诸如转让、交易等的事务时,可以追溯到该初始记录,因此如比特币的区块链系统一样,可以保证区块链中的所有记录的有效性以及不可更改性。

在关于所有权的记录初始登记在区块链中之后,该所有权就可以在该基于区块链的系统中的所有节点(包括上述控制节点和待验证节点)之间进行转让、交易等操作。例如,所有权可以从一个账户地址转移到另一账户地址。具体地,用户通过某个节点客户端将其某项所有权转移其他用户名下,其可以通过用户帐户(如钱包地址等)来执行该转移操作,或者如果用户绑定客户端则可以使用客户端对应的身份密钥生成的地址来执行该转移操作。这笔操作记录至少可以包括:所有权内容、接收方身份信息(例如、帐户地址等)、发起帐户的签名信息等。发起节点将该转移操作记录在区块链系统进行广播,系统中的所有节点将参与信息确认与新区块的生成。当包含该条转移记录的新区块加入到区块链中时,则表示所有权转移成功,该记录将会永久被记录在区块链中,不能被更改或删除。

图6是示出根据本公开的实施例的基于区块链的系统的配置示例的框图。

如图6所示,根据该实施例的系统600可包括控制节点602、待验证节点604以及其它节点606。控制节点602和待验证节点604可分别对应于以上参照图3和图4描述的实施例,在此不再赘述。控制节点602的数量可以是一个或多个。

应理解,这里所划分的三类节点仅是针对在需要对所有权声明进行初始验证时而进行的功能划分,而在区块链平时的运行和维护中,这些节点的功能和地位都是对等的,并不存在这样的功能差别。

系统600可以基于p2p架构,例如,图2所示的结合了p2p系统、混合p2p系统和具有超级节点结构的p2p系统的架构。

与上述设备实施例相对应的,本公开还提供了以下方法实施例。

图7是示出根据本公开的实施例的基于区块链的系统的控制节点中的方法的过程示例的流程图。

如图7所示,该方法开始于步骤s71,在步骤s71中,控制节点响应于待验证节点对初次引入的新对象的所有权声明进行验证。具体的验证过程可参见以上设备实施例中相应位置的描述,在此不再重复。

然后,该方法进行到步骤s72,在步骤s72中,控制节点在验证成功的情况下,对所有权声明进行签名以返回待验证节点,以由系统中的其它节点进行验证,从而将关于该所有权声明的记录加入到区块链中。

图8是示出根据本公开的另一实施例的基于区块链的系统中的方法的过程示例的流程图。该方法可以由待验证节点来执行。

如图8所示,该方法开始于步骤s81,在步骤s81中,待验证节点生成对于初次引入的新对象的所有权声明以在系统中进行广播,以由控制节点进行验证。优选地,该所有权声明还可附有待验证节点的签名。

然后,该方法进行到步骤s82,在步骤s82中,待验证节点根据来自控制节点的签名,生成关于其所有权声明的凭证以在系统中进行广播,从而系统中的其它节点对该凭证进行验证,并在验证成功的情况下将关于所有权声明的记录加入到区块链中。

应理解,这里参照图7和图8描述的方法实施例分别与以上参照图3和图4描述的设备实施例相对应,因此在此未详细描述的内容可参见以上相应位置的描述,在此不再重复。

此外,应指出,尽管以上描述了根据本公开的实施例的方法的过程示例,但是这仅是示例而非限制,并且本领域技术人员可根据本公开的原理对以上实施例进行修改,例如可对各个实施例中的步骤进行添加、删除或者组合等,并且这样的修改均落入本公开的范围内。

应理解,根据本公开的实施例的存储介质和程序产品中的机器可执行的指令还可以被配置成执行与上述装置实施例相对应的方法,因此在此未详细描述的内容可参考先前相应位置的描述,在此不再重复进行描述。

相应地,用于承载上述包括机器可执行的指令的程序产品的存储介质也包括在本发明的公开中。该存储介质包括但不限于软盘、光盘、磁光盘、存储卡、存储棒等等。

另外,还应该指出的是,上述系列处理和装置也可以通过软件和/或固件实现。在通过软件和/或固件实现的情况下,从存储介质或网络向具有专用硬件结构的计算机,例如图9所示的通用个人计算机900安装构成该软件的程序,该计算机在安装有各种程序时,能够执行各种功能等等。

在图9中,中央处理单元(cpu)901根据只读存储器(rom)902中存储的程序或从存储部分908加载到随机存取存储器(ram)903的程序执行各种处理。在ram903中,也根据需要存储当cpu901执行各种处理等等时所需的数据。

cpu901、rom902和ram903经由总线904彼此连接。输入/输出接口905也连接到总线904。

下述部件连接到输入/输出接口905:输入部分906,包括键盘、鼠标等等;输出部分907,包括显示器,比如阴极射线管(crt)、液晶显示器(lcd)等等,和扬声器等等;存储部分908,包括硬盘等等;和通信部分909,包括网络接口卡比如lan卡、调制解调器等等。通信部分909经由网络比如因特网执行通信处理。

根据需要,驱动器910也连接到输入/输出接口905。可拆卸介质911比如磁盘、光盘、磁光盘、半导体存储器等等根据需要被安装在驱动器910上,使得从中读出的计算机程序根据需要被安装到存储部分908中。

在通过软件实现上述系列处理的情况下,从网络比如因特网或存储介质比如可拆卸介质911安装构成软件的程序。

本领域的技术人员应当理解,这种存储介质不局限于图9所示的其中存储有程序、与设备相分离地分发以向用户提供程序的可拆卸介质911。可拆卸介质911的例子包含磁盘(包含软盘(注册商标))、光盘(包含光盘只读存储器(cd-rom)和数字通用盘(dvd))、磁光盘(包含迷你盘(md)(注册商标))和半导体存储器。或者,存储介质可以是rom902、存储部分908中包含的硬盘等等,其中存有程序,并且与包含它们的设备一起被分发给用户。

工业适用性

根据本公开的技术可以广泛地应用于各种基于区块链的系统。例如,包括但不限于以下应用示例:

智能财产应用:用户可以在保证隐私的前提下,宣称某项所有权。控制节点通过零知识证明来验证用户的所有权声明。如果验证通过,则该智能财产随后可以在区块链应用平台上进行资产转移、交易等操作。

智能教育区块链系统:用户可以宣称对于某项技能、某项成果的所有权,但为了保密,并不泄露该技能或成果的技术本身。这样,控制节点可以通过零知识证明验证用户的所有权。如果验证通过,则用户可以在区块链应用平台上转让或有偿提供基于某项技能或某项成果的服务。

数字钱包:用户声称拥有某项支付能力,但不愿意让交易另一方看到账户(钱包)里的内容。此时,控制节点可以通过零知识证明验证用户的支付能力,如果验证通过,则用户可以与另一方进行交易。即,控制节点的签名可以看作是一种担保。

尽管以上给出了本公开的技术的一些应用示例,但是本公开显然并不限于此,而是还可应用于例如资格认证、学历认证等各种领域,以实现在区块链系统中对于初次引入的对象的真实性和有效性的验证而不依赖于密码币。

还需要指出的是,执行上述系列处理的步骤可以自然地根据说明的顺序按时间顺序执行,但是并不需要一定根据时间顺序执行。某些步骤可以并行或彼此独立地执行。

例如,在以上实施例中包括在一个单元中的多个功能可以由分开的装置来实现。替选地,在以上实施例中由多个单元实现的多个功能可分别由分开的装置来实现。另外,以上功能之一可由多个单元来实现。无需说,这样的配置包括在本公开的技术范围内。

在该说明书中,流程图中所描述的步骤不仅包括以所述顺序按时间序列执行的处理,而且包括并行地或单独地而不是必须按时间序列执行的处理。此外,甚至在按时间序列处理的步骤中,无需说,也可以适当地改变该顺序。

虽然已经详细说明了本公开及其优点,但是应当理解在不脱离由所附的权利要求所限定的本公开的精神和范围的情况下可以进行各种改变、替代和变换。而且,本公开实施例的术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

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