区块链:技术干货 | 如何学习全同态加密

本文由陈智罡博士撰写。

自从微信公众号里发了我在2015年写的博文“给博士生的话”后,许多研究生问如何学习全同态加密,以及全同态加密的必看的三篇文章是什么。在这里为大家统一答复。

学习全同态加密需要三部分知识:数学基础,格密码基础,全同态加密。

许多研究生在学习全同态加密时,以为只是学习全同态加密,所以看第一篇文章时,从入门直接到放弃。

这是因为任何知识都需要其它的知识作为基础,而全同态加密属于公钥密码学,所以首先它是一个加密算法,然后具有同态属性。

因此,必须熟悉格加密算法,以及相关的数学知识。下面我们分别说说这三部分。

数学基础

因为目前全同态加密都是构建在格密码算法之上的,所以格密码需要哪些数学知识,以及全同态加密本身需要哪些数学知识就构成了整个学习所需的数学基础。

金色相对论 | BSN副秘书长李慧:支持区块链发展就是实现核心技术自主可控:在今日举行的金色相对论中,针对“国家、企业、个人及如何协同促进区块链产业的健康落地”的问题,火币区块链研究院副院长区块链服务网络(BSN)副秘书长李慧表示,这几年从美国对我国企业的技术封锁行为,相信大家都深深感受到了掌握核心技术的重要性。所以,要避免这种卡脖子的问题再现,在新兴技术领域,我们是一定要去争取技术上的领先性,区块链技术就是典型代表之一。但要知道,发展技术最终目的还是要落地到产业应用的,同时产业的发展也能更正向地推动技术的进步,有需求才有动力,他们两者是相辅相成的。所以说,我们国家为什么要支持新基建,支持区块链技术的发展,支持产业落地,核心就在于要实现核心技术的自主可控,并且推动我国产业创新和制度创新,并且在数字经济新时代占据一席之地。[2020/6/3]

格密码需要哪些数学基础呢?

声音 | 上海市政协委员:应将区块链技术引入上海港集装箱智能预约系统:据上观新闻消息,上海市政协委员金江波表示,需要加快建设绿色智慧港口。上海要应该抓住这一契机,将区块链技术引入上海港集装箱智能预约系统。[2020/1/18]

主要需要线性代数和抽象代数的基础。线性代数一般理工科都学过,例如矩阵,行列式等计算,向量空间的基等。格加密算法里的计算都是矩阵行列式计算。

抽象代数估计不是数学专业的,有可能没学过。抽象代数里的群、环、域等知识非常重要,尤其是环,是格加密的数学基础。抽象代数中一般还会涉及到数论一些知识,也在全同态加密中会使用,例如模计算等。

初学者可以看:AnIntroductiontoMathematicalCryptography补充相关数学知识。

公告 | 海联金汇:公司在数字货币商业应用上有技术储备:据证券时报消息,海联金汇(002537.SZ)在互动平台表示,我司在数字货币商业应用上也有一些技术储备,待监管政策及相关标准确定后,将积极探索一些商业化产品和应用。[2019/12/24]

当然公认的最好的密码学教材当属JonathanKatz的INTRODUCTIONTOMODERNCRYPTOGRAPHY。如果你想全面而深入的学习密码学可以看这本书。里面都有相关的数学知识。

格密码

学习全同态加密必须熟悉格密码,这是绕不开的。因为本身全同态加密就是格密码算法上进行构造的。

那么如何学习格密码呢?

应该从LWE加密算法开始学习,然后过渡到环LWE加密算法上。一定要把LWE加密算法的过程搞清楚,这样学习全同态加密会轻松许多。

美国众议院将在情人节举办“区块链技术新兴应用”听证会:2月14日美国东部时间上午10点,美国众议院科学,技术和空间技术委员会的两个小组委员会将要举行题为“超越比特币:区块链技术新兴应用”的听证会。出席会议的将有沃尔玛食品安全副总裁Frank Yiannas,美国国家标准与技术研究院(NIST)主任Charles Romine, IBM区块链副总裁Jerry Cuomo,国会研究服务部分析师Chris Jaikaran,以及Benjamin N. Cardozo法学院的临床副教授Aaron Wright。[2018/2/9]

如何学习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

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

地球链

[0:15ms0-0:978ms