主页 > imtoken限制中国用户该咋办 > 用人的话解释比特币的原理

用人的话解释比特币的原理

是什么让虚拟货币的汇率3年翻了25000倍,是什么力量让央行副行长“感兴趣”却“不承认”,除了投机和商业欺诈 比特币是一种值得的工具吗?欢迎收看今天的“伪”科学介绍——用普通人可以理解的方式解释比特币。

比特币很火。下午 5:00北京时间上周六,比特币网络刚刚完成了史上最大一笔交易——19万比特币被抛入市场比特币解的是什么方程,按照当时5000左右的价格计算,10亿人民币的百万富翁就这样诞生了,你可以感受一下.

但是,本文无意教你如何投机,也不打算鼓励任何人进入比特币投机市场。继续阅读前请务必阅读这些大字:

比特币市场风险巨大,投机需谨慎!

好了,是时候打个预防针了,说说商业吧:本文不讨论比特币的商业逻辑,也不讨论是不是骗局,而是简单易懂地运用比特币的原理-to-follow 懂的,非极客也能听懂语言讲解,让大家看看央行副行长说的这个电子货币到底是什么“特色”、“很有启发性”。因为容易理解的原因,有些地方的解释不是很严谨。有基础想进一步研究的同学可以阅读比特币原论文《Bitcoin: A Peer-to-Peer Electronic Cash System》。

接下来,让我们开始走进比特币……

首先,从比特币的本质出发,比特币的本质其实是一堆复杂算法生成的特殊解。特定解是指方程组的无限(实际上,比特币是有限的)解之一。每个特定的解决方案都解决了方程并且是唯一的。

用人民币来比喻,比特币就是人民币的序号。如果您知道某张钞票上的序列号,您就有了这张钞票。

挖掘的过程就是通过大量的计算不断地寻找这个方程组的特解。这个方程组被设计成只有 2100 万个特殊解,所以比特币的上限是 2100 万个。

到此为止,比特币和挖矿的本质已经解释完了,对吧?为什么我知道钞票号码,钱是我的?那我花了钱还记得号码吗?

没有。

比特币网络是一个在线系统。比特币本身作为离开比特币网络的一系列数字(特殊解决方案)是无用的。这些数字只有在放入比特币网络时才能正常运行。换句话说,将比特币与下载种子进行比较,将比特币网络与下载网络进行比较。离开下载工具,没有很多种子就不能下载泷泽萝拉吧?

比特币网络被设计成一个分布式存储数据库,换句话说,就像你把钱存入银行,银行取出钱借出去,但你仍然可以在你的网上银行账户中看到它的金额钱实际上是由银行在您帐户金额的数据库中写入的。比特币也有这样一个数据库,但这个数据库并不存在于中央服务器上而是对所有人开放:每个比特币钱包都是一个节点,这些节点之间通过类似于BT下载的P2P网络连接起来。现在比特币钱包安装后下载的数据是7G左右,记录了全世界所有人比特币钱包里的数据。当然,如果未来比特币钱包继续增长,一些陈旧无意义的交易细节是可以丢弃的。

为什么要这样做?

还记得比特币只是一串数字吗?为什么保证一串数字一次只有一个合法拥有者?

答案来了:每次发起交易,都会向整个比特币网络广播,内容如下:

“我是节点A,我有特殊的解决方案123,现在我要转账到节点(钱包)B,你看好吗?”

比特币网络中的其他节点收到此信息并与自己的本地数据库进行比较,并做出回应:

“我把它带入方程,算出来了,这确实是一个解,我看到A有123,节点B也存在,我承认交易。”

当确认节点的数量达到一定数量时(取决于接收者想要的安全程度),交易就成功了。

接下来,越来越多的节点收到消息,没有人提出任何异议,交易记录被整个比特币网络接受,从此,特解123成为了B钱包的所有物。

如果你在交易结束后欺骗本地客户端,让A钱包发消息:

