一、什么是比特币系统

有关比特币的专业知识讲解的内容资料很多,我这里只是简单通俗的记录下个人的学习和对他的理解。大家往往看到比特币首先想问的它到底是什么,是不是钱。可以肯定的回答大家,他是钱,但是他不只是个体,他其实是一个虚拟的电子货币支付系统,是的是一个系统。

所以我这里说了这么多的废话,就是希望大家以后看到比特币,我们不是把它看成是一个硬币,而是我们一看到比特币,我就立马想到的是它其实是一个系统(电子币虚拟支付系统)。只要大家能这样想,后面讲的内容大家就好理解了。

大家如果想要比较清晰的了解什么是比特币,我们就必须知道比特币其实是一套系统,他不是体,他是由各个“关键的基础点”共同在一定协议技术之上“运行的货币支付系统”。那么笔者接下来会分两步,给大家进行简单知识点的普济,即比特币系统的“关键基础构成”与其“比特币运行机制”。

重点预告:重点部分在于比特币的运行机制部分,请重点关注。

1.1 比特币系统关键构成

首先给大家贴出介绍比特币系统的一张图,大家简单的看下。这一张图片展示的就是一个完整的比特币系统有哪些内容构成,那么我们从这张图中我们可以看到什么呢?

通过前面个人的学习,我简单的概括出以下几个关键点:

  • 用户
    系统中各个外围的使用者,如学生、老师、雇员以及其他等待使用者;

  • 旷工
    为整个系统的运行提供支撑的人员和基础设施,其实际构成就是由人、计算机、电力系统、校验认证等等共同构成;

  • Blockchain(区块链)
    看到Blokcchain,第一次听到这个词的人可能会一头雾水,其实大家无需迷茫,我给大家简单的打个比喻,大家就明白了。这个区块链其实就是整个比特币系统运行的底层协议,就像我们的互联网底层协议TCP/IP一样。如果大家还不明白,那说的再简单点,大家就把他理解为一个“记账本”就OK,他就是来负责整个比特币系统中进行记账的载体。

那么前面废话说了这么多,到什么是比特币呢?请各位亲们往下看,下面我们会从比特币的比特币支持过程比特币发行过程两个方面带大家一起认识下比特币。

1.2 比特币系统运行过程

个人对于比特的运行过程进行了简单的概括,一是比特币系统的“支付过程”,二就是“货币发行过程”。大家如果弄明白了这两个过程基本就了解了比特币系统是什么了,也就理解什么是比特币了。

1.2.1 货币支付过程

1.2.1.1 关键词

在说明比特币的支付过程之前,大家先带大家看几个关键词:P2P去中心化终端用户

  • P2P
    我们称他为点对点(即个人对个人);
  • 去中心化
    这个很字面了,不难理解,即没有中心,大家都是个体对个体的;
  • 终端用户
    用户就是使用者,就不用解释了吧。

OK!我们了解了上面三个关键词后,我们就来看下比特币定义。

比特币定义:它是一种去中心化的,基于区块链网络技术的,P2P电子支付技术系统。听起来是不是还是很含糊,OK,那么说的再简单点,就是比特币是一个P2P(点到点)的电子支付系统。

1.2.1.2 P2P支付过程

通过上面的定义,你可能还是不太了解其运行过程,那么我们举一个生活中的例子来给大家简单说明。

场景举例:A 向 B 支付100元,在 “中心支付模式” 和 “点对点支付模式 ”,他们各自是如何完成支付的呢。

  • (1)中心支付模式

    我们知道在现实生活中我们的货币支付系统的支付过程是这样的,当A支付出100元后,银行会在A的账户中减去100元,同时在B的账户中增加一笔100元的记录。也就是整个交易支付过程都是由银行在中间进行处理与记录的,银行是整个支付系统的中心系统,他有一本所有人的总账本,这中心账本记录所有的交易与支付记录。

  • (2)P2P支付模式

    而比特币网络这种点对点支付系统就不同了,当A给B支付了100元后,不需要经过任何中心支付系统进行结算和记录,完全由这个A和B各自去记录完成,同时通告给P2P网络中的所有人,然后比特币网络中的每个终端成员都会更新自己的账本记录下A与B之间的支付账单。也就是说P2P支付系统模式中,每个终端个体都有跟账本,且每个人的账本记录内容都是同步更新的。;

  • 过程理解
    比特币系统就是一个基于“终端账本记录”技术的点到点的,去中心化的,电子货币支付系统。而终端“账本记录技术的实现”,其是通过前面说的“区块链”技术来实现的;

  • 支付模式小结

    • 所谓“P2P支付模式”:就是每个终端个体都一个一模一样的账本;
    • 所谓“中心支付模式”,就是只有一个中心节点有一个账本,就这么简单;

