IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 区块链 -> 以太坊基础知识 -> 正文阅读

[区块链]以太坊基础知识

以太坊基础知识
1.什么是以太坊:密码学账本,有很多高级功能(去中心化交易、用户发行自己的货币,智能协议等);

2.交易费用:按照字节收取费用,每字节5gas;

3.钱包:

冷钱包:离线,断网;私钥与交易的分离;
热钱包:联网;私钥存储在能被网络访问的位置;
中心化钱包:交易平台注册的账号就是中心化钱包,所有的数据都从自己的中心化服务器获得
轻钱包:依赖比特币网络上其他全节点,仅同步和自己相关的数据
全节点钱包:需要同步所有的区块链数据,完全去中心化

4.节点:以太坊P2P网络中的节点。在Ethereum网络中每个节点互相沟通和同步区块资料,分为。矿工节点,其他节点。

从其他的以太坊节点接收区块资料同步区块。
验证该区块是否正确,若正确就保存在本地端的数据库。
接收其他帐户或Dapp所发起的交易。
挖矿来获得奖励的币并把交易纪录写入区块。
把区块资料传送给其他以太坊节点来达到同步区块。
智能合约的布署也是由以太坊节点来负责。以太坊节点也负责智能合约执行。
外面的网站可以与以太坊节点沟通来取得区块相关的历史纪录。

服务器测试链转账:

eth.sendTransaction({from:“目标地址”,to:“接收地址”,value:web3.toWei(数量,“ether”)})
转账前需要解锁目标地址
personal.unlockAccount(“目标地址”, “密码,没有的话不写”,时间(单位默认为秒))
查看钱包地址余额,换算ether为单位表示

web3.fromWei(web3.eth.getBalance(“地址”),“ether”)

查看这笔交易详细信息:

启动交互式窗口:

geth console
后台运行geth 输出实时log:
nohup geth > geth.log&

5.服务器搭建节点:

1).a.安装 go 语言
安装 go 主要是为了去编译 go-ethereum 源码;
yum install go-ethereum

b.安装 git
安装 git 主要是为了拉取 go-ethereum 源码;

c.获取 go-ethereum 源码
git clone http://github.com/ethereum/go-ethereum.git

d.配置环境变量;

f.创建私有链
geth --datadir “node1” init genesis.json

g.启动私有链 ;
geth --datadir “node1” --networkid 989898 --rpc console --port 30304 --rpcport 8546

–node1 第一个节点,如果还需要启动第二个节点,将node1变为node2,然
后同样运行初始化,以及启动节点命令即可(以此类推).
–rpcport value HTTP-RPC服务器监听端口(默认值:8545),可以改为不同的端口。
–rpc console --port value HTTP-RPC服务器接受广播端口

2).a.创建账户后进行挖矿

personal.newAccount()

b.启动挖矿
miner.start()

停止挖矿
miner.stop()

c.查看用户
eth.accounts

查看用户1的余额
eth.getBalance(eth.accounts[0])

查看用户2的余额
eth.getBalance(eth.accounts[1])

6.区块链交易过程:
A.某人发出交易请求
B.广播交易请求到 P2P 网络
C.验证,矿工验证交易正确性
D.多个交易组成一个区块
E.新的区块加入到一个已经存在区块链中
F.交易完成

7.矿工根据交易哈希确认你是你,在发起交易时,交易发起人需要使用[私钥]对交易进行签名,私钥可以生成公钥,公钥可以生成公钥哈希,公钥哈希又可以生成钱包地址.整个过程中除了公钥哈希生成钱包地址是可逆的,其他都是不可逆的.

9.一个区块中,包含了两种哈希值:“上一个区块的哈希值”和“本区块的哈希值”。因为每个区块都包含了上一个区块的哈希值,所有的区块就依次连成一条(逻辑上的)链。“上一个区块的哈希值”就起到了“页码”的作用——给页排序。
如果一个区块上的交易信息被人恶意篡改的话,“本区块的哈希值”就会改变。由于区块链中下一个区块包含了“上一个区块的哈希值”,为了让下一个区块依然能连到本区块,需要修改下一个区块。而这又导致下下个、下下下个…区块也必须修改。

10.常见问题:输入miner.start返回null
解决方案:启动私链时时,加入参数在后面添加–dev.period 1,注意,参数值为1,不是默认的0。

  区块链 最新文章
盘点具备盈利潜力的几大加密板块,以及潜在
阅读笔记|让区块空间成为商品,打造Web3云
区块链1.0-比特币的数据结构
Team Finance被黑分析|黑客自建Token“瞒天
区块链≠绿色?波卡或成 Web3“生态环保”标
期货从入门到高深之手动交易系列D1课
以太坊基础---区块验证
进入以太坊合并的五个数字
经典同态加密算法Paillier解读 - 原理、实现
IPFS/Filecoin学习知识科普(四)
上一篇文章      下一篇文章      查看所有文章
加:2021-07-25 11:44:43  更:2021-07-25 11:44:47 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/25 18:46:11-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码