专栏名称: Hi区块链
可能是最靠谱不忽悠的区块链资讯平台
目录
相关文章推荐
51好读  ›  专栏  ›  Hi区块链

虚拟币价值传递的生物学意义——虚拟币与新体制(二)

Hi区块链  · 公众号  ·  · 2017-10-31 15:57

正文

请到「今天看啥」查看全文


从问题入手理解虚拟币


虚拟币的术语太难懂了,很容易让人看晕,这讲的都是啥呀?


所有的技术发明都是为了解决问题。不要被那些复杂的理论吓倒,围绕问题本身去理解虚拟币就简单多了。



如何确认身份?


虚拟币要解决的是去中心化的价值传递。这就产生了第一个问题,价值传递总是从身份A到身份B,去中心化的情况下,没有一个中心机构来确认身份,那网络上的各个节点如何确定一个交易的双方身份呢?


解决这个问题的技术很早就发明了,就是在银行U盾中常见的公钥私钥加密技术。


公钥私钥是一种非对称加密技术,用公钥加密的信息可以用私钥解密,用私钥加密的信息可以用公钥解密。公钥私钥基于数学上的RSA算法,私钥可以算出公钥,但根据公钥很难算出私钥。公钥全网公开,私钥自己保存。


而对称加密就是加密和解密都是用同一个密钥,我们对压缩文件设置的密码就是对称加密。这种加密技术不适合用于需要确定身份的信息传递。


理解公钥私钥的概念非常重要,这里举两个例子,解释下为什么公钥私钥可以用于身份确认。


(1)李雷向全网发布信息说他想找韩梅梅,李雷用他的私钥A加密信息:“我是李雷,我想找韩梅梅”。李雷把加密后的信息和他的公钥a一起发到网络上。大家用公钥a解密信息,就可以确认拥有公钥a账户的人自称李雷,他想找韩梅梅。


(2)李雷单独向韩梅梅说我爱你,李雷用他的私钥A加密信息:“韩梅梅,我爱你”。李雷用事先已经获得的韩梅梅的公钥b将之前的加密信息再加一次密。李雷将加密后的信息通过网络发送给韩梅梅(这信息可被网络上的任何人接收)。韩梅梅收到信息,用她的私钥B解密信息。韩梅梅用事先已经获得的李雷的公钥a将之前解密的信息再解一次密。韩梅梅看到信息后,就可以确定,这条“我爱你”的信息是李雷发过来的。



要注意的是,注册虚拟币账户时,由客户端生成私钥,没有任何的服务端保留账户的私钥信息,又因为虚拟币是去中心化的, 所以,一旦丢失私钥就永远无法恢复账户的使用。大部分虚拟币将私钥信息加密封装成本地钱包文件,务必要做好钱包文件和操作密码的备份。


因为账户丢失后不可恢复,逻辑上, 虚拟币的账户只能是匿名的。



如何保证交易的真实性?


没有中心化机构做记录,如何保证一笔交易的真实性呢?虚拟币采用的是分布式记账的方式,比如张三向李四转了100元,全网络的节点都记录一条由张三私钥生成的交易信息:某年某月某日某时某分某秒(时间戳),张三向李四转了100元。虚拟币账户的余额是根据交易记录算出来的,所以李四不会去否认这笔交易;而张三如果想否认,需要篡改大部分账本的记录,这难度不小。


古时候结婚,没有民政局公证,大家就采用类似分布式记账的方式,通过婚礼,让周围的亲朋好友一起见证一对新人结为夫妻。婚礼越盛大,见证的人越多,印象越深刻。不过,在现代社会,因为有政府的公证,婚礼的这部分作用就减弱了。不少的年轻人开始不办婚礼,两个人旅行结婚,发个朋友圈了事。

去中心化和中心化各有利弊,要根据实际情况采用合适的方案。


只有分布式记账还不够,大家可以乱记账,导致账本不一致。如何让大家认真负责的记账呢?这就引出了共识机制。



目前,主要的共识机制有三种: PoW、PoS、DPoS


PoW :全称Proof of Work,工作证明。大家一起解一道复杂的数学题,谁解出来,谁就可以记账。解题是一个概率事件,与计算量正相关。
早期的虚拟币,比如比特币、莱特币采用的就是PoW共识机制。


PoS :全称Proof of Stake,股权证明。在这种模式下,有一个名词叫币龄,每个币每天产生1币龄。记账权与账户的币龄大小正相关。一旦记账完成则币龄清空,重新累积。
以太坊第四个阶段Serenity(宁静)采用就是PoS共识机制。


DPoS :全称Delegated Proof of Stake,委任权益证明。它的原理是让每一个持有虚拟币的人进行投票,由此产生多位代表(超级节点)。各个代表间根据PoS的共识算法竞争记账权。
比较新的虚拟币,比如BTS、YOYOW采用的就是DPoS机制。DPoS大幅缩小了参与验证和记账的节点数量,可以达到秒级的共识验证。


还有一些更复杂的共识机制, 比如投注共识、实用拜占庭容错等,就不一一介绍了。
有兴趣的网友可以查阅《图说区块链》(徐明星、田颖、李霁月著)一书,里面有详细介绍。


为了鼓励大家积极记账,第一个完成记账的人可以获得虚拟币奖励。这就是币圈常说的“挖矿”,参与记账的人被称为“矿工”。


