区块链重点关键概念介绍

区块链是由多个学科交叉组合形成的一门技术,本章将阐述区块链相关的基本概念,对涉及的基本理论进行科普介绍。如果您已经对这些基本技术很熟悉,可以跳过本章。

区块链是什么

区块链(blockchain)是在比特币之后提出的一个概念,在中本聪关于比特币的论文中没有直接引入blockchain的概念,而是以chain of block来描述一种数据结构。

Chain of block是指由多个区块通过哈希(hash)串联成一条链式结构的数据组织方式。区块链则是采用多项技术交叉组合,维护管理这个chain of block数据结构,形成一个不可篡改的分布式账本的综合技术领域。

区块链技术是一种在对等网络环境下,通过透明和可信规则,构建不可伪造、难以篡改和可追溯的块链式数据结构,实现和管理可信数据的产生、存取和使用的模式。技术架构上,区块链是由分布式架构与分布式存储、块链式数据结构、点对点网络、共识算法、密码学算法、博弈论、智能合约等多种信息技术共同组成的整体解决方案。

区块链技术和生态起源于比特币,随着金融、司法、供应链、文化娱乐、社会管理、物联网等更多行业对此领域技术的关注,希望将其技术价值应用到更广泛的分布式协作中,区块链技术和产品模式也在持续进化,在区块链技术基础上,专注提升安全、性能、可用性、易用性、隐私保护、合规监管等方面的能力,和业界生态共同发展,体现多方参与、智能协同、专业分工、价值分享的效能。

账本

账本顾名思义,用于管理账户、交易流水等数据,支持分类记账、对账、清结算等功能。在多方合作中,多个参与方希望共同维护和共享一份及时、正确、安全的分布式账本,以消除信息不对称,提升运作效率,保证资金和业务安全。而区块链通常被认为是用于构建“分布式共享账本”的一种核心技术,通过链式的区块数据结构、多方共识机制、智能合约、世界状态存储等一系列技术的共同作用,可实现一致、可信、事务安全、难以篡改可追溯的共享账本。

账本里包含的基本内容有区块,交易,账户,世界状态。

区块

区块是按时间次序构建的数据结构,区块链的第一个区块称为“创世块”(genesis block),后续生成的区块用“高度”标识,每个区块高度逐一递增,新区块都会引入前一个区块的hash信息,再用hash算法和本区块的数据生成唯一的数据指纹,从而形成环环相扣的块链状结构,称为“Blockchain”也即区块链。精巧的数据结构设计,使得链上数据按发生时间保存,可追溯可验证,如果修改任何一个区块里的任意一个数据,都会导致整个块链验证不通过,从而篡改的成本会很高。

一个区块的基本数据结构是区块头和区块体,区块头包含区块高度,hash、出块者签名、状态树根等一些基本信息,区块体里包含一批交易数据列表已经相关的回执信息,根据交易列表的大小,整个区块的大小会有所不同,考虑到网络传播等因素,一般不会太大,在1M~几M字节之间。

交易

交易可认为是一段发往区块链系统的请求数据,用于部署合约,调用合约接口,维护合约的生命周期,以及管理资产,进行价值交换等,交易的基本数据结构包括发送者,接受者,交易数据等。用户可以构建一个交易,用自己的私钥给交易签名,发送到链上(通过sendRawTransaction等接口),由多个节点的共识机制处理,执行相关的智能合约代码,生成交易指定的状态数据,然后将交易打包到区块里,和状态数据一起落盘存储,该交易即为被确认,被确认的交易被认为具备了事务性和一致性。

随着交易确认相应还会有交易回执(receipt)产生,和交易一一对应且保存在区块里,用于保存一些交易执行过程生成的信息如结果码、日志、消耗的gas量等。用户可以使用交易hash检查交易回执,判定交易是否完成。

和“写操作”的交易对应,还有一种”只读”调用方式,用于读取链上数据,节点收到请求后会根据请求的参数访问状态信息并返回,并不会将请求加入共识流程,也不会导致修改链上的数据。

账户

在采用账户模型设计的区块链系统里,账户这个术语代表着用户、智能合约的唯一性存在。

在采用公私钥体系的区块链系统里,用户创建一个公私钥对,经过hash等算法换算即得到一个唯一性的地址串,代表这个用户的账户,用户用该私钥管理这个账户里的资产。用户账户在链上不一定有对应的存储空间,而是由智能合约管理用户在链上的数据,因此这种用户账户也会被称为“外部账户”。

对智能合约来说,一个智能合约被部署后,在链上就有了一个唯一的地址,也称为合约账户,指向这个合约的状态位、二进制代码、相关状态数据的索引等。智能合约运行过程中,会通过这个地址加载二进制代码,根据状态数据索引去访问世界状态存储里对应的数据,根据运行结果将数据写入世界状态存储,

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
基于贡献值证明(PoC)的区块链共识机制是面向知识产权保护与交易应用场景提出的一种区块链共识机制,通过计算节点用户的贡献值,由贡献值最大的节点获得新区块的记账权。然而,由于PoC会造成记账节点具有很强的确定性该节点未能正常完成记账出块,网络中其它节点将始终保持在挂起等待状态,系统将陷于停滞状态,无法继续运行。为了使PoCˆ区块链共识机制能够适用于公有链应用场景,本文提岀基于贡献值和难度值(PoC十Pow)的区块链共识机制,使选择新区块记账权的节点具备一定的不确定性,能够有效解决PoC共识机制中存在的系统运行挂起缺陷。在PoC十PoW共识机制中,节点在工作量证明(PoW)竞争中所对应数学难题的难度值根据节点的贡献值(PαC进行动态确定,是一种对单纯基于PoC共识机制的灾备方案,以确保系统运行的可靠性。本文提出的PoC+PoW方案根据节点的贡献值排名为节点分配相应的PoW难度值,节点再通过PoW共识机制竞争记账权。引入PW后的共识机制最大程度地尊重PC贡献值排名,使节点的记账出块率与其贡献值成高度正比,在系统运行层面则保证记账出块率送到或无限趋近100%有效解决PC带来的系统运行挂起问题本文从节点贡献值排名、相邻贡献值节点间值差以及分组方式三个角度设计PoW难度值分配算法,并通过实验验证难度值分配算法的合理性和有效性同时,通过实验与传统PC共识机制在记账出块时延方面进行对比分析,进一步验证了PoC+PoW方案的优越性和可行性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值