Applied PQC 首页 本书 在线演练 博客 @AppliedPQC English

带误差学习(LWE)

《应用后量子密码学》本章的全部代码:共 4 段,其中 4 段可在此运行。编辑任意单元格,然后点击运行。

书中的代码片段在一章之内层层相依,但 Sage Cell 内核每次只运行一个单元格,运行后不保留任何状态,因此每个单元格都会用 apqc_book 重放此前的代码。这一调用是在书中原有代码之外唯一添加的内容。

← 在线演练

代码 1:Sage 实验

获得直觉的最快途径,是亲手构造一个小实例,观察误差如何把一个容易的方程组变成一个困难的方程组。先固定模数和维数。

代码 2:Sage 实验

选择一个秘密向量和一批随机行。

代码 3:Sage 实验

没有噪声时,b=As 是一个精确的方程组,直接求解即可恢复 s。

代码 4:Sage 实验

现在加入一个短误差。在 𝔽₁₇ 中,值 16 表示 -1,因此这个向量的分量取自 {-1,0,1}。