请选择 进入手机版 | 继续访问电脑版

Hi,Tokens

 找回密码
 立即注册
查看: 639|回复: 2

以太坊和比特币的节点是什么概念?

[复制链接]

601

主题

965

帖子

3436

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
3436
发表于 2018-5-9 13:05:36 | 显示全部楼层 |阅读模式
比特币现在基本是挖矿节点,全节点和spv节点
----------------------------------------------------------------------------------------------
节点不同形态的划分,其实是市场里的生态竞争所导致的,公有链是一个开放、公开的市场,任何人都可以参与,做为公有链,比特币,以太坊都有全节点、轻节点、挖矿节点的概念。
而私链则不同,它是一个封闭,自有的环境,只有你自己能操作、访问,所以就是一个小中心,你无论在这个环境里部署、设置多少个全节点、轻节点、挖矿节点都是可以的,不会存在什么限制。
----------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------
全节点的含义是从BTC全网上传的区块数据大于下载的区块数据,
要达到这一目的,最好要有两个条件
1、较高的上传带宽,使得你的上传数据超过下载数据。
2、固定IP,使得连接过你的节点还能再次连接上你。
但并不是说家庭用户就一定不能运行全节点,
家庭用户可以通过长时间不重启路由的方式来获得较长时间的稳定IP,
然后打开钱包一段较长时间,在【帮助→调试窗口→网络流量】中看看发送的数据是不是超过收到的数据,
如果是的话,你就为BTC全网贡献了流量。
----------------------------------------------------------------------------------------------
我听说过以太坊,但是Geth、Mist、Ethminer、Mix分别都是什么?
  • Geth: 这是一个Go语言实现的以太坊节点,同时也是任何与以太坊区块链交互的基础,在本地运行它可以让你方便地与以太坊区块链进行互动,了解更多请查看: geth生成说明
  • Mist: 相当于一个web浏览器,但是它是以太坊的平台。它也是一个图形化的帐号和合约的交互界面,它允许你完全不用任何命令来实现和智能合约的图形界面进行交互,如果你不是一个开发人员,或者仅仅想存储以太币,或者与以太坊合约进行交互,那么Mist就是为你量身定做的,可以从这里查看下载信息:Mist下载
  • Ethminer: 一个独立的矿工(程序),它可以用来挖矿或检测挖矿设置。它可以配合eth、geth、pyethereum一起使用,请点击 挖矿 页面查看更多信息。
  • Mix: 为DApp的开发者准备的完整开发环境,在以太坊平台上快速开发和调试去中心化应用程序。

本帖被以下淘专辑推荐:

回复

使用道具 举报

601

主题

965

帖子

3436

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
3436
 楼主| 发表于 2018-5-9 13:09:19 | 显示全部楼层
小姐姐带你5分钟读懂比特币的全节点和简易支付验证(SPV)节点
full  nodes and simplified payment verification
概念:
什么是全节点:
维持包含全部交易信息的完整区块链的节点 。
什么是简易支付验证节点(SPV节点):
为了便于操作和实时交易的需求,出现了许多可以在手机,平板电脑,嵌入式系统用了使用的比特币客户端,但是,这样的设备由于空间和功率的有限性,是必须通过另外一种方式进行支付验证,这就诞生了简易支付验证,简称SPV(Simplified Payment Verification)。
全节点和简易支付验证节点的对比
一:存储数据的区别:
1)全节点下载每个块的交易信息
2)简易支付验证节点只需下载区块头
二:下载的存储数据的大小的区别:
1)全节点:1000
2)简易支付验证节点:1/1000(全节点的)
三:关于UTXO数据库:
1)全节点:所有区块的未花费的UTXO库
2)SPV节点:没有UTXO库
四:验证交易的方法的不同:
1)全节点:参考交易在区块链中的高度来验证(工作量证明)
构造一条验证链,这条链由按照时间倒序,一直追溯到创世区块的数千条区块以及交易组成
2)SPV节点:通过参考交易在区块链中的深度来证明
一个spv节点会验证所有区块的链(不包括所有交易),并且把区块链和有关交易连接起来。
举个例例:节点小花(全节点)和节点小草(spv)
节点小花 :作为为一个全节点,想要检查999号区块中的某个交易,你就要把从这个区块开始一直追溯到创世区块的999个区块全部连接起来,然后建立一个完整的utxo数据库,通过确认该utxo是否还未被支付来证实交易的有效性。
节点小草作为一个spv节点,不能验证utxo是否还未被支付,小草会在该交易信息和它所在的区块之间用一个merkle路径建立一条链接,接下来小草就一直等着啊等,直到序号1000到1006的6个区块堆叠在该交易所在的区块上,并且通过确立交易的深度是在第1000-1006之下来验证交易的有效性。
如果网络中其他节点都接受了第999区块,并通过足够的工作在该块之上又生成了6个区块,根据代理网关协议,就可以证明该交易不是双重支付。
五:安全性
spv由于没有全部的交易记录,不能验证某个交易不存在,这个漏洞会被针对spv节点的拒绝服务或者双重支付攻击利用。
六:如何防御?
spv节点需要随机链接多个节点,增加与至少一个可靠节点相连接的概率,但是这种随机链接的需求也会容易受到网络分区和sybil攻击。
sybil攻击使得spv节点没有通过可靠或者真正的比特币网络的连接而是被被链接到虚拟节点或者虚假网络中。
备注:扫盲sybil攻击 :女巫攻击
七:获取区块的过程
spv节点使用getheaders 消息获取区块头,发出的响应的对等节点将用于一条headers消息发送多达2000个区块头,全节点也是用同样的方式。spv节点在与对等节点的链接上设置了过滤器,用来过滤从对等节点发送来的未来区块和交易数据流。另外spv的过滤器也避免了在调用特殊交易请求时可能出现的隐私问题。



作者:loloooo
链接:https://www.jianshu.com/p/8fd2cd9fe986
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

回复

使用道具 举报

601

主题

965

帖子

3436

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
3436
 楼主| 发表于 2018-5-9 13:15:38 | 显示全部楼层
科普一下比特币全节点的作用,比特币其实有两道防御机制,一是算力,二是组成比特币网络的全节点。全节点的除了保存完整账本和验证交易外,另一个主要作用就是作为比特币网络的第二层防御。这一点中本聪在创世白皮书中就有提到,一旦有算力叛变试图改变比特币区块共识,全节点组成的比特币网络可以拒绝掉这些交易。这就是为什么一直有人洗脑普及spv轻节点,如果用户只剩下用spv的能力,那么比特币网络将无法抵御算力的攻击。现在比特币网络全节点总量超过十万,运行节点数量超过一万,这些节点组成的庞大网络定义了什么是比特币。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Hi,Tokens  |网站地图 | Swtc行情

GMT+8, 2019-6-24 17:22 , Processed in 0.165027 second(s), 5 queries , File On.

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表