带你读《云原生机密计算最佳实践白皮书》——Intel_HE_Toolkit开发指南(1)

简介: 带你读《云原生机密计算最佳实践白皮书》——Intel_HE_Toolkit开发指南(1)

Intel Homomorphic Encryption: Intel平台

同态加密加速框架


项目位置链接

Intel HE Toolkit: https://github.com/intel/he-toolkit

Intel HEXL: https://github.com/intel/hexl

Intel Paillier Cryptosystem Library (IPCL): https://github.com/intel/pailliercryptolib

HEBench: https://github.com/hebench


技术自身介绍


背景

同态加密是一种满足同态运算性质的加密技术,即在对密文进行特定形式的代数运算之后,得到的仍然是加密的结果,将其解密所得到的结果与对原始明文进行运算得出的结果一致。由于运算完全在密文上进行,同态加密可以提供极高的数据安全保证,其被广泛地应用于隐私保护计算、联邦学习和区块链等领域。


问题&挑战

虽然同态加密技术发展了许多年,但由于其技术复杂度高,对计算、存储和网络带宽资源要求高等原因,面临着开发、使用和部署门槛高的问题。为了解决上述问题,Intel提供了一系列工具套件和加速库,包括Intel HE Toolkit、Intel HE Acceleration Library (Intel HEXL)和Intel Paillier Cryptosystem Library(IPCL)。另一方面,同态加密技术正在经历标准化的过程,尽管涌现出了许许多多同态加密应用,但是缺乏一个公认的基准评价体系,针对这个问题,Intel向开源社区贡献了Homomorphic Encryption Benchmarking Framework( HEBench)。


解决方案

如下图所示,Intel提供了对于同态加密技术的全栈式支持。在半同态加密方面,Intel提供了通过ISO认证的Paillier算法库IPCL,它使用了Intel IPP-Crypto库提供的AVX512IFMA指令集加速的能力,在最新的IntelXeon平台上有优异的性能表现。在Leveled HE方面,依托于Intel Xeon平台最新的指令集加速以及FPGA的硬件加速能力,Intel HEXL封装了底层硬件细节,向上提供了加速的密码学运算接口供第三方同态加密库,如SEAL、

Palisade和HELib使用。Intel HEXL在最新的Intel平台上同样采用了AVX512IFMA指令集加速伽罗华域上的大整数运算,并且可以根据CPU型号自动匹配最合适的加速实现,提供向后兼容功能。

1685098363145.png

围绕 HE 技术创新, Intel HE Toolkit 为社区和行业提供了一个用于HE 应用实验、开发和部署的平台。 Intel HE Toolkit目前提供示例内核和示例程序,这些示例程序演示了利用主流的同态加密库构建各种同态加密应用用于保护用户隐私数据的能力。 同时,Intel HE Toolkit通过使用Intel HEXL 加速库展示了使用最新的英特尔硬件功能发挥英特尔处理器在HE领域优势的最佳实践。

此外,HEBench为同态加密方案的开发者和用户提供了一个公允且标准的性能测试基准,旨在推动同态加密技术的演进和应用方案的创新。HEBench由三个部分组成:

1685098372375.png

1、前端:包括测试框架和后端加载器。测试框架目前支持的运算有向量按元素的加法和乘法、向量点乘、矩阵乘法和逻辑回归推理,主要度量的指标是计算时延和吞吐量。

2、适配层:提供了统一的C接口,桥接了前端的测试框架和后端具体的HE实现,使得后端开发者可以专注于HE各类算法的实现,只需要遵照接口定义就能很容易接入HEBench的测试框架。

3、后端:支持开发者接入各类HE实现。目前HEBench开源项目中自带几个后端的参考实现,包括明文后端、SEAL后端和Palisade后端。


应用场景

同态加密天然适合云计算场景,因此最先在这一领域得以应用。用户希望借助云服务器强大的计算资源来进行复杂的计算,但又不希望暴露自己的私有数据。在同态加密进入这一领域之前,在信任云服务提供商不会泄露或者窃取用户数据的前提下,用户直接将明文交给云服务器进行计算,这样始终存在一定的安全风险。而有了同态加密之后,用户只需要将私有数据加密之后的密文传输到云端,在云端直接以密文形式参与计算,最终结果也是以密文的形式返回给用户,在用户本地进行解密。云计算在同态加密的加持下,安全性得到了充分的保证。


场景描述

在联邦学习的应用场景中,各参与方通过同态加密技术在保证各自数据隐私的情况下,共同参与训练机器学习模型,提高模型训练精度。在横向联邦学习中,各参与方在本地用各自的数据训练模型,将训练得到的模型参数加密上传参数服务器。参数服务器用Paillier等加法半同态加密技术聚合来自多方的模型参数,最后更新的模型参数仍然以密文形式发送给各参与方。利用同态加密技术可以防止攻击者从上传的模型参数中反推出用户的本地数据。在纵向联邦学习的隐私求交部分,同态加密也能发挥重要作用,从而保证在不暴露各方私有数据的情况下,求取用于联邦学习的训练数据的交集。

在区块链应用中,为了保护链上存证信息的隐私性,可以对这些数据进行同态加密,并将计算过程转化为同态运算过程,节点即可在无需获知明文数据的情况下实现密文计算。


应用效果

微众银行的联邦学习框架FATE采用了IPCL加速的Paillier方案,在第三代Xeon平台上的测试数据显示,对2048比特精度的整型数据进行模幂运算,相比于GMP方案有4. 7倍的性能提升。IPCL的应用极大地提高了用户使用联邦学习方案的效率,有效地减少了TCO。

