区块链随笔一:区块链的基本结构

      随着ICO的火热,区块链技术逐渐成为人们茶余饭后的话题。然而在很多人的眼中区块链技术就等于ICO,ICO荣区块链技术就荣,ICO黄区块链技术就黄,这是非常不对的。

     比特币及各种代币是运营于区块链技术之上的一种应用,ICO一种融资行为,通过代币的首次公开发行来获得项目启动资金,以反哺各个应用和区块链技术的发展,我相信这是ICO的初衷。但是资本是逐利的,目前的情况是劣币驱逐良币,泡沫巨大,监管势在必行。正如徐小平老师所说:“ICO只是区块链技术的一个应用,而不是区块链技术本身。有人说98%的ICO项目不会有回报,因为泡沫太多了,这一点我是同意的。但ICO最大的问题不仅是泡沫,而是缺乏监管。这个问题,我相信政府一定会有所作为。”

     作为信息安全领域学习工作了近10年的老鸟,我认为区块链技术是近年来最具革命性的新兴技术之一。他不仅仅是一个加密技术或是数字货币、或者共享账本什么的。而是一门系统工程和全新的设计思想,一个融合云计算、分布式存储、密码学等学科的全新设计理念。

   现在大家都在讲解区块链的概念和应用场景,但是讲解区块链技术的地方很少,我希望能有这么一个地方和大家交流学习区块链技术,将自己研究区块链技术的所得与大家分享,共同进步。只有深刻的认识到区块链技术,深刻的认识到ICO,才能保持初心,不被形势所迷惑。

水平有限,难免会有遗漏或不对的地方,欢迎大家来拍砖。

什么是区块链,如何解决问题

   区块链技术学术定义是指多个参与方之间基于现代密码学、分布式一致性协议、点对点网络通信技术和智能合约编程语言等形成的数据交换、处理和存储的技术组合。

  有点头晕,顾名思义,就是数据区块按照时间顺序以链的方式组合在一起,而这个链任何人都可以访问(对共有链而言)、不可篡改、不可伪造。如果像比特币那样运用在货币领域,这就好比全网络的所有人都在共同维护着这个账本,任何账目的转入转出都可以查,任何的交易都可以查,这就解决了一个人类社会的基本问题:两个陌生人之间的直接信任问题,不再需要第三方来维护这个信任。

  区块链如何做的呢?它由许多的区块组成,每个区块看成一个账单,把区块链理解为一个账簿,区块中包含交易的详细信息,例如买方、卖方、合约等等,交易发生时会建立一个区块来记录交易详细信息。然后区块会广播到全网所有节点,通过将共有交易详情及双方或多方独有签名合并加密获得全网验证。如果所有节点对应的加密记录一致,则交易有效。 当全网验证通过,该区块就会并入到历史的交易链中,并且备份到全网的各个账簿上。 如果要篡改区块上的信息,则需要 51%以上的交易记录才能被认可通过,所以篡改交易信息是非常困难的。

  什么是区块?存储了什么东西


区块结构

可以看出区块主要有区块头和区块体两部分组成。区块头包含版本号,前一区块地址,时间戳,随机数,当前区块的目标哈希值,merkle数的根植等信息。区块体主要包含交易的计数和交易账单详情。

一定时间内(比特币10分钟)全网的所有交易都会被永久的记入数据区块中,而且任何人都可以查,区块中的MerKle树会为每一笔交易都进行数字签名(好比交易的双方都盖了自己的钢戳),因为这个钢戳只有交易者自己才有,这样就能保证块里的每一笔交易都是不可伪造的,同时也是不能抵赖的,同时加入时间戳就可保证也是不可重复的。

所有的数据都通过MerKel树的hash值产生这个区块体的唯一根植记入区块头。MerKel如此设计非常的巧妙,一方面他可以快速的归纳和校验区块数据的完整性(自下向上不断HASH就行了)。另一方面大大提高了区块链的运营效率和可扩展性:因为区块头只用包含跟哈希值就可以了,而不用附带整个块,这极大的减少了链的负担。

现在大家了解区块体包含一段时间内全网的交易信息,并且以MerKle数的方式存储,并将他们的跟hash信息存储到区块头。打个比方:区块体就是我们这段时间(比特币是10分钟)的账本,整个账本会有一个唯一的hash值,就好比我们的账本名,而链就好比账本名的目录,我们将这个账本名存储到目录中,就可以找到账本在哪里,也可以校验他是不是真的账本的了(因为hash值本身不可篡改,账本发生一个字节的变化就会对hash值造成雪崩效应,变得和之前的大不相同)。

