欢迎关注区块链技术公众号“blocksight”,更多精彩内容!
写在前面
上一节说了基于椭圆曲线的VRF证明生成,利用了椭圆曲线的性质。
本文继续讲基于椭圆曲线秘钥体制的VRF证明验证的过程,关于椭圆曲线算法的知识如果不熟悉,可先参考文末“相关阅读”部分。
本文中用到的符号含义同上篇,不再解释。
ECVRF验证
验证方法如下:
方法: ECVRF_verify(Y, pi_string, alpha_string)
参数:
Y - 公钥
pi_string - VRF 生成的证明, 长度 ptLen + n + qLen
alpha_string - 原始输入消息
返回值:
valid - 是否验证通过
执行主要过程:
-
还原证明结构,D = ECVRF_decode_proof(pi_string)
-
检验 D 合法性,如非法则停止