本文详细介绍了如何在 Circom 中创建一个栈数据结构,以及如何使用零知识证明(ZK proofs)来验证栈的操作,包括 push、pop 和 no change。通过定义栈的最大高度和使用栈指针(stack pointer)来跟踪栈的使用情况,并详细描述了在不同操作下栈状态的转换和约束。
本文介绍了如何在零知识证明(ZK)电路中模拟32位算术运算,由于ZK默认数据类型是有限域元素,而实际计算常用32位、64位或256位数字,因此需要用域元素来模拟传统数据类型。文章详细讲解了32位范围检查、加法、乘法、除法与取模、位移以及位运算的实现方法,并提供了相应的Circom代码示例,同时还讨论了ZK EVM如何处理256位数字。
本文详细介绍了如何在 Circom 中实现 MD5 哈希算法,包括计算哈希值和约束其正确性。文章首先介绍了 MD5 哈希的原理和步骤,然后展示了如何在 Circom 中构建实现 MD5 哈希所需的各种组件,如位运算、循环左移、32 位加法以及初始填充。并通过一个python的例子,展示了MD5哈希的计算过程。
本文介绍了在零知识证明友好的哈希函数,重点介绍了Minimal Multiplicative Complexity (MiMC) 和 Poseidon 这两个流行的 ZK 友好哈希函数的工作原理和性能, 并对比了他们的优劣. 此外还提及了基于椭圆曲线的Pedersen哈希,并指出了以太坊基金会悬赏征集MiMC哈希碰撞,以及对Poseidon安全性的研究。
本文档介绍了使用排列参数证明两个列表包含相同的元素,但顺序可能不同的证明。
本文介绍了零知识虚拟机(ZKVM)的概念,它能创建零知识证明来验证机器指令的正确执行。文章通过一个简化的栈式ZKVM示例,展示了如何使用Circom实现基本的算术运算,并探讨了提高ZKVM效率的现代方法,如查找表和递归证明。 ZKVM在零知识Layer2区块链中至关重要,并可用于验证机器学习算法的正确执行。
本文介绍了如何在零知识电路中证明选择排序算法的正确执行过程。由于ZK电路中信号的不可变性,每次交换都需要创建一个新的列表快照。为此,文章详细展示了如何通过多个中间状态的转换来证明排序的正确性,包括查找子列表中最小值的索引、交换列表中的两个元素等关键步骤, 并提供相应的代码模版。
该文档介绍了micro-zk-proofs库,一个用于并行创建和验证零知识SNARK证明的工具,它支持Groth16协议,并计划支持PLONK等。
本文深入探讨了椭圆曲线上的有理点问题,首先通过圆上的有理点引出寻找有理点的概念,然后讨论了椭圆曲线有理点的存在性和群结构,以及Mordell-Weil定理,提出了确定椭圆曲线秩的挑战,并介绍了BSD猜想以及L-函数在解决该问题中的应用。文章旨在加深对椭圆曲线理论的理解,为后续学习配对技术打下基础。
本文介绍了新提出的椭圆曲线 Eccfrog512ck2,它是一种增强型的 512 位 Weierstrass 椭圆曲线,旨在提高性能。该曲线在点生成、标量乘法、点验证和 ECDH 密钥交换时间等方面优于 NIST P521 曲线,并已在 IACR 上发表。
Zama 发布了 Concrete v2.10,引入了对 Rust 的支持,通过 concrete-macro 和 concrete 这两个 crates,可以直接在 Rust 中使用 FHE(全同态加密) 功能,使得开发者能够更容易地将 Python 原型移植到生产环境。此外,新版本还增强了与 TFHE-rs 的互操作性。
本文为作者在 2017 年出版的文章《An Investor’s Take on Cryptoassets (v6)》(“一位投资者对密码资产的看法”)的节选。节选部分出现在原文链接所附带的 PDF 文件第 12 ~ 21 页。
本文介绍了针对RSA加密算法的Fermat攻击方法,该方法利用了当RSA使用的两个质数因子非常接近时,模数可以被容易地分解的漏洞。文章给出了Fermat分解算法的Python代码示例,并提供了一个CTF挑战,要求读者利用该方法解密RSA加密的消息,找出对应的英文城市。
这是一篇论文解读:SoK: Understanding zk-SNARKs: The Gap Between Research and Practice.
Zama 发布了 TFHE-rs v1.1 版本,该版本在 GPU 和 CPU 后端都有重大改进和新特性。GPU 方面,升级了后端,采用了与 CPU 相同的默认加密参数,显著提高了多 GPU 的支持,CPU 方面,通过支持更多的标量案例扩展了算子集,该版本还引入了分块引导密钥生成,以更好地支持内存受限环境中的操作。
Concrete v2.10 发布,引入了对 Rust 的支持,通过 concrete-python 将 Python 程序编译为 FHE 等效程序,然后在 Rust 项目中使用,以便在生产环境中部署。新版本还增强了与 TFHE-rs 的互操作性,可以更轻松地结合两者的优势。
Zama 发布了 TFHE-rs (v1.1)、Concrete (v2.10) 和 Concrete ML (v1.9) 的新版本。
Zama 发布了 TFHE-rs v1.1 版本,GPU 后端升级,采用与 CPU 相同的默认加密参数,降低了计算错误的概率。多 GPU 支持也得到了显著改善,开发者可以选择要使用的 GPU,在 8×H100 GPU 上每秒可进行接近 500 次加密的 64 位加法。CPU 方面,此版本通过支持更多标量情况扩展了运算符集,从而使同态计算更加通用和高效。
Zama团队在EUROCRYPT 2025上展示了其在全同态加密(FHE)方面的最新研究成果,该研究旨在通过控制密文漂移来提高FHE的安全性及效率,特别是在IND-CPAD安全模型下。他们提出了一系列新技术,能够在不显著增加计算成本的前提下,降低解密错误的概率,从而提升FHE在实际应用中的安全性,并引入了更强的安全模型sIND-CPAD。
本文介绍了多方计算(MPC)尤其是姚的加密电路协议的实现,涵盖了从理论基础到代码实现的各个方面,包括RSA、模糊传输、加密电路的生成与评估等。特别强调了如何在保持私人输入的隐私前提下进行安全计算,适合对MPC感兴趣的读者深入学习。
扫一扫 - 使用登链小程序
114 篇文章,705 学分
388 篇文章,475 学分
67 篇文章,425 学分
118 篇文章,352 学分
162 篇文章,344 学分