CN116346309A - 一种同态运算系统、方法、同态运算加速装置和服务器 - Google Patents
一种同态运算系统、方法、同态运算加速装置和服务器 Download PDFInfo
- Publication number
- CN116346309A CN116346309A CN202310331064.9A CN202310331064A CN116346309A CN 116346309 A CN116346309 A CN 116346309A CN 202310331064 A CN202310331064 A CN 202310331064A CN 116346309 A CN116346309 A CN 116346309A
- Authority
- CN
- China
- Prior art keywords
- homomorphic
- homomorphic operation
- unit
- data
- server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/008—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/12—Details relating to cryptographic hardware or logic circuitry
- H04L2209/125—Parallelization or pipelining, e.g. for accelerating processing of cryptographic operations
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Telephonic Communication Services (AREA)
Abstract
本申请公开了一种同态运算系统、方法、同态运算加速装置和服务器,同态运算加速装置用于连接在同态运算服务器的硬件接口电路上,包括存储单元、网络通讯单元、同态运算单元、内部总线单元和外部接口单元。存储单元用于存储预设用户的同态运算源数据,同态运算单元用于执行同态加密运算,内部总线用于内部数据通讯,外部接口单元用于同态运算服务器通讯连接,网络通讯单元用于输出同态运算结果数据。由于同态运算加速装置响应服务器发出的同态运算控制指令独立完成同态加密运算,并通过网络通讯单元输出同态运算结果数据,使得同态运算过程不占用服务器资源,大大提高同态运算服务器并行处理多用户的同态运算能力。
Description
技术领域
本发明涉及数据安全保护技术领域,具体涉及一种同态运算系统、方法、同态运算加速装置和服务器。
背景技术
随着互联网技术的高速发展,不断增加的数据量被传输、存储、计算。其中的很多数据是关键的、加密的、安全的或私有的。特别是私有的数据,还可能受机密性法律和法规的保护。用户一般都通过对数据进行加密保护,免受恶意内部人员、外部攻击者或意外暴露。在传统的加密机制下,数据在传输和存储的环节都可以实现加密保护。但涉及数据使用的环节中,密文数据往往需要解密后才能对数据进行加工,导致明文数据极容易受到攻击。学术和工业界一直为解决这一难题提出各种方案,如同态加密。同态加密(HomomorphicEncryption, HE)是应用非常广的密码学工具,满足密文同态运算性质的加密算法,即数据经过同态加密之后,对密文进行特定的计算,得到的密文计算结果在进行对应的同态解密后的明文等同于对明文数据直接进行相同的计算,实现数据的“可算不可见”。因此被广泛应用在隐私保护的云服务计算、外包计算、联邦学习等场景中,是新兴隐私技术的一个方向。
同态加密运算涉及用户方和同态计算方,同态计算方主要包含通用CPU、内存、网卡和加速硬件,加速硬件通过高速总线与CPU、内存相连接。用户将同态加密应用请求通过网络发送给CPU,由CPU解析应用中可加速的部分,然后调用加速硬件,由加速硬件从内存搬运需要计算的数据,计算后再将结果写回内存中。最后由CPU将计算结果通过网络返回给用户。在上述方案中,请求的同态运算源数据先存入同态计算方的系统内存,再搬运到加速硬件内部进行同态计算,同态计算后的结果要先存入同态计算方的系统内存,再通过网络返回给用户,使用同态计算方的系统内存做中转增加了同态计算方的系统延迟,也占用了同态计算方的系统内存资源,大大降低同态计算方在多同态计算的并行处理能力。
发明内容
本申请主要解决的技术问题是如何提高同态运算服务器的多同态任务并行处理能力。
第一方面,一种实施例中提供一种同态运算加速装置,包括存储单元、网络通讯单元、同态运算单元、内部总线单元和外部接口单元;
所述存储单元用于存储预设用户的同态运算源数据、同态运算中间数据和同态运算结果数据;
所述内部总线单元用于所述存储单元、所述同态运算单元、所述网络通讯单元和所述外部接口单元之间的数据通讯;
所述外部接口单元用于与一同态运算服务器通讯连接,以接收所述同态运算服务器发出的同态运算控制指令;
所述同态运算单元用于响应所述同态运算控制指令对所述同态运算源数据执行同态加密运算;所述同态运算源数据包括公钥数据、私钥数据、密文数据和/或明文数据;
所述网络通讯单元用于输出所述同态运算结果数据。
第二方面,一种实施例中提供一种同态运算服务器,包括至少一个硬件加速接口电路和网络连接接口;至少有一个所述硬件加速接口电路用于与如第一方面所述的同态运算加速装置的外部接口单元连接;所述网络连接接口用于通过网络接收所述预设用户发送的同态运算请求信息;
当所述同态运算服务器接收到所述同态运算请求信息时,通过所述硬件加速接口电路向所述同态运算加速装置发送所述同态运算控制指令。
第三方面,一种实施例中提供一种同态运算系统,其特征在于,包括智能移动终端和如第二方面所述的同态运算服务器;所述智能移动终端用于通过网络向所述同态运算服务器发送所述同态运算请求信息,和用于通过网络向所述同态运算加速装置发送同态数据获取请求信息,和用于通过网络接收所述同态运算结果数据。
第四方面,一种实施例中提供一种应用于如第二方面所述的同态运算服务器的同态运算方法,包括:
同态运算服务器通过网络接收同态运算请求信息;
同态运算服务器响应所述同态运算请求信息通过硬件加速接口电路向同态运算加速装置发送同态运算控制指令;
同态运算加速装置响应所述同态运算控制指令,对存储单元存储的同态运算源数据进行同态加密运算,并将同态加密运算获取的同态运算结果数据存储在所述存储单元;
同态运算加速装置通过网络通讯单元接收同态数据获取请求信息,并响应所述同态数据获取请求信息通过所述网络通讯单元输出所述同态运算结果数据
第五方面,一种实施例中提供一种计算机可读存储介质,包括程序,所述程序能够被处理器执行以实现如第四方面所述的同态运算方法。
上述实施例中公开的的同态运算服务方法,在FPGA硬件电路上虚拟设置多个独立的同态运算服务单元,每个同态运算服务单元可以分别独立完成同态运算服务,实现同时并行进行多个同态运算服务,且相互不影响,大大提高了同态运算服务器的工作效率。
附图说明
图1为一种实施例中同态运算加速装置的结构框图;
图2为一种实施例中同态运算服务器的结构框图;
图3为一种实施例中同态运算系统的结构框图;
图4为一种实施例中同态运算方法的流程示意图。
具体实施方式
下面通过具体实施方式结合附图对本发明作进一步详细说明。其中不同实施方式中类似元件采用了相关联的类似的元件标号。在以下的实施方式中,很多细节描述是为了使得本申请能被更好的理解。然而,本领域技术人员可以毫不费力的认识到,其中部分特征在不同情况下是可以省略的,或者可以由其他元件、材料、方法所替代。在某些情况下,本申请相关的一些操作并没有在说明书中显示或者描述,这是为了避免本申请的核心部分被过多的描述所淹没,而对于本领域技术人员而言,详细描述这些相关操作并不是必要的,他们根据说明书中的描述以及本领域的一般技术知识即可完整了解相关操作。
另外,说明书中所描述的特点、操作或者特征可以以任意适当的方式结合形成各种实施方式。同时,方法描述中的各步骤或者动作也可以按照本领域技术人员所能显而易见的方式进行顺序调换或调整。因此,说明书和附图中的各种顺序只是为了清楚描述某一个实施例,并不意味着是必须的顺序,除非另有说明其中某个顺序是必须遵循的。
本文中为部件所编序号本身,例如“第一”、“第二”等,仅用于区分所描述的对象,不具有任何顺序或技术含义。而本申请所说“连接”、“联接”,如无特别说明,均包括直接和间接连接(联接)。
在本申请实施例中,在同态运算加速装置中设置网络通讯单元,同态运算数据不需要经过同态服务器的系统内存流转,而是直接交由同态运算加速装置中的网络通讯单元处理并返回,缩短了数据流转路径,降低了因同态运算服务器对于同态运算数据的中转而带来的同态处理速度的延迟,并避免了并行运行多个同态运算任务时,同态运算服务器的系统总线的带宽瓶颈。
实施例一:
请参考图1,为一种实施例中同态运算加速装置的结构框图,同态运算加速装置1包括存储单元30、网络通讯单元50、同态运算单元40、内部总线单元20和外部接口单元10。存储单元30用于存储预设用户的同态运算源数据、同态运算中间数据和同态运算结果数据。内部总线单元用于存储单元30、同态运算单元40、网络通讯单元50和外部接口单元10之间的数据通讯。外部接口单元10用于与一同态运算服务器2通讯连接,以接收同态运算服务器2发出的同态运算控制指令。同态运算单元40用于响应同态运算控制指令对同态运算源数据执行同态加密运算,其中,同态运算源数据包括公钥数据、私钥数据、密文数据和/或明文数据。同态加密运算的类型包括半同态加密、部分同态加密和/或全同态加密。网络通讯单元50用于输出同态运算结果数据。
一实施例中,外部接口单元10包括总线接口11和DMA控制器12,DMA控制器12用于控制总线接口11的数据传输。总线接口11用于将同态运算服务器2发出的同态运算控制指令通过内部总线单元20发送给同态运算单元40。一实施例中,总线接口11还用于将预设用户的同态源数据通过内部总线单元20发送给存储单元30。一实施例中,总线接口11为PCI-Express接口。
一实施例中,网络通讯单元50用于接收预设用户通过网络发送的同态数据获取请求信息,并响应同态数据获取请求信息将同态运算结果数据通过网络发送给预设用户。
请参考图2,为一种实施例中同态运算服务器的结构框图,在本申请一实施例中还公开了一种同态运算服务器,同态运算服务器2包括至少一个硬件加速接口电路60和网络连接接口70,至少有一个硬件加速接口电路60用于与如上所述的同态运算加速装置1的外部接口单元11连接。网络连接接口70用于通过网络接收预设用户发送的同态运算请求信息。当同态运算服务器2接收到同态运算请求信息时,通过硬件加速接口电路60向同态运算加速装置1发送同态运算控制指令。一实施例中,同态运算服务器1还包括存储器80,存储器80用于存储预设用户的同态运算源数据。一实施例中,同态运算服务器2还用于将预设用户的同态运算源数据通过硬件加速接口电路60发送给同态运算加速装置1。
请参考图3,为一种实施例中同态运算系统的结构框图,在本申请一实施例中还公开了一种同态运算系统,该同态运算系统包括智能移动终端3和如上所述的同态运算服务器2。智能移动终端3用于通过网络向同态运算服务器2发送同态运算请求信息,智能移动终端3还用于通过网络向同态运算加速装置1发送同态数据获取请求信息,和用于通过网络接收同态运算加速装置1输出的同态运算结果数据。
请参考图4,为一种实施例中同态运算方法的流程示意图,本申请一实施例中还公开了一种应用于如上所述的同态运算服务器同态运算方法,具体包括:
步骤101,接收同态运算请求信息。
同态运算服务器通过网络接收同态运算请求信息。
步骤102,发送同态运算控制指令。
同态运算服务器响应同态运算请求信息通过硬件加速接口电路向同态运算加速装置发送同态运算控制指令。
步骤103,执行同态加密运算。
同态运算加速装置响应同态运算控制指令,对存储单元存储的同态运算源数据进行同态加密运算,并将同态加密运算获取的同态运算结果数据存储在存储单元。一实施例中,存储单元存储的同态运算源数据的获取方法为同态运算服务器通过硬件加速接口电路将预设用户的同态运算源数据发送给同态运算加速装置,以用于同态运算加速装置将同态运算源数据存储在存储单元。一实施例中,存储单元存储的同态运算源数据的获取方法为硬件加速接口电路通过网络通讯单元从网络获取同态运算源数据并存储在存储单元。一实施例中,同态运算源数据时预先存储在存储单元中,且该同态运算加速装置与预设用户有对应关系。
步骤104,输出同态运算结果数据。
同态运算加速装置通过网络通讯单元接收同态数据获取请求信息,并响应同态数据获取请求信息通过网络通讯单元输出同态运算结果数据。
下面通过一具体实施例描述本申请实施例中公开的同态运算方法的应用示例。以一套由单个同态运算加速装置以及具有PCI-E总线接口的同态运算服务器为例,该同态运算服务器运行PSI(Private Set Intersection,隐私求交)的应用。同态运算服务器上运行着操作系统和服务程序,服务程序负责初始化并处理用户的通用请求,服务程序初始化时,将数据库加载至同态运算加速装置。服务程序接收到用户的通用请求后,调整同态运算加速装置上的常驻数据,并可以将状态信息原路返回给用户。同态运算加速装置通过网络接收到用户专用的同态数据获取请求信息后进行处理,并将同态运算结果数据原路返回给用户。
在本申请实施例中公开的同态运算加速装置用于连接在同态运算服务器的硬件接口电路上,包括存储单元、网络通讯单元、同态运算单元、内部总线单元和外部接口单元。存储单元用于存储预设用户的同态运算源数据,同态运算单元用于执行同态加密运算,内部总线用于内部数据通讯,外部接口单元用于同态运算服务器通讯连接,网络通讯单元用于输出同态运算结果数据。由于同态运算加速装置响应服务器发出的同态运算控制指令独立完成同态加密运算,并通过网络通讯单元输出同态运算结果数据,使得同态运算过程不占用服务器资源,大大提高同态运算服务器并行处理多用户的同态运算能力。加载该同态运算加速装置的同态运算服务器,可以大幅度缩短同态运算数据流的转路径,降低同态运算的计算延迟,减少每次同态运算请求对CPU的依赖,降低CPU的负载,在某些应用场景下,能够避免系统总线的带宽瓶颈。
本领域技术人员可以理解,上述实施方式中各种方法的全部或部分功能可以通过硬件的方式实现,也可以通过计算机程序的方式实现。当上述实施方式中全部或部分功能通过计算机程序的方式实现时,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器、随机存储器、磁盘、光盘、硬盘等,通过计算机执行该程序以实现上述功能。例如,将程序存储在设备的存储器中,当通过处理器执行存储器中程序,即可实现上述全部或部分功能。另外,当上述实施方式中全部或部分功能通过计算机程序的方式实现时,该程序也可以存储在服务器、另一计算机、磁盘、光盘、闪存盘或移动硬盘等存储介质中,通过下载或复制保存到本地设备的存储器中,或对本地设备的系统进行版本更新,当通过处理器执行存储器中的程序时,即可实现上述实施方式中全部或部分功能。
以上应用了具体个例对本发明进行阐述,只是用于帮助理解本发明,并不用以限制本发明。对于本发明所属技术领域的技术人员,依据本发明的思想,还可以做出若干简单推演、变形或替换。
Claims (10)
1.一种同态运算加速装置,其特征在于,包括存储单元、网络通讯单元、同态运算单元、内部总线单元和外部接口单元;
所述存储单元用于存储预设用户的同态运算源数据、同态运算中间数据和同态运算结果数据;
所述内部总线单元用于所述存储单元、所述同态运算单元、所述网络通讯单元和所述外部接口单元之间的数据通讯;
所述外部接口单元用于与一同态运算服务器通讯连接,以接收所述同态运算服务器发出的同态运算控制指令;
所述同态运算单元用于响应所述同态运算控制指令对所述同态运算源数据执行同态加密运算;所述同态运算源数据包括公钥数据、私钥数据、密文数据和/或明文数据;
所述网络通讯单元用于输出所述同态运算结果数据。
2.如权利要求1所述的同态运算加速装置,其特征在于,所述外部接口单元包括总线接口和DMA控制器;所述DMA控制器用于控制所述总线接口的数据传输;所述总线接口用于将所述同态运算服务器发出的同态运算控制指令通过所述内部总线单元发送给所述同态运算单元,和/或用于将所述预设用户的同态源数据通过所述内部总线单元发送给所述存储单元。
3.如权利要求2所述的同态运算加速装置,其特征在于,所述总线接口为PCI-Express接口。
4.如权利要求1所述的同态运算加速装置,其特征在于,所述网络通讯单元用于接收所述预设用户通过网络发送的同态数据获取请求信息,并响应所述同态数据获取请求信息将所述同态运算结果数据通过网络发送给所述预设用户。
5.一种同态运算服务器,其特征在于,包括至少一个硬件加速接口电路和网络连接接口;至少有一个所述硬件加速接口电路用于与如权利要求1至4中任一项所述的同态运算加速装置的外部接口单元连接;所述网络连接接口用于通过网络接收所述预设用户发送的同态运算请求信息;
当所述同态运算服务器接收到所述同态运算请求信息时,通过所述硬件加速接口电路向所述同态运算加速装置发送所述同态运算控制指令。
6.如权利要求5所述的同态运算服务器,其特征在于,还包括存储器,用于存储所述预设用户的同态运算源数据;所述同态运算服务器还用于将所述预设用户的同态运算源数据通过所述硬件加速接口电路发送给所述同态运算加速装置。
7.一种同态运算系统,其特征在于,包括智能移动终端和如权利要求5至6中任一项所述的同态运算服务器;所述智能移动终端用于通过网络向所述同态运算服务器发送所述同态运算请求信息,和用于通过网络向所述同态运算加速装置发送同态数据获取请求信息,和用于通过网络接收所述同态运算结果数据。
8.一种同态运算方法,其特征在于,应用于如权利要求5至6中任一项所述的同态运算服务器,所述同态运算方法包括:
同态运算服务器通过网络接收同态运算请求信息;
同态运算服务器响应所述同态运算请求信息通过硬件加速接口电路向同态运算加速装置发送同态运算控制指令;
同态运算加速装置响应所述同态运算控制指令,对存储单元存储的同态运算源数据进行同态加密运算,并将同态加密运算获取的同态运算结果数据存储在所述存储单元;
同态运算加速装置通过网络通讯单元接收同态数据获取请求信息,并响应所述同态数据获取请求信息通过所述网络通讯单元输出所述同态运算结果数据。
9.如权利要求8所述的同态运算方法,其特征在于,所述存储单元存储的同态运算源数据的获取方法包括:
所述同态运算服务器通过硬件加速接口电路将预设用户的所述同态运算源数据发送给所述同态运算加速装置,以用于所述同态运算加速装置将所述同态运算源数据存储在所述存储单元;
或,所述硬件加速接口电路通过所述网络通讯单元从网络获取所述同态运算源数据并存储在所述存储单元。
10.一种计算机可读存储介质,其特征在于,所述介质上存储有程序,所述程序能够被处理器执行以实现如权利要求8-9中任一项所述的同态运算方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310331064.9A CN116346309A (zh) | 2023-03-24 | 2023-03-24 | 一种同态运算系统、方法、同态运算加速装置和服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310331064.9A CN116346309A (zh) | 2023-03-24 | 2023-03-24 | 一种同态运算系统、方法、同态运算加速装置和服务器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116346309A true CN116346309A (zh) | 2023-06-27 |
Family
ID=86892768
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310331064.9A Pending CN116346309A (zh) | 2023-03-24 | 2023-03-24 | 一种同态运算系统、方法、同态运算加速装置和服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116346309A (zh) |
-
2023
- 2023-03-24 CN CN202310331064.9A patent/CN116346309A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10880077B2 (en) | Processing blockchain data based on smart contract operations executed in a trusted execution environment | |
US20240126930A1 (en) | Secure Collaboration Between Processors And Processing Accelerators In Enclaves | |
JP2661793B2 (ja) | キー管理交渉プロトュルの自動呼出しを有する分散情報システム | |
US12120227B2 (en) | Efficient post-quantum secure software updates tailored to resource-constrained devices | |
CN111555880B (zh) | 数据碰撞方法、装置、存储介质及电子设备 | |
US11750403B2 (en) | Robust state synchronization for stateful hash-based signatures | |
CN110912920A (zh) | 数据处理方法、设备及介质 | |
US11722313B2 (en) | State synchronization for post-quantum signing facilities | |
CN115516454B (zh) | 硬件安全模块和系统 | |
CN109614774B (zh) | 一种基于sgx的程序控制流混淆方法及系统 | |
CN112788111A (zh) | 多节点设备的算法协同处理方法、节点设备及联盟网络 | |
CN116346309A (zh) | 一种同态运算系统、方法、同态运算加速装置和服务器 | |
CN112925850B (zh) | 一种区块链数据加密上链共享方法及装置 | |
CN115021919A (zh) | Ssl协商方法、装置、设备及计算机可读存储介质 | |
CN110611674B (zh) | 不同计算机系统之间的协议交互方法、系统及存储介质 | |
CN113420313A (zh) | 程序安全运行、加密方法及其装置、设备、介质 | |
KR102526114B1 (ko) | 암호화 및 복호화를 위한 장치 및 방법 | |
CN113259718A (zh) | 视频流的加密方法、装置、通信设备及存储介质 | |
KR20130138929A (ko) | 보안 서비스 제공 장치 및 이를 이용한 보안 서비스 방법 | |
US9971900B1 (en) | Zero-copy data privacy and integrity | |
US10833943B1 (en) | Methods for service chaining and devices thereof | |
CN115118523B (zh) | 终端设备调整加密策略的安全芯片加密处理方法及装置 | |
KR102644153B1 (ko) | 데이터 보안 장치 및 방법 | |
CN115242389B (zh) | 基于多级节点网络的数据混淆传输方法和系统 | |
CN118733652A (zh) | 数据处理方法、装置、设备以及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |