区块链的就业趋势
区块链的就业趋势
区块链的主流技术
- 比特币
- 以太坊
- Linux基金会 Hyperledger
- EOS
- 各个厂商自研区块链技术
核心技术点
整体架构
共识排序
账本存储
智能合约
环境搭建
- 配置文件
- 网络部署
- 合约交互
案例实战
-
资产交易平台
-
需求分析
-
链码编写
-
链码交互
区块链入门
一、区块链技术名词
交易(Transaction):一次状态转移的操作
区块链(Block):交易的集合
链(Chain):区块的顺序排序
二、区块链类型
公有链
联盟链
私有链
三、区块链特点
去中心化
去信任化
数据共享
不可篡改
四、区块链平台
比特币
以太坊
EOS
超级账本(Fabric)
五、应用场景
- 去信任(去中介)
- 价值转移(拷贝)
- 数据共享
- …
区块链技术
P2P 网络协议
去中心化,节点共享 迅雷技术
密码学–哈希(HASH)
- 将不定长度的数据转换成固定长度的哈希值
- MD5、SHA1、SHA2(SHA2-256)
- 正向快速、逆向困难
- 输入敏感
- 抗碰撞
密码学–加解密算法
- 对称加密:密码相同,容易泄露(AES,DES等)
- 非对称加密:公钥/私钥,效率低(RSA,椭圆曲线等)
账本结构
共识算法-CAP原理
- 一致性(Consistency)
- 可用性(Availablity)
- 分区容忍性(Partition Tolerance)
共识算法-ACID原理
- 原子性
- 隔离性
- 一致性
- 持久性
共识算法
-
Paxos
-
拜占庭容错
共识算法(分布式一致性算法)
PoW | DPoS/POS | PBFT | Raft | |
---|---|---|---|---|
场景 | 公链 | 公链 | 联盟链 | 联盟链 |
去中心化 | 完全 | 完全 | 多中心 | 多中心 |
响应时间 | 10分钟 | 1分钟 | 秒级 | 秒级 |
容错 | 50% | 50% | 33% | 50% |
Hyperledger
Hyperledger(或Hyperledger项目)是一个旨在推动区块链跨行业应用的开源项目,由Linux基金会在2015年12月主导发起该项目,成员包括金融,银行,物联网,供应链,制造和科技行业的领头羊。
一、目的
2015年12月,Linux基金会宣布了Hyperleger项目的启动。创世成员于2016年的2月被宣布。随后的3月29日,另外的10名成员及治理理事会被公布.5月19日Brian Behlendorf被任命为项目的执行总监.
项目的目标是区块链及分布式记账系统的跨行业发展与协作,并着重发展性能和可靠性(相对于类似的数字货币的设计)使之可以支持主要的技术、金融和供应链公司中的全球商业交易。该项目将继承独立的开放协议和标准,通过框架方法和专用模块,包括各区块链的共识机制和存储方式,以及身份服务、访问控制和智能合约。
二 、全家福
Hyperledger Burrow
Burrow是一个包含了“built-to-specification”的以太坊虚拟机.区块链客户端。其主要由Monax贡献,并由Monax 和英特尔赞助。
Hyperledger Fabric
Hyperledger Fabric是一个许可的区块链构架(permissioned blockchain infrastructure)。其由IBM和Digital Asset最初贡献给Hyperledger项目。它提供一个模块化的构架,把架构中的节点、智能合约的执行(Fabric项目中称为”chaincode”) 以及可配置的共识和成员服务. 一个Fabric网络包含同伴节点(”Peer nodes”)执行chaincode合约,访问账本数据,背书交易并称为应用程序的接口。命令者节点(”Orderer nodes”)负责确保此区块链的一致性并传达被背书的交易给网络中的同伴们;以及MSP服务,主要作为证书权威(Certificate Authority)管理X.509证书用于验证成员身份以及角色。
Hyperledger Iroha
Iroha是一个基于Hyperledger Fabric主要面向移动应用的协议,由Soramitsu贡献。
Hyperledger Sawtooth
由Intel贡献的Sawtooth利用一种新型公式机制称为时间流逝证明(”Proof of Elapsed Time,”)一种基于可信的执行环境的彩票设计模式的共识协议由英特尔的Software Guard Extensions (SGX)提供。
三、源代码
https://github.com/hyperledger
Hyperledger Fabric
一、项目介绍
- IBM发起,linux资金会托管
- 企业级联盟链基础设施
- 课插拔的共识机制(solo,kafka)
- 多链路多通道隔离
二、只能合约
- 区块链2.0:以太坊
- 合约协议的数字化代码
- 分布式有限状态机
- 执行环境安全隔离、不受第三方干扰(EVM,docker)
三、链码
-
fabric应用层基石(中间件)
-
链码编程接口
Init
Invoke
四、环境装备
-
操作系统(mac Ubuntu centos)
-
Docker环境支持(Docker 、Docker Compose)
-
Fabric组件Docker镜像
-
Fabric源码库
源码库版本切换—>release-1.0
cryptogen,configtxgen工具编译
-
fabric-samples 案例
五、第一个Fabric网络
- byfn.sh -m generate
- byfn.sh -m up
- byfn.sh -m down