说了这么多,大家不知道是不是已经理解了比特币的支付模式了呢,是的没错所谓比特币的P2P支付模式,就是每个人都一个账本,所有的支付结算过程结果都由每个人自己的账本记录进行更新记录,当然每个人的账本记录都是一样的内容,至于怎么实现,请各位亲继续往后看。

1.2.2 货币发行过程

前面讲了那么多比特币的支付过程,那一个非常重要的问题来了,请问这些比特币系统中每个人的比特币是哪里来的,即货币到底是谁发行的呢? 这个问说如果大家搞清楚了,各位亲也就能理解我经常听到或遇到的“挖矿恶意程序”的到底是个什么玩意了。

1.2.2.1 关键词

统一在为各位亲说明货币发现过程之前,先带大家看几个关键词或者说是关键点,即区块链、旷工以及比特币奖励

  • 区块链
    其实有区块链前面我已经简单的说过,区块链接简单的理解就是一个记账本;但是这里我们需要更详细的说明下区块链,我现在把区块链分为两个部分来理解:即区块。一个区块链其实他记录从最原始的账单交易到现在此时此刻的交易内容,它由区块和链共同两部分共同构成。在比特币系统中每10分钟生成一个新的区块,这10分钟生成的区块它会记录最近10分钟网络中生成的信息支付交易记录,然后通过连接到原始的区块链上形成更新后的新的区块链,并通告全网进行公共账单的更新。

  • 比特币奖励
    这个就是字面意思,就是进行某个客体的比特币奖励。

  • 旷工
    是指通过一种特别的软件不断重复哈希运算(hash碰撞)来产生工作量的各个网络终端节点。矿工们需要竞争完成一种基于加密哈希算法的数学难题,数学题的答案存在于新的区块中,谁优先解出这个答案,谁就能在p2p网络中广播声明自己已经获得这个区块,其他的旷工就会意识到在这局里已经输了,就会立马开始下一个区块的挖掘工作。每个矿工在他的区块中都有一笔特殊的交易,他们会将新生成的比特币作为报酬,然后支付到自己的比特币地址中。一旦这个区块被认可被验证,也就是被添加到区块链中,他的这笔报酬就可以变为可用可消费的状态。

1.2.2.2 比特货币发行

通过前面比特币网络的学习,我们知道比特币其实一个P2P的网络,这也表示网络中的每一个人都当担这比特币系统的一小部分,但是一个主要的问题出了比特币来时哪里呢?

  • (1)法币发行机制
    我们都知道就现实生活中的法币来说,政府能够决定何时发行新的钞票,但是比特币并没有中央政府。
  • (2)比特币发行机制
    在比特币的系统中,旷工们用一种特别的软件来解决数学难题,作为工作量的回报,款共可以获取取比特币系统新生成的特定数量的比特币,这种机制就是比特币系统提供的一种发行货币的创新方式,同时也提供人们参与挖矿的动机。
  • (3)货币发行实际场景解析

大家如果看了上面的解释还不清楚,笔者结合前面区块链的内容再结合实际场景的给亲们解释下。

我们通过前面学习知道,比特币网络中每10分钟会生成一个新的区块,这个新生成的区块其会包含多个内容。
第一个内容:就是最近这10分钟产生的所有比特币支付交易记录;
第二个内容:是区块锁(即签名或者说前面说的数学难题的答案);
第三个内容:就是即将新发行的比特币(奖励给第一个算出数学难题的旷工)。

现在我们把这三个内容联系起来,我们知道比特币P2P网络中每个人都一本账本,那是不是意味着每个都可能去篡改自己的账本呢,是的存在这个可能,所以比特币网络设计了区块链的技术来防止这个情况的出现,那么每个人手中的账本如何可靠安全的更新呢?

好的,我们现在重回到区块链技术,我们知道比特币网络每10分钟生成一个区块,通俗点就是一个当前10分钟网络中所有交易的账本记录,为防止有人恶意篡改,区块链被加了签名(即一把锁/答案)防止被恶意篡改,比特币网络中第一个破解了这个签名的人,即可以新的区块加到原始的区块链上去;我们知道谁也不可能义务劳动,所以在被更新的区块中还包了对第一个破解人的比特币奖励的更新账单记录;这个奖励的比特币方式就是发行新比特币的方法和过程了。

二、恶意挖矿程序的由来

