猜你喜欢
深入浅出隐私计算:技术解析与应用实践

深入浅出隐私计算:技术解析与应用实践

书籍作者:李伟荣 ISBN:9787111701057
书籍语言:简体中文 连载状态:全集
电子书格式:pdf,txt,epub,mobi,azw3 下载次数:9045
创建日期:2023-03-26 发布日期:2023-03-26
运行环境:PC/Windows/Linux/Mac/IOS/iPhone/iPad/Kindle/Android/安卓/平板
内容简介

  《深入浅出隐私计算:技术解析与应用实践》是一本能指导零基础读者快速了解并上手隐私计算技术的著作,快速实现从入门到进阶。
  《深入浅出隐私计算:技术解析与应用实践》作者在金融和安全领域有10余年的技术从业经验,是港交所隐私计算项目的深度参与者,工程实战经验丰富。
  《深入浅出隐私计算:技术解析与应用实践》从隐私计算的安全保护技术和应用技术两个维度,深入浅出地讲解了6大类隐私计算技术的工作原理、应用方法、开发框架、案例实践。
  《深入浅出隐私计算:技术解析与应用实践》共11章,分为4篇。
  首篇基础概念(第1-2章)
  讲述隐私计算的基础知识,为后续深入讲解隐私计算原理和技术做铺垫。
  第二篇安全保护技术(第3-8章)
  讲述隐私计算技术中的各项安全保护技术,包括混淆电路、秘密共享、同态加密、零知识证明、差分隐私、可信执行环境等。对每一项技术都讲解了其原理、应用开发框架以及实践案例。
  第三篇应用技术(第9-10章)
  通过隐私保护集合交集技术、联邦学习方面的2个综合案例讲解了隐私计算安全保护技术的应用。
  第四篇展望(第11章)
  介绍了隐私计算技术标准化的相关进展,探讨隐私计算技术的困境和发展前景。
  隐私计算技术可以实现“数据可用不可见”,这一神奇、令人难以置信的技术正受到越来越多人的关注,已然成为重大科技趋势。
  《深入浅出隐私计算:技术解析与应用实践》讲述了隐私计算技术中各项基础安全保护技术,带你一起走进隐私计算技术这个神秘的世界,帮助你建立起对目前主流隐私计算技术流派的整体认知。你会接触到各类隐私计算技术的开发框架,如Obliv-C、JIFF、SEAL、libsnark和Smart Noise等,并且每一个技术框架都安排了案例进行应用实践。
  通过《深入浅出隐私计算:技术解析与应用实践》的学习,你即使是零基础也能快速上手隐私计算技术。
  通过阅读《深入浅出隐私计算:技术解析与应用实践》,你将:
  建立隐私计算技术的整体认知。
  深入了解各类隐私计算技术的算法和原理。
  学会用代码具体实现各种隐私计算应用。
  掌握各类隐私计算技术的开发框架。
  了解隐私计算面临的困境以及发展趋势。

作者简介

李伟荣
隐私计算专家,曾就职于微软、平安、港交所等大型公司,拥有十年以上金融项目架构和信息安全管理经验。精通信息安全、软件研发、项目管理,擅长大型软件架构开发,善于使用创新思维和创新方法解决问题。
曾在港交所深度参与隐私计算相关项目,致力于通过隐私计算技术解决大数据产品的确权、标准化、存证、溯源、定价、信用体系和利益分配等一系列问题,打造数据、金融资产交易的新型基础设施。

编辑推荐
适读人群 :1.大数据专业、数据安全专业的在读大学生,可以帮助大学生深入了解大数据隐私安全保护的技术和方法2.对数据安全感兴趣的初级、中级程序员、架

(1)作者背景资深:作者曾就职于微软、中国平安、港交所等大企业,软件研发和架构、隐私计算和安全等都擅长。
(2)作者经验丰富:资深隐私计算专家,10余年金融和安全行业经验,港交所隐私计算项目深度参与者,工程经验丰富。
(3)内容系统深入:系统讲解6大类隐私计算技术的工作原理、应用方法、开发框架、案例实践。
(4)零基础快入门:本书能指导零基础的读者快速了解并掌握隐私计算技术,不仅知晓其原理,而且能在实践中运用。
(5)提供资源下载:书中全部源文件提供下载,同时提供了Docker镜像文件。


