区块链之眼见为实

区块链这个词我想大家都略有耳闻了,而且也听了很久了。恐怕还有不少人参加了区块链资产的交易,参加了曾经热火朝天,可以一夜暴富的ico。那究竟什么是区块链?我想很多人还是说不上来。

用一句话解释:区块链就是分布式账本

简单,明了。但是这句话是一句非常正确的废话,因为不知道的人看了还是不知道。

那我再摘一段来自巴比特网站对区块链的解释

好吧,这段我压根就没有看完。

在我学习了《极简区块链实现》之前,我对此也是一知半解。感觉好像知道了,但是仔细一探究又好像不那么清楚。所有这一切的原因就在于,所有关于区块链的概念都是听说的,从来就没有亲眼实实在在看见过。

老话说得好,眼见为实,耳听为虚。那今天我就带你来看看最原始的区块链样子,希望能够让你抛弃那些天花乱坠超级难懂的名词,从感性上对区块链有深入的认识。

加密

区块链采用了非对称加密的方式来保护信息。理论比较复杂,我们也没有必要研究这么深刻。我们知道怎么使用就可以了。

非对称加密中有两个重要的概念

  • 公钥
  • 私钥

私钥是拿在自己手里的,而公钥是给别人的。我做一个不是特别恰当的比喻,希望能帮助大家理解。

  • 公钥 -- 登陆密码
  • 私钥 -- 支付密码

也就是我用公钥能够访问你的账户,并确认你确实有这么多钱。但是我没有办法用公钥把钱转走,必须要使用私钥才能转账。所以你一定要保管好自己的私钥,否则你的钱就会一分不剩了。

好了,讲解了一下概念,我们亲眼来看看公钥和私钥,增加一些感性认识。

私钥和公钥

很丑,根本看不懂。也是,原本就不是给人看的-_-!

想传达的意思就是私钥随机生成,而公钥通过私钥计算得出,且不可逆。

地址

在区块链中,地址就是账户。每一笔交易都是从某个地址发出,流向另一个地址。

为了给大家一个感性的认识,给大家看看一个比特币创世区块中地址的样子:

1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa

是不是长得有点难看?那你说我们可以随便写一串作为地址吗?答案是不行。因为地址是由非对称加密中的公钥经过一定的算法计算得到,你终于知道为什么之前要说公钥私钥了吧。

那我们就来看看,如何得到上一小节中生成的公钥对应的地址。

从公钥到地址

瞧,咱也有地址了,而且是正儿八经的比特币地址哟。

你说咱不信,那来验证一下。但是这个算法是不可逆的,所以我们只能验证一个地址是否有效,或者从地址中获得公钥对应的哈希。

还是拿创世区块的地址来说事儿。这是blockchain网站上对应地址1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa的截图,其中框选出的就是该地址对应公钥的哈希。

公钥哈希

接下来我们来验证一下,比特币中公钥哈希算法和我们自己程序中的算法计算的结果是否一致。

计算公钥哈希

Bingo~,这两个红框内的值是一摸一样的。你也可以随意生成比特币地址了哟。当然了,生成也没有,因为里面没钱!

交易

从某种数据结构的角度看,区块链更像是交易链,或者更准确点叫交易树。有一定编程基础的朋友对此可能就更容易理解一些。如果你不懂编程,也没关系。看我给你慢慢道来。

区块链的第一个应用是比特币,所以这里的交易可以理解为金融系统中的交易。只是区块链中的交易和我们常见的交易格式有点不同。

普通的交易:

A账户->B账户 X元

区块链的交易:

上一次交易的输出 -> A输出 X元 + B输出 Y元

这么一看是不是觉得头晕了?这么简单的普通交易,怎么到了区块链的世界就成这么复杂了?而且连账户都没了,都不知道这钱从哪里来,到哪里去。

我尝试用现实世界的例子来解释一下,希望能够帮助大家理解。

假设我现在是在古代,金融产业还相当不发达的时候。听说京城机会多,我打算进京发展。因为当时没什么转账技术,我必须取出在当地钱庄所有的十两银子带到京城。在京城落脚后,我花了二两银子租了间房,把剩下的八两银子存在了京城的票号。

在这么一个瞎编的例子中

  • 从当地钱庄取出的是两银子就是上一次的交易输出
  • 京城租房的一两银子就是A输出 X元
  • 存入京城票号的九两银子就是B输出 Y元

可以看到,在金融行业不发达的时候,交易的形式和区块链中体现的形式是一样的。而我们现在通常看到的交易形式是进化的版本。那区块链为什么还要采用那种原始的方式呢?匿名账户可能是原因之一吧。

做了这么多解释,该是亲眼看一下了。

交易

这就是刚才那个瞎编的例子对应的一个区块链交易。

  • Input 0: 也就是我带来的那十两银子
  • Output 0: 也就是我租屋用掉的二两银子(Value: 2)
  • Output 1:也就是我把剩下的八两银子存入票号(Value: 8)

Input是如何来的,我在这里先卖一个关子。先来看看我们如何把这几个输入输出对应到某个“账户”上。

仔细看途中用红线画出的部分。在输入中,表示来源;在输出中,表示目的。而且第一个地址和第三个地址的值是一样的。也就是表明了,这个交易先从第一个账户中取出了钱,然后分别转了二两给别人,又转回了八两给自己。你说既然要转给自己,那干脆只标明转给别人的不就行了。哎,抱歉,比特币中的交易就是这么设计的。这点您请记住了。

区块

在比特币中,区块是交易的集合。学过财务报表的可能理解起来比较容易。也就是一段时间内的账务的总结。或者类似于银行每天的结算。而在区块链中,单位时间内所有交易的一个集合就叫做区块。

不卖关子了,还是来看看一个区块的样子吧。

区块

在这个截图中的区块中包含了两个交易。一个是给挖矿人的奖励,一个则是上节中出现的交易。

好了,就是这么简单。

区块链

区块链 = 区块 + 链

顾名思义把区块叠加在一起就行了。就好像是公司几年的账本落在一起。在通常意义的财务报表中,我们通常关注的是上一年的报表。而在区块链中我们必须要关注之前所有的区块,而不仅仅是当前的一个。

来给大家看一个例子,或许会帮助大家理解。为了看得清楚,我省略了输出中一些不必要的内容。

区块链

用红线画出的交易ID是一致的。也证实了之前对交易的定义:

上一次交易的输出 -> A输出 X元 + B输出 Y元

这样我们就能看清楚,在上头的那个交易的输入,来自于下面那个交易的第0个输出。

好了,讲完了,就是这么简单~

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

推荐阅读更多精彩内容