基于pow的区块链安全性依赖什么
A. 区块链常见的三大共识机制
区块链是建立在P2P网络,由节点参与的分布式账本系统,最大的特点是“去中心化”。也就是说在区块链系统中,用户与用户之间、用户与机构之间、机构与机构之间,无需建立彼此之间的信任,只需依靠区块链协议系统就能实现交易。
可是,要如何保证账本的准确性,权威性,以及可靠性?区块链网络上的节点为什么要参与记账?节点如果造假怎么办?如何防止账本被篡改?如何保证节点间的数据一致性?……这些都是区块链在建立“去中心化”交易时需要解决的问题,由此产生了共识机制。
所谓“共识机制”,就是通过特殊节点的投票,在很短的时间内完成对交易的验证和确认;当出现意见不一致时,在没有中心控制的情况下,若干个节点参与决策达成共识,即在互相没有信任基础的个体之间如何建立信任关系。
区块链技术正是运用一套基于共识的数学算法,在机器之间建立“信任”网络,从而通过技术背书而非中心化信用机构来进行全新的信用创造。
不同的区块链种类需要不同的共识算法来确保区块链上最后的区块能够在任何时候都反应出全网的状态。
目前为止,区块链共识机制主要有以下几种:POW工作量证明、POS股权证明、DPOS授权股权证明、Paxos、PBFT(实用拜占庭容错算法)、dBFT、DAG(有向无环图)
接下来我们主要说说常见的POW、POS、DPOS共识机制的原理及应用场景
概念:
工作量证明机制(Proof of work ),最早是一个经济学名词,指系统为达到某一目标而设置的度量方法。简单理解就是一份证明,用来确认你做过一定量的工作,通过对工作的结果进行认证来证明完成了相应的工作量。
工作量证明机制具有完全去中心化的优点,在以工作量证明机制为共识的区块链中,节点可以自由进出,并通过计算随机哈希散列的数值解争夺记账权,求得正确的数值解以生成区块的能力是节点算力的具体表现。
应用:
POW最著名的应用当属比特币。在比特币网络中,在Block的生成过程中,矿工需要解决复杂的密码数学难题,寻找到一个符合要求的Block Hash由N个前导零构成,零的个数取决于网络的难度值。这期间需要经过大量尝试计算(工作量),计算时间取决于机器的哈希运算速度。
而寻找合理hash是一个概率事件,当节点拥有占全网n%的算力时,该节点即有n/100的概率找到Block Hash。在节点成功找到满足的Hash值之后,会马上对全网进行广播打包区块,网络的节点收到广播打包区块,会立刻对其进行验证。
如果验证通过,则表明已经有节点成功解迷,自己就不再竞争当前区块,而是选择接受这个区块,记录到自己的账本中,然后进行下一个区块的竞争猜谜。网络中只有最快解谜的区块,才会添加的账本中,其他的节点进行复制,以此保证了整个账本的唯一性。
假如节点有任何的作弊行为,都会导致网络的节点验证不通过,直接丢弃其打包的区块,这个区块就无法记录到总账本中,作弊的节点耗费的成本就白费了,因此在巨大的挖矿成本下,也使得矿工自觉自愿的遵守比特币系统的共识协议,也就确保了整个系统的安全。
优缺点
优点:结果能被快速验证,系统承担的节点量大,作恶成本高进而保证矿工的自觉遵守性。
缺点:需要消耗大量的算法,达成共识的周期较长
概念:
权益证明机制(Proof of Stake),要求证明人提供一定数量加密货币的所有权。
权益证明机制的运作方式是,当创造一个新区块时,矿工需要创建一个“币权”交易,交易会按照预先设定的比例把一些币发送给矿工本身。权益证明机制根据每个节点拥有代币的比例和时间,依据算法等比例地降低节点的挖矿难度,从而加快了寻找随机数的速度。
应用:
2012年,化名Sunny King的网友推出了Peercoin(点点币),是权益证明机制在加密电子货币中的首次应用。PPC最大创新是其采矿方式混合了POW及POS两种方式,采用工作量证明机制发行新币,采用权益证明机制维护网络安全。
为了实现POS,Sunny King借鉴于中本聪的Coinbase,专门设计了一种特殊类型交易,叫Coinstake。
上图为Coinstake工作原理,其中币龄指的是货币的持有时间段,假如你拥有10个币,并且持有10天,那你就收集到了100天的币龄。如果你使用了这10个币,币龄被消耗(销毁)了。
优缺点:
优点:缩短达成共识所需的时间,比工作量证明更加节约能源。
缺点:本质上仍然需要网络中的节点进行挖矿运算,转账真实性较难保证
概念:
授权股权证明机制(Delegated Proof of Stake),与董事会投票类似,该机制拥有一个内置的实时股权人投票系统,就像系统随时都在召开一个永不散场的股东大会,所有股东都在这里投票决定公司决策。
授权股权证明在尝试解决传统的PoW机制和PoS机制问题的同时,还能通过实施科技式的民主抵消中心化所带来的负面效应。基于DPoS机制建立的区块链的去中心化依赖于一定数量的代表,而非全体用户。在这样的区块链中,全体节点投票选举出一定数量的节点代表,由他们来代理全体节点确认区块、维持系统有序运行。
同时,区块链中的全体节点具有随时罢免和任命代表的权力。如果必要,全体节点可以通过投票让现任节点代表失去代表资格,重新选举新的代表,实现实时的民主。
应用:
比特股(Bitshare)是一类采用DPOS机制的密码货币。通过引入了见证人这个概念,见证人可以生成区块,每一个持有比特股的人都可以投票选举见证人。得到总同意票数中的前N个(N通常定义为101)候选者可以当选为见证人,当选见证人的个数(N)需满足:至少一半的参与投票者相信N已经充分地去中心化。
见证人的候选名单每个维护周期(1天)更新一次。见证人然后随机排列,每个见证人按序有2秒的权限时间生成区块,若见证人在给定的时间片不能生成区块,区块生成权限交给下一个时间片对应的见证人。DPoS的这种设计使得区块的生成更为快速,也更加节能。
DPOS充分利用了持股人的投票,以公平民主的方式达成共识,他们投票选出的N个见证人,可以视为N个矿池,而这N个矿池彼此的权利是完全相等的。持股人可以随时通过投票更换这些见证人(矿池),只要他们提供的算力不稳定,计算机宕机,或者试图利用手中的权力作恶。
优缺点:
优点:缩小参与验证和记账节点的数量,从而达到秒级的共识验证
缺点:中心程度较弱,安全性相比POW较弱,同时节点代理是人为选出的,公平性相比POS较低,同时整个共识机制还是依赖于代币的增发来维持代理节点的稳定性。
B. pos机制解决了pow的问题
pos机制解决了pow的问题:
基于权益证明(PoS),通常将金钱作为股权使用。
POA指的是身份的使用。这背后的想法是,人们会注意自己的名声,因此会被劝阻不要恶意行事。
POW 工作量证明支持不可信的分布式共识,这对于加密货币等行业非常重要。它涉及挖掘过程,最好描述为执行计算以验证交易的合法性和创建新货币。
第一个完成计算的矿工将获得一枚新代币,并将区块添加到链中。POS 权益证明的定义是在决定谁将创建新块时使用权益关系。这个权益的取决于每个人持有的代币数量。
持有更多代币的人更有可能被选为下一个块的验证器。奖励来自交易费用,因为在这个过程中不会产生新的代币。
pos是公链中的共识算法,作为pow的一种替换。pow是保证比特币,当前以太坊和许多区块链安全的一种机制,但是pow算法在挖矿过程中,因为破坏环境和浪费电而受到指责,pos试图通过一种不同的机制取代挖矿的概念,从而解决这些问题。
ps机制可以被描述成一种虚拟挖矿,鉴于pow主要依赖于计算硬件的稀缺性,来防止女巫攻击。在pow中,一个用户有可能用一千美元来买计算机,加入网络来挖矿,产生新区块,从而得到奖励。在pos中,用户可以拿到一千美元,买到等值的代币,把这些代币当做押金放在pos机制之中,只要用户就有机会产生,这样用户可以得到奖励。
pos算法如下,存在一个持币人的集合,他们把手中的代币放入pos机制中,这样他们就变成验证者。
C. conflux是什么
Conflux是全球领先的公链项目,主要的优势是能够将基于工作量证明(PoW)的中本聪共识机制的吞吐率(TPS)提升到每秒数千条交易的量级。
Conflux核心团队由首席科学家姚期智、创始人龙凡、CTO伍鸣、研究科学家徐葳组成,公司成员大部分大部分源于清华大学“姚班”,及美国麻省理工学院(MIT)、卡耐基梅隆大学(CMU)、伊利诺伊大学香槟分校(UIUC)、清华大学、上海交大、中国科技大学等知名学府,其中多名成员曾斩获国际信息学奥林匹克竞赛(IOI)金牌、ACM-ICPC 程序设计竞赛金牌等殊荣。
Conflux 核心技术团队由来自 Google 、 Microsoft、Uber 等知名企业工作多年的高级工程师、华尔街对冲基金技术经理、北美顶尖大学计算机教授等成员组成。
Conflux受到互联网巨头、金融机构、顶级风险投资基金及海外投资机构青睐,投资方包括红杉资本、顺为资本、峰瑞资本、IMO Ventures、MetaStable、Fundamental Labs 等,估值达4亿美元。
D. 算力计算收益是什么
计算基金收益无法精确计算,只能估算,也没有公式可以套用基金涨跌目前只能参考基金网站的估值,但估值经常会有误差,有时误差还较大。
安全性威胁是区块链迄今为止所面临的最重要的问题。其中,基于PoW 共识过程的区块链主要面临的是51% 攻击问题,即节点通过掌握全网超过51%的算力就有能力成功篡改和伪造区块链数据。
以比特币为例,据统计中国大型矿池的算力已占全网总算力的60%以上,理论上这些矿池可以通过合作实施51%攻击。
区块链相关:
早期的比特币区块链采用高度依赖节点算力的工作量证明(Proof of work, PoW) 机制来保证比特币网络分布式记账的一致性。随着区块链技术的发展和各种竞争币的相继涌现,研究者提出多种不依赖算力而能够达成共识的机制,例如点点币首创的权益证明(Proof of stake,PoS) 共识和比特股创的授权股份证明机制(Delegated proof of stake,DPOS) 共识机制等。
比特币区块链系统的安全性和不可篡改性是由PoW 共识机制的强大算力所保证的,任何对于区块数据的攻击或篡改都必须重新计算该区块以及其后所有区块的SHA256难题,并且计算速度必须使得伪造链长度超过主链。
这种攻击难度导致的成本将远超其收益。据估计,截止到2016年1月,比特币区块链的算力已经达到800 000 000 Gh/s,即每秒进行8*10^18次运算,超过全球Top500 超级计算机的算力总和。
E. 什么是POW和POS,二者区别联系
POW:全称Proof of Work,工作量证明。
POS:全称Proof of Stake,权益证明。
这两者都区块链的共识机制,是数字货币的记账方法。
区别是:
1、POW机制:工作量证明机制即对于工作量的证明,是生成要加入到区块链中的一笔新的交易信息(即新区块)时必须满足的要求。在基于工作量证明机制构建的区块链网络中,节点通过计算随机哈希散列的数值解争夺记账权,求得正确的数值解以生成区块的能力是节点算力的具体表现。
2、POS机制:权益证明要求证明人提供一定数量加密货币的所有权即可。权益证明机制的运作方式是,当创造一个新区块时,矿工需要创建一个“币权”交易,交易会按照预先设定的比例把一些币发送给矿工本身。权益证明机制根据每个节点拥有代币的比例和时间,依据算法等比例地降低节点的挖矿难度,从而加快了寻找随机数的速度。
(5)基于pow的区块链安全性依赖什么扩展阅读:
比特币(BitCoin)的概念最初由中本聪在2009年提出,根据中本聪的思路设计发布的开源软件以及建构其上的P2P网络。比特币是一种P2P形式的数字货币。点对点的传输意味着一个去中心化的支付系统。
与大多数货币不同,比特币不依靠特定货币机构发行,它依据特定算法,通过大量的计算产生,比特币经济使用整个P2P网络中众多节点构成的分布式数据库来确认并记录所有的交易行为,并使用密码学的设计来确保货币流通各个环节安全性。P2P的去中心化特性与算法本身可以确保无法通过大量制造比特币来人为操控币值。
F. 在公链项目早期,为什么PoW是一个更好选择
在传统的互联网公司或金融机构中,如果一家公司,在一年之内,被委托的交易结算的总量为万亿美元的话,这家公司要么拥有可靠的技术和雄厚的资本,要么就是其它大公司及政府为其信用来做背书。而比特币却在没有政府或公司背书的情况下,在过去一年内支持了相当于一万亿美元的交易。这是因为比特币的工作量证明(PoW)机制确保了全世界的比特币矿工以点对点的方式去分布式地维护账本,且保证了其正确性和不可篡改性。
实际上,PoW 协议并不完美,它在运行过程中需要消耗大量的能量来计算哈希函数的结果,以保护区块链系统不被攻击。很多人认为这是一种“无用的能源消耗”。为了避免这种消耗,股权证明协议(PoS)便作为替代方案被提出。包括以太坊在内的几个著名的项目也开始探索股权证明协议(PoS), 甚至有人认为,PoS协议在未来将完全取代PoW协议。
但是,在对PoS 协议进行了深入的技术剖析之后,我们会发现:在一个公链项目的早期阶段,PoS 协议会带来很多问题,而这些问题在PoW协议下是可以避免。首先,使用PoS协议启动主网的公链项目,会不可避免地存在共识中心化的问题,因为主网上线的时候股权分布往往是相对集中的。此外,纯 PoS 协议还面临着远程攻击(Long Range attack)的威胁。最严重的远程攻击会导致新加入的节点必须信任一些中心化的网站给出的信息,而这会导致 PoS 公链成为一个本质上中心化的网络。去使用PoW协议启动主网的区块链则可以实现分散的共识,从而避免这些问题。当PoW公链经过一段时间的发展,股权分布相对分散以后,还可以选择PoW/PoS复合机制。
除此之外,还有一点值得注意的是,很多人误以为比特币的扩容问题是PoW机制的局限性造成的。我们经常在媒体网站或白皮书中看到这样的句子,“比特币因为使用了PoW机制,所以只能处理每秒3-7笔交易”。而事实上,经过适当的设计,例如,GHOST, Conflux 这样的PoW算法可以显著提高出块效率,达到每秒处理数千笔交易,且每笔交易都能得到全网节点的验证。
PoW v.s. PoS:如何确定投票权
关于PoW和PoS之间的主要区别,就是在于如何确定区块链共识中的投票权。 在PoW中,系统中的投票权与节点的计算能力成正比。每秒可以计算哈希函数次数越多,节点就越有可能赢得区块链中下一个区块的出块权。而在PoS中,系统的投票权与持有的股权比例成正比。节点拥有资金越多,能为确定的下一个区块投的票数就越多。
在公链早期阶段,股权中心化将导致共识中心化
对于一个公有链来说,其上线初期往往是股权最集中的时候。在主网上线伊始,创始块中分配的币绝大多数属于项目方和私募投资人,而这些人的数量往往非常有限。对于PoW共识机制,初始股权的集中不会带来安全性问题,因为它的出块和安全性不依赖于股权持有的分散,而是依赖于算力的分散。对于使用反 ASIC 矿机的挖矿算法的公有链来说,任何人只要拥有显卡和网络就可以成为矿工,这有助于促进更多人参与挖矿,实现早期算力的分散。只要超过50%的算力来自于诚实的矿工,区块链中的交易就是安全不可逆转的。
然而,在PoS共识机制下,股权集中会导致共识协议的参与者集中。区块链的出块权只能由少数在创世块中拥有股权的玩家决定。如果这些人合谋对区块链进行攻击,则完全可以成功的实现双花攻击(Double spending attack). 尽管开发者和投资人出于利益考虑不会进行这样的攻击来摧毁他们自己的公链,但PoS公链也无可避免的在主网上线后就被这些人垄断和支配。更糟的是,如果出块可以获得大量奖励和交易费用,这些垄断者就会将大量股权牢牢控制在自己的手里,使得PoS公链成为一个本质上由巨头控制的网络。
我们不要忘了,区块链的核心价值是什么?是去中心化的共识协议,保证了区块链系统中每笔交易的正确性、不可篡改性。如果共识协议无法保证参与者的分散,区块链就无法做到无需信任的安全性,那么区块链和传统的分布式系统相比就没有任何优势了,甚至传统的分布式系统能做得更经济更高效。因此,公链项目在早期使用PoW, 是避免共识中心化,保护区块链核心价值的明智选择。
“长程攻击”与“主观依赖”问题
在一个公有链中,一个攻击者如果拥有当下足够多的算力或股权,无疑是可以打破公有链安全性完成攻击的。但是在PoS 公链中,如果攻击者获得了一些账户的私钥,这些私钥在历史上某一时刻控制了超过51%的股权,也可以完成攻击,这种攻击的方式被称为长程攻击(Long Range Attack)。
在长程攻击中,攻击者首先获得一些私钥,只要这些私钥在历史上曾经获得了足够多的股权,便可以从这一时刻开始分叉进行51% 攻击,制造一条分叉链出来。而 PoS 的出块不需要进行工作量证明,攻击者可以短时间内让重写历史的分叉链追赶上原本的主链,从而造成PoS链的分叉和防篡改性被打破。
攻击者能够取得这些私钥不是天方夜谭。如果PoS公链的早期投资人在二级市场将持有的代币卖掉后,将账户私钥卖给攻击者,攻击者就可以从创世块进行长链攻击,从而可以打破一个链的安全性。如果一些投资者追求短期收益而非价值投资,攻击者从他们手里获得私钥就成为了一个可能的事情。
而为了应对长程攻击,则有各种各样的解决方案被提出:例如使用密钥演化算法更新密钥,以避免密钥被盗。但是如果早期投资者一开始就决定通过出售私钥获利,那么他完全可以保留密钥种子以绕开这一限制。还有一些解决方案基于这样一个事实:如果攻击者挖了一条完全不同的链,长期在系统中运行的节点或许有能力探测出这种异常。但是,这些方案依然存在如下问题:
PoS 长程攻击造成的分叉与 PoW 的分叉有所不同。PoW 的分叉链难以获得比特币全网算力,比特币矿工很容易从总算力中辨别谁是真正的比特币。鉴于PoS共识协议在实际运行时,绝大多数股权持有者只是区块链的使用者,并不会一直运行一台服务器。攻击者只要在一个历史节点拥有了相当与PoS实际参与者的股权比例,就可以制造出一条难以辨别的分叉链出来。配合女巫攻击(Sybil Attack),攻击者可以从区块历史和节点数量上都获得和被攻击主链接近的水平,令新加入的节点无法区分,只能通过人工指定的方式选择。这样新参与者必须咨询受信任节点来安全地加入系统,这一问题被称为“主观依赖”(Weak Subjectivity)
无利害攻击
无利害攻击(Nothing at Stake)是另一种PoS攻击方式。当一个 PoS 链因为网络延迟、长程攻击或其他原因出现分叉时,PoS 矿工可以选择在两个分叉的链上同时出块,以获取最大收益。而这违反了共识协议。
在PoW 链中,如果一个矿工想同时在多个分叉上挖矿,就必须将自己的算力分散在多个分叉上,所有分叉上分配的算力总和不会超过矿工拥有的总算力。对于多数矿工而言,将自己的全部算力投入到协议指定的链上是最优的选择。
然而,在PoS 多个分叉上同时出块所带来的额外成本可以忽略不计,而选择同时出块可以保证无论哪一条分叉链最终胜出都可获得收益。如果矿工遵守共识协议,只在协议指定的链上挖矿。一旦这个链被丢弃,矿工将会失去挖矿奖励。只追求挖矿收益最大化的矿工会在两边同时参与,不惜因此打破协议——这会导致链长时间维持分叉的状态。
与长程攻击不同,精巧的激励机制设计可以避免这一攻击。但无利害攻击依然表明让PoS链正确地运行是一件很困难的事情。
总结
虽然PoS 具有节省能源等优势,从而很多项目表示将采用PoS。但我们在分析区块链安全性假设后发现,避免了计算“无用的哈希”之后会引入很多攻击情形,而且目前没有很完美的解决方案。诚然PoS有能源效率的优势,但也带来了很多安全性威胁。在PoS很好地解决这些威胁之前,PoW消耗的能源,就像和平时期国家军队用掉的军费一样,阻挡了很多潜在的威胁。最重要的是,其中许多威胁在区块链项目早期显得尤其致命。这也是我们为什么相信新的公链项目应该从PoW开始。
G. 矿机没有算力了怎么办
如果矿机没有算力或者算力骤减,建议先检查矿机,如果是网速或者硬件可以维修的,可以送与卖方维修,以尽快速度将矿机复工。若是不可抗拒的物理伤害,那矿友们只能忍痛处理减少损失,然后再购买相应的矿机。
算力是网币网络处理能力的度量单位。即为计算机计算哈希函数输出的速度。比特币网络必须为了安全目的而进行密集的数学和加密相关操作。 例如,当网络达到10Th/s的哈希率时,意味着它可以每秒进行10万亿次计算。
算力是衡量在一定的网络消耗下生成新块的单位的总计算能力。每个硬币的单个区块链随生成新的交易块所需的时间而变化。
算力为大数据的发展提供坚实的基础保障,大数据的爆发式增长,给现有算力提出了巨大挑战。互联网时代的大数据高速积累,全球数据总量几何式增长,现有的计算能力已经不能满足需求。
H. 区块链如何保证使用安全
区块链项目(尤其是公有链)的一个特点是开源。通过开放源代码,来提高项目的可信性,也使更多的人可以参与进来。但源代码的开放也使得攻击者对于区块链系统的攻击变得更加容易。近两年就发生多起黑客攻击事件,近日就有匿名币Verge(XVG)再次遭到攻击,攻击者锁定了XVG代码中的某个漏洞,该漏洞允许恶意矿工在区块上添加虚假的时间戳,随后快速挖出新块,短短的几个小时内谋取了近价值175万美元的数字货币。虽然随后攻击就被成功制止,然而没人能够保证未来攻击者是否会再次出击。
当然,区块链开发者们也可以采取一些措施
一是使用专业的代码审计服务,
二是了解安全编码规范,防患于未然。
密码算法的安全性
随着量子计算机的发展将会给现在使用的密码体系带来重大的安全威胁。区块链主要依赖椭圆曲线公钥加密算法生成数字签名来安全地交易,目前最常用的ECDSA、RSA、DSA 等在理论上都不能承受量子攻击,将会存在较大的风险,越来越多的研究人员开始关注能够抵抗量子攻击的密码算法。
当然,除了改变算法,还有一个方法可以提升一定的安全性:
参考比特币对于公钥地址的处理方式,降低公钥泄露所带来的潜在的风险。作为用户,尤其是比特币用户,每次交易后的余额都采用新的地址进行存储,确保有比特币资金存储的地址的公钥不外泄。
共识机制的安全性
当前的共识机制有工作量证明(Proof of Work,PoW)、权益证明(Proof of Stake,PoS)、授权权益证明(Delegated Proof of Stake,DPoS)、实用拜占庭容错(Practical Byzantine Fault Tolerance,PBFT)等。
PoW 面临51%攻击问题。由于PoW 依赖于算力,当攻击者具备算力优势时,找到新的区块的概率将会大于其他节点,这时其具备了撤销已经发生的交易的能力。需要说明的是,即便在这种情况下,攻击者也只能修改自己的交易而不能修改其他用户的交易(攻击者没有其他用户的私钥)。
在PoS 中,攻击者在持有超过51%的Token 量时才能够攻击成功,这相对于PoW 中的51%算力来说,更加困难。
在PBFT 中,恶意节点小于总节点的1/3 时系统是安全的。总的来说,任何共识机制都有其成立的条件,作为攻击者,还需要考虑的是,一旦攻击成功,将会造成该系统的价值归零,这时攻击者除了破坏之外,并没有得到其他有价值的回报。
对于区块链项目的设计者而言,应该了解清楚各个共识机制的优劣,从而选择出合适的共识机制或者根据场景需要,设计新的共识机制。
智能合约的安全性
智能合约具备运行成本低、人为干预风险小等优势,但如果智能合约的设计存在问题,将有可能带来较大的损失。2016 年6 月,以太坊最大众筹项目The DAO 被攻击,黑客获得超过350 万个以太币,后来导致以太坊分叉为ETH 和ETC。
对此提出的措施有两个方面:
一是对智能合约进行安全审计,
二是遵循智能合约安全开发原则。
智能合约的安全开发原则有:对可能的错误有所准备,确保代码能够正确的处理出现的bug 和漏洞;谨慎发布智能合约,做好功能测试与安全测试,充分考虑边界;保持智能合约的简洁;关注区块链威胁情报,并及时检查更新;清楚区块链的特性,如谨慎调用外部合约等。
数字钱包的安全性
数字钱包主要存在三方面的安全隐患:第一,设计缺陷。2014 年底,某签报因一个严重的随机数问题(R 值重复)造成用户丢失数百枚数字资产。第二,数字钱包中包含恶意代码。第三,电脑、手机丢失或损坏导致的丢失资产。
应对措施主要有四个方面:
一是确保私钥的随机性;
二是在软件安装前进行散列值校验,确保数字钱包软件没有被篡改过;
三是使用冷钱包;
四是对私钥进行备份。
I. 两种共识机制对比(PoW vs PoS)
区块链中最核心的架构就是共识机制,可以说是区块链的驱动引擎,发展这么多年,目前主流比较明确经得住考验的就只剩下PoW(Proof of Work)与PoS(Proof of Stake)两种机制。简单概述下,PoW系统的特点是通过消耗大量算力来计算特定算法的解(典型如哈希),第一个算出结果的有权生成区块,同时也会得到coin作为奖励(这也是coin的生产与分发过程,形象地称为Mining),采用PoW的典型区块链有Bitcoin和Ethereum,目前PoW也是运行时间最长,被公认为是最可靠安全的共识机制; 其本质是通过消耗大量算力来实现系统内的逆熵过程,保证系统的长期安全与稳定 。但PoW被广为诟病的也是其消耗太多的能源资源,这方面PoS就被认为是更为绿色的解决方案,顾名思义PoS是通过质押系统中的资产即coin来成为一个质押者(staker),这样就有权产出区块,质押份额越多,获得产出区块权的概率就越高,也代表着奖励越多。
在分布式系统中有一个 CAP 定理,是指一个分布式系统中存在着三元悖论,即不可能同时满足这三个特性:一致性(Consistency)、可用性(Availability)和分区容错性 (Partition tolerance),而只能满足其中两个。区块链作为一种分布式网络,这个定理也逐渐演变成了区块链的三元悖论,即 安全性(Security) 、 去中心化(Decentralization) 和 可扩展性 (Scalability) ,也是同时只能满足两个特性。
整体上看PoW系统更注重的是 安全性(Security) 与 去中心化(Decentralization) ,放弃 可扩展性 (Scalability) ,这也是Bitcoin网络的吞吐量非常慢的原因。而PoS系统更关注的是 可扩展性 (Scalability) 与 去中心化(Decentralization) ,但就PoS能否真的 实现 去中心化(Decentralization) ,我是比较持怀疑态度的。从保守主义与系统的更长期稳定的角度出发,我个人是坚定地站在PoW这边的,可能跟自身保守的性格有关,并不是特别看好PoS作为基础层能比较稳定。特别是像这次 5月份的Luna事件 ,事件大概的过程是Luna链上的算法稳定币UST缺乏价值支撑最终脱锚,其核心问题在于UST的锚定设计试图用一个PoS股权系统去支撑其锚定美元,而且还超发了太多UST,再加上UST与Luna的兑换设计缺陷最终导致Luna自身的死亡螺旋。但这个事件更大的意义应该是敲响了一个警钟,PoS机制在面对空头资本砸盘时真的还能维持稳定、维持所谓的去中心化吗?可能到时节点数量萎缩的速度会很快,逐渐趋于中心化。
所有系统设计都需要根据自身定位来折中,以下从价值锚定的角度,简单分析下为什么长期来看PoW会更有优势。
在PoW系统中三股主要的参与者分别是研发人员,投资者(或者叫用户)与Miner,这三者的相互制衡,使得这个系统达到一个稳定平衡的状态。而PoS系统中,将Miner这个重要的制衡力量移除了,投资者和Miner变成了同一群体 质押者(stakers) ,因此该群体滥用权力的行为会变得相对不受限制,并且该链随后的发展方向也可能会更加不平衡,更容易倾向有利于 质押者(stakers) 群体的方向。
PoW系统很好的阐述了什么是被普遍认可的价值,抽象上来看就是高代价的稀缺性 ,高代价与稀缺性两者缺一不可。PoS最多只能实现其中一个稀缺性。
Miner为了在链上生产区块赚取coin,不仅需要持续支付高额电力成本,还必须不断投入研发、升级硬件、优化基础设施和运营规模来保持其竞争力。最终结果是,能够长期持续盈利的Miner并不会是一个一层不变的群体,而是总在竞争中淘汰掉效率太低的Miner,使高效率的Miner能存活下来。这也更有利于 去中心化(Decentralization) ,因为不断变化的Miner群体意味着没有一个Miner可以在相当长的时间内保持网络的大部分算力,除非他们通过严酷的竞争考验,不断优化自身来提供更多的算力。
而PoS系统中的质押者实际上并多少真正的风险投入,也没有优胜劣汰的严酷竞争机制,他们只需要简单地运行一个staker节点就可以躺着赚利息,本质上只是将自己在银行系统里的钱简单的转化为链上资本,就可以坐地收割后进入这个系统的新人。这种行为并没有太多难度,只是简单地赚取“无风险”利息,他们并没有将资本转化为任何形式的需要面临风险考验的投资。
而且当发生硬分叉时,PoW的Miner选择支持哪条链时会更为谨慎,因为他们需要投入高昂的电力成本来为他们的选择背书,一旦选错了将损失所有投入成本。PoS系统如果发生硬分叉,质押的coin作为系统内部状态的一部分,硬分叉后质押者将在两条不同链上都拥有相同数量的资产,由于没有什么沉默成本,导致质押者更愿意两边都支持,从而使硬分叉更容易且更频繁地出现,这被称为 nothing at stake 问题。
PoW是真正能做到无准入限制的(Permissionless),就是说已经在这个系统中的老人无法限制新人加入,只要你有能力提供算力,就能直接接入网络中产出coin。而PoS系统中,新人要进入,都不得不先从老人手中买coin。
而且PoW中Miner为了支付各种高昂成本(电力,设备,基础设施等),产出coin后也不得不卖出一些以弥补成本,这同时也是一种把coin分发给更多人的过程; 特别是在熊市,Miner为了维持开销也不得不低价贱卖coin,这样新人才有机会以相对低的成本获得筹码入场,这才是一个健康的生态扩张过程 。而PoS中由于质押者并没有什么运行成本,也不需要面对太多竞争,质押者出块得到coin后不需要急着卖出,更容易哄抬价格,其实会变相激励场内老人剥削新入场者,不给后来人更多机会;整个系统会趋向于更封闭,逐渐演变成一个有限游戏,长期运行下去只会越来越中心化;系统中财富越来越集中,富者更富,穷者更穷,从而更不可能实现 去中心化(Decentralization) 。
由于PoW系统中是以提供工作量的方式产出区块的,随着时间的推移这些工作量都会被累积起来并使链不断向前延伸,这也是为什么叫区块链;这些累积的工作量也给攻击者造成了巨大障碍,如果想要反转整条链,不仅需要非常高的算力,还需要相当长的时间,这也为应对攻击提供了足够长的时间缓冲。
而PoS系统其实只是维护一个分布式账本, 并没有工作量累积的概念,一旦攻击成功,要反转整条链就是相当容易的,几分钟就可以搞定。
严格来说由PoW算力支撑的BTC不应归为高科技类,由于它整个系统架构更保守更稳定,提供的更多的是一种 物化价值(objective costliness) ,更能作为价值之锚,所以数字黄金这个称号很贴切。而像ETH(目前还是PoW,2.0升级后为PoS)这些更接近科技类创新平台,PoS本质上更像是一种股权系统,其实PoS系统反而是需要中心化,偏向更依靠整个社区的生命力,需要依靠核心团队的创新与开拓能力往前走;而PoW则需要去中心化,更偏向稳定与提供 物化价值(objective costliness) 。
区块链作为一个价值分配系统, 算力是它的价值之锚,如果没有算力,就会退化为一个股权系统 。算力在哪,资金就会跟去哪。目前的发展趋势也是逐渐往多层网络的方向发展,类似TCP/IP的多层协议栈。从作为基础层(Base Layer)的角度看,更需要的是长期稳定与提供价值支撑,因此PoW系统更合适;而PoS可能更多的是可以作为Layer2以实现 可扩展性 (Scalability) ,弥补PoW基础层的吞吐量不足,并通过锚定在PoW基础层上来获取算力安全性与价值支撑。
最后顺带说下最近市场行情,5,6月份以来的瀑布令很多人很恐慌,恐慌指数一度长时间停留在个位数;其实我觉得也没必要那么恐慌,要在这个圈子长期活下去,面对这种大波动的心理预期还是要有的。想起之前红杉资本的沈南鹏经常提到一个词Grit,沙砾,它是砾石在千万次打磨后留下来的细小颗粒;Grit代表了勇气和持之以恒的一种坚持,有种经常被按地上摩擦但依然勇往直前的感觉。这个和塔勒布讲的反脆弱性有异曲同工之妙,承载价值的东西就应该具有这种品质,PoW系统肯定是有反脆弱性的。
回望2017年入圈后经历过的各种事件,其实像这样的大波动近乎每年都有(除了2019年一年比较顺利外);像2017年国内的94事件,2018年一整年的大熊市,2020的312事件,2021的519事件,再到2022今年的5,6月份市场转熊,每次经历大波动后,市场都会淘汰掉该淘汰的,出清掉该出清的风险,对整个行业发展也是好事。眼光还是应该放远一点,至少看5到10年后的变化,科技发展过程中所带来的波动和风险是不可避免的,日光之下无新鲜事,每次科技革命过程中总会夹杂着众多的反对、质疑,还有众多的投机、骗局;这个过程也总是通过各种暴雷、回归,清除泡沫后价值重估,夯实了基础后积蓄能量再次进入跃升到新的发展阶段。 价值互联网的到来是一件无法回避的事情 ,当理解和看清了这种趋势后,规避掉各种坑和市场噪音,远离合约杠杆和各种山寨的诱惑,握住核心资产,时间本身就会带来回报。
J. 区块链中PoW是指什么
是指工作量证明机制,是区块链的一种共识机制。指在区块链系统中,根据每个节点在运算的过程中所做出的贡献来确定权限的一种算法。工作量证明机制是现在区块链应用最为广泛的一种共识机制。共识机制是区块链系统中很重要的一部分,如果出现问题,那么整个系统都会出问题,在区块链开发中是必须要注意的。这是之前我一个在煊凌科技上班的人告诉我的,他虽然只是里面的销售,但是对区块链的了解也比大部分人要全面。