区块链1.0:货币与比特币

区块链(Blockchain)是一种分布式数据库,起源自比特币。

区块链是一串使用密码学方法相关联产生的数据块,用于验证其信息的有效性(防伪)和生成下一个区块,区块链和比特币是一起诞生的,比特币也是区块链1.0时代最重要的应用。

区块和区块链

(示意图:一个典型的区块结构)


(创世区块)


区块链是由区块串成的链,每一个区块都在头部保存了上一个区块的HASH值,从而形成了链式的结构,比较特殊的是,比特币的第一个区块(也被称为创世区块)是由一个据信叫中本聪的人构造而成的,创世区块没有指向任何区块。

有了创世区块之后,人们就可以通过”挖矿“来制造比特币,”挖矿“其实就是创建区块的过程,其本质是解决数学问题:

sha256(sha256(new_block_template)) <= target

new_block_template是一个新的区块模板,一个新的区块需要包含任意数量的当前没有确认的交易和区块的基本信息,其中coinbase交易和随机数由矿工任意填写。

我们知道sha256运算的范围是0~2^256-1共2^256种可能,而且sha256的运算结果分布足够均匀随机,所以矿工们想要解上面的不等式,只能有一种办法:不停的变换随机数和/或coinbase字段然后重复计算hash值以期找到满足不等式的block。矿工一旦找到满足上述不等式的block,广播到比特币网络并被网络接受,新的区块就被创建了,所有的矿工会在这个新区块的基础上构建下一个区块。

根据中本聪的设想,区块应该每10分钟创建一个,所以,比特币的网络会每隔2016个区块review一次区块的平均产出时间,如果小于10分钟,说明参与不等式求解的”计算能力“增多,需要适量调小target以增加解题的难度,反之,就会增大target以减小解题的难度。参与区块创建的矿工会得到比特币的奖励,这笔奖励最初为50BTC,每隔210000个区块(约四年时间)减半,最终减少到0,目前每个区块的挖矿奖励为25BTC,在今年晚些时候会减少到12.5BTC。

交易

这里先明确一点,比特币网络里面,其实并不存在所谓的比特币,存在的只是很多”没有花费的交易(unspent transaction outputs ,UTXO)”,UTXO指经过网络验证,却没有出现在其它任何交易inputs里面的交易。矿工们创建区块,其实只是创建了一个特殊的UTXO(即coinbase):这个特殊的交易没有输入(任意填写),只有输出。

到这里大家可能很困惑了, 我们先来看下交易的典型结构:

(coinbase交易, 假设该交易的id为f5d8ee39a430901c91a5917b9f2dc19d6d1a0e9cea205b009ca73dd04470b9a6)


(普通交易)

我们从coinbase开始来解释比特币网络的交易,矿工在创建区块时,coinbase是可以写入任意内容的,一个正常的矿工可能会这么做:Inputs字段写入一些自己个性化的内容和随机内容(以满足上文中的不等式),Outputs中的Value字段填写挖矿奖励,scriptPubKey字段写入一段脚本,这段脚本使得自己下次可以“花费”掉这笔交易。

这里先铺垫一下比特币的私钥、公钥和地址的关系:

比特币私钥(private key)类似于密码,是一段只有你自己知道的不限制长度的数据,一般为了保证安全性,会使用真随机数发生器生成不少于256bit的数,私钥通过单向算法SECP256K1生成公钥(public key),再将公钥经过单向算法RIPEMD160生成公钥哈希(public key hash),最后将公钥哈希经过BASE58编码加上校验值后生成比特币地址(address),如下图所示,即,有了私钥,我们可以推出所有,有了公钥,可以推算出地址(和公钥哈希可以互相转换), 但是不能推出私钥。

(比特币私钥、公钥、地址之间的关系)


回到上面,我们来看下一个普通的交易是如何“花费”掉之前的交易的,普通交易的inputs就不能随便填写了,需要填写你可以花费掉的交易,并向全网证明这的确是你可以花费的交易,具体过程参照上面的coinbase交易和普通交易,普通交易的发起人指明要“花费”coinbase这一UTXO,并在inputs的scriptSig字段里填上了自己的签名和公钥,广播到全网,接受到这笔交易的节点通过如下过程验证交易:

首先执行scriptSig,将签名和公钥入栈

接着执行scriptPubKey的第一个命令OP_DUP复制栈顶元素

接着执行OP_HASH160,获取公钥的哈希

接着入栈pub_hash’ (35df7e6daa60393b0ed2474a21713a845a2212dd)

接着执行OP_EQUALVERIFY校验栈顶的两个元素(pub_hash和pub_hash’)是否相等,相等则继续执行,不等则验证失败,退出执行。这一步的意义是保证之前的交易的送达地址和这次交易的发送地址匹配(公钥哈希和地址是等价的)

最后执行OP_CHECKSIG使用pub和sig校验签名,校验通过这笔交易即会被网络接受,否则,退出执行。只有持有正确私钥的人才能执行正确的签名操作,所以这一步的意义是验证该交易是否由实际拥有人发起。

上述过程是一个标准的“Pay-to-PubkeyHash”, 即比特币网络标准的转账脚本结构,实际上比特币提供了一个类似Forth语言,基于堆栈的脚本系统,使得使用者可以完成一些更复杂的交易逻辑。

比特币的问题

区块链容量问题

比特币的核心理念是去中心化,所有的节点都保留区块链的完整副本,但是截止目前,整个区块链的容量已经超过60GB,这使得运行一个比特币节点的成本开始变得高昂,变相使得比特币的节点变少,这与比特币去中心化的初衷相背离。

算力攻击问题

自从专业的矿机被发明已来,比特币网络的挖矿难度越来越大,个人独立挖矿已经变得基本不可能,矿工们基本都是把自己的算力接入到集中式的矿池来参与挖矿,目前全网最大的两个矿池算力之和已经超过全网的50%,这带来一个问题,因为理论上控制超过全网50%算力就可以篡改区块的生成,这给比特币带来了信任危机。

汇率波动问题

目前比特币交易市场已经完全沦为了投机市场,小白投资者往往被庄家操盘血本无归,期货、杠杆等各种衍生工具更是加剧了这一过程。

法律问题

目前多数国家并不承认比特币的合法地位,比特币由于其去中心化的特性也并不易被监管,这使得基于比特币的赌博、毒品和军火交易也异常猖獗,这些也给其未来发展添加了很大的变数。

总结

比特币本身更像是一个试验性的产物,有着许多缺点和不完善的地方。但比特币带来的区块链技术的去中心化、分布式自治等却有着革新未来的力量,我们将在2.0和3.0章节里继续分享有关区块链的创新和可能的未来。


参考:

[1]比特币,https://zh.wikipedia.org/wiki/%E6%AF%94%E7%89%B9%E5%B8%81

[2]区块链,https://zh.wikipedia.org/wiki/%E5%8C%BA%E5%9D%97%E9%93%BE

图片来源bitcoin86.com

本文作者:熊荣正(点融黑帮),2016年4月加入点融成都数据团队参与数据相关产品研发。曾参与比特币相关创业项目,对比特币、区块链、互联网金融等领域比较感兴趣。平时喜欢吃、睡、听音乐。

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

推荐阅读更多精彩内容