记账权按概率随机授予“矿工”,“矿工”照实记录就可以获得奖励。如果“矿工”想要捣乱、造假,乱填信息或删除信息,因为同时记账的矿工很多,一旦出现记账冲突,系统以最多相同信息的记录为准。篡改记录不仅不会得到系统认可,还损失了最先完成记账的系统奖励。


新交易的第一个记账操作被系统确认后,全网其它节点就会自动同步这条交易记录,实现账本的统一。



采用什么样的存储结构?


虚拟币的基础数据只是交易记录的流水账,在使用过程中,还要能方便快速的查看余额、查看历史交易记录,那么采用什么样的技术来存储数据合适呢?对于IT界人士,这很简单嘛,不就弄个数据库,有新增数据、索引、查询功能就够了。


但仅是简单的数据库还不行,虚拟币开放的运行在一个不安全的网络环境上,如何保证历史记录不被篡改呢?虚拟币数据库的物理存储结构采用的是一个区块文件链接上一个区块文件的方式,区块文件的头部会记录上一个区块文件的哈希值,确保已打包好的区块文件无法被篡改。这就是所谓的区块链。


哈希算法可以将任意长度的二进制值映射为固定长度的二进制值,固定长度的二进制值称为哈希值。一段信息哪怕只更改一个字母,对应的哈希值都会有很大的不同。要反向逆推哈希值的输入值,是很困难的;如果同时还要求输入值有实际意义或符合一定规则,则几乎不可能。所以哈希值可以用于检验数据的完整性。




本质上,虚拟币的区块链就是一种分布式数据库,而记账这个动作对应的就是生成新的区块文件。


不同的虚拟币项目对应的区块链数据库功能也不同,比如以太坊的智能合约,应该是还加上了数据库的存储过程和触发器模块。


区块链的分布式数据库是去中心化的,要附加一些机制来保障数据的真实性和不可篡改性,这点与中心化机构采用的常规的分布式数据库解决方案有很大的不同。比如,区块文件同步就是一件非常复杂的事情,需要一套精巧的设计来配合。


区块链在同步过程中,因为网络环境的不稳定,一条交易信息只被一部分矿工收到,这就会产生区块链分叉的现象。一般情况下,分叉会很快被消除,系统以最长的区块链为准,抛弃较短的区块链分叉,部分交易被撤回。不过这又会导致“双花”问题,即有人故意将一笔虚拟币在短时间内先后付给两个人,从而获得两笔收益。为了应对这种情况,虚拟币的交易需要在后续多个区块文件确认生成后才算最终有效;这样攻击者想要实现“双花”,就必须连续多次完成全网最快记账的操作,这极大的增加了攻击难度。比如:比特币的交易至少需要1区块的确认,最好是6区块的确认。


还有种分叉,是由于矿工社区支持不同的虚拟币参数调整方案而导致的分裂。

“双花”和分叉,属于更高阶的知识内容,有关细节可自行上网搜索。



比特币挖矿运算的价值


对于PoW共识机制,有必要对其价值做进一步解释。PoW的挖矿运算看起来挺浪费资源,但实际上却有非常重要的价值,那就是安全。


比特币占用了互联网上大量的算力,使得无论攻击者使用多么高明的黑客技术,都难以确保在较短的时间段内一定能完成一次全网最快记账,更何况还要连续多次才可以实现“双花”攻击;这难度大到没边。


因为算力是有限的,且无法共用,所以采用PoW共识机制的虚拟币具有天然的排他性。在我看来,采有PoW共识机制的虚拟币,只有比特币和莱特币才算有点价值。


互联网上,相似的产品,只有老大和老二能活着,老三出局。



何如互相联系、传递数据?


没有中心服务器,交易双方该如何互相联系、传递数据呢?这个就不多解释了,因为大家都很熟悉,下载日本女星动作片的时候经常用到,那就是造福无数宅男的P2P网络协议。



虚拟币是骗局吗?


以上内容就是虚拟币实现去中心化价值传递要解决的核心问题。要想精通虚拟币的技术细节和实现方式,以及跟踪虚拟币最新的技术发展,可要花费不少功夫啃几本大部头的书籍资料才行啊。


所以, 虚拟币本身可不是骗局哟,没有哪个骗子会愿意花这么多功夫来包装一个骗局。


但是,有很多虚拟币项目不可信。



哪些虚拟币项目是可信的?


虚拟币是由代码生成的,为了获得大家的信任,虚拟币项目的代码都要开源,让公众审查。


不开源的虚拟币都是骗子。



哪些虚拟币项目是有价值的?


因为虚拟币项目都是开源的,所以很容易被人复制,简单修改下参数,就弄出个新币。造成一堆山寨币横行。那么如何判断各种虚拟币的价值呢?


我个人有两条简单的标准:


(1) 比特币、莱特币因为具备很高的安全性,所以有价值。


(2)在《虚拟币价值传递的生物学意义》一文中,提到大部分的虚拟币可以视为某个互联网应用平台的股份。 所以除了比特币、莱特币,其它虚拟币的价值取决于其结合的应用的影响力。没有应用的虚拟币都是垃圾。


可以采用目前针对互联网创新项目的风险投资模式来估算虚拟币项目的价值。至于具体的估算结果,那就各人有各人的主观判断了。




导读:

虚拟币价值传递的生物学意义——虚拟币与新体制(一)


Hi区块链, 可能是 最靠谱 不忽悠 的区块链资讯平台。


yoyow公众号

EOS中国社区:667566311

进微信群请加 :dacnow










请到「今天看啥」查看全文