目前从密码学/编码理论中使用的代数几何学(或其他数学分支)借鉴的主流技术是什么?我只听说过一小部分椭圆曲线和厄米曲线。我也听说过有关超椭圆曲线的研究,但是我不知道是否有软件已经实现了。州? (主流/研究中)

评论

对文献,软件或类似建议的要求不在这里。有关详细信息,请参阅:我们是否需要“文学建议”和类似的“列表/主观问题”?”

任何密码学教科书都将涵盖相关的数学内容或为其提供参考。

如果您对通信协议的形式分析感兴趣,则过程代数很有用:它们是描述通信协议的一种很好,形式化且紧凑的方式。它们还用于证明诸如投票协议或区块链的隐私属性之类的东西。

#1 楼

有限域-这是代数的一个分支-是必须的。它以某种方式用于几乎所有类型的密码算法。此外,您还需要某种基本的编程能力,因为您将需要计算密码算法的时间和空间复杂度。从CS部门学习的“算法”课程非常有用。

我的建议是,您可以阅读Rudolf Lidl的Finite Fields书籍的前2-3章。您无需了解书中的每一个细节,只需阅读该部分并获得一般的想法,这对于开始来说就足够了。绝对是华盛顿和特拉佩的《密码学概论》。除了非常全面之外,这是最基础的书。它具有解决方案手册和不错的练习,您将乐于解决。我个人从中学到了很多。陷阱涵盖了初学者几乎需要了解的所有基本知识。

评论


$ \ begingroup $
我研究了密码学的前两章,即华盛顿和特拉佩的《密码学概论》,并且得到了一些线索。
$ \ endgroup $
– R1w
18年8月29日在5:00

#2 楼

基本理论对我很感兴趣!当前,它在许多密码系统中用于保护数据(例如,在制作公共密钥时)。总是有一些默默无闻的研究人员在研究如何使素数分解更容易(或者我想更强)。 ,等等,等等。。。)如果您能找到一种方法来利用某些数学属性,使其具有更多的可能性,那么对您有好处!

我认为很多现代研究正在进行中进入椭圆曲线密码学我知道NSA目前正在对此进行研究,您可以通过其网站了解更多信息。量子密码学似乎也是一个热门话题。

我不是密码学专家,但是只要有机会我就喜欢阅读有关该主题的文章。希望其中一些想法能使您更接近想要去的地方吗?

评论


$ \ begingroup $
只是为了挑剔:它是椭圆曲线密码学,而不是“椭圆形”。尽管有名称,但椭圆曲线不是椭圆。
$ \ endgroup $
–杰夫
2011年7月13日在17:10

$ \ begingroup $
糟糕,抱歉...嗯,您知道我的意思,但是感谢您的纠正!
$ \ endgroup $
– Mr_CryptoPrime
11年7月20日在13:18

$ \ begingroup $
“总理分解”-糟糕,这里似乎有误会。素数分解很容易。 RSA基于分解复合词(不分解素数)的难度。 “总理理论”-我不确定该指的是什么;我从未听过数学家使用过这句话。听起来很虚构。也许您的意思是“数论”。
$ \ endgroup $
– D.W.
2011年8月4日在6:09

$ \ begingroup $
我总是把它称为素论。当然,如果素数论确实存在,那绝对是数论的子集。 :)感谢您的澄清。
$ \ endgroup $
– Mr_CryptoPrime
2011年8月6日在2:23

#3 楼

抽象数学在密码学的发展中起着重要作用。对于这些技术已经说得足够多了!

加密系统已经使用了背包问题和子集​​和之类的组合问题。您可以在子集和与基于Lattice的密码学之间找到很好的联系。尝试自己解决问题,如果做不到,然后在公钥加密原语中寻找整洁的结果,证明其与子集总和一样安全。


已经使用了博弈论在合理的环境中构建协议时,主要是因为在安全的多方计算中缺乏公平性的概念。回想一下,由于Cleve在1986年STOC中所做的开创性工作,不可能进行公平的计算。



编码理论和许多组合设计(BIBD,正交阵列)已用于构造通用哈希函数族和从而随机性提取器和伪随机数生成器。它们主要用于无条件设置。



代数几何已用于椭圆曲线密码学。其他人在这里已经说了足够多的内容。



群论和一般的代数数论(例如,隐藏子群问题)已被用来构造可抵抗量子攻击的密码基元。回想一下,量子计算机尚未解决隐藏的子组问题。更重要的是,代数数论提出了所有FHE所基于的理想和环,并定义了从最坏情况到平均情况减少的大多数基于格的密码假设。


