学习地址:https://www.bilibili.com/video/BV1gt411T7Tq
文章目录
1 区块链概念
狭义:区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本。
常规理解:一条链,链上有好多区块,区块里面数据不能改。
2 区块链发展背景:比特币
2.1 解决问题
(1)高度自治
(2)无国界贸易
(3)不可篡改(交易数据,一旦完成 不可篡改)
(4)隐私安全(比特币不用提交真实姓名和用途)
2.2 去中心化模型(点对点通信)
2.3 账本隐私和快速对账(hash算法)
hash算法:①提取特征;②明文加密;
hash在线加密(网址之一): http://www.jsons.cn/allencrypt/
比特币中账本隐私和快速对账:
1.比特币系统利用hash算法对交易信息(账户、交易内容)进行加密,保护隐私。
2.比特币系统利用Hash值进行对账。
2.4 账本一致性(解决双花问题)
比特币解决双重支付(双花)问题
1.比特币系统规则:最长链为可信任的链条
2.采用工作量证明(简称:pow)获取记账权
比特币交易原理:
区块链实例网址:https://anders.com/blockchain/block.html
2.5 比特币分叉(硬分叉 软分叉)
扩容前:每秒交易7笔
比特币硬分叉(不能合并)
比特币软分叉(可以合并)
比特币分叉
1. 硬分叉,因为系统更新导致出现分支,并且不可合并。如,比特币扩容
2.软分叉,可合并。如,篡改数据
2.5 比特币系统总结
1.比特币不是一种货币,是一个分布式的账务系统。
- 账本的同步和对账。
- 账本记录交易过程,由节点广播到网络,保持其余节点数据一致。
2.比特币系统采用了去中心化的方式。
- 去中心化并不是没有中心,而是中心不停的变化,每一次的中心都是由节点竞争得出。
3.比特币系统中节点的通信,采用的是点对点(Peer to Peer)的通信方式。
4.去中心化的账本存在一些弊端,比特币系统都进行了解决。
- 4.1 账本隐私
hash加密个人信息,确保隐私不泄露。
注意: hash算法不可逆,不能够通过hash字符串反推原文。 - 4.2 快速对账
比对hash值,判断账本的一致性。 - 4.3 确保账本的正确性
在比特币系统中,伪造的账本想要成为主链,必须要和比特币系统其余的人比拼算力,只有长时间的保持算力优先,才有伪造账本的可能,但保持长时间的算力优先,难度是巨大的,有可能维护算力优先的成本,都高于伪造账本的获利,比特币正是通过这一手段,保证了账本的正确性。
5. 比特币分叉
- 硬分叉∶无法将侧链合并回主链,称为硬分叉.
- 软分叉:出现短暂的分叉,而且有可能并回主链,称为软分叉。
3 区块链技术总结
3.1 分布式数据存储
- 在每个参与者电脑上备份账本实时同步和对账
- 保证公开透明
3.2 点对点通信
3.3 共识机制
- 比特币系统的主链容易出现短暂的分叉,这个分叉最终是会合并到主链上去的.
- 比特币中用pow算法保证了账本的一致性,也让比特币系统变得更加安全可靠。
3.4 加密算法
- 对用户个人信息的加密
- 转账过程中的签名授权
- 账本一致性校验
- 挖矿算法的目标hash
- 等等