声明
摘要
第1章 绪论
1.1 研究背景
1.2 安全多方计算概述
1.3 研究现状概述
1.4 本文的工作
1.5 本文的组织结构
1.6 本章小结
第2章 安全多方计算基础知识介绍
2.1 安全多方计算的定义
2.2 安全多方计算的模型
2.3 安全多方计算参与方
2.3.1 半诚实模型与恶意模型
2.3.2 不可信第三方
2.4 协议安全性相关知识介绍
2.4.1 协议安全性定义
2.4.2 密码学安全与信息论安全
2.4.3 可忽略函数
2.4.4 统计不可区分性
2.4.5 计算不可区分性
2.4.6 安全协议组合定理
2.4.7 零知识证明系统
2.5 同态加密方案介绍
2.5.1 同态加密方案
2.5.2 ElGamal加密算法
2.5.3 Paillier加密算法
2.6 安全多方计算基础协议介绍
2.6.1 电路求值协议
2.6.2 安全比较协议
2.6.3 安全求和协议
2.6.4 安全叉积协议
2.6.5 安全点积协议
2.6.6 安全置换协议
2.6.7 安全距离协议
2.6.8 向量支配协议
2.6.9 茫然传送协议
2.6.10 乘到加变换
2.6.11 加到乘变换
2.7 安全多方计算协议分析方法
2.7.1 正确性分析
2.7.2 安全性分析
2.7.3 计算复杂度分析
2.7.4 通信复杂度分析
2.7.5 轮复杂度分析
2.8 安全协议构建中的若干符号定义
2.9 本章小结
第3章 安全多方计算判定问题研究
3.1 点与凸包包含判定问题简介
3.2 构建安全点线相对位置判定协议
3.3 构建安全点与凸包包含判定协议
3.3.1 数据的初始化工作
3.3.2 构建点包含判定的基本协议
3.4 改进的点与凸包包含判定协议
3.4.1 构建改进的点与凸包包含判定协议
3.4.2 对协议IPCIP的修正
3.5 动态点包含判定问题研究
3.5.1 相向直线运动下的动态包含判定问题
3.5.2 一般直线运动状态下的包含问题分析
3.5.3 凸包旋转状态下的点包含判定问题
3.6 本章小结
第4章 安全多方计算凸包生成问题研究
4.1 安全凸包构造问题简介
4.2 构建任意三方三点相对位置判定的安全协议
4.2.1 三点属于同一个参与方
4.2.2 三点属于两方参与方
4.2.3 三点来自于三个不同的参与方昀点的相对位置判定
4.3 任意多方虚拟凸包构造协议
4.3.1 协议构造
4.3.2 一种更优的基于叉积的任意多方安全凸包构造协议
4.4 实际应用中的动态点和凸包点信息隐藏
4.4.1 动态点情况
4.4.2 顶点信息的隐藏
4.5 本章小结
第5章 安全多方计算相交问题研究
5.1 安全多方计算相交问题简介
5.2 线段相交问题研究情况
5.3 凸包相交问题研究情况
5.4 两圆相交面积研究情况
5.5 两圆相交交点的确定
5.5.1 构建两圆交点协议所需基础协议介绍
5.5.2 构建两圆交点安全计算协议
5.5.3 模拟实验
5.6 本章小结
第6章 安全多方计算在个性化推荐算法中的应用
6.1 个性化推荐系统简介
6.2 保护私有信息的协同过滤推荐算法
6.2.1 协同过滤算法
6.2.2 保护隐私的协同过滤算法介绍
6.3 用户-产品二部图推荐算法
6.4 保护隐私的用户-产品二部图推荐算法
6.5 对于数据库联合推荐算法的安全协议设计
6.6 本章小结
第7章 总结与展望
7.1 本文工作
7.2 进一步的研究方向
参考文献
致谢
攻读学位期间发表的学术论文
参加项目及获奖情况