主页 > imtoken快速下载 > 精通以太坊 guide.md xingzjx/区块链

精通以太坊 guide.md xingzjx/区块链

imtoken快速下载 2023-01-31 06:01:43

区块链开发学习指南 区块链知识分类

概述:本模块从区块链的综合角度分析区块链需要学习的知识点。 如果将现有的系统开发模型分为三部分,即基础设施、微服务、前端。 那么目前的区块链发展也可以分为三个模块。

基础设施服务前端交互

区块链开发中的前端类似于现有的前端,包括H5、Android、IOS等前端交互,不同的是区块链前端需要与区块链的节点进行通信。区块链并调用智能合约来满足应用需求。

技术要点:web3j(java语言)、web3js、etherjs、ABI(应用程序编程接口)等。

区块链开发方向,对于前端,不需要去研究Android、IOS或者前端技术栈,而是要熟悉智能合约的调用和以太坊的json-rpc接口。

区块链以太坊生态系统综合学习计划

(1)精通以太坊,精通中文版以太坊,作者Gavin Wood

本书可以全面了解以太坊相关知识,对以太坊有一个整体的把握。 以下是关于以太坊相关资料的收集:

以太坊白皮书知乎

以太坊白皮书英文

以太坊白皮书中文

以太坊黄皮书中文

币安智能链白皮书

以太坊 JSON-RPC 文档

jsonrpc协议文档

精通以太坊中文

注:根据近期反馈,建议精通以太坊和精通比特币一起观看,效果会更好。

(2) 智能合约

精通以太坊_以太坊和以太经典未来哪个好_以太坊官网以太坊

智能合约学习教程

solidity官方文档

truffle官方文档

(3)现有dapp设计:如uniswap

uniswap开发视频教程

uniswap发展解读

uniswap白皮书v2中文版

(4) 共识算法

(5) 扩展:layer2

(6) 网络模型:devp2p

(7) 密码学知识

存储生态

技术要点:cephfs、filecoin、ipfs

filecoin白皮书中文版

嘉白皮书

嘉绿皮书

注:Qia等不属于存储生态,但使用类似时空证明或PoC共识机制。

钱包和交易所

钱包和交易所的业务有一定的重叠,钱包的常用技术:flash exchange原理,web3j等。

以太坊和以太经典未来哪个好_以太坊官网以太坊_精通以太坊

交易系统架构的演变

跨链生态

技术要点:comos、rust、polkadot

波卡白皮书中文版

Cosmos白皮书中文版 Cosmos白皮书英文版

比特币研究

精通比特币中文版

比特币白皮书中文版

比特币白皮书中文版(Bitcoin.org版)

联盟链

技术要点:hyperledger fabric、quorum(摩根大通开源)、云业务(如阿里baas)

学习视频链接: 密码:b3mf,该视频链接包含后台集中开发,涵盖了上面列出的大部分知识。

挖矿和矿池

研究比特币、以太坊等山寨币的挖矿过程,以及矿池的建设和原理。

层协议 v2 版本

poc矿池hpool

btcpool开源实现

open-ethereum-pool 以太坊矿池学习笔记

核心技术点分析

以太坊官网以太坊_精通以太坊_以太坊和以太经典未来哪个好

该模块从多个领域进行分析和归纳,找到知识点之间的共同模块。 包括对Android、IOS、H5、后台Go、跨端等开发领域的分析总结,提取有限的知识点和模块,进一步深化学习。

贮存

移动端的存储包括网络和本地存储sqlite或者基于key-value的存储。 后台开发中常见的存储技术有云盘、分布式存储系统ceph、Synology等。

区块链开发需要掌握分布式存储系统ceph,以及去中心化存储filecoin、ipfs、以太坊链上存储等,Filecoin需要学习其共识算法(存储证明和时空证明)。 还包括区块链账本精通以太坊,一般使用的技术是leveldb。

关键词:filecoin、ipfs、ceph、PoRep、PoSt

互联网

中心化模型是基于客户端-服务器模型,而区块链中的网络模型是p2p,每个节点作为客户端和服务器,也是去中心化的。 常见的 p2p 开发库包括 devp2p 和 libp2p。 目前,以太坊使用的是devp2p,大多数底​​层公链使用的是libp2p。 目前,libp2p已经成为主流的p2p网络实现,形成了一个开源社区。 以太坊 2.0 也计划使用 libp2p 来实现其 p2p 网络。 libp2p和devp2p都使用kad算法(DHT)实现分布式路由寻址。

