
抗量子密码学
文章平均质量分 90
抗量子密码学相关知识,包括NIST进程总结,NIST官方文档翻译、自己学习抗量子算法的理解总结等。
优惠券已抵扣
余额抵扣
还需支付
¥49.90
¥99.00
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
打工小熊猫
计算机本硕毕业,硕士从事网络安全及攻击方向的研究,从业后做过支付,做过中间件,现在又做回网络安全方向,从事抗量子密码的研究
展开
-
FFT简述及其代码多语言实现
快速傅里叶变换(FFT)是数字信号处理(DSP)算法与应用中的多功能工具。本文提供了一个免费的多语言 FFT 实现参考,其代码体积小巧,做了一定程度的优化(例如构建三角函数表),但并未追求极致的性能表现,只是作为一个多语言实现参考。其中还包含一个基于 FFT 的快速循环卷积函数。需要注意的是,FFT 经过少量预处理和后处理后,可以快速计算离散余弦变换(DCT),而 DCT 被广泛应用于多种多媒体压缩算法中。原创 2025-04-11 14:31:12 · 132 阅读 · 0 评论 -
HQC第四轮提交文档(2025.2.19更新)中文译版-3
在本节中,我们证明 HQC.PKE 方案的 IND-CPA 安全性。设:定理 5.1:对于任何对 HQC.PKE 方案(图 2)进行 IND-CPA 攻击的对手 A,存在运行时间与 A 大致相同的两个对手 B1B_1B1和 B2B_2B2,使得:AdvHQC.PKEIND-CPA(A)≤2⋅(Adv2-DQCSD-P(B1)+Adv3-DQCSD-PT(B2))(21)\text{Adv}^{\text{IND-CPA}}_{\text{HQC.PKE}}(A) \leq 2 \cdot (\t翻译 2025-04-07 13:45:40 · 8 阅读 · 0 评论 -
HQC第四轮提交文档(2025.2.19更新)中文译版-2
本节内容摘自文献 [4],我们提出了一种基于 Reed-Muller 码与 Reed-Solomon 码级联 的新型解码算法。定义 2.5.1(级联码)一个级联码由两个组成部分构成:设 ppp是一个素数, qqq 是 ppp的幂次。根据文献 [22],一个定义在 Fq\mathbb{F}_qFq上的 Reed-Solomon 码具有以下参数: 表 3:原始与缩短的 Reed-Solomon 码缩短码的构造方法如下:请注意:缩短 Reed-Solomon 码并不影响其纠错能力,因此得到以下缩短码:在我们的翻译 2025-04-07 13:40:54 · 11 阅读 · 0 评论 -
HQC第四轮提交文档(2025.2.19更新)中文译版-1
HQC是一种IND-CCA2安全的密钥封装机制(KEM),目前正在美国国家标准与技术研究院(NIST)的“后量子公钥加密算法”竞赛中参与标准化评选。HQC提供了针对NIST安全等级1、3和5的参数集。HQC方案的主要特点包括: 表1:使用AVX2指令优化实现的不同HQC参数集性能(单位:千周期) 由于 RMRS 解码器 明显优于 BCH-Repetition 解码器,我们现在仅保留 HQC 算法的 RMRS 解码版本,不再考虑 BCH-Repetition 解码器。为了更精确地契合 NIST 安全等级 1翻译 2025-04-07 13:03:28 · 15 阅读 · 0 评论 -
Module-Lattice-based Key-Encapsulation Mechanism Standard(Fips 203 draft) ML-KEM中文译版
摘要密钥封装机制(Key-Encapsulation Mechanism,简称KEM)是一组算法,可以在特定条件下由两个参与方使用公共信道建立共享的秘密密钥。使用KEM安全地建立的共享秘密密钥可以与对称密钥密码算法一起用于安全通信中的基本任务,如加密和认证。本标准规定了一种名为ML-KEM的密钥封装机制。ML-KEM的安全性与所谓的模块学习与误差(Module Learning with Errors)问题的计算难度相关。目前,即使面对拥有量子计算机的对手,ML-KEM被认为是安全的。本标准规定了ML翻译 2024-12-04 15:43:56 · 167 阅读 · 0 评论 -
sphincs+ Nist Round3文档中文译版(SPHINCS+ Submission to the NIST post-quantum project, v.3)
1. 引言哈希基础签名方案最初是由Lamport [14]在1970年代后期作为一次性签名方案开发的,并由Merkle [16]扩展为多次签名方案。这些方案的安全性易于分析,并仅依赖于所使用的哈希函数的属性。然而,Merkle基于树的签名方案需要在密钥生成时就确定要进行签名的数量,且为了保持性能这个数字要小。最重要的是,该系统需要用户记住一个状态:这个状态包含一些信息以记住密钥已经进行了多少次签名。在Lamport方案诞生后的40年里,产生了许多想法改进了哈希基础签名的性能、实用性和理论基础,最终XMS翻译 2024-12-04 14:58:40 · 108 阅读 · 0 评论 -
Falcon Nist Round3文档中文译版(Falcon: Fast-Fourier Lattice-based Compact Signatures over NTRU)
第一章概述Falcon是一种基于格的签名方案,该术语代表以下缩写:基于NTRU的快速傅里叶格基紧凑签名。Falcon的高级设计很简单:我们实例化了由Gentry、Peikert和Vaikuntanathan [GPV08] 描述的理论框架,用于构建基于哈希和格的签名方案。该框架需要两个要素:• 一类密码学格。我们选择了NTRU格类。• 一个陷门采样器。我们依赖一种新技术,称为快速傅里叶采样。简而言之,Falcon签名方案可以描述为:Falcon = GPV框架 + NTRU格 + 快速傅里叶采翻译 2024-12-04 13:14:29 · 101 阅读 · 0 评论 -
Dilithium Nist Round3中文译版-2(CRYSTALS-Dilithium Algorithm Specifications and Supporting Documentat)
由于篇幅限制,分成了-1和-2两部分,其中-1为前三章,-2为剩余部分。4 Dilithium挑战和扩展安全参数表3:Dilithium的挑战和扩展安全参数。对于SIS安全,括号中的数字是签名方案的强不可伪造版本(即难以为已经看过的消息/签名对生成第二个不同的签名)的参数。除了表1和表2中对应于各种NIST安全级别的参数之外,我们还提供了低于和高于这些级别的参数。低于NIST级别1的两个参数集(称为1- -和1-)的目的是鼓励密码分析,并在SIS和LWE问题比预期更容易时提供早期警告。1- -级别的翻译 2024-12-04 10:19:40 · 181 阅读 · 0 评论 -
Dilithium Nist Round3中文译版-1(CRYSTALS-Dilithium Algorithm Specifications and Supporting Documentat)
该方案的设计基于“Fiat-Shamir with Aborts”方法[Lyu09,Lyu12],并与[GLP12,BG14]中提出的方案最相似。对于不熟悉此类签名方案的读者,我们在图1中提供了一个简化(且不太高效)版本的方案。这个版本是[BG14]中方案的稍加修改。我们现在将逐个讨论其每个组件,以便读者了解这样的方案如何工作。图1:我们的签名方案的模板,不包括公钥压缩密钥生成。密钥生成算法生成一个k×ℓk×ℓ的矩阵A,矩阵A的每一项都是环RqZqXXn1RqZq。翻译 2024-12-04 09:59:35 · 135 阅读 · 0 评论 -
NTT详解(附加举例分析)
NTT(Number-Theoretic Transform)是对有限域的经典DFT(离散傅里叶变换)的一般化。通过大量工作,NTT基本上能够在整数序列上执行快速卷积,而且保证没有任何舍入误差。卷积在乘法大数或长多项式时非常有用,而且NTT在渐近意义上比其他方法如Karatsuba乘法更快。原创 2024-12-03 17:03:08 · 177 阅读 · 0 评论 -
Kyber NIST标准文档中文译版V3.0 (CRYSTALS-Kyber Algorithm Specifications And Supporting Documentation (V3.0)
Kyber.CCAKEM(或简称Kyber)是一种IND-CCA2安全的密钥封装机制,它满足提案倡议第4.A.2节中规定的安全定义。翻译 2024-12-03 15:37:21 · 193 阅读 · 0 评论 -
大整数乘法算法整理
1朴素算法即传统的竖式乘法。例如,计算 2531 乘以1467,传统的朴素算法需要进行 16 次个位数之间的相乘,需要Θ(n2)Θ(n^2)Θ(n2)的时间,如下:// 预先定义的宏,方便字符与数字转换#define CTOI(a) (int(a-'0'))#define ITOC(a) (char('0'+a))#define ISZERO(a) (a.compare("0") == 0 || a.empty())// 输入:两个大数num1和num2// 输出:两个大数的乘积str原创 2024-12-03 13:15:14 · 172 阅读 · 0 评论 -
NIST Round3 标准文档中文译版(NIST.IR.8413)
美国国家标准与技术研究院正在通过公开、类似竞赛的过程选择公钥加密算法。新的公钥密码学标准将指定其他数字签名、公钥加密和密钥建立算法,以增强联邦信息处理标准(FIPS)186-4数字签名标准(DSS),以及NIST特刊800-56A修订3,使用离散对数密码学的一对一密钥建立方案的建议和SP 800-56B 修订2,使用整数因子分解密码学的一对一密钥建立方案的建议。这些算法将能够在可预见的未来,包括量子计算机出现后,有效保护敏感信息。翻译 2024-12-02 17:33:50 · 103 阅读 · 0 评论 -
kyber算法库打包相关问题
前提:我需要打一个libpqc_kyber.so文件,给我的example_kem.c使用。原创 2024-10-31 16:55:33 · 403 阅读 · 0 评论 -
Kyber原理解析
Kyber的构造采⽤两阶段⽅法:⾸先介绍⼀种⽤来加密固定32字节⻓度的消息原⽂的IND-CPA安全性的公钥加密⽅案,我们称之为 CPAPKE, CPAPKE由密钥生成( CPAPKE.KeyGen)、加密( CPAPKE.Encrypt)、解密( CPAPKE.Decrypt)三个算法组成。由CPAPKE通过FO变换转换成CCAKEM并不复杂,本文我们主要举例解释一下CPAPKE的三个算法,Kyber出于安全性考虑,系统参数都较大,这里我们只为了简要解释原理,因此采用了压缩版的参数。, 并假设我们的输入。原创 2024-10-31 16:35:33 · 1092 阅读 · 3 评论