区块链 · 数字资产知识 · 行业资讯
文章库关于本站

研究与报告

区块链架构和应用入门需要了解什么:从数据结构到应用边界

摘要

理解区块链,需要把数据结构、节点验证、共识机制和应用执行连起来看。以比特币与以太坊为例,本文解释交易如何成为共享记录、智能合约如何运行,以及应用设计中的适用条件与常见误区。

区块链供应链溯源的科技主题配图

先建立整体认识

区块链架构和应用入门需要了解什么,可以围绕一条主线展开:用户提出请求,节点检查请求,网络按共同规则组织记录,应用读取这些记录或更新共享状态。理解这条链路,比孤立记住技术名词更有帮助。

架构分析可以分为数据、网络、共识和执行几个方面。这是一种学习方法,具体系统的模块划分并不完全相同,也不能把某条链的机制推广到所有区块链。

区块链数字身份的科技主题配图

比特币示例:数据如何连接与验证

比特币开发者指南介绍,区块头引用前一区块,交易通过默克尔树汇总。全节点独立验证区块;普通交易消耗未花费交易输出,即UTXO,以约束重复花费。工作量证明增加改写历史的成本;出现竞争分支时,节点在有效链中遵循累计工作量最大的链。

比特币挖矿散热的科技主题配图

这里需要区分三个问题:哈希关联帮助发现数据变化,交易规则判断花费是否有效,共识机制帮助网络选择历史分支。仅仅把数据串成链,并不足以实现这些能力。

以太坊示例:从记账走向程序执行

以太坊技术介绍说明,以太坊通过权益证明维护共识,并由以太坊虚拟机执行智能合约。合约是部署到网络中的可复用程序,交易可以调用程序、改变共享状态,执行所需资源通过费用机制计量。

理解应用时,可以把界面、交易请求和合约执行分开:界面表达用户意图,请求携带调用参数,合约按规则处理。界面显示操作成功,与请求已经进入网络认可的状态,是需要分别判断的事情。

应用适用条件与设计问题

若业务需要多方依据共同规则核对记录,可以进一步评估区块链方案。评估重点包括谁提交数据、谁验证结果、哪些状态需要共享,以及执行成本是否可接受。单纯需要保存数据,并不能说明必须使用区块链。

应用设计还应明确链上规则的边界。例如,程序可以检查输入是否满足条件,但输入所描述的现实事件是否真实,需要另行建立可信依据。可验证的执行过程,不能自动解决所有数据来源问题。

常见问题与学习顺序

区块链记录是否绝对不能改变?更准确的理解是,历史修改受到密码学关联、验证规则和共识成本的约束。比特币存在竞争分支,因此区块高度也不能单独作为区块的唯一标识。

智能合约是否等于完整应用?合约承担链上逻辑,用户交互还需要相应的软件组件。入门可以先理解交易和区块,再学习节点与共识,最后梳理合约调用怎样影响状态;比较不同系统时,应分别确认其数据模型与执行规则。

← 返回全部文章

延伸阅读 · 相关栏目

行业资讯研究与报告政策资料交易平台观察