打字猴:1.703876315e+09
1703876315 Mist最热门的功能是它带有浏览器。目前,浏览器中运行的前端JavaScript可以使用web3.js库(该库为其他应用提供以太坊操作台的JavaScript API与geth通信)访问geth节点的web3 API。
1703876316
1703876317 Mist的基本思想是创建第三代Web(Web 3.0),即使用以太坊、Whisper和Swarm替代中心化服务器端,这样就不需要服务器端了。
1703876318
1703876319
1703876320
1703876321
1703876322 图2-1 以太坊钱包的示意图
1703876323
1703876324 Mist的示意图如图2-2所示。
1703876325
1703876326
1703876327
1703876328
1703876329 区块链项目开发指南 [:1703875289]
1703876330 区块链项目开发指南 2.18 以太坊的缺点
1703876331
1703876332 每个系统都有一些缺点,同理以太坊也有一些缺点。显然,像其他应用一样,以太坊源代码可能有bug。它也像其他以网络为基础的应用一样面临着DoS攻击。让我们看看以太坊独有的且最重要的缺点。
1703876333
1703876334 1.Sybil攻击
1703876335
1703876336 攻击者可能试图用他控制的普通节点占满整个网络,那么用户很有可能只连接到攻击者节点。一旦连接到攻击者节点,攻击者可以拒绝从所有节点转播区块和交易,从而将用户从网络中断开。攻击者只能转播他创建的区块,从而会将用户放到分开的网络上。
1703876337
1703876338
1703876339
1703876340
1703876341 图2-2 Mist的示意图
1703876342
1703876343 2.51%攻击
1703876344
1703876345 如果攻击者掌握了网络中一半以上的算力,他就可以比网络中其他人更快地生成区块。攻击者可以保留他的私有分叉,直到分叉比诚实网络创造得更长,然后广播自己的分叉。
1703876346
1703876347 拥有50%以上的算力,矿工就可以重写交易,阻止全部/一些交易被挖出,并阻止其他矿工挖出的区块被添加到区块链中。
1703876348
1703876349
1703876350
1703876351
1703876352 区块链项目开发指南 [:1703875290]
1703876353 区块链项目开发指南 2.19 serenity
1703876354
1703876355 serenity是以太坊下一个主要更新的名字。在写本书之时,serenity仍处于开发阶段。这个更新将要求硬分叉。serenity把共识协议改为casper,并将整合状态通道和分片。在写本书时,完整细节尚不明确。
1703876356
1703876357 1.支付和状态通道
1703876358
1703876359 在学习状态通道以前,我们需要了解支付通道的概念。支付通道功能允许将两个以上向另一个账户发送以太币的交易合并成两个交易。其工作原理为:假设X是一个视频网站老板,Y是个用户。X每分钟收费1个以太币。现在X想让Y看视频期间每分钟交一次钱。当然,Y可以每分钟广播交易,但是这里还有些问题,例如X不得不等待确认,所以视频就会中断一会。支付通道可以解决这个问题。使用支付通道,Y可以广播一个锁定交易,为X把一些以太币(比如100个以太币)锁定一段时间(比如24小时)。现在每看完一分钟视频,Y将发送一个签名记录表示可以解锁,一个以太币就进入X的账户,其余的进入Y的账户。再过一分钟,Y将发送一个签名记录表示可以解锁,两个以太币就进入X的账户,其余的进入Y的账户。Y观看X网站的视频过程中,该过程将持续。现在假设Y看完了100小时视频或者24小时时间到了,X将向网络广播最后的签名记录,以把钱收到自己的账户里。如果X没有在24小时内提款,全款会返还给Y。所以在区块链中,我们将看到lock和unlock两种交易。
1703876360
1703876361 支付通道是与发送以太币相关的交易。类似地,状态通道允许合并与智能合约相关的交易。
1703876362
1703876363 2.权益证明和casper
1703876364
[ 上一页 ]  [ :1.703876315e+09 ]  [ 下一页 ]