全节点:

1 一直在线

2 在本地硬盘上维护完全的区块链信息

3 在内存里维护UTXO集合,以便快速检验交易的正确性

4 监听比特币网络上的交易信息,验证每个交易的合法性

5 决定哪些交易会被打包到区块里

6 监听别的矿工挖出来的区块,验证器其合法性

7 挖矿:a 决定沿哪条链挖下去  b 当出现等长的分叉的时候,选择哪一个分叉

轻节点

1 不是一直在线

2 不用保存整个区块链,只要保存每个区块的块头,比全节点文件大小小1k倍

3 不用保存全部交易,只保存与自己相关的交易

4 无法检验大多数交易的合法性,只能检验与自己相关的那些交易的合法性

5 无法检测网上发布的区块的正确性

6 可以验证挖矿的难度

7 只能检测哪个是最长链,不知道哪个是最长的合法链

8 占比大

由此可知:

1.如果你不是想挖矿,你存轻节点就可以了。

2.你挖到一半,突然有新的区块发布了,则你需要停止以有的挖矿,重新组装一个候选区块,以新发布的区块开始往后挖,由于挖矿的无记忆性,重新挖矿不影响挖矿成功的概率。

比特币的安全性由两方面保证:

1.密码学

非对称性加密,无法伪造前签名(前提是恶意算力不够强大)

2.共识机制

挖矿设备的进化

1.CPU挖矿

由于通用计算机的设备占用部分少(一少部分CPU指令,硬盘,大部分内存等其他部件都是闲置的)。随着挖矿难度越来越大,性价比越来越低。

2.GPU挖矿

擅长大规模并行计算,但是里面还是有很多部件是闲置的(如:浮点数计算的部件),随着挖矿难度越来越大,性价比也越来越低。

3.AISC芯片

专门为某一种加密货币设计的挖矿芯片(mining puzzle 一样的货币也行)

可知:挖矿设备的军备竞赛中,最赚钱的可能是矿机厂家。

矿池:由一个pool manager 带领多个miner 组成,能够稳定收益。pool manager负责监听网上新发布的交易打包成侯选区块,分配出块奖励,分配任务,miner 负责计算hash。

矿池的出现也使得51%攻击变动容易了,因为pool manager通过降低手续费,管理费等吸引miner,而自己不需要出算力。矿池算力占主导地位的时候还可以发动Boycott攻击。

p7.BTC-挖矿总结的更多相关文章

  1. Linux系统BTC挖矿傻瓜教程

    [Linux系统BTC/比特币矿池挖矿方案一]cgminer矿池挖矿程序(Linux系统 比特币(BTC) 矿池挖矿/采矿/造币)cgminer矿池挖矿程序[查看这里有没有最新版]http://ck. ...

  2. todo:区块链????????

    2018年这个春节,人人都在讲btc.ico.区块链. 恶补了几天区块链的知识和文章,一总结就是:一头雾水,没有哪个vc.创业者.技术人员 讲明白区块链到底是什么,技术上如何实现,就是哪些研读过中本聪 ...

  3. 挖矿程序的工作原理(BTC为例)

    Mining时代进化:CPU挖矿 -> GPU挖矿 -> FPGA挖矿 -> ASIC挖矿CPU挖矿时代:SENGENERATEGPU挖矿时代:GETWORK Miner:挖矿的程序 ...

  4. 10年前错过比特币,如今有斯坦福区块链项目pi币,对标btc,手机免费挖矿详细教程。

    这一个斯坦福几个博士创业者做一个项目,目前还处于早期阶段,除了每天点一下挖矿之外,貌似不需要其他的操作,不需要耗费流量资源和手机大量的运算能力,就是一个安静的App而已....国内目前知道的人还不太多 ...

  5. 莱特币ltc在linux下的多种挖矿方案详解

    莱特币ltc在linux下的多种挖矿方案详解 4.0.1 Nvidia显卡Linux驱动Nvidia全部驱动:http://www.nvidia.cn/Download/index.aspx?lang ...

  6. Filecoin挖矿进展

      预计Filecoin第一个版本发布最早在 2018.3月份(预计)   Protocol Labs这次ICO拿到了2.05亿美元,已经富得流油了,相信开发进度会快很多,Filecoin论文发表最早 ...

  7. IPFS如何挖矿<Filecoin系统>?(一)

    本来这篇文章应该晚一点写, 但是这几天一直有朋友在公众号留言, 迫切的想知道IPFS到底如何挖矿, 所以就提前写一篇关于IPFS挖矿的文章. 本文暂不涉及具体的技术细节, 只做大概的介绍. 首先, 好 ...

  8. 区块链基础认识-BTC

    1.什么是区块链 a.定义: 从本质上来说区块链就是一种通过将用户的某种特定信息(比如交易信息),通过很多台计算机记录保存并同步的过程,每个区块都记录了对应的交易信息,将这些交易信息串联起来就形成了所 ...

  9. Bitcoin挖矿

    目录 为什么要挖矿? 比特币挖矿 为什么要挖矿? 增加恶意行为的成本 增加记账权力,获取相应的奖励 比特币挖矿 每开采210000个区块,挖矿奖励减半 2009年1月-2012年11月,奖励50BTC ...

  10. 比特币 BTC本地测试节点

    BTC本地测试节点 #环境 ubuntu 16.4 #客户端安装 #下载页面 #https://bitcoin.org/zh_CN/download cd /opt/ wget https://bit ...

