go语言挖矿 gos挖矿( 三 )


通过上面提到的Geth很容易就可以创建一个属于自己的测试网络,以太币想挖多少挖多少,也免去了同步正式网络的整个区块链数据 。
使用开发者网络(模式)
相比私有链,开发者网络(模式)下,会自动分配一个有大量余额的开发者账户给我们使用 。
使用模拟环境
另一个创建测试网络的方法是使用testrpc,testrpc是在本地使用内存模拟的一个以太坊环境,对于开发调试来说,更方便快捷 。而且testrpc可以在启动时帮我们创建10个存有资金的测试账户 。
进行合约开发时,可以在testrpc中测试通过后,再部署到Geth节点中去 。
更新:testrpc 现在已经并入到Truffle 开发框架中,现在名字是Ganache CLI 。
Dapp:去中心化的应用程序
以太坊社区把基于智能合约的应用称为去中心化的应用程序(DecentralizedApp) 。如果我们把区块链理解为一个不可篡改的数据库 , 智能合约理解为和数据库打交道的程序 , 那就很容易理解Dapp了,一个Dapp不单单有智能合约,比如还需要有一个友好的用户界面和其他的东西 。
Truffle
Truffle是Dapp开发框架 , 他可以帮我们处理掉大量无关紧要的小事情,让我们可以迅速开始写代码-编译-部署-测试-打包DApp这个流程 。
总结
我们现在来总结一下,以太坊是平台,它让我们方便的使用区块链技术开发去中心化的应用,在这个应用中,使用Solidity来编写和区块链交互的智能合约,合约编写好后之后,我们需要用以太坊客户端用一个有余额的账户去部署及运行合约(使用Truffle框架可以更好的帮助我们做这些事情了) 。为了开发方便 , 我们可以用Geth或testrpc来搭建一个测试网络 。
注:本文中为了方便大家理解,对一些概念做了类比,有些严格来不是准确,不过我也认为对于初学者,也没有必要把每一个概念掌握的很细致和准确,学习是一个逐步深入的过程,很多时候我们会发现,过一段后,我们会对同一个东西有不一样的理解 。
区块链技术概念 区块链技术概念
区块链技术概念,现如今 , 区块链已经成为大部分人关注的领域,很多企业也早已深入其中研究该技术情况,但是还有人对于它不是很了解 , 下面我分享一篇关于区块链技术概念的相关信息 。
区块链技术概念1
区块链的基本概念和工作原理
1、基本概念
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式 。所谓共识机制是区块链系统中实现不同节点之间建立信任、获取权益的数学算法 。
区块链Blockchain、是比特币的一个重要概念,它本质上是一个去中心化的数据库 , 同时作为比特币的底层技术 。区块链是一串使用密码学方法相关联产生的数据块 , 每一个数据块中包含了一次比特币网络交易的信息,用于验证其信息的有效性防伪、和生成下一个区块 。
狭义来讲,区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本 。
广义来讲 , 区块链技术是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算方式 。
2、工作原理
区块链系统由数据层、网络层、共识层、激励层、合约层和应用层组成 。其中,数据层封装了底层数据区块以及相关的数据加密和时间戳等基础数据和基本算法;网络层则包括分布式组网机制、数据传播机制和数据验证机制等;共识层主要封装网络节点的各类共识算法;激励层将经济因素集成到区块链技术体系中来,主要包括经济激励的发行机制和分配机制等;合约层主要封装各类脚本、算法和智能合约 , 是区块链可编程特性的基?。挥τ貌阍蚍庾傲饲榱吹母髦钟τ贸【昂桶咐?。该模型中,基于时间戳的链式区块结构、分布式节点的共识机制、基于共识算力的经济激励和灵活可编程的智能合约是区块链技术最具代表性的创新点 。

推荐阅读