一、总则
Bounty Track(以下简称赞助商赛道或赛道)是由赞助商提供总奖金、奖励方式和评选的,建立于THUBA 2022 Summer Hackathon内的比赛通道。参与者自由选择想要参与的Bounty Track, 在规定的提交窗口提交作品,并由赞助商提供评选和发放奖金等服务。所有奖金将不会由THUBA发放。
二、赛道主题
加速 WASM 上的椭圆曲线
三、赛道要求描述(程序开发的主要目标、开发时需要注意的点以及其它特定要求)
奖项介绍
多标量乘法 (MSM) 操作是 ZK 计算的重要构建模块。本奖项重点关注在客户端类型的设备和基于区块链的虚拟机上,特别是WebAssembly(WASM)运行时将这些操作的延迟降到最低。
优化目标
在一定的输入向量长度范围内,最小化MSM在WASM上的延迟。
约束条件
我们聚焦在 zkSNARKs 中广泛使用的可变基 MSM [1]。 形式上,可变基 MSM 采用椭圆曲线点的输入向量
https://lh5.googleusercontent.com/o5vRtiVBr3HJVYpQ6MwSV-6E3F8lsBGgW1MM-sPTBsySFQkbTS1dB6bYnUMbwtDElS2lnzN2Hov3cYL8O6amnKG9vSikhtdVKWRFycL3y07GaxAD8dmSrRt2JiCGmDQGIOyiZmv8uHZfDAi_Xd-gxg
和来自相关标量场的有限域元素的输入向量:
https://lh3.googleusercontent.com/vFnhUNHy2tbU9Atz_-JnIfXOVxBWWAPyVKuCj24I_K6lIIxIuaTi0rCaecPw8KBdkFrsvaSUaca8OnRazKYj4mNCFWLDfFXgkRlk4QRhGWftsZFYmOE0F2HBOcjUv7Gkh5BfnwTGayhm6uIxs3XT-Q
这里,n是输入向量的长度(即一个向量中的元素数量)。
输出是一个椭圆曲线点Q。
https://lh3.googleusercontent.com/ik81HbFcPO1XPjFOa0qgDDk4vQgWqcZo315K-KVfyjMj1EDb3bdu19sL2rcpULCRLERrPqYkGSzF5KYjywmVczY_zOnDzkavlvfjv4SN9tA1dv69NtcfGmaXyHQ_QGt1AlYG2cINL7qK9oD_jQ5JUw
compute_msm(point_vec, scalar_vec)