带你读《云原生机密计算最佳实践白皮书》——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的迁移。
相关文章
|
2月前
|
运维 Cloud Native 云计算
云原生技术:探索未来计算的无限可能
【10月更文挑战第8天】 云原生技术,作为云计算领域的一次革新性突破,正引领着企业数字化转型的新浪潮。它不仅重塑了应用的构建、部署和运行方式,还通过极致的弹性、敏捷性和可扩展性,解锁了未来计算的无限潜力。本文将深入浅出地解析云原生技术的核心理念、关键技术组件及其在不同行业中的实际应用案例,展现其如何赋能业务创新,加速企业的云化之旅。
56 7
|
18天前
|
Kubernetes Cloud Native Ubuntu
庆祝 .NET 9 正式版发布与 Dapr 从 CNCF 毕业:构建高效云原生应用的最佳实践
2024年11月13日,.NET 9 正式版发布,Dapr 从 CNCF 毕业,标志着云原生技术的成熟。本文介绍如何使用 .NET 9 Aspire、Dapr 1.14.4、Kubernetes 1.31.0/Containerd 1.7.14、Ubuntu Server 24.04 LTS 和 Podman 5.3.0-rc3 构建高效、可靠的云原生应用。涵盖环境准备、应用开发、Dapr 集成、容器化和 Kubernetes 部署等内容。
43 5
|
2月前
|
监控 Cloud Native 持续交付
云原生架构下微服务的最佳实践与挑战####
【10月更文挑战第20天】 本文深入探讨了云原生架构在现代软件开发中的应用,特别是针对微服务设计模式的最优实践与面临的主要挑战。通过分析容器化、持续集成/持续部署(CI/CD)、服务网格等关键技术,阐述了如何高效构建、部署及运维微服务系统。同时,文章也指出了在云原生转型过程中常见的难题,如服务间的复杂通信、安全性问题以及监控与可观测性的实现,为开发者和企业提供了宝贵的策略指导和解决方案建议。 ####
46 5
|
2月前
|
人工智能 Cloud Native 安全
从云原生到 AI 原生,网关的发展趋势和最佳实践
本文整理自阿里云智能集团资深技术专家,云原生产品线中间件负责人谢吉宝(唐三)在云栖大会的精彩分享。讲师深入浅出的分享了软件架构演进过程中,网关所扮演的各类角色,AI 应用的流量新特征对软件架构和网关所提出的新诉求,以及基于阿里自身实践所带来的开源贡献和商业能力。
183 12
|
1月前
|
Kubernetes Cloud Native 持续交付
云原生架构下的微服务设计原则与最佳实践##
在数字化转型的浪潮中,云原生技术以其高效、灵活和可扩展的特性成为企业IT架构转型的首选。本文深入探讨了云原生架构的核心理念,聚焦于微服务设计的关键原则与实施策略,旨在为开发者提供一套系统性的方法论,以应对复杂多变的业务需求和技术挑战。通过分析真实案例,揭示了如何有效利用容器化、持续集成/持续部署(CI/CD)、服务网格等关键技术,构建高性能、易维护的云原生应用。文章还强调了文化与组织变革在云原生转型过程中的重要性,为企业顺利过渡到云原生时代提供了宝贵的见解。 ##
|
2月前
|
Kubernetes Cloud Native 开发者
探秘云原生计算:Kubernetes与Docker的协同进化
在这个快节奏的数字时代,云原生技术以其灵活性和可扩展性成为了开发者们的新宠。本文将带你深入了解Kubernetes和Docker如何共同塑造现代云计算的架构,以及它们如何帮助企业构建更加敏捷和高效的IT基础设施。
|
2月前
|
存储 运维 监控
云原生应用的可观察性:理解、实现与最佳实践
【10月更文挑战第10天】随着云原生技术的发展,可观察性成为确保应用性能和稳定性的重要因素。本文探讨了云原生应用可观察性的概念、实现方法及最佳实践,包括监控、日志记录和分布式追踪的核心组件,以及如何通过选择合适的工具和策略来提升应用的可观察性。
|
3月前
|
Cloud Native 关系型数据库 Serverless
基于阿里云函数计算(FC)x 云原生 API 网关构建生产级别 LLM Chat 应用方案最佳实践
本文带大家了解一下如何使用阿里云Serverless计算产品函数计算构建生产级别的LLM Chat应用。该最佳实践会指导大家基于开源WebChat组件LobeChat和阿里云函数计算(FC)构建企业生产级别LLM Chat应用。实现同一个WebChat中既可以支持自定义的Agent,也支持基于Ollama部署的开源模型场景。
461 15
|
2月前
|
Cloud Native API C#
.NET云原生应用实践(一):从搭建项目框架结构开始
.NET云原生应用实践(一):从搭建项目框架结构开始
|
3月前
|
Cloud Native Java API
为何这款轻量级框架正悄然改变云原生应用开发格局?——探索Micronaut带来的新编程体验
【9月更文挑战第5天】随着云计算的发展,企业纷纷转向云原生应用开发。Micronaut是一款轻量级、高性能的Java框架,专为微服务架构设计,支持JVM和GraalVM,是构建云原生应用的理想选择。本文介绍Micronaut的基本概念并通过示例展示如何快速搭建云原生应用。使用Micronaut CLI可以轻松创建项目并添加REST接口,其注解驱动的API让开发变得简单直接。Micronaut还提供了健康检查、指标收集等高级功能,支持AOT编译,优化应用性能。对于追求高效开发的团队而言,Micronaut提供了一种全新的解决方案。
63 6