我们现在了解到旷工是整个比特币系统运行的底层基础运算保障,也是整个区块链技术的核心部分,比特币系统运行机制中为了保障整个比特币的系统有效运行和吸引更多的个体投入到系统中来,设立对旷工工作的奖励机制即通过衡量他们的运算贡献给以比特币的奖励。也因此现实社会中有了更多的人愿意将个人的计算机运算能力提供给比特币的网络系统,随着比特币的价值提升,更多的人有组织、有体系的,合法甚至不合法的去给比特币系统网络提供运算支持,其基本发展历程如下。

2.1 矿工与货币发行回顾

在将恶意挖矿程序由来之前,我们需要回顾下什么是矿工、挖矿奖励机制、比特币的发行。
我现在都知道在比特币系统中,矿工们是用一种特别的软件来解决数学难题,来作为交换比特币系统生成的特定数量的比特币,而这种机制提供了一种发行货币的创新方式,同时也创造了人们参与挖矿的动机。由于比特币网络的交易需要矿工来进行验证,更过矿工的参与也意味着更安全的比特币网络,但同时随着矿工越来越多,比特币系统也会自动会自动改变这些数学题目的难度,而难度的变化的速度,通常又取决于解题的速度。

2.2 挖矿的历史历程介绍

2.2.1 一般CPU计算的时代

最早期的矿工们都是使用个人使用计算的CPU进行为挖矿,这是最原始的挖矿;

2.2.2 显卡的时代

不久之后,矿工们发现使用显卡更适合于挖矿工作,显卡速度虽然快;但是显卡万科也有其自身的缺陷,就是需要消耗更多的电力,温度也会过高;人们发现挖矿的成本增大了;

2.2.3 ASIC 芯片时代

随后挖矿利益的驱动,出现专业更专业的挖矿产品,为挖矿提供专业的编程芯片,这种挖矿机虽然加快了挖矿速度,但仍然需要消耗大量的电力;
ASIC 芯片的挖矿时代就应用而生了,特定的ASIC技术通过更少的消耗电量让比特币挖矿更快;

2.2.4 矿场与矿池的时代

  • (1)矿场的诞生

    随着ASIC芯片专业技术的出现,挖矿的难度也增大了,为了获取更大的利益,出现了大量的投资人投资建立机房的运行模式,大批量的投资建设机房的模式来进行挖矿,这种以款场的模式就出现了。这类矿厂在今年之前,中国的系统占据了整个比特币网络的半壁江山,因为中国的系统有着大量的廉价电力可以被提供来进行挖矿;

  • (2)矿池的诞生

    随着比特币的日益流行,越来越多的人加入挖矿这个行列,使得挖矿的难度也不断的提升,为了克服这个问题,矿工们开发出了“矿池”的挖矿方式,矿池结合了所有个人的计算能力,让更多的个人也还可以加入到挖矿的行列中来了,这种模式为更快的找到难题的也提供了一种解决方案,而每个参与的矿工依据他们为矿池提供的工作量的比例分配矿池中的收益。

2.3 挖矿恶意程序总结

上面铺垫说了这么了多,相信大家看到矿池的出现时,就都明白了“挖矿恶意程序”的由来了。是的,没错了,挖矿恶意程序其实就是矿池模式中矿池的一员,正常矿池中的成员都是自愿加入矿池中,为矿池提供计算能力,然后依据自己的计算贡献能力,从矿池的收益中来获取自己的分配所得。但是恶意程序是在未授权的情况下向你的服务器恶意植入的一个程序,并盗用了你个人计算机的计算能力来为Hacker挣钱的行为。

这就是我们经常说挖矿事件的真实面目了,说了这么多不知道大家是否明白了,嘴巴都说干了。

三、本地实验环境搭建

以上说了这么多都在跟大家一起去学习和了解下比特币是什么、挖矿是什么、恶意挖矿程序又是怎么由来的,详细此时大家应该都或多或少有了一点的了解了,那么接下来就是我们看看安全当中恶意挖矿程序是如何运行,我们如果不幸中招了如何快速做出响应和处理。

3.1 挖矿恶意程序分析

3.1.1 挖矿恶意脚本程序

本次试验环境中使用的挖矿恶意程序主要基于实际环境中捕获的恶意程序进行分析后总结后从网络中直接获取的,涉及的程序包含“1个shell脚本”和“2个可执行程序”,具体名称如下(未做任何改动)。

  • i.sh shell脚本
  • dgg2020 恶意程序 (分为x86 x64)
  • wnTKYg 恶意程序

3.1.2 挖矿恶意程序详解

3.1.2.1 i.sh shell 脚本

点击收藏 | 2 关注 | 2
  • 动动手指,沙发就是你的了!
登录 后跟帖