“我是节点A,我有特殊解123,现在想给节点C转账,你看好了吗?” (也就是前面提到的记录人民币数字的方法)。

其他节点接收到的信息与本地数据库进行比较:

“没有,我写的是特解123在B手里,交易不被认可。”

随着越来越多的节点拒绝交易,你的交易就会失败。

挖矿也是同样的原理,用大量的算力计算方程组的特解,你的矿机程序会先和本地数据库对比,发现你这里从来没有这个特解,所以向全网广播:

“我是A,我有一个新的比特币叫234比特币解的是什么方程,你能不看我就收下吗?”

之后的原理同交易。

比特币网络具有一定的容错机制,可以保证即使是某些欺诈者(总是发布虚假信息)和捣乱者(总是拒绝承认他人的交易)也不会影响整个网络的运行。

因此,虽然比特币是匿名的,但它也是完全透明的。只要你愿意,你可以在本地数据库中追踪某个比特币自被发现以来所有交易经过的节点。通过将这些交易记录与那些主要比特币交易所的市场深度进行比较,实际上让人们充实一个账户相对容易。

有人会问:既然比特币的算法是开源的,数据库是开放的,网络是不受控制的,难道不能用全国来“破解”比特币网络吗?

知乎上有这样一个问题:“用天河二号作为比特币矿机有什么效果?”

总之,比特币网络的计算量已经非常庞大了,考虑到比特币的价格不稳定,即使在比特币网络中增加一台国家级的超级计算机也不一定会获得优势。付不起多收的电费。而且,在算法方面,比特币保证当全网的计算量增加时,计算难度也会相应增加,超算也只能领先比特币网络一周左右。

开源也有同样的问题:如果比特币的算法是开源的,怎么能保证它的上限只有2100万,为什么不能修改呢?

谁告诉你不能修改的?当然可以修改

比特币官方客户端源码中这个文件的第998行左右:

int64_t GetBlockValue(int nHeight, int64_t nFees)

{

int64_t nSubsidy = 50 * COIN;

// 补贴每 210,000 个区块减少一半,大约每 4 年发生一次。

nSubsidy >>= (nHeight / Params().SubsidyHalvingInterval());

返回 nSubsidy + nFees;

}

只要修改那个50,就可以提高比特币上限,但问题是比特币是开源的,标准是开放的,网络不是集中管理的。如果“官方”客户端发生变化,用户可能不愿意使用它。当第三方客户端看到用户不愿意使用时,他们不会跟进。因此,对于某家公司来说,改变这个数字是没有意义的。除非有足够大的节点来统一采用新的封顶客户端,否则会导致比特币网络的货币存量上限上升。

因此,比特币的2100万上限不会上调不是问题,而是大家都不想达成共识的问题(客观上是不能上调的)。

很难分析商业的逻辑,不管是不是庞氏骗局,但比特币浪费的算力确实是真正的浪费,不是对SETI@Home这样的研究机构的贡献。然而,由于比特币算法的发明者中本聪的一生扑朔迷离,比特币最初的算法和系统的论文一发表,便从世间销声匿迹。也许有人是一个神秘的科学家,他正在使用每个人的计算和宇宙。对抗未知势力。

但值得一提的是,中美金融界相关学者曾提到过这样一个有趣的用途:比特币的这个系统和算法可以用来替代现有的SWIFT国际资金结算系统,其结算速度比现有的结算系统要快,也非常安全可靠(这里算法靠谱)。

但是,即使使用真正的比特币算法作为新的国际结算标准,也不会使用现有的比特币网络来完成。就像也采用了BitTorrent标准一样,一些国内的下载客户端可以保证只向自己的客户端提供源,而忽略其他客户端。银行肯定会修改某些结算算法,作为专门为银行业服务的私有系统,而现有的比特币肯定不会被这个新的私有网络所认可,因此与公众无关。这不是一个完全的好消息。

再次咆哮:比特币风险很大,投机极其谨慎。