欢迎光临小豌豆知识网!
当前位置:首页 > 电学技术 > 电通讯技术> 一种基于可扩展分布式系统的区块链可信存证方法独创技术10309字

一种基于可扩展分布式系统的区块链可信存证方法

2021-03-15 13:35:32

一种基于可扩展分布式系统的区块链可信存证方法

  技术领域

  本发明属于区块链技术领域,特别涉及一种基于可扩展分布式系统的区块链可信存证方法。

  背景技术

  随着社会经济的发展以及互联网的普及,建立在网络服务基础上的通信与交易行为逐渐走进了人们的生活,但由于缺少通信双方之间的信任与完善的监管通道,使得数据篡改、伪造、恶意删除等非法行为屡见不鲜。为了避免上述恶意行为的继续扩大,人们在通信或交易双方之间引入第三方可信中介来解决信任的缺失问题,基于对于第三方的完全信任来进行文件存储、公证防伪、资产交易等行为。但是,随着第三方权限的持续集中和服务流程的逐渐繁琐,通信与交易行为的成本不断扩大,甚至会造成程序效率的下降和数据存储的不安全问题,这也就催发了去中心化技术的诞生。

  区块链的分布式架构具有去中心化、透明开放、状态一致、强依赖密码学的特征。基于这些属性特征,数据层面上,区块链能实现在多方共识的基础上保持数据一致,防止数据被篡改,并可对基于数据的应用全过程进行溯源。应用层面上,区块链能实现自动化执行的智能合约,并能在多个行业领域带来业务流程优化、模式创新和新应用培育等价值。在此基础上为社会治理的透明可信、开放共享和辅助监管等提供了新方法。

  由于传统的区块链存证一般无法修改,而且只要获取到存证后返回的哈希值便可以随意的查询到区块的交易存证,导致安全隐患。

  发明内容

  本发明的目的就在于为了解决上述区块链中交易存证不方便修改以及存在安全隐患的问题提出一种基于可扩展分布式系统的区块链可信存证方法,具有数据中心化系统保存存证数据,区块链保存存证访问标识,在节约区块链使用成本的同时便于存证的保存,通过对用户分级,便于管理存证的调用,提高安全性,存证数据只能高权限用户修改也方便后续管理的优点。

  本发明通过以下技术方案来实现上述目的,一种基于可扩展分布式系统的区块链可信存证方法,包括以下步骤:

  通过以太坊节点部署区块链的智能合约,制定智能合约中的访问控制规则,通过该规则将存证数据的标识符散列存储在区块链的智能合约存储区,并且返回交易的哈希值,而交易存证数据存储在数据中心化系统中;

  合约对每个存证用户建立角色属性,并将角色属性存储在区块链登录或交易证书的扩展域中;

  访问控制规则获取访问数据中心化系统的用户的角色属性,根据角色属性分配权限,权限分为三种且范围为:

  a、低权限,利用存证数据哈希值通过以太坊平台中的取证调用函数获取数据中心化系统中的存证数据;

  b、高权限,通过存证调用函数在智能合约存储区保持存证数据,并且利用存证数据哈希值通过以太坊平台中的调用函数获取数据中心化系统中的存证数据,更改存证数据覆盖原字符串,原存证数据保存在区块链的历史区块;

  c、黑名单权限,禁止存证和取证。

  优选的,所述以太坊节点部署智能合约包括访问控制规则、智能合约存储区、状态变量、特殊变量以及支撑智能合约运行的功能函数。

  优选的,所述功能函数包括存证调用函数、取证调用函数、角色权限分配函数和用户登录注册函数。

  优选的,所述用户的角色属性建立方法为:

  ①注册用户时,可以通过对角色属性与成员信息的预置,将角色身份标识存储至数据库用户表当中,用户进行登录或发起交易时,角色属性与成员信息将存储在产生的证书中。

  ②登录用户时,可以将角色身份标识添加至登录指令中,用户登录成功后生成的登录证书中将含有该属性值,并且使用该登录证书申请交易证书时,属性值或成员信息也将记录在其中。

  优选的,所述角色属性包括超级用户、普通用户和黑名单用户,其中超级用户拥有高权限,普通用户拥有低权限,黑名单用户拥有黑名单权限。

  优选的,所述取证调用函数包括本地调用,利用存证访问标识在数据中心化系统中查找合约存证,且智能合约状态值未改变。

  与现有技术相比,本发明的有益效果是:通过中心化系统来存储交易存证,而区块链保存存证标识,智能合约对用户进行角色属性定位,不同属性的角色取证调用的权限不同,利用不同权限方便管理访问存证标识的用户,提高了存证存储在中心化系统中的安全性。

  附图说明

  图1为本发明的区块链的可信存证方法流程图。

  具体实施方式

  下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

  如图1所示,一种基于可扩展分布式系统的区块链可信存证方法,包括以下步骤:

  步骤S101,通过以太坊节点部署区块链的智能合约,制定智能合约中的访问控制规则,通过该规则将存证数据的标识符散列存储在区块链的智能合约存储区,并且返回交易的哈希值,而交易存证数据存储在数据中心化系统中;

  步骤S102,合约对每个存证用户建立角色属性,并将角色属性存储在区块链登录或交易证书的扩展域中,角色的用户名称及其对应的键值对被称为属性,组织也就是成员信息,每个成员定义自己的管理服务提供商,管理服务提供商定义集群其他节点检测角色身份证明的方法,该证明是由服务提供商签发的有效身份而生成的交易哈希;

  步骤S103,访问控制规则获取访问数据中心化系统的用户的角色属性,根据角色属性分配权限,权限分为三种且范围为:

  a、低权限,利用存证数据哈希值通过以太坊平台中的取证调用函数获取数据中心化系统中的存证数据;

  b、高权限,通过存证调用函数在智能合约存储区保持存证数据,并且利用存证数据哈希值通过以太坊平台中的调用函数获取数据中心化系统中的存证数据,更改存证数据覆盖原字符串,原存证数据保存在区块链的历史区块;

  c、黑名单权限,禁止存证和取证。

  优选的,所述以太坊节点部署智能合约包括访问控制规则、智能合约存储区、状态变量、特殊变量以及支撑智能合约运行的功能函数,访问控制规则是通过设计智能合约链码逻辑来实现,智能合约存储区用来存证,状态变量是根据业务逻辑需求声明自定义全局变量,变量值永久存储在合约的存储区,随时可以被调用以实现合约定义的功能逻辑,特殊变量代表着区块链的一些属性信息,特殊全局变量的存在有助于开发人员获得区块链信息。所述功能函数包括存证调用函数、取证调用函数、角色权限分配函数和用户登录注册函数。

  所述用户的角色属性建立方法为:

  ①注册用户时,可以通过对角色属性与成员信息的预置,将角色身份标识存储至数据库用户表当中,用户进行登录或发起交易时,角色属性与成员信息将存储在产生的证书中。

  ②登录用户时,可以将角色身份标识添加至登录指令中,用户登录成功后生成的登录证书中将含有该属性值,并且使用该登录证书申请交易证书时,属性值或成员信息也将记录在其中。

  所述角色属性包括超级用户、普通用户和黑名单用户,其中超级用户拥有高权限,普通用户拥有低权限,黑名单用户拥有黑名单权限。所述取证调用函数包括本地调用,利用交易哈希值在以太坊平台中查找合约存证,智能合约状态值未改变,存证函数中使用一个非固定大小字符串类型的状态变量来声明提取到的数据指纹,执行时存储该变量值,返回产生的交易哈希值,此时以太坊客户端执行挖矿打包交易,就实现了数据指纹在以太坊私有链上的存证。取证函数用来获取存证函数中的变量值,返回值是最新的区块中存储的数据指纹。用户多次调用存证函数,传入不同的数据覆盖原字符串,虽然取证函数只会返回最新的数据指纹,但是之前的数据仍会存储在区块链的历史区块中,无法篡改或抹去。

  对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。

  此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。

《一种基于可扩展分布式系统的区块链可信存证方法.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式(或pdf格式)