虚拟币,区块链以及衍生的各种相关ICO项目,经过市场发酵,行情变化和相关大佬集体炒作,已成为这一年来最火爆的话题,火到很多韭菜根本还没搞清楚这到底是什么东西就已经被割了一轮又一轮。其附带的技术光环使它与钱宝之类骗局不同,无论市场如何沉浮都始终有一大帮拥护者。沉思录一直想谈一谈关于这方面的话题。不过在谈这个问题之前,我们应该先搞清楚,作为虚拟币底层应用技术的区块链,到底是什么样的东西,采用什么样的机制,有什么样的作用。所以今天我们先来一篇通俗易懂的科普。
携手共建吐槽链
首先从头开始,让我们共同构建一个区块链社区。
假设有两个小青年,胖子和瘦子,他们都是热爱吐槽的两个人。为了更好的促进吐槽事业的发展,胖子和瘦子联络各地的段子手们,筹办了“吐槽基佬一起嗨星辉国际唯一大哥孙1phone共同体第一届茶话会”,探讨如何更有姿势的进行吐槽,并广泛吸取意见构筑社区。
会议期间,各地成员踊跃发言纷纷献计献策,对现有吐槽圈不合格不合理的现状进行了总结:
1.吐槽人毕竟是一件背后说人坏话的事情,观念上容易与为尊者讳等传统冲突,在现在的时代中吐槽虽然越来越流行,但是在某些场合容易与传统、宗教等发生冲突,有重要的匿名性的需求很强。
2.各路段子手大量的生产段子,却常常出现大V,相声演员,小品演员对原创段子进行COPY,往往获得最大收益的并不是原创段子手,这严重打击了他们的积极性,春晚已经成为了年度段子总结大会了。同志们,创造力缺失啊。要鼓励原创拿出有创意的段子。
3.段子手天南地北的分布,类似段子谁才是第一发明人,这关系着段子权益的归属问题,不能出现被人白拿的状况。
4. 为了保证段子能够高效使用,一个完整段子能够拆分成多个小段子。
这次会议发出了一大倡议,“全世界段子手们,团结起来,共筑美满社区,携手编制《吐槽之书》”。号召大家共同创作段子,并写到一本吐槽之书上。对于吐槽之书的编写方式,决定应用最新的区块链技术。
吐槽的数据结构
(不懂可以无视):
Typedefine Structure
{
User 2byte;
Listener 2byte;
段子 128byte;
time 16byte;
} tucaoMode;
吐槽中携带的信息
:段子和时间。
吐槽行为:
在吐槽链项目中每一次的吐槽行为都不能是单独进行的,必须有一个吐槽人跟一个听他吐槽的人。每一次吐槽行为都必须是吐槽人给听吐槽的人讲段子。段子在讲过一次后,就从吐槽人的段子库中删除掉,转移到听吐槽人的段子库中,吐槽人不得再讲同样的段子。
数据加密:
对每一位吐槽人的身份采用代号的方式进行加密,并保证唯一性。定义代号长度两个字,加密方式可以采用方言,如胖子的加密地址就叫“盘鸡”,同样的对每一次吐槽行为则定义为十六个字的长度加密。一次胖子和瘦子进行的吐槽行为记录为“今天红红火火恍恍惚惚嘻嘻哈哈科科”。
记录方式:
每一次吐槽行为都会被记录,规定记录在一个特定的页面(区块),每当一个页面(区块)被记录满以后,则根据上一个页面的页码(区块号),以及本区块所有吐槽行为每个取出4个字符,再采用塑料普通话进行编码,最终形成一个16个字长度的页码(区块号),每一次记录都会以广播的形式通知所有的段子手。以《白头山雷声响天降领袖金将军思密达》为首页(创世区块)。
记录的一致性:
由于吐槽行为的发生,是天南海北的,能会出现远方的段子手没有接收到这次吐槽行为的广播。每当要进行翻页的时候,任一段子手根据他所知道的本页码(本区块号)所有吐槽行为用上述记录方式编写下一个区块的页码,只要同意他页码的人超过半数,新的页面(区块)生成。假如有人吐槽行为没有被记录,则在下一个区块进行记录。在同一时间只允许一个页面(区块)的生成。
记录的约束:
目前采用的编写《吐槽之书》页码方式存在漏洞,假如有一个坏人,用将段子拆分成极小的段子,建立吐槽行为,这样他就可以在最短时间通过编码方式知道《吐槽之书》下一页页码,获得虚幻的权利感与满足感。为此,特别规定,《吐槽之书》的新页面,每5分钟才能产生一次,给更多参与者提交页码的机会。在提交页码的时候,规定,由每个人提交成功的概率由他所拥有的段子数量与总段子数量的比值决定。这样既可以鼓励有才的大佬创作段子,也可以通过算法的调整,将提交概率向新人倾斜,鼓励大众的参与。
吐槽的奖励:为了保证参与者能够更加积极的维护《吐槽之书》,每当有人提交新页码时,奖励最先提交并且取得一半人同意的段子手新段子。
这样一个名为《吐槽之书》的区块链项目就打造成功了。
精巧的集成
让我们简单的分析下上面的区块链项目。通过对记录方式以及为了保证记录一致性的措施,可以保证数据的可溯源。查看每一次的吐槽行为,可以看到参与这次吐槽行为的双方,并且能够看到他们讲了什么段子。也可以根据段子,甚至各个被拆分的段子,追溯他的原始段子是什么,还可以看到最初拥有这个段子的人是谁。
区块链应用的场景,就是如同上面这个简陋的吐槽链一样。
它的构成由传递的信息、行为以及记录方式来组成的。(吐槽链中的信息是段子,行为是吐槽,记录方式则是《吐槽之书》)。一些深层次的应用,则是根据所传递的信息与行为制作脚本。如“智能合约”,就是以携带资金交易方信息,交易行为来进行开发。
以区块记录所有发生的行为,并且以特定的编码来保证每一个区块唯一且前后关联最终形成唯一的链。这种新颖的数据存储方式,保证数据分布式一致性的技术既区块链。
这里特别要提到分布式一致性在实际的计算机系统中,存在如下的几个问题:
各个节点间通信是不可靠的,会存在延迟,故障等情况;
各个节点间的处理可能是错误的,网络传输中可能出现的误码,甚至宕机;
同步调用会让系统不具备可扩展性;
正如当段子手分布越来越广泛,就不可能人人都记录所有的吐槽行为一样。在现实中,信息也无法在此状况下保证一致性。
在区块链中每一个新区块的生成,都有一个唯一特定的区块号,此区块号需要根据上一个区块号以及上一个区块中所有行为进行计算。区块号是对系统当前状态的一种共识,是由所有参与者共同决定的。
当一个恶意者想要修改一个区块中某个历史行为的信息时,这将导致篡改区块的区块号发生改变,而其他的参与者依旧保存有过去未篡改的信息,为了让后面的区块能够正常的链接,恶意者就必须要同时修改后面的区块信息,否则改掉的区块就会脱离区块链。
事实上,区块链所蕴含的技术都是应用广泛与成熟的,它广泛的应用了密码学,博弈论,控制论,分布式系统的技术,而其共识机制既如何形成最长的一条链,这正是他最大的创新之处。PoW,PoS,DPoS这些新名词,都是对如何形成共识的算法。
信任成本
《基督山伯爵》中有一段文字 “您老实承认您不十分信任汤姆生·弗伦奇银行的负责能力吧。这种事很简单。我早就想到了有那种可能性,我虽然不是个商人,倒也采取了一些预防措施。这儿还有两封信,是和写给您的那封一样。一封是维也纳阿斯丹·爱斯克里斯银行给罗斯希尔德男爵的,另外一封是伦敦巴林银行给拉费德先生的。现在,阁下,您只要说一句话,我就可以免得在这件事上再使您感到不安了,而把我的贷款委托书寄给那两家银行。”
对于现代的金融行业中,针对个人或公司的还款能力,广泛采用了背景调查,背书等方式,其归根结底是因为信息与数据都不是透明的,需要通过专人进行调查。在竞标中所需要提供的资信证明也无非是找银行为你背书。资本是珍贵的,风险控制的所有环节都是为了使珍贵的资本不遭到损害。