区块链技术

简介: 区块链特点一种特殊的分布式数据库,没有管理员,彻底无中心写入数据比较慢,要求实时的场景不适配能耗比较大,选择使用时需评估成本和目的(公益还是盈利)所有节点都全量存储数据,并同时支持读写区块链的组成区块链由一个个区块组成,区块很像数据库的记录,每次写入数据,就是创建一个区块。

区块链特点

  • 一种特殊的分布式数据库,没有管理员,彻底无中心
  • 写入数据比较慢,要求实时的场景不适配
  • 能耗比较大,选择使用时需评估成本和目的(公益还是盈利)
  • 所有节点都全量存储数据,并同时支持读写

区块链的组成

区块链由一个个区块组成,区块很像数据库的记录,每次写入数据,就是创建一个区块。
每个区块包含两个部分:区块头和区块体
区块头包含了当前区块的多项元信息,其中最主要的是

  1. 生成时间
  2. 实际数据(即区块体)的 Hash
  3. 上一个区块的 Hash(针对“区块头”(Head)计算的)
  4. Nonce 值,记录了 Hash 重算的次数。

区块体就是你需要保存的业务数据

Hash解释 

Hash 就是计算机可以对任意内容,计算出一个长度相同的特征值。区块链的 Hash 长度是256位,不管原始内容是什么,最后都会计算出一个256位的二进制数字。而且可以保证,只要原始内容不同,对应的 Hash 一定是不同的(忽略hash冲突的可能性)。
每个区块(包括当前时间)的 Hash 都是不一样的,可以通过 Hash 标识区块。
如果区块的内容变了,它的 Hash 一定会改变。
如果有人修改了一个区块,该区块的 Hash 就变了。为了让后面的区块还能连到它,该人必须同时修改后面所有的区块,否则被改掉的区块就脱离区块链了。Hash 的计算很耗时,同时修改多个区块几乎不可能发生,除非有人掌握了全网51%以上的计算能力。通过这种联动机制,区块链保证了自身的可靠性,数据一旦写入,就无法被篡改。

节点的同步 

所有节点的IP写死在代码或者配置中
分布式一致性保证中的拜占庭将军问题,只要叛变者不超过1/3,无论叛变者如何折腾,忠诚的将军总能达成一致的意见。
工作量证明机制(PoW),保证每10分钟生成一个区块, 依赖机器进行数学运算来获取插入区块权,资源消耗相比其他共识机制高、可监管性弱,每次达成共识需要全网共同参与运算,性能效率比较低,容错性方面允许全网50%节点出错。
当某个节点接到其他节点送来的区块时,必须立即停下手里的挖矿工作进行账簿确认。需要确认的信息有三个:账簿的Hash有效,区块的前一页Hash有效,区块体业务数据是否有效。

ps:

在网络可靠,存在节点失效(即便只有一个)的最小化异步模型系统中,不存在一个可以解决一致性问题的确定性算法。
分布式环境下的一致性问题无解,但是采用适当的机制(Paxos,Raft,PBFT,PoW/Pos/DPoS/Casper),永远无法达成一致的可能性极小。

计算Hash(采矿)

区块头包含一个难度系数(difficulty),这个值决定了计算 Hash 的难度。区块链协议规定,使用一个常量除以难度系数,可以得到目标值(target)。显然,难度系数越大,目标值就越小。
Hash 的有效性跟目标值密切相关,只有小于目标值的 Hash 才是有效的,否则 Hash 无效,必须重算。由于目标值非常小,Hash 小于该值的机会极其渺茫,可能计算10亿次,才算中一次。这就是采矿如此之慢的根本原因。这就是总所周知的工作量证明系统(Proof-of-Work)。
难度系数的动态调节,为了将产出速率恒定在十分钟,难度系数每两周(2016个区块)调整一次。如果这两周里面,区块的平均生成速度是9分钟,就意味着比法定速度快了10%,因此难度系数就要调高10%;如果平均生成速度是11分钟,就意味着比法定速度慢了10%,因此难度系数就要调低10%。难度系数越调越高,导致了采矿越来越难。
例子:比特币区块demo链接

ps:

哈希值是固定长度的数值,用来标识唯一数据。
哈希通过将索引、前个哈希、时间戳、数据、随机数作为输入后计算得出。
CryptoJS.SHA256(index + previousHash + timestamp + data + nonce)     data->对于比特币来说是默克树哈希值(2000个交易记录的hash组合)

SHA256 算法通过给定的输入,计算出一个唯一的哈希。相同的输入总会生成相同的哈希。

修改一个区块的唯一方式就是重新开采这个区块以及它之后的所有区块。因为新的区块不断增加,基本不可能修改区块链。

区块链的分叉

