VRF可验证随机函数概念

Posted thefist11

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VRF可验证随机函数概念相关的知识,希望对你有一定的参考价值。

1. 问题

result = SHA256(secret, data),要验证result,光有data是不够的,必须要有secret才能计算出result。有没有可能在不出示密钥secret的情况下,验证result和data是对应匹配的?

2. 3个特性

  • 可验证性
    提供一个非交互的零知识证明,用来验证该随机数输出的确是某个人生成的。eg. 强盗站在很远的地 方,能看见阿里巴巴把山门打开了,但是不知道阿里巴巴念的是什么咒语

  • 唯一性
    对于相同的 Input,它得到的 Output 一定是相同的。

  • 随机性
    任意的一个输入,获得一个随机数输出,并且均匀分布在值域范围内。

3. 实现方式

Schnorrkle库实现,Ed25519椭圆曲线
基点:G
私钥:k
公钥:K =k *G
随机数r

Alice和Bob都知道G、K、r
Alice计算K’ = k* r’ = k* (G* r)
Bob计算K’ = K* r = (k* G)* r
(阿贝尔群:满足交换律)

以上是关于VRF可验证随机函数概念的主要内容,如果未能解决你的问题,请参考以下文章

可验证随机函数 VRF

可验证随机函数 VRF

区块链知识之 VRF: 可验证随机函数

区块链知识之 VRF: 可验证随机函数

区块链知识之 VRF: 可验证随机函数

VRF可验证随机函数4个函数