您当前的位置: 首页 > 

mutourend

暂无认证

  • 1浏览

    0关注

    661博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

Mina中的Pasta(Pallas和Vesta)曲线

mutourend 发布时间:2022-03-22 16:55:50 ,浏览量:1

1. 引言

Mina系列博客有:

  • Mina概览
  • Mina的支付流程
  • Mina的zkApp

Mina采用Zcash团队发明的Pallas curve和Vesta curve(统称为Pasta曲线)。其中一条curve的scalar field等于另一条curve的base field,该特性对于recursion来说很实用。详细可参看:

  • ZCash团队2020年11月博客 The Pasta Curves for Halo 2 and Beyond
  • Generator and supporting evidence for security of the Pallas/Vesta pair of elliptic curves suitable for Halo

不过,Mina中采用的generator不同于ZCash和Arkworks-rs库的实现:

  • Mina中的Pallas曲线generator
  • Mina中的Vesta曲线generator
  • ZCash中Pallas和Vesta曲线的generator
  • Arkworks-r库中的Pallas曲线generator
  • Arkworks-rs库中的Vesta曲线的generator

通常人们用 F q \mathbb{F}_q Fq​来表示base field,用 F r \mathbb{F}_r Fr​来表示scalar field,但在Mina的代码中:【二者具有相同的2-adicity——均为32( factor ( p − 1 ) = 2 s ∗ t \text{factor}(p-1) = 2^s * t factor(p−1)=2s∗t中的 s s s值)】

  • 以 F p \mathbb{F}_p Fp​来表示Pallas的base field和Vesta的scalar field。
  • 以 F r \mathbb{F}_r Fr​来表示Vesta的base field和Pallas的scalar field。
2. Mina中的Pasta曲线参数 2.1 Mina中的Pallas曲线参数
  • curve equation: y 2 = x 3 + 5 y^2 = x^3 + 5 y2=x3+5
  • base field: 28948022309329048855892746252171976963363056481941560715954676764349967630337 28948022309329048855892746252171976963363056481941560715954676764349967630337 28948022309329048855892746252171976963363056481941560715954676764349967630337
  • scalar field: 28948022309329048855892746252171976963363056481941647379679742748393362948097 28948022309329048855892746252171976963363056481941647379679742748393362948097 28948022309329048855892746252171976963363056481941647379679742748393362948097
  • mina generator: ( 1 , 12418654782883325593414442427049395787963493412651469444558597405572177144507 ) (1, 12418654782883325593414442427049395787963493412651469444558597405572177144507) (1,12418654782883325593414442427049395787963493412651469444558597405572177144507)
  • arkworks generator: ( − 1 , 2 ) (-1, 2) (−1,2)【同ZCash】
2.2 Mina中的Vesta曲线参数
  • curve equation: y 2 = x 3 + 5 y^2 = x^3 + 5 y2=x3+5
  • base field: 28948022309329048855892746252171976963363056481941647379679742748393362948097 28948022309329048855892746252171976963363056481941647379679742748393362948097 28948022309329048855892746252171976963363056481941647379679742748393362948097
  • scalar field: 28948022309329048855892746252171976963363056481941560715954676764349967630337 28948022309329048855892746252171976963363056481941560715954676764349967630337 28948022309329048855892746252171976963363056481941560715954676764349967630337
  • mina generator: ( 1 , 11426906929455361843568202299992114520848200991084027513389447476559454104162 ) (1, 11426906929455361843568202299992114520848200991084027513389447476559454104162) (1,11426906929455361843568202299992114520848200991084027513389447476559454104162)
  • arkworks generator: ( − 1 , 2 ) (-1, 2) (−1,2)【同ZCash】
参考资料

[1] Mina Protocol手册之Pasta Curves

关注
打赏
1664532908
查看更多评论
立即登录/注册

微信扫码登录

0.0396s