币圈资讯认为“可验证随机函数”的技术原理?

wen 币圈资讯 1

本文目录导读:

币圈资讯认为“可验证随机函数”的技术原理?-第1张图片-易欧app-全球最大的比特币交易所【官方网站】

  1. VRF 的基本构成
  2. 技术原理:从 RSA/EC 到哈希到曲线
  3. 为什么币圈需要 VRF?
  4. 与普通哈希、签名、承诺的区别
  5. 安全性依赖

在币圈资讯和技术讨论中,“可验证随机函数”通常指 Verifiable Random Function,简称 VRF,它的核心目标是:让某个参与者在不泄露私钥的前提下,基于自己的私钥和一个公开输入生成一个随机输出,同时给出零知识证明,使任何人都能验证这个输出确实由该私钥和该输入唯一决定,但无法预测或伪造。

下面按技术原理拆解。

VRF 的基本构成

一个 VRF 通常包含四个算法:

  1. 密钥生成

    • 生成私钥 sk 和公钥 pk。
  2. 求值

    • 输入私钥 sk 和消息/种子 x,输出:
      • 随机值 y = F_sk(x)
      • 证明 π = Prove_sk(x)
  3. 验证

    • 任何人用公钥 pk、输入 x、输出 y、证明 π 验证:
      • Verify_pk(x, y, π) → true/false
  4. 唯一性

    • 对同一个 sk 和 x,只能得到一个有效的 y,攻击者不能找到另一个 y' 也能通过验证。

关键性质包括:

  • 可验证性:任何人都能验证输出正确。
  • 唯一性:同一输入下输出确定且唯一。
  • 伪随机性:不知道私钥的人无法预测 y。
  • 隐私性:验证者从 y 和 π 中无法反推私钥。

技术原理:从 RSA/EC 到哈希到曲线

VRF 的实现方案很多,币圈常见的是基于椭圆曲线的方案,ECVRF,以及基于 RSA 的方案,以常见的椭圆曲线 VRF 为例,直觉流程是:

第一步:把输入映射到曲线点

给定输入 x,用哈希到曲线的方法得到曲线上的点 H = HashToCurve(x)。

第二步:用私钥计算“签名式”输出

私钥为 sk,公钥为 pk = sk·G。

计算:

Γ = sk · H

这个 Γ 是曲线上的一个点,类似 BLS 签名中的签名点。

第三步:从 Γ 派生随机输出

对 Γ 做哈希,得到最终随机值:

y = Hash(Γ)

因为 Γ 由 sk 和 H(x) 唯一决定,y 也唯一。

第四步:生成证明

证明 π 通常用来证明“我知道 sk,使得 pk = sk·G 且 Γ = sk·H”,但不泄露 sk,常见做法是使用类似 Schnorr 的零知识证明:

  • 随机选 r,计算 U = r·G,V = r·H
  • 计算挑战 c = Hash(pk, H, Γ, U, V)
  • 计算响应 s = r + c·sk
  • 证明 π = (c, s) 或 (U, V, s) 等形式

验证者可以检查:

s·G = U + c·pk
s·H = V + c·Γ

以及 y = Hash(Γ),从而确认 Γ 确实由 sk 对 H(x) 计算得到。

第五步:验证

验证者拿到 pk, x, y, π 后:

  1. 重新计算 H = HashToCurve(x)
  2. 用证明检查 Γ 与 pk 的关系
  3. 检查 y = Hash(Γ)

如果都通过,则接受 y 为合法随机输出。

为什么币圈需要 VRF?

因为区块链上很难直接产生“不可预测且可验证”的随机数,VRF 的典型用途是:

  • 可验证随机抽签

    • Algorand、Cardano 的权益证明出块者选择。
    • 每个验证者用私钥对种子计算 VRF,输出决定其是否被选中。
    • 其他人能验证选择公平,但无法提前预测。
  • 去中心化随机数

    Chainlink VRF 让智能合约请求随机数,预言机生成随机数和证明,链上合约验证证明后才接受随机数。

  • 防止女巫攻击和偏置

    参与者不能反复尝试不同输入来“刷”有利输出,因为输出由私钥和输入唯一决定。

与普通哈希、签名、承诺的区别

  • 普通哈希:所有人可算,但无法证明“这是某私钥对应的随机值”。
  • 普通签名:可验证签名者身份,但签名本身不一定能安全地当随机数用,且可能可延展。
  • VRF:兼具“签名式唯一性”和“随机输出不可预测性”,并且输出本身可验证。

安全性依赖

VRF 的安全性通常依赖:

  • 离散对数难题(椭圆曲线方案)
  • 哈希函数的随机预言机性质
  • 安全的哈希到曲线方法
  • 证明系统的零知识性和可靠性

VRF 的技术原理是:私钥持有者对公开输入做一次确定的“签名式”计算,得到唯一随机输出,并附上零知识证明;任何人可用公钥验证该输出确实由该私钥和输入决定,但无法预测输出或伪造证明。 在币圈,它主要用于可验证、不可预测、不可偏置的随机数和抽签机制。

抱歉,评论功能暂时关闭!

友情链接攻略窝 · 礼包窝 · 配置窝 · 换算窝 · 算法窝 · 查文窝 · 手册窝 · 问答窝 · 全文搜 · 手册库
相关站点算法窝 · 全文搜