版权所有:内蒙古大学图书馆 技术提供:维普资讯• 智图
内蒙古自治区呼和浩特市赛罕区大学西街235号 邮编: 010021
作者单位:武汉大学
学位级别:硕士
导师姓名:刘芹
授予年度:2021年
学科分类:0839[工学-网络空间安全] 08[工学] 081201[工学-计算机系统结构] 0812[工学-计算机科学与技术(可授工学、理学学位)]
摘 要:安全多方计算允许一组互不信任的参与方在其各自输入上联合运行某个计算功能得到计算结果,而不会透露任何超出计算结果的信息,是现代密码学领域的一个重要研究方向。而随着人们对隐私的逐渐重视,安全多方计算在学术界、工业界和政府中有着越来越广泛的应用。从姚期智的“百万富翁问题开始,用于安全多方计算的协议被研究和发展了数十年,已经诞生了非常多的优秀协议,并且基于这些协议构建出了可以执行任意图灵完备程序的通用安全多方计算编程框架。虽然在这些安全多方计算协议上构建的框架、领域特定语言层出不穷,但经过我们的评估发现其都有着易用性较差、和现有编程语言难以交互、不适合大数据计算等问题。为了解决这些问题,本文设计了一种基于ORAM(Oblivious RAM)的混合协议安全多方计算框架,并基于JSR 269规范和LLVM编译器框架将Java和C/C++程序编译为该计算框架上的安全多方计算应用。具体来说,本文的主要贡献有如下三点:1.通过易用性、功能性、交互性等多个评估指标,对现有的较为常用的若干通用安全多方计算框架进行了评估,总结了现有框架存在的易用性较差等问题及其原因,并对这些不足进行了讨论和分析;2.设计了一种基于ORAM的混合协议安全多方计算框架,具有ORAM为大数据计算提供的亚线性电路复杂度、低通信复杂度的优势,同时基于姚氏混淆电路、布尔电路、算术电路的混合协议为前端语言的表达能力、功能性提供了更多的灵活性;3.提出并实现了基于JSR 269和LLVM编译器框架的安全多方计算编译器构建方案,将Java和C/C++程序编译为本文提出的计算框架上的安全多方计算应用。通过若干典型安全多方计算应用场景对本文方案进行了测试,实验结果表明,本文提出的计算框架和编译器构建方案,在易用性、功能性、交互性上比现有框架都更具优势。