首页 > 其他分享 >全同态加密的硬件加速:让机器学习更懂隐私保护

全同态加密的硬件加速:让机器学习更懂隐私保护

时间:2024-01-26 10:36:39浏览次数:32  
标签:加密 同态 FHE ML 隐私 OpenFHE 硬件加速

PrimiHub一款由密码学专家团队打造的开源隐私计算平台,专注于分享数据安全、密码学、联邦学习、同态加密等隐私计算领域的技术和内容。

问题:保护敏感数据

企业机构间合作处理数据越来越频繁,通常使用云服务为数据共享保驾护航。保护数据隐私至关重要,特别是在处理个人可识别信息(PII)、个人健康信息(PHI)、知识产权和情报洞察等敏感数据时。数据有三种基本状态:静态、传输和使用。通常情况下,敏感数据在存储(静态)和共享(传输)时都会进行加密或其他保护。然而,当数据以任何方式进行处理(使用)时,必须首先解密,这使其容易受到网络攻击。

全同态加密

全同态加密(Fully Homomorphic Encryption,FHE)常被描述为加密技术的“圣杯”,它允许在不解密的情况下对加密数据进行任意计算,潜在地解决了数据在使用中的问题。

FHE用于机器学习

FHE最有前景的应用领域之一是机器学习(ML)。近年来,ML发展迅速,应用数量不断增加,包括医学、金融、自然语言处理等领域。ML通常需要多方合作,而为了处理和分析数据(前面提到的使用状态),需要解密数据,这会导致安全漏洞。考虑到数据通常是敏感的,使用FHE进行ML是一种有效的隐私保护解决方案。

FHE用于ML的挑战

当使用FHE进行像ML训练所需的密集计算时,会出现功能性挑战,需要额外的复杂操作,比如引导(允许对数据进行大规模的加密计算链)。FHE与引导解决了许多功能性挑战,但需要大量的计算能力和时间。例如,在标准笔记本电脑上,未加密的计算可能需要数百毫秒完成,但在高端服务器上使用FHE运行可能需要数小时。

解决方案:硬件加速

使FHE中的引导变得实用的最有前途的努力集中在通过硬件平台进行加速上。FHE工作负载表现出高度的任务和数据并行性,可以通过并行处理器利用。低成本但计算效率高且高度优化的硬件协处理器是加速核心FHE操作执行的理想平台。

图中显示了使用不同硬件后端实现的FHE的硬件加速所取得和预期的加速效果,包括FPGA、GPU和ASIC等。目标加速度是认为对于通用计算是实际可行的。

使用不同硬件后端进行FHE的硬件加速所实现和预期的加速效果。多核CPU和GPU的结果来源于[APAV+19],CPU-AVX-512的结果来源于[BKSD+21],FPGA的结果来源于[CRS16]。ASIC的结果是根据正在进行的研究的初步结果进行预测的。

硬件加速面临着几个重大挑战,包括计算和内存瓶颈。解决这些问题对于使用FHE实现隐私保护的ML具有变革性潜力。

加密软件框架:OpenFHE库

硬件加速需要在通用CPU上可靠地实现目标功能的软件。一个杰出的FHE软件库是OpenFHE。OpenFHE库是一个社区驱动的开源项目,拥有来自工业界和学术界的多样化贡献者,包括Duality、三星、英特尔、麻省理工学院、加州大学圣地亚哥分校等。它具有更简单的API、模块化、跨平台支持和硬件加速器的集成,对于组织,包括提供先进硬件功能的提供商,都是一个资源。提供商无需成为专家,因为OpenFHE简化了用户访问许多复杂的加密功能。

硬件抽象层

在当前的FHE库中,OpenFHE提供了一个标准的硬件抽象层(HAL),旨在支持不同的硬件加速技术,如高级矢量扩展(AVX)、图形处理单元(GPU)、可编程门阵列(FPGA)和专用集成电路(ASIC)。英特尔HEXL库后端是OpenFHE中HAL实例化的一个示例。

硬件加速提供商的机会

具有前瞻性的先进硬件功能提供商越来越多地探索加速FHE的机会。鉴于硬件加速具有使FHE在各种应用中实际可行的潜力,这一市场趋势有望增长。这些提供商可以参考OpenFHE作为支持其后端的库。

