《区块链项目开发指南》读书笔记

ethash

答:在DAPP中,没有中央服务器来协调节点或者决定什么是对什么是错,所以处理这个挑战真的不容易。共识协议可以用来解决这个问题。

补充:* * *知识算法的核心是解决拜占庭一般问题(分布式网络一致性问题)。

答:修改bug或者更新DAPP很难。

如果我需要从一个集中的应用程序中捕获数据,例如车辆违章信息,我如何确保捕获的数据是真实有效的?

答:为了访问集中式API,可以使用Oraclize服务作为中间人,Oraclize为从集中式服务智能合约中捕获的数据提供TLSNotary验证。

集中式应用的拥有者需要盈利才能长期维持应用的运行,而DAPP没有拥有者,但是和集中式应用一样,DAPP节点也需要硬件和网络资源来维持运行。DAPP节点需要一些有用的回报来维持运行,于是内部货币登场了。大多数DAPP都有内置的内部货币,或者可以说最成功的DAPP都有内置的内部货币。比如以太坊

授权DAPP不是对所有人开放的。授权DAPP继承了无特权DAPP的所有属性,但是需要权限才能加入网络。授权DAPP的* * *协议与非授权DAPP的不同。授权的DAPP没有内部货币。

Hyperledger项目致力于开发DAPP技术来创建授权。

为什么少数国家认为比特币是非法的,而大多数国家还没有对此做出决定?原因如下:

星际文件系统是一个分散的文件系统。

目标是通过使交易几乎瞬间完成,并隐藏交易账户的信息,防止他人用ISP跟踪机主。

任何人都可以成为以太坊网络中的矿工。每个矿工单独解决问题,第一个解决问题的矿工就是赢家。奖励是5个空灵币和街区所有交易的交易费。区块链的块数没有限制,可以生成的以太坊总数也没有限制。

网络中的任何节点都可以检查区块链是否合法,首先检查交易在区块链中是否合法以及时间戳的验证,然后检查区块链的目标值和随机数是否合法,矿工是否得到合法的回报。

节点如何发现网络中的其他节点?

以太坊的节点发现协议。在这个协议中,有一个特殊的节点引导节点。它会保存一段时间内连接到它的所有节点的列表,但不会保存区块链本身。

当对等节点连接到以太网时,它们首先连接到引导节点。

以太坊可以有很多实例,也就是不同的网络各自有自己的网络ID。

两个主要的以太网是主网络和测试网络。以太坊在主网交易,测试网是给开发者测试的。

支持广播、用户对用户、加密信息等的分散式通信协议。,但不用于传输大数据。

分散式文件系统。

Geth提供JSON-RPC API供其他应用程序与之通信。使用HTTP、WebSocket等协议服务JSON-RPC API。

JSON-RPC API提供的API分为以下类型:

默认情况下,以太网中的节点与端口30303通信。

- networkid用于指定网络id,1表示主网络ID,默认值为1,2表示测试网络ID。

- dev标志运行专用网络。

- etherbase指定存放采矿所得回报的钱包地址。

-解锁以解锁一个或多个帐户。

以太坊钱包与geth捆绑。运行以太坊时,它会尝试找到一个本地geth实例,并与之连接;如果它不能发现geth正在运行,它就启动自己的geth节点。以太坊钱包使用IPC与geth通信。Geth支持基于文件的IPC。

以太坊下一次重大更新的名称。Serenity将* * *知识协议改为casper,并将整合状态通道和碎片化。

Casper已经实施了一个流程,以便能够惩罚所有恶意因素。这是Casper下兴趣证书的工作方式:

验证者投入一定比例的以太币作为保证金。然后,他们将开始验证该块。换句话说,当他们发现一个他们认为可以添加到链中的块时,他们会通过下注来验证它。

如果方块被添加到链中,那么验证者将获得与他们的赌注成比例的奖励。但是,如果一个验证者恶意行为,试图做一些“无关紧要”的事情,他们将立即受到惩罚,他们的所有权益将被切断。如您所见,Casper被设计为在不受信任的系统上工作,并且具有更强的容错能力。

支付通道功能允许将两个或多个向另一个账户发送以太网币的交易合并为两个交易。它的工作原理是:假设X是视频网站所有者,Y是用户。x每分钟收费1以太币。现在X要Y在看视频的时候每分钟付费。当然Y可以每分钟播报一次交易,但是有一些问题,比如X要等待确认,所以视频会中断一段时间。支付渠道可以解决这个问题。利用支付通道,Y可以广播一个锁定交易,为X锁定一段时间(比如24小时)的部分以太币(比如100以太币)。现在每看完一分钟视频,Y就会发一个签名记录表示可以解锁。一个以太币进入X的账户,其余的进入Y的账户。再过一分钟,Y会发一个签名记录表示可以解锁,两个飘渺的硬币进入X的账户,剩下的进入Y的账户。在Y观看X网站的视频时,这个过程将继续。现在假设Y看了100小时的视频或者24小时到了,X会向网络广播最后的签名记录,把钱收到他的账户里。如果X在24小时内没有取钱,全额返还给Y..因此,在区块链中,我们将看到两种类型的事务:锁定和解锁。

西比尔发作

51%攻击

补充:大数据无法存储,有Swarm、IPFS等分布式存储方式可供选择。

一切都存储在内存中,所以一旦节点重启,就会失去之前的状态。

默认监听端口:8545