如果两个人同时向区块链写入数据,也就是说,同时有两个区块加入,因为它们都连着前一个区块,就形成了分叉。这时应该采纳哪一个区块呢?
规则是,新节点总是采用最长的那条区块链。如果区块链有分叉,将看哪个分支在分叉点后面,先达到6个新区块(称为“六次确认”)。按照10分钟一个区块计算,一小时就可以确认。由于新区块的生成速度由计算能力决定,所以这条规则就是说,拥有大多数计算能力的那条分支,就是正宗的区块链。

区块链的类型

公有链,任何人都可以参与使用和维护,典型的如比特币区块链,信息是完全公开的。
私有链,集中管理者进行限制,只有组织内部的人可以使用,信息公开程度完全由组织控制。
联盟链,介于两者之间,有若干个组织一起合作维护一条区块链,有权限的管理,相关信息会得到保护,典型的如银联组织。

区块链应用场景

区块链即服务,BlockChain as a Service(BaaS)
供应链,阿里对跨境电商防伪已经用上了区块链技术
汇款支付,虚拟货币的比特币就是一个例子
还有很多地方,可以集思广益,譬如身份识别,股票交易,药物防伪,物联网等等。

 

目录
相关文章
|
5月前
|
存储 供应链 API
区块链技术在电商API中的应用:保障数据安全与交易透明
区块链技术在电商API中的应用,为数据安全与交易透明提供了新方案。通过数据加密、分布式存储、智能合约管理、商品溯源及实时结算等功能,有效提升电商数据安全性与交易可信度。然而,技术成熟度、隐私保护和监管合规等挑战仍需克服。未来,随着物联网、大数据等技术融合及政策支持,区块链将在电商领域发挥更大潜力,推动行业智能化发展。
|
1月前
|
供应链 安全 算法
区块链技术探索与应用:从密码学奇迹到产业变革引擎
🌟蒋星熠Jaxonic,技术宇宙中的星际旅人。以代码为舟,算法为帆,在区块链的浩瀚星河中探索去中心化的未来。从智能合约到DeFi,用极客精神谱写信任新篇章。
区块链技术探索与应用:从密码学奇迹到产业变革引擎
|
6月前
|
传感器 人工智能 算法
聚焦“以技术集成支撑单亩价值创造”与“增加值分配机制区块链存证确权”两大核心本质
“振兴链-技术集成科技小院”以技术集成与区块链为核心,推动农业现代化。通过多维度技术整合(如精准农业、物联网等),突破资源约束,最大化单亩产值;同时利用区块链确权存证,建立透明分配机制,解决传统农业中收益不均问题。技术赋能生产,制度重塑分配,实现效率与公平的平衡,助力乡村振兴与产业升级。典型场景显示,该模式可显著提升单亩价值并确保增值公平分配。
|
2月前
|
人工智能 安全 数据可视化
数字孪生 + 区块链:MyEMS 引领能源管理技术融合新趋势
MyEMS融合数字孪生与区块链技术,打造可信、透明、高效的能源管理新范式。通过实时镜像、智能预测与数据上链,实现能耗可追溯、碳排可验证、交易可信任,推动能源管理迈向智能化与价值化新时代。(238字)
127 1
|
9月前
|
存储 安全 算法
深入探讨区块链技术的安全性
深入探讨区块链技术的安全性
623 103
|
5月前
|
存储 安全 API
区块链技术:为电商API接口应用前景筑牢安全与效率之基
区块链技术凭借其去中心化、透明性、安全性和不可篡改性,为电商API接口带来了全新机遇。它可提升数据安全性、增强交易透明度、优化供应链管理,并降低运营成本。应用场景包括数据加密传输、分布式存储、智能合约权限管理、商品溯源防伪及实时结算。尽管面临性能、隐私保护与监管等挑战,随着技术进步与融合创新,区块链将在电商API中实现更智能、高效的应用,推动行业变革升级。
|
9月前
|
安全 区块链 数据安全/隐私保护
区块链技术在跨境支付中的应用:打破传统,畅行全球支付新时代
区块链技术在跨境支付中的应用:打破传统,畅行全球支付新时代
1344 12
区块链技术在跨境支付中的应用:打破传统,畅行全球支付新时代
|
8月前
|
安全 算法 区块链
当量子计算遇上区块链:未来技术的双刃剑
当量子计算遇上区块链:未来技术的双刃剑
391 16
|
9月前
|
存储 供应链 物联网
区块链技术的未来发展趋势:革新、挑战与机遇
区块链技术的未来发展趋势:革新、挑战与机遇
474 8
|
10月前
|
供应链 算法 安全
探索区块链技术中的隐私保护机制
探索区块链技术中的隐私保护机制
435 27

热门文章

最新文章

下一篇
oss云网关配置