区块链系统保证所有节点均衡地达到区块链账本的完整性和共享内容的一致。这也是我们在本书讨论区块链的原因。图19.1区块链数据结构图19.1中,每个块是一个交易集,头上的块是源块。智能合约是指在区块链的账本里作为数据部署的程序,在区块链交易时执行。......
2023-10-28
下面讨论如何利用区块链记录交易和存放分布式账本。
假设有甲、乙、丙、丁四个用户。
Step-1:令甲有300元钱,这是所有交易的起源,每个节点都知道此事,如图19.5所示。
图19.5 源块
Step-2:甲向乙付款20元,这样区块链上的每个节点都会更新信息,如图19.6所示。
Step-3:接下来发生第二次交易,乙付给丙5元,如图19.7所示。
每个节点中的交易数据是不可改变的,所有交易都是不可逆的。所有新交易的结果都在每个节点自己的区块链副本里记录下来。
图19.6 第一次交易
图19.7 第二次交易
当然,随之会有疑问,假如乙重复多转了5元给丙,该怎么办?安全性如何保证?有人将钱转错了对象,怎么办?
这些也都是区块链系统需要解决的问题。
要建立一个区块链系统,首先要建立一个纯P2P分布式系统,该系统的特点主要包括以下几点。
●P2P系统使用Internet作为连接各个节点的网络。
●节点数目未知、节点的可信度和可靠性未知。
●P2P系统的目标是管理数字化物品(如销售积分、数字货币)的所有权。(www.chuimin.cn)
在一个开放的、不可信的环境里使用纯分布式P2P簿记系统来管理所有权,设计和开发这样一个软件的主要任务是:描述所有权;保护所有权;存储交易数据;预备账本,以分布到一个非可信环境里;分布账本;往账本中添加新交易;决定哪些账本表示事实。
区块链的工作过程如下。
任务1:描述所有权。
要设计一个软件系统管理所有权,首先要确定如何描述所有权。结果是,记录交易是表述所有权转变的最好途径,完整的交易历史是识别当前所有者的关键。所以,区块链主要记录交易,构成完整的交易历史。
任务2:保护所有权。
使用交易来表述所有权后,如何防止他人存取别人的财产呢?现实世界里,我们会使用门锁来防止别人闯入自己的家里,或者使用车锁来防止别人闯入自己的汽车。类似地,在区块链里使用加密来保护资产。用户的账号、口令和交易要用密码来保护。
保护所有权有三个要素:标识所有者、认证所有者和限制他人访问所有者的资产。这里也使用了哈希技术。
任务3:存储交易数据。
接下来的问题是如何存储交易数据,保证交易历史完整,这里使用了区块链数据结构。
任务4:预备账本,以分布到一个非可信环境里。
隔离的区块链数据结构账本包含的交易数据很大,我们希望在非可信环境里设计账本的分布式P2P系统,所以会广泛使用副本,并将之分布在非可信网络的非可信节点上。我们会把账本交付给没有集中控制点或协调点的网络。如何防止账本出现差错?例如,删除某个交易或者加入非法交易。为了解决这个问题,要保证历史交易不被修改,即一旦写入账本,历史交易就不能再被修改。这样,账本里可以添加新交易,但是写入的数据不能被改变。
任务5:分布账本。
账本只能添加属性,可以创建账本的分布式P2P系统,让账本的副本为请求的每个用户执行查询操作。在分布账本的过程中,节点间会相互通信和交互。
任务6:往账本中添加新交易。
分布式P2P系统包含很多成员,成员在计算机上又各自维护着所添加属性的区块链数据结构。因为数据结构允许添加新的交易数据,所以必须保证只有有效的和被授权的交易才能添加进去。这样既允许P2P系统的每个成员添加新交易,又允许每个成员变成其他端点的监督员。结果所有成员都监督别人,可指出其他端点的错误。
任务7:决定哪些账本表示事实。
新交易添加入P2P系统的各个账本中,由于不同的端点会收到不同的交易数据,所以各自维护的历史交易不同。由于系统存在不同版本的历史交易,因此要由一种方法确定哪个历史表示的是真实现状。
有关分布式数据库技术的文章
区块链系统保证所有节点均衡地达到区块链账本的完整性和共享内容的一致。这也是我们在本书讨论区块链的原因。图19.1区块链数据结构图19.1中,每个块是一个交易集,头上的块是源块。智能合约是指在区块链的账本里作为数据部署的程序,在区块链交易时执行。......
2023-10-28
图19.18区块链的分层结构图下面对区块链系统的分层结构进行讨论。来自执行层的事务由一组指令构成,在语义层得以验证其有效性。在比特币系统中,合法事务、双重支出问题、是否获得授权等都在语义层进行验证。区块链系统的安全性也要在这个层面确认。......
2023-10-28
1.区块链的定义从科技层面来看,区块链涉及数学、密码学、互联网和计算机编程等很多科学技术问题。区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链是比特币的一个重要概念,它本质上是一个去中心化的数据库,同时作为比特币的底层技术,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次比特币网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。......
2023-11-01
基于网络数据的能力证书由于缺乏权威的过程性监管,造成利益相关方难以取信,饱受怀疑,要真正实现可替代性数字证书的社会与教育价值需要应用区块链技术。区块链技术颠覆了任何建立在加盖时间戳的所有权记录基础上的活动领域。在教育行业,将受到区块链技术影响的内容包括获奖资格、许可鉴证、学生记录管理、知识产权管理、付款方式等各类学习成果的记录与认证。马耳他是世界上第一个试点区块证书的国家。......
2023-10-23
区块链在国际汇兑、信用证、股权登记和证券交易所等金融领域有着潜在的巨大应用价值。将区块链技术应用在金融行业中,能够省去第三方中介环节,实现点对点的直接对接,从而在大大降低成本的同时,快速完成交易支付。比如,Visa推出基于区块链技术的 Visa B2B Connect,它能为机构提供一种费用更低、更快速和安全的跨境支付方式来处理全球范围的企业对企业的交易。该领域被认为是区块链一个很有前景的应用方向。......
2023-11-01
2019 年1 月10 日,国家互联网信息办公室发布《区块链信息服务管理规定》。2019 年10 月24 日,在中央政治局第十八次集体学习时,习近平总书记强调“把区块链作为核心技术自主创新的重要突破口”“加快推动区块链技术和产业创新发展”。区块链已走进大众视野,成为社会的关注焦点。区块链起源于比特币。2009 年1 月9 日出现序号为1 的区块,并与序号为0 的创世区块相连接形成了链,这标志着区块链的诞生。央行数字货币并未完全采用区块链技术。......
2023-11-25
蚂蚁金服说有这3大挑战2017-03-02 转自《虎嗅网》 蚂蚁程序猿虎嗅注:在国内,区块链技术已经走过了2015、2016两个元年,而2017年也被冠上了区块链“战略元年”的帽子。概念的火热映射出了区块链技术落地不畅的尴尬处境。此外,虎嗅还将联合蚂蚁金服陆续推出三期线下沙龙活动,每期关注一个金融科技细分领域,理清行业痛点和热点,探索发展之路。......
2024-01-10
区块链金融是区块链技术在金融领域的应用。区块链金融的应用主要体现在以下六个方面。各国央行均认识到数字货币能够替代实物现金,降低传统纸币发行、流通的成本,提高支付结算的便利性;提高经济交易的透明度,减少洗钱、逃漏税等违法犯罪行为,提升央行对货币供给和流通的控制力;同时,将数字货币背后的区块链技术应用扩展到整个金融业及其他领域,能够确保资金和信息的安全,提升社会整体效能。......
2023-07-05
相关推荐