博客
关于我
班德:VRF是什么?与公链有何关系?| 巴比特加速器技术公开课
阅读量:501 次
发布时间:2019-03-07

本文共 893 字,大约阅读时间需要 2 分钟。

VRF技术及其与公链可结合的方向

随着越来越多的区块链采用PoS共识机制,VRF(可验证随机函数)算法近年来受到了广泛关注。这一低能耗、高效率的随机数算法不仅可以帮助区块链扩容,还可以提升安全性,因此被认为是解决“不可能三角”问题的潜在方案。

本周,Geekhub Global Online第四期“VRF——安全的桥梁”特别邀请了TASchain创始人兼CEO班德和创始合伙人吕博为大家分享VRF技术的相关内容。

班德:VRF技术及其与公链可结合的方向

VRF,全称为可验证随机函数(Verifiable Random Function),在区块链选出块节点的过程中,为了保证安全性,随机性是一个基本要求。VRF的目标就是要生成一个真正随机且无法被预测的值。

尽管人类可以很容易地通过掷骰子等方式生成随机数,但计算机生成随机数至今仍然是一个难题。在比特币等公链中,最早的共识机制是工作量证明(PoW),其优点是安全性高,但存在性能差和高能耗的问题。后续的以太坊和EOS虽然在一定程度上解决了性能问题,但仍然面临着中心化和去中心化之间的权衡。

吕博:VRF技术机理及其优缺点

VRF算法最初由莫卡利教授于1999年提出,近年来因其在随机性和安全性方面的优势,被区块链研究者广泛关注。VRF的核心机理包括三部分:证明者产生随机数Proof,验证者将Proof转化为随机数result,并通过Verify函数验证结果的真实性。

VRF的主要优点包括:

  • 算力要求低:基于ed25519椭圆曲线的VRF测试,Prove和Verify的性能均在0.3 ms以内。
  • 具有POW算法的特性:能产生随机数且随机数具有个体属性,可验证。
  • 适合高度去中心化的场景:节点需要主动竞争胜出,非被动指定。
  • 最大的优点是安全性:具备后验属性。
  • 然而,VRF也存在一些缺点:

  • 全网通讯:所有节点都需要接收和验证数据,通讯量大。
  • 等待消息的时间窗口:验证节点需要等待消息的时间窗口,Algorand算法中保留了很长的窗口等待期。
  • 验证步骤轮数较多:VRF算法有后验特性,每一轮选组出来的组员个数不固定,验证步骤数较多。
  • 转载地址:http://rymcz.baihongyu.com/

    你可能感兴趣的文章
    PhalApi:[1.23] 请求和响应:GET和POST两者皆可得及超越JSON格式返回
    查看>>
    Phalcon环境搭建与项目开发
    查看>>
    Phantom.js维护者退出,项目的未来成疑
    查看>>
    Pharmaceutical的同学们都看过来,关于补码运算的复习相关内容
    查看>>
    Phoenix 查看表信息及修改元数据
    查看>>
    phoenix启动失败_The history file `/root/.sqlline/history` may be an older history---记录024_大数据工作笔记0184
    查看>>
    Phoenix基础命令_视图映射和表映射_数字存储问题---大数据之Hbase工作笔记0036
    查看>>
    phoenix无法连接hbase shell创建表失败_报错_PleaseHoldException: Master is initializing---记录020_大数据工作笔记0180
    查看>>
    Phoenix简介_安装部署_以及连接使用---大数据之Hbase工作笔记0035
    查看>>
    phoenix连接hbase报错Can not resolve hadoop120, please check your network_记录026---大数据工作笔记0187
    查看>>
    Photoshop工作笔记001---Photoshop常用快捷键总结
    查看>>
    Reids配置文件redis.conf中文详解
    查看>>
    Photoshop脚本入门
    查看>>
    PHP
    查看>>
    Regular Expression Notes
    查看>>
    PHP $FILES error码对应错误信息
    查看>>
    PHP $_FILES函数详解
    查看>>
    PHP $_SERVER['HTTP_REFERER'] 获取前一页面的 URL 地址
    查看>>
    php & 和 & (主要是url 问题)
    查看>>
    php -- 魔术方法 之 判断属性是否存在或为空:__isset()
    查看>>