关键词:devp2p、libp2p、dht、kad、gossip

区块链P2P网络详解

语言

底层链和公链开发语言大多是Golang,也有Rust、Java、C++等。一般大部分公链都有多种语言实现版本,比如以太坊,有Go、Rust、Java等实现版本。

以太坊智能合约的主要开发语言是Solidity,Hyperledger Fabric的合约(链码)开发语言支持Go、Java等。

前端交互还是中心化的开发模式,使用的技术栈还是一样,只是会接入以太坊的SDK,比如web3j、we b3js、web3dart等。

关键词:Rust、Golang、Solidity、EVM、WASM、Web3j、Web3js

参考链接:

solidity官方文档

Go语言的设计与实现

进阶训练营

共识

精通以太坊_以太坊官网以太坊_以太坊和以太经典未来哪个好

区块链中的共识机制相当于分布式系统的共识算法。 分布式系统常见的共识算法有Paxos、Raft、PBFT(拜占庭共识)、ZAB算法等。 区块链中的场景共识机制包括Pow、Pos、Tendermint(拜占庭共识)、混合共识(Poca、GRANDPA和BABE机制)、Dpos等。

关键词:Paxos、Raft、Pow、Pos、Dpos、Tendermint、PBFT

Tendermint 官方文档

Tendermint官方文档中文版

以太坊的 Casper 协议

英文以太坊的Casper协议

实用拜占庭容错论文中文版

共识算法系列之一:raft和pbft算法

Raft共识算法论文

拜占庭将军问题

Raft 共识实现

Poa共识机制

简述目前比较成熟的区块链共识算法

ETH-Ethereum 的 GHOST 协议

扩张

扩容是指提高区块链的TPS。 扩容技术分为链上扩容和链下扩容两种方式。

image-20210427142215356

其中知名的Optimistic Rollup和ZkRollup属于链下扩展layer2解决方案

参考:

以太坊官网以太坊_精通以太坊_以太坊和以太经典未来哪个好

谈谈区块链的链上扩容和链下扩容

2万字波卡架构与下一代DApp开发技术全解说

关键词:Optimistic Rollup,ZkRollup,layer2,Zksnark,跨链精通以太坊,分片,闪电网络,共识

密码学

在区块链中应用了大量的密码学知识,例如对称加密、非对称加密、哈希算法、椭圆曲线算法、零知识证明、随机数算法等。 例如,私钥通过伪随机数算法生成,利用椭圆曲线算法从私钥推导出公钥。

关键词:ECC、AES、RSA、SSL、零知识证明、数字签名(聚合签名、环签名)、随机数算法、VDF(延迟证明)、SM2

虚拟机

虚拟机包括EVM、WSAM、FVM(Filecoin VM)等。

数据结构算法

区块链中常用的数据结构是Merkle树(一种二叉树),uniswap交易所的工厂合约采用常数积做市算法、椭圆曲线算法等。

关键词:默克尔树,常数积

公司类型

区块链发展的厂商和公司类型包括项目外包、矿工、节点运营商、包括量化在内的金融defi、传统互联网公司(联盟链baaS)、区块链媒体、特定领域公链、数字交易所等。

其中,中国在做底层链趣链(跨链等)、OnChain(DNA链)、TopChain、VeChain、GXP、bitconch、conflux、维基链。

相关工作内容及学习方法总结

学习方法是个人的总结和见解。 首先全面学习区块链的相关技术,对应第二节列出的技术点及其学习计划列表和视频相关流程。 这样学习之后,你会对区块链开发有一个整体的了解,然后从核心技术点入手,总结之前学过的知识,每隔一段时间学习和研究一个课题,并有相关的技术文档输出.

这种学习思路是先面后点,由点扩展到面,相互融合。 其中,面只是指知识的综合性和整个知识体系,而点是从知识面上总结出来的关键点,是有限的分类。

最后补充一点,学习资料的收集尽量来自官方的、比较权威的资料。

blockchainguide在线资料