Sophie Germain 素数项目:一个用于收集和分发特殊素数的数据库

2025-06-11

Sophie Germain 素数项目是一个致力于收集、分析和分发 Sophie Germain 素数的数据库项目。这类素数 p 满足 2p + 1 也是素数(称为安全素数)的条件。该项目还对安全素数((p-1)/2 也是素数)和 Blum 素数 (p ≡ 3 (mod 4)) 进行分类。Sophie Germain 素数广泛应用于公钥密码学和素数测试。项目维护者 Kamila Szewczyk 利用该项目研究 Blum-Blum-Shub 随机数生成器等算法。项目提供 API 接口,允许用户提交和查询素数,但需要注意 API 的速率限制。

阅读更多
开发

为什么我选择用 C 编写编解码器?

2025-03-08
为什么我选择用 C 编写编解码器?

作者在博客中解释了为什么选择 C 而不是 Rust 来编写编解码器。Rust 虽然拥有强大的类型系统和内存安全特性,但在编解码器这种低级别、性能敏感的代码中,Rust 的边界检查和所有权模型反而带来了性能损耗。C 语言的简洁性和对底层硬件的直接控制,使其更适合编写高性能编解码器。作者还以 PAQ8、bzip3 和 LZ4 等编解码器的实现为例,分析了它们在内存管理和性能优化方面的问题,并说明了在 C 中进行底层优化更容易。虽然 Rust 的安全特性有益,但在性能要求极高的场景下,其额外开销不可接受。

阅读更多
开发