在密码学中,可验证随机函数是一种随机数生成器,可以通过加密手段来验证随机性。可验证的随机数对许多区块链应用来说都是不可或缺的要素,因为这类随机数具有防篡改性和不可预测性,可以用来打造刺激的游戏体验,铸造罕见的NFT,并保障公平的结果。
本文将讨论什么是可验证随机函数,研究随机数在区块链上的应用,以及智能合约开发者如何利用Chainlink可验证随机函数在dApp中获得安全的随机数来源。
什么是可验证随机函数?
可验证随机函数是一种加密函数,基于数据输入生成伪随机数并附上一份证明,任何人都可以对其进行验证。
VRF的数据输入通常包含一对公钥和私钥以及一个seed。公钥和私钥是生成的,而seed则是选择的。将这些数值一起输入VRF,用私钥和seed来生成随机数。然后,VRF会生成一个随机数以及一份证明。最关键的一步是生成证明,因为用户可以通过证明来验证函数。而将私钥保密则可以确保随机数无法被预测。
分析:比特币波动区间出现下移 8750美元上方多头已全部浮亏:BFX.NU研究成员表示,通过对上月27日起至本日午前的盘面数据观察,虽然市场上的比特币期货持仓主力仍偏向多头,但波动区间已在不断的下移,目前8750美元上方区域的多头投资者已全部处于浮亏,新进空头开仓规模已出现明显下降,说明此前的空头已进行了部分止盈,而多头杠杆比率也因平仓、补仓等日渐下降,目前比特币挂单支撑主要聚焦于8360美元附近区域,投资者需周内重点关注此价位的支撑情况。主流币期货板块,EOS、ALGO、CKB等12类合约短时增仓明显,而XTZ、LTC、TRX等11类合约呈现为减仓趋势;平台币期货板块,HT合约短时新增2.59万开仓,日内空转多操作有所增加,目前持仓导向整体偏为多头。[2020/3/2]
可验证随机函数的关键特质都写在了它的名字里:
可验证——任何人都可以验证VRF生成的随机数是否有效,只需要查看证明并验证哈希计算结果是否正确即可。只有持有VRF私钥的人才能进行哈希运算,而任何持有公钥的人都可以验证哈希运算结果。
随机——对于不知道seed或不持有私钥的人来说,VRF输出的结果完全不可预测且概率均匀分布,没有任何规律可循。VRF输出的每个结果都拥有同样的概率,并使用seed和私钥,以独特的方式生成随机数。
分析 | 部分用户REX系统CPU租赁过期 仍可继续使用:据TP开发者社区反馈,有用户帐号的CPU租赁已过期,但并没有被系统回收。PeckShield安全人员发现EOSREX系统中有不少帐号CPU租赁到期,但到期的EOS并没有及时被回收,仍可以继续使用。PeckShield安全人员进一步分析认为,REX系统过期CPU订单的处理,依赖runrex的操作,需要嵌入在买卖REX,租赁CPU等操作中完成。目前EIDOS挖矿使REX近期的用户操作较少,因此CPU租赁到期的订单没有被及时处理。不过,EOS社区用户不必过度担心,可以通过执行rexexec操作,来对过期订单进行处理。[2019/11/19]
函数——VRF使用数学算法来生成随机数以及证明。VRF将seed隐藏起来,以保障其不可预测性;同时,将随机数证明公开,以供所有人查看和验证。
VRF的发展历史
可验证随机函数这个概念是在1999年由知名计算机科学家和数学家SilvioMicali、MichaelRabin以及SalilVadhan在论文中提出的。值得一提的是,SilvioMicali后来创建了Algorand区块链,Algorand在共识机制中也使用了VRF。
分析 | BCH上涨趋势完好 大趋势看好:据huobi数据显示,BCH当前报价342.58美元,日内涨幅1.66%。
针对当前走势,分析师Potter表示,BCH仍处于近9个月的大上升三角区间内震荡上行,近期一直沿三角下边线缓慢上升,虽然量能并未同步增强,但整体走势底部不断抬升,日线MACD金叉后逐步向上发散,中长线看有阶段筑底迹象,明年产量减半预期刺激下,大趋势比较看好,后续可沿5日线持币即可,支撑334美元,阻力356美元。[2019/8/5]
之后,VRF技术出现了一系列关键突破。2005年,YevgeniyDodis和AleksandrYampolskiy使用了抗碰撞哈希函数实现了更短的证明和密钥,因此提升了VRF的效率,并推动了这项技术的发展。2015年,DennisHofheinz和TiborJager使用椭圆曲线加密技术开发了可验证安全性的VRF。2019年,NirBitansky提出了VRF可以用一般原语构造,而不用简单的代数构造。如今许多VRF方案都建立在这些创新之上。
2020年,研究者提出了一种使用Lattice加密的VRF方案。这个方案的安全性足以抵御量子计算机发起的攻击,这意味着VRF将在未来仍是一项重要技术。
分析 | USDT折溢价指数回落至100.902:USDT折溢价指数报收100.902,较前两日有所回落,但依然处在溢价状态,说明资金保持适度流入状态,近期市场波动加剧,请投资者理性判断,做好风险控制。[2018/9/13]
VRF的应用场景
大多数RNG都无法生成可以通过加密技术进行验证的随机数,因此这类RNG容易受到操纵,导致其应用场景受限。VRF如果能保障随机数的安全性,就可以解锁一系列关键的用例,其中包括:
网络安全——使用VRF保障域名系统消息传输的安全性。
零知识技术——VRF可以用来打造零知识证明和零知识数据库。
非交互式抽奖系统——VRF可以为抽奖游戏保障公平、可验证且高效的结果。
可验证的交易托管机制——VRF可以支持自动托管服务,保障用户的匿名性。
区块链和智能合约——VRF已经成为了去中心化协议和应用重要的组成部分。
区块链中的VRF
包括Algorand、Cardano、InternetComputer和Polkadot在内的许多L1区块链都在共识机制中使用了VRF来随机选择出块节点。
分析 | 机构投资者加入使得比特币在交易所间价差缩小:据news.bitcoin报道,巴西交易所SFOX调查发现,比特币在交易所间的价差缩小的主要原因在于机构投资者的加入。
SFOX发展主管Danny Kim表示,目前比特币价格的价差很少超过0.1%。在机构投资者大量参与比特币交易之前,各交易所之间的比特币价格差异高达4.5%。机构投资者中有一些高频交易公司(HFT),一些高频交易公司从crypto 2014年开始交易,但由于没有基础设施,他们的交易受到限制。大多数高频交易公司都需要在交易所建立固定的连接,以有效地进行交易,这一限制最近已经得到修复。预计未来机构投资者的不断增加将对比特币价格产生稳定效应。他补充道:“随着这一趋势的持续,机构投资的稳定效应将超出价格息差,并对价格波动产生影响。”[2018/9/2]
另外,区块链智能合约开发者在开发应用时也需要随机数。然而,由于区块链网络具有高确定性,链上应用往往无法获得安全的随机数生成器。使用链上区块哈希生成随机数有可能被区块链矿工/验证者操控,他们可以放弃对他们不利的区块,重新“掷色子”,以改变随机数。而链下随机数则缺乏透明性,而且无法验证随机数是否公正且没有受到数据源或节点的操控。
可以利用链上生成随机数方案的漏洞谋取私利。
稳健的随机数生成方案意味着随机数的公平性可以得到验证,所有参与者都拥有同样的概率,并且攻击者不太可能通过预测随机数来操纵智能合约。
ChainlinkVRF
ChainlinkVRF是公平、可验证的RNG,可以满足上述需求,为智能合约提供具有加密证明的安全随机数,无法被预言机节点、用户或开发团队篡改。
ChainlinkVRF可以为开发者带来以下好处:
不可预测性——ChainlinkVRF无法被预测。由于在请求随机数时无法得知区块数据,因此任何人都无法通过预测随机数来提高自己的成功概率。
公平性——ChainlinkVRF非常公平公正,因为随机数是均匀分布的,所有数字都有同样的概率被选中。
随机性——ChainlinkVRF的随机性可以得到验证,因为其使用区块哈希作为seed来生成随机数,而区块哈希无法提前预知。
防篡改性——ChainlinkVRF具有防篡改性,任何人,包括预言机、外部方或开发团队,都无法操纵随机数生成流程。
ChainlinkVRF是用户和区块链之间的抽象层,可以帮助智能合约开发者访问安全的随机数来源。
ChainlinkVRF采用了开源代码和加密技术,生成防篡改的随机数,用户可以验证随机数的真实性。
ChainlinkVRF采用了Goldberg的可验证随机函数,详情请查看这篇论文。ChainlinkVRF会针对每一个随机数请求生成一个或多个随机数,并附上一份随机数的加密证明。这份证明会被发布到链上并在链上得到验证,验证通过后才会使用随机数。
ChainlinkVRF的应用场景
ChainlinkVRF目前正在为Web3生态中的众多应用提供安全的链上随机数来源,其中包括GameFi、DeFi以及NFT等项目。
ChainlinkVRF的应用场景包括:
为NFT分配随机属性——ChainlinkVRF可以用来铸造特殊的NFT。比如,AxieInfinity使用ChainlinkVRF为每个OriginAxie赋予随机属性。
公平地分配罕见NFT——ChainlinkVRF可以证明NFT是公平分配的,且证明可以得到验证。比如,BoredApeYachtClub使用ChainlinkVRF向BAYCNFT持有者随机分配变异血清NFT。
游戏结果无法预测——开发者可以利用随机数打造出更好玩的区块链游戏。比如,Blockmine使用ChainlinkVRF在NextCard游戏中随机抽取卡牌。
公平地选出参与者——发放热门活动门票,抽取奢侈品预售的买家,以及选出热门公开发售活动的参与者。比如,Centaur使用ChainlinkVRF选出链上公开发售活动的参与者。
随机选出中奖者——ChainlinkVRF可以让用户验证中奖者的筛选流程是否公平公正。比如,PoolTogether是一个无损储蓄游戏,将用户存款放在一个资金池中,并每天和每周展开抽奖,将池子的收益随机分配给中奖者。
PoolTogether利用ChainlinkVRF随机选出无损储蓄游戏的中奖者。
总结
ChainlinkVRF是区块链行业领先的安全随机数生成器,为智能合约和链下系统提供可验证且防篡改的随机数来源。
ChainlinkVRF通过加密技术为开发者保障随机数的安全性和可验证性,帮助他们打造出更加开放、可访问且防篡改的系统。ChainlinkVRF和智能合约将实现区块链的最终愿景,基于加密事实打造出更加强大的算法系统,取代当前基于信任的薄弱系统。
如果你是一名开发者,并希望快速将智能合约连接至ChainlinkVRF,请查看开发者文档并加入我们在Discord上的技术讨论群。如果你希望安排一次电话会议具体讨论集成事宜,请点击此处联系我们。
扩展阅读
《一文读懂智能合约》
《一文读懂区块链预言机》
《Solidity语言的随机数生成》
《如何在NFT中获得随机数》
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。