前言
为什么要写这本书
几年前,我第一次接触隐私计算技术时,马上就被它所具有的神奇能力所吸引。隐私计算技术可以让数据“可用不可见”,这是多么神奇的事情,令人难以置信。因为数据几乎可以零成本地被复制,所以长期以来数据所有权一直难以得到有效保护,数据隐私问题也难以解决,进而导致数据拥有方缺乏提供数据的动力和意愿,造成了大量的数据孤岛。数据交易并没有形成规模,数据石油远远没有被充分开采。如果通过隐私计算技术实现数据“可用不可见”,进而实现数据所有权和数据使用权的分离,那么数据孤岛问题就很可能得到解决。我仿佛已经看到数据石油井喷的场景,着实兴奋。
然而随着研究的深入,我发现这件事情并没有一开始想的那么简单。单就隐私而言,“什么是隐私”“数据中是否包含隐私”这些问题其实并不容易说清楚、想明白。比如Netflix曾举办了一场根据公开数据推测用户电影评分的比赛(Netflix Prize),公开数据中抹去了可识别用户的信息,但一年后,来自得克萨斯大学奥斯汀分校的两名研究员将公开数据与IMDB(互联网电影数据库)网站的公开记录进行关联,通过差分攻击等手段识别出了部分匿名用户的身份。三年后,Netflix最终因隐私泄露宣布停止该比赛,并付出了百万美元的高额赔偿金。可见,判断数据是否包含隐私、是否可以安全公开并不简单。
经过多年的学习和思考,我认为解决数据隐私问题没有银弹,也不存在绝对的数据安全。数据要流通、要共享,就必然要透露给别人之前所不知的新信息。问题的关键在于,流通、共享过程中对透露的信息如何衡量和控制,而这正是隐私计算技术需要解决的问题。然而,目前隐私计算技术虽然种类不少,但总体上都谈不上十分成熟。公众对隐私计算技术也不够了解。市面上虽有学术论文著作,但鲜有技术入门类的书籍。鉴于此,我本着分享技术的初衷,将近年来所学的隐私计算技术整理成书,希望能帮到一部分读者,鼓励他们在应用研发方案设计过程中考虑使用这项技术。
读者对象
大数据专业、数据安全专业的学生。
对数据安全感兴趣的程序员。
对数据隐私保护有需求的开发人员、架构师。
本书特色
目前,市面上涉及隐私计算的书籍主要以联邦学习为主题,且应用场景主要是机器学习,鲜有介绍隐私计算中各项基础安全保护技术的。本书讲述了隐私计算中的各项基础安全保护技术及实现这些技术的开源应用开发框架,并选取应用案例进行实践,有利于初学者快速上手学习。
如何阅读本书
本书分4篇。
基础概念篇(第1、2章):讲述隐私计算的起源、发展、概念等基础知识,为后续深入讲解隐私计算原理和技术做铺垫。
安全保护技术篇(第3~8章):讲述隐私计算技术中的各项基础安全保护技术,包括混淆电路、秘密共享、同态加密、零知识证明、差分隐私、可信执行环境。
应用技术篇(第9、10章):通过两个综合案例介绍隐私计算中基础安全保护技术的应用。
展望篇(第11章):描述隐私计算技术标准化的相关进展,探讨隐私计算技术的困境和发展前景。
其中,第一篇以基础知识为主,如果你熟悉隐私安全的相关基础知识,可以直接跳过这部分内容。但是如果你是一名初学者,请一定从第一篇开始学习。第二篇的各章比较独立,你可根据自己的兴趣优先选择其中某些内容阅读。另外,本书涉及的编程语言较多,读者不必拘泥于编程语言细节,重点关注相关技术的原理和方法即可。
勘误和支持
登录https://github.com/li-weirong/ppct可下载书中全部源文件,登录https://hub.docker.com/u/liweirong可拉取Docker镜像文件。由于笔者能力有限,书中难免会存在一些错误或者不准确的地方,恳请读者批评指正。如果你有宝贵意见,请发送邮件到邮箱[email protected],期待得到你的真挚反馈。
致谢
首先要感谢前公司领导许慎,是他带我走进隐私计算这一前沿技术的世界,让我领略到了这一新技术的魅力。
其次要感谢机械工业出版社华章公司的编辑杨福川和陈洁,他们在我写作期间始终支持我,引导我顺利完成了全部书稿。
最后感谢我的家人,他们在我编写此书的过程中始终支持和鼓励我,让我安心思考和写作,从而最终完稿。
谨以此书献给我最亲爱的家人!
目录

前言

第一篇 基础概念

第1章 隐私计算技术的起源、发展及应用3

