磨链(mochain)社区分享

磨链(mochain)社区-4.20分享-去中介讨论-以太坊相关

2018-04-20  本文已影响0人  磨链社区

群内分享

1.HiBlock社区-区块链课堂|扒光区块链,以太坊全景介绍及入门学习指北(线上免费) 

2.二师兄分享-使用Go语言编写区块链P2P网络(译) 

3.V神:你所理解的“去中心化”不一定准确

群内讨论

1.去中心化其实是去中介化讨论 

目前去中心化 这个还是理解为去中介化更合适一点吧 去中心化这个词汇有点太过绝对 而且论文中也是翻译过来。分布式 更为合适吧,感觉早期的翻译都有不准确的地方 比如说 coin token。decentralized,并不仅指distribution。去中心化更多的指的是协作和组织方式,不仅是技术和物理上的分布式。去中介才是对的,所以很多人说区块链上的应用就应该是完全放开自由的,那无主之地没有设管理员那怎么玩。分布式技术几十年前就有了,区块链的革命性在于组织形式、决策和激励机制方面。区块链 技术是之前一些技术的结合不是说改变了之前的技术 而是改变的新的一种模式。 

2.去中心化是不是等于分布式? 

区块链的核心不是去中心化,是“区块”和“链”。而是多中心,或弱中心,也可以说是分布式,中心化的多中心式的协作模式,比特币追求完全的去中心,可最后的结果却是矿池主导出块,现在的一些分布式系统 分布式是把数据打散到不同节点,那么去中心化绝对来说的话 就是每一个都是完整的数据。一个节点就能工作 也就是每一个都是中心 这个和分布式还是有一点区别的。EOS的超级节点,有不同的节点概念,EOS的可操作性有点过于大了,备选节点和用户是对超级节点的监督,像EOS这种偏中心的,有没有可能这21个超级节点同时被攻击而不能工作?极端情况。DPOS有点像联盟链,通过牺牲公平性,提升性能,概念性的东西不能起到支撑作用,那不就塌方了,塌方之后才知懂问题出现在哪里。压根就没去中心化这个词,国内翻译错误,邹均的书,里面说的叫分布式。

以太坊相关概念

整理些以太坊相关概念。 

EIPs:以太坊改进协议,对应bitcoin中的BIPs。 

以太坊是作为一个平台,就像一张白纸,开发者可以根据以太坊普遍化的协议,配合核心机制定制各种解决方案。 

智能合约:在区块链平台上,配合智能合约,建立一种去信任化价值传递平台。在以往的中心化网络平台上,以购物交易为例,一般通过第三方平台来进行资金的担保,那么在区块链平台上通过智能合约,code来制定各种条款的约定,合约中各项条款置于区块链中,一个去信任低成本环境进行价值传递。 

以太坊客户端版本: 

在github上以太坊的主页:https://github.com/ethereum各种以太坊的程序代码都可看到,各种语言版本可选择。 

go-ethereum:语言:go。地址:https://github.com/ethereum/go-ethereum 

cpp-ethereum:语言:c++。地址:https://github.com/ethereum/cpp-ethereum 

个人电脑上安装以太坊测试环境,之前的文章有具体实施步骤,一般go-ethereum称为geth,在安装完成后进入geth命令行模式:(以下一些操作都在geth下) 

geth –datadir “./” –nodiscover console 2>>geth.log 

进入命令行模式,datadir为文件夹位置、nodiscover表示链隐藏、console>>geth.log输出日志。 

账户:以太坊账户区别于之前bitcoin,分为外部账户和合约账户。 

外部账户:一般情况下就称为账户,账户中有余额,账户理解为以太坊网络中的一个状态,区块链区块更新,达成共识后,每个节点更新自身副本。简而言之,在以太坊中账户更新即为以太坊中状态的一个更新。故账户的概念尤为重要。和其他区块链系统一样,账户都会有一对密钥,即自己个人保存的私钥和公开的公钥,同时公钥衍生地址(公钥的最后20个字节)。私钥和地址都会编码在一个JSON文本文件,这个在申请以太坊系钱包中,会提示保存,保存下来的一个文本文件中即可看到具体内容。 

