区块链
2022-04-24 18:51:45 16 举报
AI智能生成
区块链
作者其他创作
大纲/内容
区块链
特点
去中心化(Decentralization)
去信任(Trustless)
集体维护(CollectivelyMaintain)
可靠存储(ReliableDatabase)
核心价值
实现了价值转移
互联网实现了信息传播
定义
侠义:分布式账本
广义:分布式基础架构和计算范式
关键技术
密码学
哈希
应用
查询
哈希列表
一致性哈希
文件校验
linux md5sum
数字签名
网络报文签名
防篡改
鉴权
登录token
MD5
不可逆
防碰撞
两个串有相同的哈希值
王小云
密码存储
加盐
bcrypt
blowfish
SHA
仅仅是摘要比MD5长?
Merkle树
哈希二叉树
快速校验大规模数据的完整性
“轻客户端”
只下载区块头
加密
非对称加密
公钥加密,私钥解密
防止抵赖
各自保存好自己私钥,莫扯皮
RSA
大整数分解问题
SSL(Secure Socket Layer)
HTTPS
TLS(Transport Layer Security)
CA证书
ECC (Elliptic Curves Cryptography)椭圆曲线加密
离散对数类问题
比RSA更高效
164bit ECC == 1024bit RSA
D-H密钥交换协议
对称加密
加解密用同一个密钥
DES
AES
IDEA
分布式账本
区块
记录交易的数据结构
头部
版本
前一区块地址
时间戳
目标哈希值
难度目标,工作量证明
Nonce随机数
解密该区块相关数学题的答案
最快算出答案的节点会生成新的区块
Merkle树根
区块体
前一段时间内所有交易
交易组成
双方公钥
交易金额
电子火币的签名
交易数量
链
区块通过前一个区块的地址,形成的链
P2P动态组网
去中心化
健壮性
mesh networking
干掉运营商?
smart mesh
共识机制
Proof of Work 工作量证明
比特币
矿工
所有未记录的交易打包成块
通过遍历寻找随机数
数学计算
竞争记账权
选举获胜==获得比特币
优点
完全去中心化
简单,容易实现
缺点
浪费资源
速度慢
7笔/s
扩容难
分叉?
BTC
算力攻击?
Proof of Stake 权益证明
谁拥有的代币多谁就更有可能胜出
链龄
Peer Coin
公式预测
NXT
Black Coin
下赌注?
以太坊
根据所持有的代币时长和比例,等比例降低挖矿难度
F(Timestamp) < Target * Balance*CoinAge
timestamp比nonce空间更小,计算量小
时间短
减少了资源消耗
不公正?
分叉
ETC
Delegated Proof of Stake股权授权证明
董事会决定记账顺序
多中心化
101名董事
选举
退出
快
新块/30s
非完全去中心化
Practical Byzantine Fault Tolerance
(N-1)/3容错性
不依赖代币
共识时延2~5s
容错性差
超过1/3叛变?
传统分布式一致性算法应用
Paxos
约等于分布式一致性算法
proposers
acceptors
learners
算法,还是看raft吧...
最大区别可能是没有规定,同一时刻只能有一个leader?
比Raft要复杂,不好实现
google chubby只用来选主
Raft
leader
发心跳
接受请求,并同步给follower
follower
超时发起选举,投自己
term++
转为candidate
收到其他人的vote请求
如果比自己新,投赞成,并更新本地term
如果自己更新,投反对
candidate
收到比自己新的term的leader所发送的消息,转为follower
如果收集到超过一半的支持票,转为leader
leader election
如果一次投票,没有人获胜,随机等待,再进行新一轮投票
term
类似VR的view
Zab
broadcast
没有rollback的两阶段提交
recovery
zxid最大的作为新leader
把半提交的消息重新提交一遍
leader收到消息,但还没来得及广播的消息将会被丢弃
64位自增zxid
前32位是epoch
新leader产生+1
后32位为自增消息ID
epoch+1时清0
zxid低32位溢出,会重新发起选举
Viewstamped Replication
两阶段提交
递增的OP_NO等
>N/2副本同步
view change
IP顺序轮流当主
启动view change后不再处理老primary任何消息
联盟链,私有链常用
FLP不可能性
在异步通信场景,即使只有一个进程失败,也没有任何算法能保证非失败进程达到一致性
智能合约
在一定条件满足后,自动执行的代码
状态机
以太坊 storedData
存储在区块链上,不可修改
可追踪
语言
Solidity
在线编辑
JS
区块链2.0
尼克·萨博(Nick Szabo)
激励机制
创建新区块奖励
开始50个比特币
每4年减半
2140年截止
总量2100W
手续费
产业
应用服务层
可编程货币
数字货币
可编程金融
金融交易
资产管理
可编程社会
数据存储
审计公正
供应链管理
中间协议层
共识算法
PoW
PoS
DPoS
激励层
发行机制
分配机制
合约层
脚本
算法机制
基础网络层
数据层
区块数据
哈希函数
链式结构
分对称加密
网络层
P2P网络
传播机制
验证机制
发展
1.0
虚拟货币
ICO
2.0
超级账本
金融领域
跨境支付
Ripple
供应链金融
易见区块
保险
数字票据
ABS
纳斯达克私募 Linq
银行征信
3.0?
泛行业去中心化应用(区块链+)
医疗
物联网
共享经济
能源
版权
公共服务&教育
阿里公益
分类
共有链 public blockchain
以太网
工作量证明 PoW
权益证明PoS
联盟链 consortium blockchain
超级账本? Hyperledger
PBFT
RAFT
多中心
私有链 private blockchain
企业内部
侧链(Side Chain)
确认来自其他区块链的数据的区块链?
0 条评论
下一页