1.1 隐私计算技术的起源3

1.2 隐私计算的概念4

1.3 隐私计算技术的发展脉络6

1.4 隐私计算技术是重大科技趋势7

1.4.1 政策扶持7

1.4.2 商业市场前景8

1.4.3 商业研究机构的认同9

1.5 隐私计算技术的应用场景10

1.5.1 金融行业10

1.5.2 医疗健康行业11

1.5.3 政务行业11

1.6 本章小结12

第2章 隐私计算技术的基础知识13

2.1 非对称加密RSA算法13

2.1.1 RSA算法基础13

2.1.2 密钥生成15

2.1.3 加密与解密16

2.1.4 基于RSA算法的盲签名17

2.2 不经意传输17

2.3 布隆过滤器19

2.4 隐私计算安全性假设20

2.4.1 安全行为模型20

2.4.2 不诚实门限22

2.5 本章小结22

第二篇 安全保护技术

第3章 混淆电路技术的原理与实践25

3.1 混淆电路的原理25

3.2 开发框架Obliv-C28

3.2.1 通过Docker构建环境29

3.2.2 使用obliv修饰隐私输入数据30

3.2.3 提供隐私输入数据31

3.2.4 计算过程中的流程控制32

3.2.5 obliv函数33

3.2.6 对数组的访问34

3.2.7 关键词frozen34

3.2.8 高级功能:无条件代码段35

3.2.9 Obliv-C项目的文件结构36

3.3 应用案例:解决“百万富翁”难题40

3.3.1 具体代码实现40

3.3.2 网络抓包及分析42

3.4 扩展阅读44

3.4.1 姚氏布尔电路优化44

3.4.2 算术电路44

3.5 本章小结45

第4章 秘密共享技术的原理与实践46

4.1 秘密共享的概念46

4.2 Shamir门限秘密共享方案47

4.2.1 Shamir门限秘密共享方案流程47

4.2.2 Shamir门限秘密共享方案原理47

4.3 通过秘密共享实现隐私计算的原理49

4.4 开发框架JIFF51

4.4.1 通过Docker构建环境51

4.4.2 JIFF服务器52

4.4.3 JIFF客户端53

4.4.4 隐私输入数据的秘密共享55

4.4.5 秘密共享中的运算57

4.4.6 计算过程中的流程控制59

4.4.7 计算结果输出60

4.4.8 模块扩展62

4.4.9 使用预处理来提升性能63

4.4.10 使用并行计算来提升性能64

4.4.11 安全模型和假设68

4.5 应用案例:求向量内积68

4.5.1 具体代码实现68

4.5.2 网络抓包及分析71

4.5.3 性能优化72

4.6 扩展阅读74

4.6.1 GMW协议74

4.6.2 BGW协议75

4.6.3 SPDZ协议75

4.6.4 门限签名75

4.6.5 开发框架FRESCO76

4.7 本章小结77

第5章 同态加密技术的原理与实践78

5.1 同态加密算法概述78

5.1.1 同态加密算法的概念78

5.1.2 同态加密算法的分类79

5.2 半同态加密算法实践83

5.2.1 Paillier加法同态83

5.2.2 RSA乘法同态84

5.3 开发框架SEAL85

5.3.1 加密参数设置85

5.3.2 密钥生成与加解密87

5.3.3 层的概念89

5.3.4 密文计算91

5.3.5 重线性化91

5.3.6 重缩放92

5.3.7 通过Docker构建环境94

5.4 应用案例:距离计算94

5.5 扩展阅读99

5.5.1 标准化进展99

5.5.2 HElib99

5.5.3 PALISADE99

5.6 本章小结100

第6章 零知识证明技术的原理与实践101

6.1 零知识证明技术的算法原理101

6.1.1 交互式零知识证明102

6.1.2 非交互式零知识证明104

6.1.3 通过R1CS来描述算术电路106

6.1.4 开发步骤108

6.2 开发框架libsnark109

6.2.1 使用原型板搭建电路110

6.2.2 生成密钥对111

6.2.3 证明者构造证明112

6.2.4 验证者验证112

6.2.5 可复用的电路Gadget113

6.2.6 通过Docker构建环境114

6.2.7 代码的编译以及运行115

6.3 应用案例:以零知识证明方式提供财富达标证明116

6.4 同态承诺120

6.4.1 承诺的概念120

6.4.2 哈希承诺121

6.4.3 椭圆曲线121

6.4.4 Pedersen同态承诺122