随机推荐

  1. git远程版本回退

    本文为博主原创,未经允许不得转载: 之前在git提交版本时,发现将新开发的代码提交到了另一个分支上,为了不影响提交分支代码的 功能,需要回退到之前的版本. 在使用命令回退的时候,一直没有回退成功,有个 ...

  2. windows 安装 mysql 启动

    mysqld --defaults-file="d:/lovejava/mysql-5.6/my-default.ini"

  3. 爬虫urllib2 的异常错误处理URLError和HTTPError

    urllib2 的异常错误处理 在我们用urlopen或opener.open方法发出一个请求时,如果urlopen或opener.open不能处理这个response,就产生错误. 这里主要说的是U ...

  4. ios开发和安卓app开发有哪些区别

    ios平台和Android平台开发APP应用程序主要区别:一.编码语言Android平台开发中是使用Java,ios平台则是使用的Objective-C和Swift.需要注意的是,如果你是要用ios进 ...

  5. 基于Emit的C#下DataTable转实体类方法,一直报错.

    xxxx ;WITH Tab AS ( SELECT CAST(ROW_NUMBER()OVER(ORDER BY CC.CreateTime DESC) AS INT) AS Sequency, ) ...

  6. [LeetCode] 452. Minimum Number of Arrows to Burst Balloons 最少箭数爆气球

    There are a number of spherical balloons spread in two-dimensional space. For each balloon, provided ...

  7. Linux下用dd命令测试硬盘的读写速度

    一.测试写速度:   time dd if=/dev/zero of=/tmp/test bs=8k count=1000000 测试结果:565 MB/s 二.测试读速度:   time dd if ...

  8. Android Capabilities讲解

    1.Capabilities介绍 可以看下之前代码里面设置的capabilities DesiredCapabilities capabilities =newDesiredCapabilities( ...

  9. GhostScript说明

    关于ghostscript(以下简称gs).Gs是一个地下工作者,一般用户不熟悉它,因为它上不和用户直接打交道,下不直接接触打印机.但是在打印工作中它却扮演了极为重要的解色. 一般从用户常见文件如图片 ...

  10. 【C++札记】内联函数

    概述 函数的使用使得相同代码不必多次重写,但会带来额外的开销,函数调用的过程中会有入栈和出栈,这些都会消耗时间. 如果一个函数在程序运行过程中被成千上万次调用,那么这个开销也是不容忽视的,C++中引入 ...