打字猴:1.703876291e+09
1703876291 区块链项目开发指南 [:1703875287]
1703876292 区块链项目开发指南 2.16 以太坊钱包
1703876293
1703876294 以太坊钱包是一个以太坊UI客户端,它允许用户进行创建账户、发送以太币、部署合约、调用合约方法等操作。
1703876295
1703876296 以太坊钱包与geth捆绑在一起。运行以太坊时,它会尝试发现一个本地geth实例并与之连接;如果它不能发现geth正在运行,它就启动自己的geth节点。以太坊钱包使用IPC与geth通信。geth支持以文件为基础的IPC。
1703876297
1703876298
1703876299 如果在运行geth时更改数据目录,就是也在更改IPC文件路径。所以为了让以太坊钱包发现并连接到geth实例,需要使用—ipcpath选项指定IPC文件位置为其默认位置,这样以太坊钱包可以发现它;否则,以太坊钱包就不能发现它,将启动自己的geth实例。为了发现默认IPC文件路径,运行geth help,它会显示—ipcpath选项的默认路径。
1703876300
1703876301 请访问https://github.com/ethereum/mist/releases下载以太坊钱包。它适用于Linux、OS X和Windows操作系统。与geth一样,它有两种安装方式:二进制安装和脚本安装。
1703876302
1703876303 以太坊钱包的示意图如图2-1所示。
1703876304
1703876305
1703876306
1703876307
1703876308 区块链项目开发指南 [:1703875288]
1703876309 区块链项目开发指南 2.17 浏览器钱包
1703876310
1703876311 浏览器钱包(Mist)是以太坊、Whisper和Swarm的一个客户端,它允许用户发送交易、发送Whisper信息、检查区块链等。
1703876312
1703876313 Mist和geth之间的关系类似于以太坊钱包和geth。
1703876314
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
[ 上一页 ]  [ :1.703876291e+09 ]  [ 下一页 ]