CUDA - cuda-fixnum源代码导读
TFHE-rs v0.11 版本发布,带来了多项重要改进和新功能,包括Zero Knowledge Proof性能的显著提升,以及通过 FheAsciiString 类型在高级 API 中使用加密字符串的新模块。新版本还引入了 TUniform 噪声分布来代替高斯分布,GPU 性能也得到提升,并支持在 GPU 上轻松执行加密数组的计算。
本文介绍了UltraGroth,这是一种基于Groth16零知识证明系统,通过引入查找表(lookup tables)来优化电路约束成本的方法,特别是在处理神经网络中的激活函数时,能显著减少约束数量,提高效率。此外,UltraGroth通过将私有witness分为两轮提交,并由验证者通过哈希承诺值导出随机数来防止恶意证明者作弊,增强了安全性。
零知识证明 - Coda SNARK挑战(Stage1)
TFHE-rs v0.6 版本引入了零知识证明技术,增强了 GPU 对有符号整数运算的支持,并引入了加密随机数生成等新的加密功能。该版本现在包含 Marc Joye 提出的公钥方案,并生成零知识证明以验证公钥加密过程的正确性。此外,新版本还支持 GPU 上的有符号整数运算,并改进了 GPU 用户的多位 PBS。
本文介绍了Succinct提出的Jagged Polynomial Commitments技术,该技术通过对表进行稀疏表示,减少了padding开销,并开发了针对稀疏/Jagged多项式的PCS方案,从而实现了更高效的以太坊区块证明。该技术结合M3算术化,可以显著降低证明时间和成本,并有可能扩展以太坊和L2区块,从而支持更多用户和用例。
零知识证明 - Coda SNARK挑战(Stage2)
探索市面上的 zkVMs:哪些项目真正符合零知识虚拟机的标准?
TFHE-rs v0.7 版本发布,引入了密文压缩和多 GPU 支持等重要特性。密文压缩可将密文大小最多减少 1900 倍,而多 GPU 支持能够显著提升同态计算的性能,文章还介绍了新版本中参数集合的更新、新的向量和数组运算、优化的零知识证明以及优化的 GPU 密钥切换等额外功能。
本文介绍了BitVM及其变体,它们是在比特币上实现通用计算的重要里程碑,无需改变比特币的共识机制。BitVM 通过“反对者证明”减少链上负担,并使用零知识证明和欺诈证明机制,让验证者可以在链下检查并对作弊者提出挑战。BitVM的后续版本BitVM-2和BitVM-3在降低成本和提高效率方面取得了显著进展,标志着在比特币上构建去信任桥梁、L2层和通用智能合约成为可能。
文章探讨了数字图像的来源验证,特别是新闻媒体中的图像伪造问题。提出了使用零知识证明结合内容来源和真实性联盟(C2PA)标准的方法,确保即使对图像进行了编辑,公众也能验证图像的原始性和编辑的合规性。实施的算法在处理图像裁剪、尺寸调整和灰度转换方面,验证过程的时间和效果均有良好表现。
本文深入探讨了Binius的M3算术化框架,以Merkle树包含性证明为例。重点介绍了表和通道作为M3中的基本抽象,取代了传统顺序执行轨迹的概念,转而使用声明式、数据驱动模型。计算被分解为模块化表,并通过通道平衡来维护全局一致性。文章还分析了 MerkleTreeCS 工具,协调多个表和通道来验证 Merkle 路径的正确性。
zkSecurity 团队与 a16z 合作,对 Jolt zkVM 进行了深入研究,发现了多个严重的安全漏洞,如执行跟踪验证、输出检查和内存布局约束等方面的问题。这些漏洞可能允许恶意证明者绕过验证。Jolt 团队已经修复了这些问题, 并通过这次合作显示了对 zkVM 进行安全审计的重要性。
上次我写了一篇 EYBlockchain 在以太坊上创建隐私币, 最近有点时间,重新看了看EYBlockchain的源代码,对EYBlockchain的理解又深入了不少。画了一些图,分享给有需要的小伙伴 :)
ZisK 团队在可验证计算领域取得了突破性进展,他们实现了 1.5 GHz 的 RISC-V 跟踪生成速度,比其他公开的 zkVM 快约 10 倍。该方案通过高效的代码翻译和内存解耦并行化策略实现了这一目标,解决了零知识证明中最顽固的瓶颈问题,为实时、按需的 ZK 证明铺平了道路。