去中心化概念文档更新

master
土豆兄弟 1 year ago
parent 2bf2e0f1cf
commit 4f2213d902

@ -98,8 +98,112 @@ pipenv install flask==0.12.2
pipenv install requests==2.18.4
```
### 2.1 创建项目及区块结构
- blockchain.py
### 2.1 区块链的实现代码
- demo/blockchain.py
## 3. 以太坊
- 比特币的局限性
- 2013 Vitalik Buterin 发表了以太坊白皮书
- 以太坊描述及特点
- 去中心化应用平台
- 区块链 2.0
- 可编程(操作系统)
- 智能合约, EVM
- 约每 15 秒出块, 挖矿奖励3ETH, 叔块奖励
- 无总量限制(比特币总共有2100万枚)
### 3.1 核心概念-智能合约
- 以太坊上的程序, 是代码和数据(状态)的集合
- 准图灵完备
- 典型应用: 代币: EOS, 游戏: 迷恋猫
- 编程语言: Solidity
- 类 JavaScript语言 .sol
```solidity
contract HelloWorld{
function hello() public returns(string){
return "Hello World";
}
}
```
- IDE : Remix
- https://remix.ethereum.org
- 运行环境: EVM
- Solidity -> EVM
- Java -> JVM
### 3.2 核心概念-账户
- 账户
- 地址(Address): 20字节
- 状态(State)
- 账户分类
- 外部账户(EOA)
- 合约账户
- 消息由于外部账户发布, 合约的账户不能主动发起交易, 只能通过外部触发
### 3.3 核心概念-钱包
- 钱包(理解为一个开发者工具)
- Geth, Mist, MetaMask
```shell
# 启动终端
geth --datadir testNet --dev console 2>> test.log
# 查看账号信息
eth
# 列出账号的一些信息
personal.listAccounts
# todo 各种 API, 自行进行查看即可
```
### 3.4 核心概念- 交易手续费 Gas
- 费用: Gas价格(用以太币计价) * Gas 数量
- Gas 可以限制工作量, 从账户进行付费, 矿工进行获取
- 以太币单位
- 最小单位: 1Wei
- 10^9 Wei = 1 Gwei
- 10^12 Wei = 1szabo(萨博)
- 10^15 Wei = 1 finey(芬尼)
- 10^18 Wei = 1 Ether
### 3.4 核心概念- 以太坊网络
- 主网, 测试网络, 私有链, 模拟环境
- 区块链分类
- 公有链, 联盟链, 私有链
## 4. 去中心化应用
- 传统互联网应用
- 中心化, 容易更新, 数据完全掌控
- 去中心化应用
- 去中心化, 按规则运行
- 去中心化 Dapp
- 应用层
- 前端 : APP, H5/CSS
- 后端 : 节点, 存储
- 智能合约
- 去中心化应用案例
- 预测平台: Augur
- 谜恋猫: https://www.cryptokitties.co/
- 百度莱茨, 网易招财猫, 小米加密兔
@ -127,4 +231,3 @@ pipenv install requests==2.18.4
##
Loading…
Cancel
Save