【通俗理解】区块链

各位童鞋,好久不见~

640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1


今天开工大吉,先给大家讲个相亲的故事:

女孩:你有车吗?

男孩摇头。

女孩:你有房吗?

男孩摇头。

“什么都没有也好意思来相亲”,女孩很失望,转身欲离开。

“等等”,男孩从口袋中掏出了一个硬盘,“我有1000个比特币”

女孩又娇羞的坐下来:“讨厌,你怎么不早说~”


640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1


最近小编一直在忙于研究区(wa)块(xu)链(ni)技(huo)术(bi),在开始展示我的研究成果之前,我先给大家扫盲一下,什么叫做区块链。


区块链其实是两个东西:一个是区块,一个是链。说玄虚一点,就是一链子的区块。


因为它是存在于计算机中的东西,所以我们可以厘定它的一个物理形态是啥样子的,就是数字信息被分成一个一个区块然后把这些区块链接起来。


举个例子,下图中的方块,每一个都表示一个国家,而且每一个都包含了对应国家的城市名称。

640?wx_fmt=png

等等,其实还有更多东西来着。这里的每一个方块都是一个叫做哈希的东西。一个哈希就是一串字符 (比如 “1hi515AHA5H” )。


哈希是根据方块里面所包含的信息来得到的。U.S.A 的方块拥有 New York, Los Angeles,还有 Chicago 这几个城市,所以它的哈希就是像 “NYLAC” 的东西了 (技术上其实远非如此,但你理会精要就行了)。

640?wx_fmt=png

每一个接续的方块都会包含前一个方块的哈希,所以这个就是(强制性的)将它们绑到一起的纽带。


如果有人擅自篡改了第一个方块,加入了城市 Boston,那么新的哈希就会是 “NYLACB”。


然而后面接续的 India 这个方块已经存着的哈希还是 “NYLAC”,这种不匹配就会把链条打断。所以哈希的目的就是确保没有人可以篡改区块。


那如果有人修改了一个方块的内容,然后把后面的接续方块的哈希也一并更新会如何呢? 


这也是有可能的,不过有一件事情我还没有告诉你。区块链的数据并不只是存在于仅仅一台计算机里面。一台计算机里面的区块链数据并不能骗到人,因为它会被复制到网络中每一个用户的计算机里面去。


如果你加入了一个区块链网络,那么你的计算机就会去下载这些区块数据,如果有人篡改了他拥有的版本,整个网络也会考虑占多数的人的计算机上所拥有的版本才是正确的。(这就是为什么你在挖矿之前,要下载一个很大很大的数据文件,嘘~)


总结一下,区块链技术本质上是提供了一个分布式账本(去中心化)。用技术保证没人可以篡改交易记录(除非有人能联合全网51%的算力)。为了鼓励大家记账,对成功记账(区块被认可)的机器有一定的虚拟币奖励。所以每个记账的机器就叫做矿工,挖矿过程就是求满足条件的哈希值来实现成功记账,得到的奖励就是对应的虚拟币。


比特币是区块链技术最知名的产品了。可是随着各种ASIC矿机的出现,家庭电脑已经没有可能挖出来币了。所以比特币被矿场大佬把持,寡头化了,有悖于去中心化的设计初衷。第二代明星产品以太坊吸取了这个教训。其挖矿算法对计算能力要求不高,对内存读写速度要求高。这样如果用ASIC来实现,需要开辟一大块芯片面积做存储,使得性价比不高。


不说这些虚的了,来实战吧!前面已经说了,比特币挖不出来了,我们来挖以太币吧!

640?wx_fmt=png


  现在要挖以太币,如果要用NVIDIA的芯片,必须1050Ti以上的显卡,显存不能少于3G(随着DAG文件的增大,明年3G的显卡也挖不了啦)。Windows下a很简单,装好驱动,下载个挖矿软件就好了。想超频也容易,用微星的afterburner设置。


但是window的挖矿软件容易被人抽水。就是软件开发者,每隔几个小时就把你的算力切换到他自己的钱包上,相当于收取了软件使用费。这个是不能忍受的,我们来用Linux挖矿吧!开源的软件,没有抽水。


组装好电脑后,首先去装上显卡驱动。成功后reboot发现,下面命令的configuration一行的driver=nvidia了,表明驱动安装成功。

640?wx_fmt=png


然后可以查看你的显卡信息。比如我这块显卡是Nvidia的1060,6G。去年双十一时1999,现在3099。是不是比你工资涨得快多了?


还可以看到,我的挖矿程序ethminer占用了2.5G的显存。随着DAG文件增大,明年中期预计DAG文件超过3G,那时3G的显卡就挖不到了。大批矿场需要对显卡进行更新换代,二手市场上3G显卡矿难般下跌。聪明的你是否看出来一点商机?

640?wx_fmt=png


现在就可以挖矿了,在github上下载ethminer即可。网速不好的可以通过设置proxy来提高性能。当然最重要的是对显卡进行超频,超频后大概有30%的提升。


通过设置coolbit,重启后发现显卡驱动程序中的超频被打开(Editable Performance Levels)。就可以通过bash或显卡驱动的图形界面程序进行超频了。

640?wx_fmt=png


这里有一个很大的坑。就是如果你用集成显卡时,每次重启Xorg.conf文件将被重置,没法打开超频。


开挖后,proxy窗口显示如下。可以看到我这边网络非常差,435ms延时。算力在19--20之间。

640?wx_fmt=png

ethminer的终端窗口显示如下。我的显卡在孜孜不倦地工作……

640?wx_fmt=png


不忘初心 方得始终,这篇文章就当一个插曲吧,如果喜欢可以留言,我们可以介绍更多区块链(wa kuang)的技术。


往期回顾:

外卖机器人诞生!快递小哥会失业吗?

刚刚,有位大神用AI搞定了多位女神

你敢@微信官方,不怕它真送你一顶绿色圣诞帽?

别人都在晒18岁照片,而我却在学习~

今日头条败给了色情?AI算法不行,还是另有隐情?

【机器学习】python凭什么能被纳入教材

【机器学习】朴素贝叶斯算法分析

【机器学习】主成分(PCA)算法分析

【机器学习】非线性回归算法分析

【机器学习】线性回归算法分析

  读AlphaZero论文随想

 进击的TensorFlow

 【通俗理解】协方差

【通俗理解】贝叶斯统计

 从一个双控开关思考神经网络(下)

 从一个双控开关思考神经网络(上)


640?wx_fmt=jpeg


  • 1
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值