原文地址:Hardware Acceleration of Fully Homomorphic Encryption: Making Privacy-Preserving Machine Learning Practical
原文作者:Ahmad Al Badawi, David Bruce Cousins, Yuriy Polyakov, and Kurt Rohloff
翻译 & 整理:开放隐私计算 & PrimiHub

标签:加密,同态,FHE,ML,隐私,OpenFHE,硬件加速
From: https://www.cnblogs.com/primihub/p/17988769

相关文章

  • SHA加密在实际应用中的优势与局限
    SHA加密算法简介SHA(SecureHashAlgorithm)加密算法是一种单向加密算法,常用于加密数据的完整性校验和加密签名。它是由美国国家安全局(NSA)设计并广泛应用于各种安全场景。SHA加密算法具有较高的安全性和可靠性,但其主要缺点是密钥长度较短,容易受到量子计算等未来技术的威胁。......
  • 2024年1月Java项目开发指南9:密码加密存储
    提前声明:你不会写这加密算法没关系啊,你会用就行。要求就是:你可以不会写这个加密算法,但是你要知道加密流程,你要会用。@ServicepublicclassPasswordEncryptor{}很好,请在service层中创建一个名字为PasswordEncryptor的服务类,用来负责密码的加密。加密的方法有很多。简单一......
  • 加密解密
    1加密算法如何选择 对称加密算法(如AES)使用相同的密钥进行加密和解密操作,加解密速度较快,适合大量数据的加密和解密。然而,对称加密算法的主要安全隐患在于密钥的分发和管理。如果密钥泄露,攻击者可以使用密钥对加密的数据进行解密。因此,对称加密算法在保护密钥的安全性方面需要......
  • c++ openssl加密 解密
    #include<iostream>#include<boost/asio.hpp>#include<boost/beast.hpp>#include<boost/beast/websocket.hpp>#include<boost/asio/spawn.hpp>#include<json.hpp>#include<boost/filesystem.hpp>#include<fstrea......
  • SHELL AES ECB 加密解密
    SHELLAESECB加密解密AES(高级加密标准)算法可以使用ECB模式进行加密和解密。在Shell中,我们可以通过openssl命令来进行AES的ECB加密和解密操作。下面是示例代码:安装OpenSSL工具包(如果未安装):sudoapt-getinstallopenssl创建一个名为encrypt_decrypt.sh的脚本文件并编写以下......
  • 关于“公钥加密私钥解密,私钥加签公钥验签”的一些理解
    看了网上的很多资料,发现有些点没有说到,也比较复杂,这里根据个人的理解,简单描述,方便记忆。 先理解公/私钥(yue)的意思:私钥,即 私人 的钥匙,是唯一的,所以可以用来证明来源是特定的人公钥,即 公用 的钥匙,我可以将它给很多人(公众)。所以既然那么多人都知道,所以公钥并不能证明来源......
  • 数据加密如何帮助防止企业数据泄露?
    数据加密是预防企业数据泄露的重要策略之一。这种保护措施的主要工作原理是通过将信息转变为不能被未经授权的人理解的格式,从而防止数据在传输、处理或存储过程中被盗或丢失。以下是数据加密在防止数据泄露中的主要作用:保护敏感信息:任何公司都会拥有一些敏感信息,比如金融信息......
  • 【APP逆向10】Java中常见加密与python实现
    1.隐藏字节,Stringv4=newString(newbyte[]{-26,-83,-90,-26,-78,-101,-23,-67,-112});byte_list=[-26,-83,-90,-26,-78,-101,-23,-67,-112]bs=bytearray()#python字节数组foriteminbyte_list:ifitem<0:item=item+256......
  • vue2项目使用jsencrypt.js实现分段加密解密
    安装:npminstall jsencrypt安装:npminstall js-base64组件:demo.vue<template></template><script>import{SM4Encrypt,SM4Decrypt}from'@/assets/des.js'importtestImportJsonfrom'@/assets/data.json'exportdefault{......
  • 实战:加密传输数据解密
    前言下面将分享一些实际的渗透测试经验,帮助你应对在测试中遇到的数据包内容加密的情况。我们将以实战为主,技巧为辅,进入逆向的大门。技巧开局先讲一下技巧,掌握好了技巧,方便逆向的时候可以更加快速的找到关键函数位置!后续也会有更多的实战会按照技巧去操作。关键词搜索一:在js......