蚂蚁集团的开源隐私计算框架 “隐语” 也正式接入 Intel IPCL 加速的 Paillier 方案,在第四代 Xeon 平台上的测试数据显示 IPCL 的应用显著提高了隐私计算的效率。




《云原生机密计算最佳实践白皮书》——05编程框架——Intel Homomorphic Encryption: Intel平台同态加密加速框架——Intel_HE_Toolkit开发指南(2) https://developer.aliyun.com/article/1231495?groupCode=aliyun_linux

相关实践学习
CentOS 7迁移Anolis OS 7
龙蜥操作系统Anolis OS的体验。Anolis OS 7生态上和依赖管理上保持跟CentOS 7.x兼容,一键式迁移脚本centos2anolis.py。本文为您介绍如何通过AOMS迁移工具实现CentOS 7.x到Anolis OS 7的迁移。
相关文章
|
4月前
|
监控 Cloud Native 持续交付
构建未来:云原生技术驱动的云计算平台
【5月更文挑战第52天】 随着数字化转型的不断深化,企业对于敏捷性、可扩展性和成本效益的需求日益增长。本文探讨了如何通过采纳云原生技术来构建和优化云计算平台,以支持不断变化的业务需求。文章首先概述了云原生技术的核心概念及其优势,随后详细分析了在设计云平台时应考虑的关键要素,并通过案例研究展示了云原生实践在实际中的应用效果。最后,文章提出了面向未来的云平台发展趋势和挑战。
|
5月前
|
存储 弹性计算 监控
【阿里云云原生专栏】成本优化策略:在阿里云云原生平台上实现资源高效利用
【5月更文挑战第29天】本文探讨了在阿里云云原生平台上实现资源高效利用和成本优化的策略。通过资源监控与评估,利用CloudMonitor和Prometheus等工具分析CPU、内存等使用情况,识别浪费。实施弹性伸缩策略,利用自动伸缩规则根据业务负载动态调整资源。借助容器化管理和Kubernetes编排提高资源利用率,优化存储选择如OSS、NAS,以及网络配置如VPC和CDN。示例展示了如何使用Kubernetes的HorizontalPodAutoscaler进行弹性伸缩,降低成本。
223 4
|
5月前
|
边缘计算 Cloud Native 数据管理
【阿里云云原生专栏】云原生背景下的AIoT布局:阿里云Link平台解析
【5月更文挑战第29天】阿里云Link平台,作为阿里云在AIoT领域的核心战略,借助云原生技术,为开发者打造一站式物联网服务平台。平台支持多协议设备接入与标准化管理,提供高效数据存储、分析及可视化,集成边缘计算实现低延时智能分析。通过实例代码展示,平台简化设备接入,助力智能家居等领域的创新应用,赋能开发者构建智能生态系统。
164 3
|
5月前
|
监控 Cloud Native 数据库
【阿里云云原生专栏】性能优化之道:阿里云云原生平台上的监控与调优策略
【5月更文挑战第22天】本文介绍了阿里云云原生平台的监控与调优策略。阿里云提供如CloudMonitor、ARMS和ACK监控等工具,用于基础和应用监控,以及容器监控。调优策略包括资源、代码和架构优化,例如根据监控数据调整资源配置,优化代码性能,和利用微服务、容器化和无服务器化改进架构。示例代码展示了如何进行监控和调优操作,强调实时监控与针对性调优对提升云原生应用性能的重要性。
300 1
|
27天前
|
Kubernetes 监控 Cloud Native
Cluster Optimizer:一款云原生集群优化平台
**Cluster Optimizer** 是一款云原生集群优化平台,旨在通过自动化和智能化工具帮助企业降低云成本,解决云原生架构中的成本管理难题。面对资源闲置、配置不当和缺乏自动化优化机制等挑战,Cluster Optimizer能够深入分析云资源、应用和用户行为,精准识别优化机会,并给出具体建议,涵盖节点组、节点、GPU 节点、磁盘、持久卷和应用等多个维度。通过优化实例类型、自动扩缩容和资源分配,帮助企业降低成本、提升性能和效率。[点击此处](https://www.wiseinf.com.cn/docs/setup/) 免费安装和试用 **Cluster Optimizer 社区版**。
80 9
|
27天前
|
Cloud Native Java API
为何这款轻量级框架正悄然改变云原生应用开发格局?——探索Micronaut带来的新编程体验
【9月更文挑战第5天】随着云计算的发展,企业纷纷转向云原生应用开发。Micronaut是一款轻量级、高性能的Java框架,专为微服务架构设计,支持JVM和GraalVM,是构建云原生应用的理想选择。本文介绍Micronaut的基本概念并通过示例展示如何快速搭建云原生应用。使用Micronaut CLI可以轻松创建项目并添加REST接口,其注解驱动的API让开发变得简单直接。Micronaut还提供了健康检查、指标收集等高级功能,支持AOT编译,优化应用性能。对于追求高效开发的团队而言,Micronaut提供了一种全新的解决方案。
45 6
|
2月前
|
Cloud Native JavaScript API
一文读懂云原生 go-zero 微服务框架
一文读懂云原生 go-zero 微服务框架
|
2月前
|
存储 边缘计算 Kubernetes
边缘计算问题之边缘计算平台建设中业务应用践行云原生体系如何解决
边缘计算问题之边缘计算平台建设中业务应用践行云原生体系如何解决
47 1
|
3月前
|
人工智能 运维 Cloud Native
|
3月前
|
Java Serverless API
云原生应用问题之将文档中的代码部署在函数计算平台上会提升用户体验如何解决
云原生应用问题之将文档中的代码部署在函数计算平台上会提升用户体验如何解决
35 0