合约账户:功能和数据的集合,存在于以太坊的发布智能合约的地址上。一般包括,账户以太币的余额、关联代码、通过交易或者消息调用的方式出发并到EVM执行。在运行时候,运行具备图灵完备性,只操作特定的存储,可以结合其他合约。简单理解在以太坊上,合约代码都被EVM在每个参与网络的节点行运行,来验证新区块的产生。 

eth.accounts:查看账户信息。 

账户信息主要包括: 

随机数,用于确定每次交易只能处理一次的计数器。 

账户余额,当前余额。 

账户合约代码。 

账户的存储,默认为空。 

新建账户:personal.nerwAccount(“账户名”) 

查看信息:eth.accounts显示账户公钥地址。 

解锁账户:账户新建后是锁定的,需要解锁,personal.unlockAccount(username)。 

转移以太:eth.sendTransaction({from:user1,to:user2,value:amount}) 

挖矿:miner.start(). 

Ether币的基本代为是wei,wei和eth的关系:1eth=1000000000000000000wei 

交易理解为一个账户向另一个账户发送一笔被签名的消息数据包。区块链通过共识机制生成区块,并存储数据。 

参考:http://blog.csdn.net/wo541075754/article/details/79042558 

交易大致包括: 

发送者、接收者(一笔交易收发双方) 

签名信息,用作证明发送者想接收者发送消息。 

转移数量(一般交易的以太币的数量) 

用于存储智能合约和调用智能合约的代码的数据域。 

Gas上限和gas价格。 

一个消息即一笔交易,由合约账户产生,合约在执行代码过程中运行了call或者delegatecall即生成消息,消息引导接收账户运行其代码,使得账户之间产生联系。 

在交易中必须要有个gas。即交易费用。以太坊的运行环境是EVM,参与的节点都运行EVM作为区块验证协议的一部分,合约在每个节点重复多次执行,这个也就称为一个漏洞,恶意的无限制的执行。那么设置gas作为代码运行步骤收取的费用,称为交易费,俗称燃料,用于控制这种恶意行为或无意的有缺陷代码。 

交易中gas limit和gas price用于设置gas,这个gas一般都是一个预估值。交易费用主要包括: 

gasused:交易消耗总的gas数量。每一个EVM中的命令设置相应的gas消耗值,即所有被执行的命令的gas的总和。 

gasPrice:交易中单位gas的价格。由于网络关系这个价格浮动,根据区块打包时间预估。 

交易费公式=gasUsed*gasPrice。

群内工作

《磨链入门区块链》共同参与写一些东西,目录大纲完善中,一个长期项目。 

招募条件: 

1.需要一定的区块链基础。 

2.对上述任何一方面有较为深入理解。 

3.每周能保证一定的空余时间来折腾。 

4.了解github相关 

5.人员进行筛选,时间周期比较长。 

有意向联系我。

磨链在线课程 

对自己擅长方面有一定的沉淀,愿意开设在线课程,会考虑和一些专业培训机构合作,要求有一定的一线经验,实实在在分享课程。有兴趣的联系,有偿工作。

磨链(mochain)社区招募相关人员

PS:想加入磨链的,或者具体参与到磨链的建设中的,请加磨链组织者微信(jackyjin09)。并且注明自己的能参与的编号(1.2.3.4),欢迎每一位区块链技术爱好者加入磨链,一块琢磨区块链技术。

关于磨链和相关合作

磨链”---取磨炼之意,旨在普及区块链技术,磨炼技术,更好投身区块链行业。有兴趣一块琢磨区块链技术,联系笔者微信(jackyjin09)。 

磨链社区是一个纯粹的技术社区,欢迎相关技术合作,在不违反原则的前提下,积极参与合作。 

你可以在这里找到我们: 

磨链社区公众号: 

1. 磨链社区:http://mochain.info 

2. Github : https://github.com/mochain 

3. Gitter 聊天: https://gitter.im/mochain 

4. 知识星球: https://t.zsxq.com/M3BMVZN 

5. 知乎:https://www.zhihu.com/people/mochain 

(持续更新中)

合作社区

趣链科技技术团队 

HiBlock区块链社区 

孔壹学院 

+

上一篇下一篇

猜你喜欢

热点阅读