6.4.5 基于Pedersen同态承诺的转账123

6.5 扩展阅读123

6.5.1 Zash的Powers of Tau活动123

6.5.2 无须可信设置的技术方案Spartan124

6.6 本章小结124

第7章 差分隐私技术的原理与实践126

7.1 差分隐私概述126

7.1.1 核心思想126

7.1.2 分类128

7.1.3 经典算法130

7.1.4 应用场景132

7.2 开发框架SmartNoise133

7.2.1 SmartNoise核心库的组成133

7.2.2 基于核心库进行数据分析134

7.2.3 SmartNoise SDK库的组成137

7.2.4 基于SDK库进行SQL统计查询137

7.2.5 通过Docker构建环境138

7.3 应用案例:美国人口数据统计139

7.3.1 简单几何机制的直方图分析139

7.3.2 拉普拉斯机制的直方图分析141

7.4 扩展阅读142

7.4.1 机器学习中的隐私攻击142

7.4.2 差分隐私模型训练开源库Opacus143

7.5 本章小结143

第8章 可信执行环境技术的原理与实践145

8.1 可信执行环境的原理145

8.2 基于硬件的可信执行环境Intel SGX147

8.2.1 SGX的安全特性147

8.2.2 SGX可信应用程序执行流程148

8.2.3 SGX相比纯软件方案的优势149

8.2.4 SGX的不足150

8.3 Intel SGX开发入门151

8.3.1 判断系统是否支持SGX151

8.3.2 SGX开发环境简介及搭建153

8.3.3 基于Intel SGX SDK构建加密应用156

8.3.4 SGX的启动审批机制180

8.3.5 SGX的密钥182

8.3.6 本地鉴证183

8.3.7 远程鉴证184

8.4 开发框架Teaclave188

8.4.1 Teaclave架构188

8.4.2 通过Docker构建环境190

8.5 应用案例:Private Join and Compute190

8.6 可信计算195

8.6.1 可信计算的基本思想195

8.6.2 可信计算的发展历史196

8.6.3 可信计算在体系结构上的发展和变化196

8.6.4 可信执行环境与可信计算的关系197

8.7 扩展阅读198

8.7.1 侧信道攻击198

8.7.2 提升TEE开发易用性199

8.7.3 手机上的可信执行环境200

8.7.4 机密计算联盟201

8.8 本章小结202

第三篇 应用技术

第9章 隐私保护集合交集技术的原理与实践205

9.1 PSI的实现原理205

9.1.1 基于哈希的PSI206

9.1.2 基于公钥加密的PSI206

9.1.3 基于混淆电路等MPC技术的PSI208

9.1.4 基于不经意传输的PSI208

9.1.5 基于全同态加密的PSI211

9.2 应用案例212

9.2.1 基于BF和RSA的PSI212

9.2.2 实现方案213

9.2.3 运行环境以及执行215

9.3 扩展阅读217

9.3.1 谷歌的Private Join and Compute项目217

9.3.2 PSI分析研究报告217

9.4 本章小结218

第10章 联邦学习219

10.1 联邦学习的源起219

10.2 联邦学习的分类221

10.2.1 横向联邦学习221

10.2.2 纵向联邦学习222

10.2.3 联邦迁移学习224

10.3 基础隐私计算技术在联邦学习中的应用225

10.3.1 PSI在联邦学习中的应用225

10.3.2 同态加密在联邦学习中的应用226

10.3.3 秘密共享在联邦学习中的应用227

10.3.4 差分隐私在联邦学习中的应用229

10.3.5 TEE在联邦学习中的应用229

10.4 扩展阅读230

10.4.1 开源的联邦学习框架230

10.4.2 联邦学习的国际标准231

10.5 本章小结231

第四篇 展望

第11章 隐私计算的困境与展望235

11.1 隐私计算的困境235

11.2 隐私计算的趋势与展望236

11.3 隐私计算技术标准化237

11.4 数据要素化与隐私计算240

11.5 本章小结241


短评

书不错,包装很好,,

2022-04-06 11:52:12

?质量非常好,完全超出期望值,发货速度非常快,包装非常仔细、严实,很满意的一次购物

2022-03-28 17:03:27

浅出,不深入。大概就是简单介绍各种隐私保护的概念,然后大篇幅地介绍公开软件

2022-03-15 06:45:46

很好的购买平台,质量不错,特别是有品牌的,值得信赖

2022-03-17 08:58:55

隐私计算理论与技术

2022-03-09 15:00:30

产品特色