本文由陈智罡博士撰写。
自从微信公众号里发了我在2015年写的博文“给博士生的话”后,许多研究生问如何学习全同态加密,以及全同态加密的必看的三篇文章是什么。在这里为大家统一答复。
学习全同态加密需要三部分知识:数学基础,格密码基础,全同态加密。
许多研究生在学习全同态加密时,以为只是学习全同态加密,所以看第一篇文章时,从入门直接到放弃。
这是因为任何知识都需要其它的知识作为基础,而全同态加密属于公钥密码学,所以首先它是一个加密算法,然后具有同态属性。
因此,必须熟悉格加密算法,以及相关的数学知识。下面我们分别说说这三部分。
数学基础
因为目前全同态加密都是构建在格密码算法之上的,所以格密码需要哪些数学知识,以及全同态加密本身需要哪些数学知识就构成了整个学习所需的数学基础。
V神:区块链是一种自卫技术,可减少黑客攻击和DoS攻击:5月3日,V神发推文称,有一个很有道理的例子是,提高自卫技术从长远来看,是强烈支持自由的;其消除了更集中化的替代方案的弱点,这些替代方案通常涉及做更多的调查,并试图找出世界上所有的坏人。区块链绝对是自卫技术的一个例子;从集中式记录保存转移到区块链,减少了黑客攻击和DoS攻击。甚至将会议注册转移到智能合同就是一个例子:没有更多的服务器,也没有更多的非原子性风险。[2020/5/3]
格密码需要哪些数学基础呢?
主要需要线性代数和抽象代数的基础。线性代数一般理工科都学过,例如矩阵,行列式等计算,向量空间的基等。格加密算法里的计算都是矩阵行列式计算。
抽象代数估计不是数学专业的,有可能没学过。抽象代数里的群、环、域等知识非常重要,尤其是环,是格加密的数学基础。抽象代数中一般还会涉及到数论一些知识,也在全同态加密中会使用,例如模计算等。
动态 | 韩国经济研究院:发展第四次产业革命的上市企业中增加区块链等技术的为零:据韩国经济研究院数据显示,韩国综合股价指数(kospi)上市的132家企业(金融除外)接受了2008年至2018年商业计划变动调查,增加第四次产业革命相关技术的企业仅20家。虽然很多企业追加了自主行驶、无人机,但是并没有与3D打印、区域链相关的企业(韩联社)[2019/7/12]
初学者可以看:AnIntroductiontoMathematicalCryptography补充相关数学知识。
当然公认的最好的密码学教材当属JonathanKatz的INTRODUCTIONTOMODERNCRYPTOGRAPHY。如果你想全面而深入的学习密码学可以看这本书。里面都有相关的数学知识。
声音 | 比特币开发人员:闪电网络多资产无缝转换受技术设计的限制:据ccn消息,最近,名为ZmnSCPxj的闪电网络代码库的撰稿人发帖表示,使用闪电网络多资产无缝转换受到目前技术设计的限制。他讨论了闪电通道被用于美国的看涨期权,并指出在交易窗口期间交易资产价值发生重大变化的情况下,这基本上是有问题的。原因在于交易者可以在利率变化时利用现有合约,这最终将使闪电通道成为一种不受欢迎的处理各种资产的方式。显然,当比特币等单一资产被交易时问题就不存在了。[2018/12/28]
格密码
学习全同态加密必须熟悉格密码,这是绕不开的。因为本身全同态加密就是格密码算法上进行构造的。
那么如何学习格密码呢?
应该从LWE加密算法开始学习,然后过渡到环LWE加密算法上。一定要把LWE加密算法的过程搞清楚,这样学习全同态加密会轻松许多。
动态 | Facebook将参展ChinaJoy与全球区块链应用与技术大会同展区:7月12日讯,2018全球区块链应用与技术大会三点钟峰会将于2018年8月4日-5日在上海浦东嘉里大酒店举行。Facebook作为全球拥有逾22亿用户的互联网巨头,首次参展ChinaJoy BTOB展区参展ChinaJoy备受关注,或将与BATCon 共同成为本届ChinaJoy最大亮点。[2018/7/12]
如何学习LWE加密算法呢?
建议看OdedRegev的一篇综述文章:TheLearningwithErrorsProblem。这篇文章相对写的轻松一些。不过不要忘了,如果想一下看懂是不可能的。需要反复看。注意LWE加密中的各个参数的意义。
OdedRegev本身就是提出LWE归约问题的作者,也写过一个格密码讲义,但是非常理论,不适合初学者看。
全同态加密的学习
学习全同态加密只需要看3+2篇文章。因为看完了前3篇文章,才能看最后这2篇文章,否则根本不知道最后这篇文章讲的是什么。然而,最后这篇文章恰好是目前最火的全同态加密方案。
第一篇文章:BV11:EfficientFullyHomomorphicEncryptionfrom(Standard)LWE
全同态加密的转折点就是从BV11开始,能够建立在LWE这种标准格上困难问题之上。使得全同态加密比以前简单多了。
而且BV11这篇文章写作风格非常好,易于理解。
第二篇文章:BGV12:(Leveled)fullyhomomorphicencryptionwithoutbootstrapping
BGV就是HElib基于的方案。模交换就来源于这篇文章。使得无需Boostrapping就能够建立层次型FHE。
第三篇文章:Bra12:FullyHomomorphicEncryptionwithoutModulusSwitchingfromClassicalGapSVP
Bra12就是微软SEAL库基于的方案。比BGV简单了很多,因为不需要模交换就可以构建层次型FHE。
以上三篇文章直接奠定了全同态加密的基础。值得反复阅读。
第四篇文章:GSW13:HomomorphicEncryptionfromLearningwithErrors:Conceptually-Simpler,Asymptotically-Faster,Attribute-Based
GSW13是全同态加密文章里最短的,方案简单到和一般LWE加密算法差不多。
GSW13导致了后面很多全同态加密的理论结果,让全同态加密的理论研究持续发展了好一阵。但是该方案在应用中不实际,所以只在了理论中大放光彩。
我们对GSW进行过深度分析,其实GSW方案中将约减噪音和保持同态性都放在一个密文中。具体可以看我们的文章。
第五篇文章:CKKS17:Homomorphicencryptionforarithmeticofapproximatenumbers
CKKS17能够支持浮点数的计算,而且效率很高,直接用于机器学习中。其实CKKS17的思想都来源于前面的方案。如果对前面的方案理解了,对该方案才能吃透。
以上文章以及电子资源,都可以在我的主页上获得:
https://zhigang-chen.github.io/index.html
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。