区块头包含了前一版本号,区块地址,时间戳,随机数,当前区块的目标哈希值,merkel树的根值。相信大家一定会知道链如何工作了,很简单,就是不断的通过前一区块地址,就可以找到上一个区块在哪,这就形成了一个链。

那么其他的字段有什么作用呢?我们一个一个看

时间戳和不可篡改性

时间戳是指格林威治时间1970年1月1日0时0分0秒(北京时间8时0分0秒)到现在的总秒数,其实就是这个总秒数的字符串,这就可以唯一标识某一刻的时间。再区块链的每一个区块头都有一个时间戳,记录当前区块数据的写入时间(这个时间戳是由获得记账权的矿工再完成记账时加盖的),这就能说明区块的写入时间了,下一个区块的时间戳都会对前一个时间戳增强工作量证明,也就是下整个链条一旦链起,时间戳只会越来越大。这就增加了一个时间维度的数据,使得数据更容易追溯。

挖矿问题

另外两个字段,随机数与目标哈希的作用又是什么呢?

比特币有一个很大的问题,也是他的设计思想,就是全网没有类似于央行这种单独记账的单位,大家同时竞争记账(计算前一段时间生产的区块,并将该区块写到链上),也就是传说中的挖矿。那么谁来记账呢?在没有中央统筹单位,互相没有信任基础的情况下如何保证各个节点记账的一致性和交易的合法性呢?这就是共识机制。

比特币采取一种POW(工作量证明机制),这就用到了随机数和目标哈希值两个字段。

首先,矿工把全网尚未记录的现有交易打包成一个区块,轻松得到一个包含MelKel树的区块体。然后矿工需要不断的去遍历尝试寻找一个随机数,使得新区快加上随机数的哈希值能满足一定的难度条件,例如前面10位都为0。只要找到这个随机数,就相当于确定了区块链最新的一个区块,也相当于获得了区块链的本轮记账权。然后矿工就可以把这个区块广播出去,全网的其他节点验证该区块是不是满足挖矿难度条件(比如前10位为0,这个条件会变化,比如会根据当前全网的算力进行调节),同时校验区块里的交易数据是不是符合协议规范,然后把该区块链接到自己的区块链上,从而也就完成了全网当前网络的共识。

这样做的优点是完全去中心化,节点自由进出,避免建立中心信用机构的成本。只要网络破坏者的算力不超过全网算力的50%,交易状态就能保持一致。

缺点也很明显,大量资源浪费,好好的电都用来算这种东西了。而且激励机制也造成矿池的算力集中。所以有了POS、dpos等等。

小结

区块链巧妙的融入很多设计思想和技术:比如P2P网络、加密算法与哈希算法、数字签名、甚至博弈论等。这其中的很多思想也都在这个小小的数据区块头中得到体现。我认为区块结构是所有的基础,也是精髓所在。所以,比特币的区块结构即能反应发明者天才的一面,也是可能制约其发展的所在,所以才会有了以太坊,才有了不断革命的区块链技术。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,684评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,143评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,214评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,788评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,796评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,665评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,027评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,679评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 41,346评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,664评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,766评论 1 331
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,412评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,015评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,974评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,203评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,073评论 2 350
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,501评论 2 343

推荐阅读更多精彩内容

  • 区块链技术的典型应用 1 伟大的开拓者-比特币 1) 比特币产生 2008年,中本聪(Satoshi Na...
    yrm23阅读 6,233评论 0 23
  • 直播讲什么: 1、为什么区块链技术会引来徐小平等一众投资人的热捧? 2、有人说比特币未来的价格能涨到100万,有人...
    岱挚阅读 853评论 1 6
  • 先从区块链开始。 这个话题很大,咱们从一个点开始,再逐渐展开。 我们先从区块链普遍的基础定义开始,到底什么是区块链...
    舒哲小义阅读 664评论 3 4
  • 我已经很久没有梦到她了,除了今天。她在我的梦里从来没有开心过,我永远都来不及告诉她我到底有多爱她,永远都来不及...
    李吖晶阅读 117评论 0 0
  • 是在网上购买其他书籍的时候看到这本亮丽的黄色封面又取了个恐怖的名字的书,当时”无人生还“四个字让我就对这本书充满了...
    胡阿年阅读 471评论 2 1