诸如指数总和之类的分析工具已用于证明某些分布的均匀性。通常,他们使用Weil的准则,并证明与特定分布相对应的指数和具有非平凡的界限,并且从Weil的准则的离散类似物中,它是均匀分布的。这已被用来证明某些形式的DH问题在一组素数阶上具有均匀的分布。



间接加法组合已经在少数密码系统中被使用(它们被用于复杂性理论,并从那里开始在密码学中得到应用),尤其是著名的BKT03结果。您可以在Jean Bourgain和Igor Shparlinski的网页上找到有关这些结果的更多信息。


目前,我已经不记得了。

评论


$ \ begingroup $
有限域理论呢? (在AES和基于LFSR的系统中使用了一点)。在某些密码系统中也使用编码理论。
$ \ endgroup $
– Henno Brandsma
17年1月7日在7:27

#4 楼

惊讶的是没有人提到这一点。抽象代数是AES设计中的重要角色,特别是AES在特定字段上使用有限域算术。本文介绍了该领域。

该领域也被称为Galois领域,它来自Galois理论,它巧妙地解决了有关高阶多项式的问题以及将这些领域与组联系起来。

我应该补充一点,椭圆曲线密码学实际上是在有限域上使用某些椭圆曲线和有理点。基于,例如$ \ mathbb {Z} _p $是一个组。您也可以采用一组$ R = {x:x n作为两个大素数的乘积,则可以从RSA公钥构造一个组。您选择e大并与pq互质的要求恰好是这样的,它最终会出现在该组中,因此具有相反的值,即组的定义公理之一,因此,您选择作为目标的任何t也将属于到这个组,因此有一个逆数。

评论


$ \ begingroup $
Galois场一词仅表示有限场,是在开始研究Galois理论之前发现的(完全分类的)。由于他们是同一个人发现的,因此他们具有相同的名字。
$ \ endgroup $
–布兰登·卡特(Brandon Carter)
2011年7月17日在18:46



#5 楼

离散数学,尤其是数论和群论,可能是与密码学相关的数学中最重要的部分。数论,群论和逻辑是离散数学中的重要主题。在逻辑证明理论中,这一点非常重要,否则,您将无法证明密码算法的正确性。许多其他主题,尤其是概率和统计也非常重要。基本上,如果您喜欢数学,那么可能比在学术水平上学习密码学还要糟糕。等等就足够了。如果您想自己创建协议,至少需要一些关于概率的想法。

因此,密码学不仅涉及数学的一个分支。


就是说,在三角学或虚数上表现出色的理由很少。并不是所有的数学都直接适用,有时我们会吸引一些人尝试将特定的数学学科纳入加密技术。

评论


$ \ begingroup $
最后一段是否有任何具体,明确的示例?
$ \ endgroup $
–丹尼尔(Daniel)
18年8月29日在13:58

$ \ begingroup $
通常,这些问题不在我的书签列表中:)问题是,如果我指出一个问题,可能会引起反对。我可以说一个通用的名称:任何涉及浮点计算的数学通常都不那么有用,因为舍入误差会导致偏差。哦,并不是每个活板门等都可以直接用于加密。
$ \ endgroup $
–马腾·博德威斯♦
18年8月29日在14:05

$ \ begingroup $
很有道理。加密也有这种分类方法:math.berkeley.edu/~izaak/assets/cryptocat.pdf
$ \ endgroup $
–丹尼尔(Daniel)
18年8月29日在14:10

#6 楼

我想加我的两美分(主要与不对称密码有关):


数字理论原语(基于RSA / DH / EC / Pairing的加密)[主流]
编码基于理论的密码系统(McEliece)[研究]
基于格的系统[研究]
其他信息论模型,例如窃听模型[研究]
组合器(背包问题)[研究]


评论


$ \ begingroup $
基于格的系统可以看作是编码理论方案的一种特殊形式。例如,LWE可以看作是代码字在适当有限域中的扰动。
$ \ endgroup $
–贾拉杰
2012年1月27日18:31

#7 楼

我不确定超椭圆曲线的实施状态。

数学技术的其他两个重要用途:


适当的椭圆曲线上的双线性配对-主流(电压)
理想晶格-主流(NTRU)和研究中(Gentry的完全同态加密)

另一个有趣的领域是基于编码理论: