VRF00—Python实现
VRF基于公钥体系,从目录可以看出有RSA和EC两个版本,本文带大家走一遍RSA版本的实现,由于算法持续更新,本文采用最早的00版本进行讲解,并以Python实现。
整个体系涉及如下7个函数:
1,RSAFDHVRF_prove(K,alpha)
2,MGF1(mgfSeed,maskLen)
3,OS2IP(x),I2OSP(x)
4,RSASP1(K,m)
5,RSAFDHVRF_proof2hash(pi)
6,RSAFDHVRF_verify((n,e),alpha,pi)
7,RSAVP1((n, e), s)
RSAFDHVRF_prove(K,alpha)
可以看到函数的定义
输入:密钥和待签名的消息。注意,密钥在代码中的表现形式通常是类或对象,而不是字符串,那么该对象中哪些具体的属性参与计算呢,稍后介绍。