Hi 游客

更多精彩,请登录!

比特池塘 区块链前沿 正文

并不完美的区块链三个“天然缺陷”

123458446
83 0 0
区块链技术并不完美。
" i% T; k7 F; m0 l8 a, R- ~3 Q' V事实上,任何新技术诞生之初都会存在“先天缺陷”。缺陷会随着技术进步而被完善,然后在新的技术背景下,再面临新的“缺陷”。( W2 \1 d! A& e1 ?- Y& h8 ?
比如飞机这个航空技术。1903年12月,莱特兄弟进行了人类历史上首次试飞,但是并不受美国政府重视,同时受限于材料,空气动力学,飞机发展也相当缓慢。直到两次世界大战,才推动了飞机在军事领域的应用。
4 _) r" M5 a& `: E/ O& L区块链技术发展也不会例外。+ X6 Y. B; Z( C3 V& m" X) [
时间回到2010年,彼时比特币刚满1周岁,由于核心代码漏洞,有人利用该漏洞凭空造出了1840亿个比特币。
6 d6 }/ Z  S  t% s庆幸的是,在社群努力下,迅速修复了这个漏洞。而比特币核心代码组的开发者们,也在夜以继日地为比特币核心代码库做贡献,以修补瑕疵,这才有了区块链行业的今天。
* K6 c% c( Z& F; h' W我们总是会把区块链技术“完美化”,殊不知,在经济学家、密码学家、计算机科学家眼中,区块链技术还有很多需要改进的地方。
0 g& j0 V% n0 K2 l例如《区块链核心技术开发与应用》就认为目前区块链技术在数学工具、博弈论、密码学、代码存在局限性的情况下,还有很大的改进空间。换言之区块链技术要想被大规模商用,还有很长的路要走。
9 q" m6 v: {  R: P* ~& W那么,目前的区块链还存在什么不完美的地方呢?
# j2 j; m7 R+ M  d9 T) l' a9 ]1 C# r. M6 R: j% U% h/ j: m
1) o/ y! G& }+ ~
完美代码的错觉
; U6 L8 Z+ g! ^# F/ {) }8 Y1 X: k如果将比特币网络系统比作一个大型软件,那么计算机技术与编程则为这项技术的落地提供了载体。9 @8 t6 u8 }' m$ H+ p
但是目前编程语言却明显存在一些不完美之处。+ V6 G* D) L1 T: d5 t+ a" B8 D' g& t$ _# j7 a
首先,语言种类繁多,没有哪种语言能够“一统江湖”。不同项目使用完全不同的编程语言,屡见不鲜:/ D% L. U  T6 Y
(1)比特币与瑞波币使用了C++;(2)以太坊则使用了四种专用语言:Serpent(受 Python启发)、 Solidity(受 Javascript启发)、Mutan(受Go启发)和LLL(受Lisp启发),都是为面向合约编程而从底层开始设计的语言。专用语言意味着这种语言只在开发以太坊相关应用时才应用;(3)很多基于区块链的DApps和Tools都是用的Go语言;(4)2017年著名的ICO明星项目Teos则使用了极其小众的 Michelson 与 OCaml 作为编程语言,等等。( y2 {, o7 v" l7 o: G* W, o
       7 \0 V# V- E3 k# N  x4 {0 F3 R( _

0 ^* e7 c6 V! @0 c# N7 Z" @# \数量众多的开发语言$ i0 L; `% W3 _
世界上编程语言多达上五十多种,但尴尬的是,没有哪一种语言能够占据绝对优势。
' V$ p. u9 x0 S- T1 [" Z$ A, g: v5 h国内著名经济学家朱嘉明认为,在现实中,很可能发生因为任何一种编程语言自身不足,以及不同的编程语言不足的迭加,对现有区块链造成本源性的伤害。
' E  }# H) f, ~2 \  N& i9 I其次,区块链编程语言主要依赖C++、Java、Go等几种 “高阶语言”,而这些所谓的高阶语言目前还存在诸多不完善之处。
4 e: ^( m  _9 e* E" H以Go为例,创建时间是2009年,距今只有10年,其“错误处理机制”、“垃圾回收器”与“编译器”等逻辑功能,还需要逐步完善,才能满足未来区块链开发需要。3 u4 k" A2 x; {- s
同时,朱嘉明还认为:现有的计算机语言正在面临与其它新技术的融合,进而影响区块链的技术体系。例如,人工智能技术和计算机语言的融合,很可能引发计算机语言系统的变革。
- C" M# s! c1 C/ ]" K       # b$ o; }: L. c6 _) B0 d% Q

) K- ?) U1 B& \% K8 K% p7 m     
; g& b8 m5 y+ T; k2 f( Y, z; n- h) l软件失效的逻辑
  h3 Z5 `. e" [3 F4 R( ]最后,由邹均等编写的《区块链核心技术与应用》这本书中还提到了编程人员的自觉和非自觉的错误。
+ F/ ^/ E- Y; X9 e' v编程人员的错误,会导致软件缺陷,而软件缺陷又会导致软件故障。软件故障是指软件在运行过程中导致不希望出现的错误,如果不加以适当处理,就会导致软件失效。
. D1 h! p. S" A4 r# ]+ g# L区块链技术一般运行在相对不可信的公开环境,没有专门的维护人员,更不可能做到像一般软件那样24小时公开维护,因此就要求软件要有高度的稳健性,但是现实情况却往往不是这样的。$ V5 W: B8 T3 E8 v* W/ ^
人为导致的漏洞,也会让区块链资产化为乌有,这种案例也屡见不鲜。7 m* z+ R# U& g# Q! m
4月22日中午,有黑客利用以太坊 ERC-20智能合约中BatchOverFlow漏洞攻击BEC(美链的代币“美蜜”)智能合约,成功向两个地址转出了天量级别的 BEC代币,导致市场上海量BEC被抛售。此事使得当日BEC的价值几乎归零。
# U, H9 e; U  n$ X
6 ?8 k1 h4 `$ n& r7 s. e" v
; [  k) x$ j+ a7 l4 r2 `     9 m% Y! V0 m3 t) m% _5 {6 V) P
4月22日当天,BEC价格从0.32美金跌到0.02美金
) b: Y' i" ?; y" P% D5 F3 {4月25日,仅仅三天后,另一个智能合约SmartMesh(SMT)曝出漏洞,交易所表示,因SMT出现异常交易,各交易平台暂停SMT的充提和交易。( p0 p) z" i0 N) E8 E
现实世界里,财物失窃尚能够通过立案侦查追回损失。但是在互联网的世界里,尽管数字货币“钱途”无量,一旦被黑却血本无归。: C, \5 @. j2 d7 X
因此,代码进步十分重要,但是程序员素养,对行业进步更为重要。
/ v9 v  ]( b3 \: s$ C+ p8 y: y/ ]9 U3 h6 X$ @' M2 E) e1 l. i
29 ^) I0 k9 x3 e1 o" r
博弈论的局限
5 k9 e. ~6 A8 K6 W中本聪在白皮书中提到,比特币是一种点对点的电子现金系统。实际上比特币背后的共识机制也是点对点进行的,一台台矿机合作变成矿场,矿场之间通过矿池连接起来,在互相博弈中,形成一种平衡状态。
8 J( M% y" _. O# E0 r这种博弈状态的平衡,在朱嘉明看来,建立在“博弈论”基础上的“纳什均衡”最接近反映区块链共识系统的状态。6 e5 Z7 k) V, s6 e* [& P9 y
      
, s5 N6 x, Z, @) g* t$ I& ^2 @8 u. `9 R, N5 u1 N2 k0 b" w
纳什均衡是博弈论中的一种情况" u, X  e  [9 u# k% i  y. n) ^9 s  t. x
“纳什均衡”是指,在一个博弈过程中,博弈双方都没有改变自己策略的动力,因为任何单方面改变自己的策略,都会导致自己的收益减少。举个例子,以即将来临的双十一为例,淘宝上两家旗舰店都在打价格战,任何一方在活动期间都不敢随便涨价,因为任何涨价行为都会导致自己一方失去优势。
. ~# J0 G2 [$ F, E" ^. h0 Q* O! [无论是比特币点对点的支付系统,还是矿工之间的挖矿竞争,都无法摆脱一个问题,在转帐、挖矿过程中每个节点都存在竞争,竞争的结果就是谁付出的矿工费用越高,谁的交易越快完成。
: ]% e/ r7 C5 H: W/ T# H5 t但是实际上,朱嘉明认为,这种“纳什均衡”状态下的博弈,是当年诺伊曼和纳什研究的是有限“节点”下的小规模博弈,早已经不足以面对“由几十亿节点的庞大对象构成的社会、经济等复杂行为”。+ V/ C, X5 w1 E2 @
当然也无法支持目前比特币、区块链系统节点“几何级数”的发展规模。
1 [9 _0 B* g' c& y, Q     
- X8 ]" |% B4 s( g" l% B0 B# G& [- P' t$ j4 O5 m; ]  X' p( Y' f
比特币全网算力是47073540.92 TH/s
8 S9 q% s& g5 g8 f7 d6 {' [目前,比特币全网算力是47073540.92 TH/s,市面上最常见的矿机是比特大陆的蚂蚁S9矿机,官方给出的这台矿机的额定算力时14.5TH/s,简单算个除法,结果就是全球比特币网络运行着324.6万台蚂蚁S9。* a0 D" N0 F2 v, @
      
( z% v0 r1 Q( x1 X, G2 p* S2 e6 O5 k/ p& _# X: i# a
蚂蚁S9参数5 D% M( X2 h5 D4 y
但是实际上,目前比特币矿场中还运行着很多算力低于S9的矿机,这就意味着全球比特币矿机数量远大于324.9万台。
, z  D6 k6 ^1 {( E在数百万的规模上实现矿机、矿场、矿池之间的博弈平衡,绝对不是个简单的算术问题。实际上,比特币全网算力还处于不断增长中,这种指数级别的增长,正面临“失控”着状态。目前比特币矿业消耗电力已经超过整个大英帝国的用电量。  G$ J" @5 n" w' @5 j; o& x
研究机构曾做出过这样的统计:如果按照去年11月份“比特币挖矿耗电量”增长速度来计算,到2019年7月,比特币挖矿耗电量将超过如今美国全国的用电量。1 Z& x. z0 y. B& r# y' Z
       + X) q4 O7 w' P  o" e* q8 P5 T4 Q  ~+ k
* R: S5 g. G7 x  n
2010年以来,比特币全网算力增长趋势
+ v; M8 X9 \, [" J5 R6 T- S同时随着全球比特币用户增长,比特币转账也正在消耗越来越多的“手续费”,网络拥堵就像悬在每个矿工、用户头上的“达摩克利斯之剑”,随时都有可能造成巨大的负面影响。
& J( r3 y2 e' K; q- v显然,“纳什均衡”状态下的博弈论已经无法支撑以比特币为代表的区块链技术的前行。亟待进行一场新的基础科学的变革。
" _2 e1 U- B' i2 C" r% y  {' Q5 i3 E5 T
3
0 f2 S; a, {2 c+ m/ C0 y* W哈希算法的掣肘( V& I$ f7 `+ S: l
“区块链技术的核心其实是密码学,密码学的重点则是哈希函数。”《区块链核心应用与开发》这本书提到。  F. Y) \! T" Q! X1 C
你在区块链上的每一笔转账、挖矿、应用开发等等,只要涉及链上数据处理,都会涉及哈希函数。而素数与数论则与哈希函数联系紧密。6 i) O5 E# ^% u5 _( P
我们经常说的比特币POW算法本质是一个哈希函数。
% j# K; |4 L1 ?2 A! J事实上,已经有很多哈希函数被设计出来并广泛应用,支付宝、微信、银行的加密无不使用哈希函数。不过Hash函数一般安全寿命都不长,被认为安全的算法往往没能使用多久就被成功攻击,新的更安全的算法相继被设计出来,而每一个被公认为安全可靠的算法都有及其严格的审计过程。+ q4 A1 D5 |$ c+ H
      
0 O* }5 n9 h1 y
- V+ [9 l0 v, a5 w- Z$ mSHA256对“哈希”加密
1 e/ V5 A5 D, x) R' |加密算法SHA家族的更迭史最能说明这个问题,从1993年SHA0被发明,在不断被破解与重新发明的较量中,目前已经发展到第五代SHA-512。
( J' K8 Z9 d1 I- o3 I* V在币圈中我们经常说某某币发明了某种算法,其实主要都是使用那些被认证过的安全算法,或是单独使用,或是排列组合使用。
2 w1 L' b% i/ d& n7 \而哈希函数与数学问题关系十分紧密,具体是指数论与素数问题。; E& m9 G0 L$ ?- J  q
% D2 k6 Z; ?0 _& j# _
       $ [, y- n! h! Q. b
《区块链核心应用于开发》这本书认为,目前数论还处于发展状态,哈希函数当然也处于发展状态,这就决定了区块链技术还存在诸多算法不当,进而导致区块链技术性能不足。
- I! g, t4 u) m0 ~比特币的不可扩展性、效率低下、升级困难,很大程度上就是该逻辑导致。因为扩展性问题,导致了比特币在2017年被迫分叉。总的来说,区块链技术的效率低下问题,在一定程度上还是数学问题。' g2 B3 z; X+ Y2 q. C7 u* E. P
有人可能会问,数论是什么?素数又是什么?) y. Y, p2 H3 g0 J- V
通俗理解,一切数学问题都可以归结为数论问题,因此素数问题也属于数论问题。, T) l5 \" P: D5 ]& p# q; u7 S
      
1 G% a, B% ?4 E) R: |) B/ m# u" U2 }2 Y+ L* V
       * K# P! Z. h  k, H% [) I- P
早在公元前300年欧几里得就证明了有无穷多个素数,在随后接近2000年的时间内,主要内容是以寻找素数通项公式为主要思想。这方面主要的代表人物有德国数学家高斯,英国著名数论学家哈代、李特伍德、拉马努金等等。4 O" u* V" m) @! `( y+ k* b5 Z+ Q
今年9月20日,与证明“黎曼猜想”相关的新闻,在网络上闹得沸沸扬扬。知名数学家迈克尔· 阿蒂亚爵士宣布将会证明黎曼猜想,这引起了区块链行业从业者的关注。为什么?4 b, b4 D  ?* ^4 a4 |
“一旦黎曼猜想被证实,就意味着素数出现规律就能找到,基于此的加密可能也就不安全了。”从事数学研究的阿岚认为。
2 u- o# R+ o, ^: k9 h- B- j7 K因此,博弈论、代码语言进步、数学理论发展,对区块链技术进步都有着不可小觑的影响。
+ R- L0 \6 _# Q* G! R4 A----------------------# }7 x/ G! v3 V2 F0 u. [
比特币诞生至今,10年过去了,期间被死亡200多次,被分叉20多次,但是任何一次危机都没能成功“杀死”比特币。% W0 @4 P- A' y; s
比特币背后的区块链技术,虽然面临数学问题、博弈论问题、代码漏洞问题,但是这些也没能阻挡区块链行业的从无到有,从落魄到发荣的历史进程。5 ^$ }% D8 M4 Q$ }; p3 h, s5 W
而成功度过每一次危机,都能让这项技术浴火重生、凤凰涅槃。
( L4 G$ P( i; C/ R( u8 e虽然目前区块链技术并不成熟、加密货币还没有完全被主流认可,但是时间会对这些问题做最好的注脚。
: Z  ~( @% ?' M3 Y% D5 n% {! F# A( ]/ }正如思想家阿卜·法拉兹所言:“暂时的失利,比暂时的胜利好得多。”
BitMere.com 比特池塘系信息发布平台,比特池塘仅提供信息存储空间服务。
声明:该文观点仅代表作者本人,本文不代表比特池塘立场,且不构成建议,请谨慎对待。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

成为第一个吐槽的人

123458446 小学生
  • 粉丝

    0

  • 关注

    0

  • 主题

    7