概述
tachyon是由GPU提供支持的模块化ZK后端。
我们很高兴能成为我们社区的一部分!
如果您对tachyon的热情与我们相匹配,我们会向您发出热烈的邀请,让您加入我们的开发人员社区的电报。通过我们的电报组提出问题,分享见解或简单地与其他开发人员和原始团队了解tachyon的最新更新。我们希望在那里见到你!
感谢您对tachyon贡献的敏锐兴趣!
设计目标
- 通用:多功能的ZK库使开发人员以最小的努力实施任何证明方案,通常会提高开发人员的生产率。要创建通用后端,请尽可能与代数结构对齐代码结构至关重要。
- 易于使用:实现广泛采用对于任何产品的成功都是必不可少的。因此, tachyon项目的重点之一是包括为各种编程语言和运行时提供包装。
- 快速燃烧: tachyon的最重要要求是速度,而不仅仅是任何速度,而且是速度!这需要tachyon在CPU和GPU平台上提供出色的性能。
- GPU互操作性: tachyon的代码旨在与大多数情况下的CPU和GPU兼容。
功能列表
符号定义:
- ✔️当前支持。
- 部分实施或正在积极施工。
- 目前不支持。
有限场
|
中央处理器 |
GPU |
| 宝贝 |
✔️ |
✔️ |
| 二元菲尔德 |
✔️ |
✔️ |
| Goldilocks |
✔️ |
✔️ |
| Mersenne-31 |
✔️ |
✔️ |
| Koalabear |
✔️ |
✔️ |
椭圆曲线
|
中央处理器 |
GPU |
| BN254 |
✔️ |
✔️ |
| BLS12-381 |
✔️ |
✔️ |
| SECP256K1 |
✔️ |
✔️ |
| 帕拉斯 |
✔️ |
✔️ |
| 维斯塔 |
✔️ |
✔️ |
承诺计划
|
中央处理器 |
GPU |
| GWC |
✔️ |
✔️ |
| Shplonk |
✔️ |
✔️ |
| 星期五 |
✔️ |
|
| 佩德森 |
✔️ |
✔️ |
哈希
|
中央处理器 |
GPU |
| 波塞冬 |
✔️ |
|
| Poseidon2 |
✔️ |
|
FFT
|
中央处理器 |
GPU |
| radix2fft |
✔️ |
✔️ |
| 混合拉迪克斯夫 |
✔️ |
✔️ |
查找
蛇
|
中央处理器 |
GPU |
| Groth16 |
✔️ |
✔️ |
| HALO2 |
✔️ |
|
前端
|
中央处理器 |
GPU |
| 圆形(Groth16) |
✔️ |
✔️ |
| HALO2 |
✔️ |
|
路线图
- 2024Q1-启用生产ZKEVM证明。
- 2024Q2-用Kroma Mainnet中的tachyon代替Halo2。
- 2024Q3A-在tachyon中实施并优化了Plonky3。
- 2024Q3B-在Kroma Mainnet中,用SP1 ZKVM替换ZKEVM。
先决条件
巴泽尔
请在此处遵循说明。
Ubuntu
sudo apt install libgmp-dev libomp-dev
macos
brew install gmp libomp
入门
建造
bazel build //...
测试
bazel test //...
检查如何构建更多信息。