区块链相关技术学习——起点

  区块链主要是由几个大的技术进行应用的模式,包括分布式数据存储、点对点传输(P2P)、共识机制、加密算法等。

  开源的软件建构其上的P2P网络,其支持这一个应用的底层技术叫做区块链,本质上是一个去中心化的数据库,区块链是利用密码学方法产生的数据块,每一个数据块包含了一次比特币网络交易的信息,用于验证其信息的有效性(防伪)与生成下一个区块。

    区块链特征:去中心化、开放性、自治性、信息不可篡改。匿名性。

   发展过程:1.0——数字货币,比特币 2.0——数字资产与智能合约、以太坊 3.0——DAO、DAC

    区块链分类:私有链、公有链、联盟链。

区块的结构,区块头和内部交易数据组成,区块头包含:区块编号、上一区块哈希值、本区块哈希值、挖矿随机数、难度、时间戳。

区块链2.0技术架构分五层由上至下分别为:智能合约层(EVM和solidity脚本)、激励层(发行机制、分配机制)、共识层(POW、POS、DPOS、PBFT)、网络层(P2P网络、传播机制、验证机制)、数据层(区块数据、链式结构、数字签名、哈希函数、Merkle树、非对称加密)

以太坊大致的架构图

分布式应用接口 

智能合约 

EVM虚拟机 RPC(remote procedure call)远程过程调用

区块链技术整合  共识机制(在POW的基础上生成POS) 矿工  网络

P2P 密码类库 支持http的类库 leveldb数据库 solidity语言  math&number类

学习Geth、Browser-sodility、Mist三大工具

以太坊以区块链加智能合约为基础,所以同样也有区块链技术中的Transaction,Block,账户与账户之间的关系需要用transaction来执行,任何的transaction都需要有通过挖矿的block来产生。

但是以太坊与比特币技术不同的是:

    1)实现了solidity语言的智能合约,并将智能合约看做成一种特殊的账户,从而使得在智能合约上可以实现具体的方法。

    2)实现了智能合约能落地地执行的EVM(以太坊虚拟机),通过以太坊虚拟机,从而将solidity这样的类js的代码变成了可以在区块链上执行的加密代码。

    3)不同于比特币技术,在以太坊的transaction都需要用到gas,一份合约或者一次交易的gas是固定的(取决于代码大小和复杂度),而gas的价格则由以太坊的oracle来决定。

    4)以太坊还同时构建了完整的、开源的生态系统、不仅有底层的geth、编程的solidity、合约在线浏览器browser-solidity、合约钱包mist/wallet、以太坊的前端开发框架Truffle、各种各样的开源Dapp,方便大家快速上手,并开发出适合落地的区块链应用。

 具体安装经过一阵摸索 摸爬滚打

已经可以在本地部署remix-solidity

猜你喜欢

转载自blog.csdn.net/qq_36344771/article/details/81001136