CN114546527A - 一种纵向多方数据聚合计算解决方案系统 - Google Patents
一种纵向多方数据聚合计算解决方案系统 Download PDFInfo
- Publication number
- CN114546527A CN114546527A CN202210162636.0A CN202210162636A CN114546527A CN 114546527 A CN114546527 A CN 114546527A CN 202210162636 A CN202210162636 A CN 202210162636A CN 114546527 A CN114546527 A CN 114546527A
- Authority
- CN
- China
- Prior art keywords
- data
- execution environment
- module
- aggregation
- party
- 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.)
- Granted
Links
- 230000002776 aggregation Effects 0.000 title claims abstract description 97
- 238000004220 aggregation Methods 0.000 title claims abstract description 97
- 238000004364 calculation method Methods 0.000 title claims abstract description 77
- 238000004891 communication Methods 0.000 claims abstract description 39
- 238000010801 machine learning Methods 0.000 claims abstract description 34
- 238000000034 method Methods 0.000 claims abstract description 23
- 230000007123 defense Effects 0.000 claims abstract description 18
- 230000008569 process Effects 0.000 claims abstract description 17
- 238000011156 evaluation Methods 0.000 claims abstract description 10
- 230000001133 acceleration Effects 0.000 claims abstract description 9
- 238000012545 processing Methods 0.000 claims abstract description 9
- 230000002159 abnormal effect Effects 0.000 claims abstract description 7
- 230000004931 aggregating effect Effects 0.000 claims abstract description 7
- 238000012549 training Methods 0.000 claims description 17
- 238000012795 verification Methods 0.000 claims description 17
- 230000006870 function Effects 0.000 claims description 15
- 238000003066 decision tree Methods 0.000 claims description 5
- 238000012417 linear regression Methods 0.000 claims description 5
- 238000007477 logistic regression Methods 0.000 claims description 5
- 230000007488 abnormal function Effects 0.000 claims description 3
- 238000007781 pre-processing Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 8
- 230000000694 effects Effects 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 238000010276 construction Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/107—License processing; Key processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/606—Protecting data by securing the transmission between two devices or processes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2107—File encryption
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种纵向多方数据聚合计算解决方案系统,包括:控制系统模块,用于读取本地配置文件并构建通信结构,控制系统模块包括通信认证部、多数据聚合部、数据库连接部以及数据交换部;安全模块,用于加密或解密接口,并认证通信结构,包括加解密部、安全认证部、聚合数据解密部以及硬件加速部;数据缓存模块,用于缓存数据;数据聚合运算模块,用于将不同特征的数据进行聚合得到聚合数据,并根据聚合计算任务采用机器学习算法对聚合数据进行计算,包括多数据聚合部、任务流部以及数据处理部;机器学习算子模块,用于提供机器学习算法;主动防御模块,用于检测系统运行过程中的异常情况,包括安全指令计数部和计算任务评估部。
Description
技术领域
本发明涉及多方安全计算技术领域,具体涉及一种纵向多方数据聚合计算解决方案系统。
背景技术
传统安全多方计算协议由数学和密码学保证数据的安全性和隐私性,这对计算平台的性能提出了高要求,以姚为代表的混淆电路和shamir秘密分享方案和同态加密方案在横向联邦学习中已有广泛的应用,但在纵向数据聚合计算的运行过程中会产生高昂的计算成本和通信成本,在多数据特征聚合的安全多方计算场景下效率低下。因此,针对纵向多方安全计算中不同维度的特征聚合计算需求越来越大。
发明内容
本发明是为了解决上述问题而进行的,目的在于提供一种纵向多方数据聚合计算解决方案系统。
本发明提供了一种纵向多方数据聚合计算解决方案系统,具有这样的特征,使用可信执行环境和硬件加速器实现系统搭建,包括:控制系统模块,用于读取本地配置文件并根据配置文件中的工作模式构建通信结构,控制系统模块包括通信认证部、多数据聚合部、数据库连接部以及数据交换部;安全模块,用于加密或解密接口,并认证通信结构,包括加解密部、安全认证部、聚合数据解密部以及硬件加速部;数据缓存模块,用于缓存数据;数据聚合运算模块,用于将不同特征的数据进行聚合得到聚合数据,并根据聚合计算任务采用机器学习算法对聚合数据进行计算,包括多数据聚合部、任务流部以及数据处理部;机器学习算子模块,用于提供机器学习算法,包括线性回归、逻辑回归、决策树、cnn、rnn机器学习算子;以及主动防御模块,用于检测系统运行过程中的异常情况从而保护数据安全,包括安全指令计数部和计算任务评估部。
在本发明提供的纵向多方数据聚合计算解决方案系统中,还可以具有这样的特征:其中,控制系统模块的各参与方读取本地配置文件,根据本地配置文件构建两种通信结构,通信结构包括:对等两方计算模型,该模型中存在两个参与方,每个参与方可支持多个数据方,两个参与方在可信执行环境内进行数据的聚合计算;服务器端计算模型,该模型由第三方协调,存在多个参与方,多个参与方选出一个第三方协调者,多个参与方在第三方协调者的可信执行环境中进行计算,同时每个参与方支持多个数据方,根据本地配置文件获得各个参与方数据特征和聚合计算任务,聚合计算任务包含训练数据或预测使用的模型参数,参与方通过认证建立通信后,将可信执行环境运行时和不可信执行环境运行时进行初始化,这些运行时执行环境支持着其他模块的正常运行。
在本发明提供的纵向多方数据聚合计算解决方案系统中,还可以具有这样的特征:其中,多数据聚合部位于不可信执行环境,从而支持单参与方背后多数据方的聚合,数据库连接部用于连接关系型数据、key-value键值对数据库,数据交换部用于写入或读取xml配置文件,从而实现参数解析和计算结果分享。
在本发明提供的纵向多方数据聚合计算解决方案系统中,还可以具有这样的特征:其中,安全模块同时运行在可信执行环境和不可信执行环境中,可信执行环境内部建立公私钥对表,并将公钥传出到不可信执行环境,在不可信执行环境中通过ssl或tls实现两种通信结构中的参与方可信连接,不可信执行环境在认证过程中,将验证消息传入可信执行环境中进行验证,并接受其验证状态,安全模块支持与硬件加速器建立安全通道,将加密数据和密钥安全传递到硬件加速器的内存中。
在本发明提供的纵向多方数据聚合计算解决方案系统中,还可以具有这样的特征:其中,加解密部包括常用对称密钥和非对称密钥的加解密库接口,安全认证部用于实现通信认证模块中使用的hash验证和非对称密码学加解密操作,聚合数据解密部用于实现参与方隐私数据的加解密操作,硬件加速部用于实现建立与硬件加速器内存的安全通道所需的接口。
在本发明提供的纵向多方数据聚合计算解决方案系统中,还可以具有这样的特征:其中,数据缓存模块包括可信执行环境内存和不可信执行环境内存,单个参与方在不可信执行环境内存进行多个数据方的数据缓存与聚合,在可信执行环境内存提供数据给与硬件加速器建立的安全通道,在可信执行环境内存中的可用内存不足时,通过页面置换,将加密数据置换到不可信执行环境内存中,不可信执行环境内存不够时,将不可信执行环境内存中的加密数据缓存到磁盘中。
在本发明提供的纵向多方数据聚合计算解决方案系统中,还可以具有这样的特征:其中,数据聚合运算模块位于可信执行环境内部,将多个参与方不同特征的数据进行聚合得到聚合数据,聚合数据根据控制系统模块在系统初始化时读入的聚合计算任务采用机器学习算法进行计算,计算任务在运行前会进行子任务的拆分,训练阶段过程中,相对耗时的子任务可被迁移到硬件加速器的内存中进行并行计算,子任务计算结果通过安全通道返回至数据聚合运算模块。计算分训练阶段和预测阶段,训练阶段得到模型参数,预测阶段得到结果,机器学习算子模块位于可信执行环境内部。
在本发明提供的纵向多方数据聚合计算解决方案系统中,还可以具有这样的特征:其中,多数据聚合部位于可信执行环境,支持多参与方之间的数据特征聚合,任务流部支持实现计算任务的分配和执行次序和算法选择,数据处理部用于进行模型参数的输入预处理和生成,支持结果的对外分享。
在本发明提供的纵向多方数据聚合计算解决方案系统中,还可以具有这样的特征:其中,主动防御模块主动监控处理器、内存、硬件加速器函数执行和指令执行情况,函数或指令复杂度会影响计数权重,执行次数直接被记录,一旦各个模块正常运行过程中出现了异常的函数或指令使用情况,主动防御模块会销毁私钥和加密数据,并终止操作。
在本发明提供的纵向多方数据聚合计算解决方案系统中,还可以具有这样的特征:其中,安全指令计数部通过与评估的指定计数对比,当指令计数超过安全阈值时,及时终止任务的进行,并关闭与硬件加速器的安全通道,并销毁公私钥对表及缓存中的数据。计算任务评估部所采用的函数或指令执行次数,并根据安全性的不同设定执行权重,安全指令计数部根据指令计数乘以权重来进行比较。
发明的作用与效果
根据本发明所涉及的纵向多方数据聚合计算解决方案系统,因为包括控制系统模块,用于读取本地配置文件并根据配置文件中的工作模式构建通信结构,控制系统模块包括通信认证部、多数据聚合部、数据库连接部以及数据交换部;安全模块,用于加密或解密接口,并认证通信结构,包括加解密部、安全认证部、聚合数据解密部以及硬件加速部;数据缓存模块,用于缓存数据;数据聚合运算模块,用于将不同特征的数据进行聚合得到聚合数据,并根据聚合计算任务采用机器学习算法对聚合数据进行计算,包括多数据聚合部、任务流部以及数据处理部;机器学习算子模块,用于提供机器学习算法,包括线性回归、逻辑回归、决策树、cnn、rnn机器学习算子;以及主动防御模块,用于检测系统运行过程中的异常情况从而保护数据安全,包括安全指令计数部和计算任务评估部。
因此,本发明的纵向多方数据聚合计算解决方案系统利用可信执行环境和硬件加速器实现了支持两方和多方的纵向级别的数据聚合计算。各参与方的密文数据在可选择在CPU内部的可信执行环境被解密并进行数据特征聚合计算,或是在硬件加速器内存中进行加速计算。方案支持多种机器学习模型,保证明文数据可用不可见,实现了各参与方数据的隐私保护。和传统安全多方计算方案相比,具有较低的通信成本和计算成本,经过测试,与传统MPC协议相比,其计算时间成本下降了约90%,内存资源消耗下降了约80%。
此外,安全模块实现了两方通信结构和多方通信结构的认证和连接,实现各参与方明文数据在被传输过程中的安全性。安全模块实现构建可信执行环境与硬件加速器GPU的安全通道,并将密钥和密文数据安全传输到硬件加速器GPU内存中进行加速计算。主动防御模块在面对侧信道攻击时,主动终止计算任务保护数据。
附图说明
图1是本发明的实施例中对等两方计算模型结构图;
图2是本发明的实施例中服务器端计算模型纵向多方安全计算系统结构图;
图3是可信执行环境内部模型图;以及
图4是可信执行环境计算流程图。
具体实施方式
为了使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,以下实施例结合附图对本发明一种纵向多方数据聚合计算解决方案系统作具体阐述。
本实施例的纵向多方数据聚合计算解决方案系统包括控制系统模块、安全模块、数据缓存模块、数据聚合运算模块、机器学习算子模块以及主动防御模块。
控制系统模块,用于读取本地配置文件并根据配置文件中的工作模式构建通信结构,控制系统模块包括通信认证部、多数据聚合部、数据库连接部以及数据交换部。
图1是本实施例中对等两方计算模型结构图。
图2是本实施例中服务器端计算模型纵向多方安全计算系统结构图。
控制系统模块的各参与方读取本地配置文件,根据本地配置文件构建两种通信结构,包括:
如图1所示,对等两方计算模型中存在两个参与方,每个参与方可支持多个数据方,两个参与方在可信执行环境内进行数据的聚合计算。
如图2所示,服务器端计算模型由第三方协调,存在多个参与方,多个参与方选出一个第三方协调者,多个参与方在第三方协调者的可信执行环境中进行计算,同时每个参与方支持多个数据方,根据本地配置文件获得各个参与方数据特征和聚合计算任务。
聚合计算任务包含训练数据或预测使用的模型参数,参与方通过认证建立通信后,将可信执行环境运行时和不可信执行环境运行时进行初始化,这些运行时执行环境支持着其他模块的正常运行。
多数据聚合部位于不可信执行环境,从而支持单参与方背后多数据方的聚合,数据库连接部用于连接关系型数据、key-value键值对数据库。
数据交换部用于写入或读取xml配置文件,从而实现参数解析和计算结果分享。
安全模块,用于加密或解密接口,并认证通信结构,包括加解密部、安全认证部、聚合数据解密部以及硬件加速部。
安全模块同时运行在可信执行环境和不可信执行环境中。
图3是可信执行环境内部模型图。
图4是可信执行环境计算流程图。
如图3~图4所示,可信执行环境内部建立公私钥对表,并将公钥传出到不可信执行环境,在不可信执行环境中通过ssl或tls实现两种通信结构中的参与方可信连接,不可信执行环境在认证过程中,将验证消息传入可信执行环境中进行验证,并接受其验证状态,安全模块支持与硬件加速器建立安全通道,将加密数据和密钥安全传递到硬件加速器的内存中。
加解密部包括常用对称密钥和非对称密钥的加解密库接口。
安全认证部用于实现通信认证模块中使用的hash验证和非对称密码学加解密操作。
聚合数据解密部用于实现参与方隐私数据的加解密操作。
硬件加速部用于实现建立与硬件加速器内存的安全通道所需的接口。
数据缓存模块,用于缓存数据。
数据缓存模块包括可信执行环境内存和不可信执行环境内存,单个参与方在不可信执行环境内存进行多个数据方的数据缓存与聚合,在可信执行环境内存提供数据给与硬件加速器建立的安全通道。
在可信执行环境内存中的可用内存不足时,通过页面置换,将加密数据置换到不可信执行环境内存中,不可信执行环境内存不够时,将不可信执行环境内存中的加密数据缓存到磁盘中。
数据聚合运算模块用于将不同特征的数据进行聚合得到聚合数据,并根据聚合计算任务采用机器学习算法对聚合数据进行计算,包括多数据聚合部、任务流部以及数据处理部。
数据聚合运算模块位于可信执行环境内部,将多个参与方不同特征的数据进行聚合得到聚合数据,聚合数据根据控制系统模块在系统初始化时读入的聚合计算任务采用机器学习算法进行计算,计算任务在运行前会进行子任务的拆分,训练阶段过程中,相对耗时的子任务可被迁移到硬件加速器的内存中进行并行计算,子任务计算结果通过安全通道返回至数据聚合运算模块。计算分训练阶段和预测阶段,训练阶段得到模型参数,预测阶段得到结果,机器学习算子模块位于可信执行环境内部。
多数据聚合部位于可信执行环境,支持多参与方之间的数据特征聚合,任务流部支持实现计算任务的分配和执行次序和算法选择。
数据处理部用于进行模型参数的输入预处理和生成,支持结果的对外分享。
机器学习算子模块用于提供机器学习算法,包括线性回归、逻辑回归、决策树、cnn、rnn机器学习算子。
主动防御模块用于检测系统运行过程中的异常情况从而保护数据安全,包括安全指令计数部和计算任务评估部。
主动防御模块主动监控处理器、内存、硬件加速器函数执行和指令执行情况,函数或指令复杂度会影响计数权重,执行次数直接被记录,一旦各个模块正常运行过程中出现了异常的函数或指令使用情况,主动防御模块会销毁私钥和加密数据,并终止操作。
安全指令计数部通过与评估的指定计数对比,当指令计数超过安全阈值时,及时终止任务的进行,并关闭与硬件加速器的安全通道,并销毁公私钥对表及缓存中的数据。
计算任务评估部所采用的函数或指令执行次数,并根据安全性的不同设定执行权重,安全指令计数部根据指令计数乘以权重来进行比较。
本实施例的纵向多方数据聚合计算解决方案系统的工作过程为:
各参与方在进行计算之前,控制系统模块先读取本地配置文件,配置文件中描述了各参与方的ip地址及端口号、数据特征维度、工作模式、计算任务(计算任务包含训练任务和预测任务,训练任务需要提供训练参数初始值,预测任务需要提供模型参数,和模型文件)。控制系统模块支持单参与方多数据方的聚合,意味着和参与方同一阵营的数据方可以在该参与方的不可信执行环境进行数据特征的聚合,由该参与方代表各个数据方进行计算任务的提交,极大的提高了多数据方的数据聚合效率。控制系统模块根据配置文件中的工作模式进行系统的构建:
若采用对等两方工作模式:两个参与方通过IP地址和端口号进行连接,参与方安全模块互相利用对方的公钥加密自己的私有数据,并发送到对方的可信执行环境利用私钥进行解密。对等工作模式不需要担心服务器作恶,因为不存在第三方服务器。
若采用第三方协调者工作模式:存在一个协调者,协调者利用安全模块在可信环境中生成公钥私钥对表,将公钥发送给各个参与方,参与方利用公钥加密数据发送到服务器内部可信执行环境解密。
可信执行环境获得加密数据后,安全模块根据私钥对数据进行解密,或是构建与硬件加速器的安全通道,将数据传输到安全通道中,硬件加速器内存中进行解密。构建一个连接CPU可信环境和GPU kernel的可信安全通道,也可以使用相同的安全密钥构建多个存在于GPU内部的安全上下文,并且这些上下文与可信执行环境进行通信。使用GPU内部指令CHCREATE在获得一个通道标识符和一个公钥UKpub后构建安全通道,在kernal生成一个新的通道加密密钥CEK,发送到该通道的制定都会被加密。公钥UKpub、CEK、和计数器存储在GPU缓存中。在建立会话之前,kernal利用UKpub加密CEK,并生成一个包含加密CEK和UKpub签名的quote,设备驱动程序再通过AK证书签名quote,最终将签名和AK证书都发送到可信执行环境中去。运行时通过先验证AK证书,再验证Quote,再验证Quote中的公钥是否与UKpub匹配,最后在可信执行环境中解密CEK,可信执行环境中的安全模块将其作为密钥用于加密数据和命令并传输到GPU内部。
数据聚合运算模块可以在可信环境内运行,也可以在硬件加速器GPU中运行,它根据计算任务来对数据进行计算,各参与方数据被安全解密后,利用机器学习算子模块内的算法接口进行计算,训练任务会得到模型参数,预测任务会得到预测结果。参数或结果通过安全模块从可信执行环境传出到不可信执行环境,再由控制系统模块分享给其他参与方。
主动防御模块是针对目前可信执行区域容易遭受侧信道攻击,不可信执行环境可以通过频繁的调用接口,并监控数据流和控制流,从这些数据流和控制流中获取秘密信息。主动防御模块根据处理器、可信内存、硬件加速器中函数或指令执行情况构建了一个可信计数器,一旦这个安全计数器监控到不该产生的额外函数运行次数或指令执行次数,便能够终止此次计算,迅速销毁可信环境内部的私钥表和加密数据,从而保护不同维度的数据安全性。于此同时,控制系统模块会及时报告异常情况给各参与方。
例如,将本实施例提出的纵向多方数据聚合计算解决方案系统进行实际应用为,一家商场中存在多家店铺,不同店铺的数据特征不同,无法利用横向联邦学习进行训练,且由于店铺商品流水属于隐私,商家不想自己的店铺流水被其他人掌握,通过该解决方案可以安全地利用店铺流水隐私数据,在可信执行环境中进行不同维度特征的纵向聚合,数据不会泄漏,聚合后的数据可以通过机器学习模型进行分析商场流量特征,用户画像,从而为优化商场服务提供可靠的数据支撑。
实施例的作用与效果
根据本实施例所涉及的纵向多方数据聚合计算解决方案系统,因为包括控制系统模块,用于读取本地配置文件并根据配置文件中的工作模式构建通信结构,控制系统模块包括通信认证部、多数据聚合部、数据库连接部以及数据交换部;安全模块,用于加密或解密接口,并认证通信结构,包括加解密部、安全认证部、聚合数据解密部以及硬件加速部;数据缓存模块,用于缓存数据;数据聚合运算模块,用于将不同特征的数据进行聚合得到聚合数据,并根据聚合计算任务采用机器学习算法对聚合数据进行计算,包括多数据聚合部、任务流部以及数据处理部;机器学习算子模块,用于提供机器学习算法,包括线性回归、逻辑回归、决策树、cnn、rnn机器学习算子;以及主动防御模块,用于检测系统运行过程中的异常情况从而保护数据安全,包括安全指令计数部和计算任务评估部。
因此,本实施例的纵向多方数据聚合计算解决方案系统利用可信执行环境和硬件加速器实现了支持两方和多方的纵向级别的数据聚合计算。各参与方的密文数据在可选择在CPU内部的可信执行环境被解密并进行数据特征聚合计算,或是在硬件加速器内存中进行加速计算。方案支持多种机器学习模型,保证明文数据可用不可见,实现了各参与方数据的隐私保护。和传统安全多方计算方案相比,具有较低的通信成本和计算成本,经过测试,与传统MPC协议相比,其计算时间成本下降了约90%,内存资源消耗下降了约80%。
此外,安全模块实现了两方通信结构和多方通信结构的认证和连接,实现各参与方明文数据在被传输过程中的安全性。安全模块实现构建可信执行环境与硬件加速器GPU的安全通道,并将密钥和密文数据安全传输到硬件加速器GPU内存中进行加速计算。主动防御模块在面对侧信道攻击时,主动终止计算任务保护数据。
此外,由于可信执行环境内存有限(128MB),且存在被攻击的可能性,这对各模块复用设计、安全性设计提出了高要求。运行在可信执行环境的加解密基础算法库是经过裁剪的,以减少内存消耗,它只能实现特定对称/非对称加解密算法、hash算法。为了保证控制流和数据流不被攻击,本实施例中可信/不可信环境中的边界在设计上仅保留了数据传输接口,验证接口。其中验证接口在一次联合计算过程中只能被执行有限次,到达执行阈值时,可信内部环境将拒绝验证,若不可信区域仍多次调用验证接口,试图使得可信/不可信环境产生页面置换,此时会终止计算,并销毁密钥表和已传输的加密数据。
对于处理器来说,攻击者会利用恶意的计算任务来占用CPU时间,方案会根据预先设置的运算任务来规定一段时间给CPU执行,一旦超出这个阈值便结束计算任务,方案需要维护一个程序指令计数器,以防止边界接口函数被恶意调用。并接口函数的增量进行优化,不同的函数计数权重不同,以考虑不同计算任务的复杂性。在可信执行环境中,会添加一个全局静态变量计数器,每次执行计算任务之前都会调用计数器检查函数进行检测,一旦发现计数器运行不正确,便会终止任务,关闭与GPU建立的安全通道,然后销毁密钥表和加密数据。
对于内存的使用情况,可信执行环境中存在最大128MB的限制,因此在检测计数器的同时,也会对可信执行环境剩余内存进行检测,在一些大型任务中,程序不会直接在可信执行环境内部进行解密和运算,而是通过安全通道传输到GPU中,可信执行环境作为一个数据流中转站点被使用,这也是为了防止与不可信内存进行额外的页面替换,暴露更多的攻击面给不可信空间。
对于硬件加速器的安全指令计数器设计,安全通道的建立进、管理和使用都会被监督,指令复杂度进行计数权重的定义也被应用于硬件加速器中。
上述实施方式为本发明的优选案例,并不用来限制本发明的保护范围。
Claims (10)
1.一种纵向多方数据聚合计算解决方案系统,其特征在于,使用可信执行环境和硬件加速器实现系统搭建,包括:
控制系统模块,用于读取本地配置文件并根据所述配置文件中的工作模式构建通信结构,所述控制系统模块包括通信认证部、多数据聚合部、数据库连接部以及数据交换部;
安全模块,用于加密或解密接口,并认证所述通信结构,包括加解密部、安全认证部、聚合数据解密部以及硬件加速部;
数据缓存模块,用于缓存数据;
数据聚合运算模块,用于将不同特征的所述数据进行聚合得到聚合数据,并根据聚合计算任务采用机器学习算法对聚合数据进行计算,包括多数据聚合部、任务流部以及数据处理部;
机器学习算子模块,用于提供所述机器学习算法,包括线性回归、逻辑回归、决策树、cnn、rnn机器学习算子;以及
主动防御模块,用于检测系统运行过程中的异常情况从而保护数据安全,包括安全指令计数部和计算任务评估部。
2.根据权利要求1所述的纵向多方数据聚合计算解决方案系统,其特征在于:
其中,所述控制系统模块的各参与方读取所述本地配置文件,根据所述本地配置文件构建两种所述通信结构,所述通信结构包括:
对等两方计算模型,该模型中存在两个所述参与方,每个所述参与方可支持多个数据方,两个所述参与方在可信执行环境内进行数据的聚合计算;
服务器端计算模型,该模型由第三方协调,存在多个所述参与方,多个所述参与方选出一个第三方协调者,多个所述参与方在所述第三方协调者的可信执行环境中进行计算,同时每个所述参与方支持多个数据方,根据所述本地配置文件获得各个所述参与方数据特征和聚合计算任务,所述聚合计算任务包含训练数据或预测使用的模型参数,
所述参与方通过认证建立通信后,将可信执行环境运行时和不可信执行环境运行时进行初始化,这些运行时执行环境支持着其他模块的正常运行。
3.根据权利要求1所述的纵向多方数据聚合计算解决方案系统,其特征在于:
其中,所述多数据聚合部位于不可信执行环境,从而支持单参与方背后多数据方的聚合,
所述数据库连接部用于连接关系型数据、key-value键值对数据库,
所述数据交换部用于写入或读取xml配置文件,从而实现参数解析和计算结果分享。
4.根据权利要求1所述的纵向多方数据聚合计算解决方案系统,其特征在于:
其中,所述安全模块同时运行在可信执行环境和不可信执行环境中,
所述可信执行环境内部建立公私钥对表,并将公钥传出到所述不可信执行环境,在不可信执行环境中通过ssl或tls实现两种所述通信结构中的参与方可信连接,所述不可信执行环境在认证过程中,将验证消息传入所述可信执行环境中进行验证,并接受其验证状态,
所述安全模块支持与硬件加速器建立安全通道,将加密数据和密钥安全传递到硬件加速器的内存中。
5.根据权利要求1所述的纵向多方数据聚合计算解决方案系统,其特征在于:
其中,所述加解密部包括常用对称密钥和非对称密钥的加解密库接口,
所述安全认证部用于实现通信认证模块中使用的hash验证和非对称密码学加解密操作,
所述聚合数据解密部用于实现参与方隐私数据的加解密操作,
所述硬件加速部用于实现建立与硬件加速器内存的安全通道所需的接口。
6.根据权利要求1所述的纵向多方数据聚合计算解决方案系统,其特征在于:
其中,所述数据缓存模块包括可信执行环境内存和不可信执行环境内存,单个参与方在所述不可信执行环境内存进行多个数据方的数据缓存与聚合,在所述可信执行环境内存提供所述数据给与硬件加速器建立的安全通道,
在所述可信执行环境内存中的可用内存不足时,通过页面置换,将加密数据置换到所述不可信执行环境内存中,所述不可信执行环境内存不够时,将所述不可信执行环境内存中的加密数据缓存到磁盘中。
7.根据权利要求1所述的纵向多方数据聚合计算解决方案系统,其特征在于:
其中,所述数据聚合运算模块位于可信执行环境内部,将多个参与方不同特征的数据进行聚合得到所述聚合数据,所述聚合数据根据所述控制系统模块在系统初始化时读入的所述聚合计算任务采用机器学习算法进行计算,计算任务在运行前会进行子任务的拆分,训练阶段过程中,相对耗时的子任务可被迁移到硬件加速器的内存中进行并行计算,子任务计算结果通过安全通道返回至所述数据聚合运算模块,
所述计算分训练阶段和预测阶段,所述训练阶段得到模型参数,所述预测阶段得到结果,
所述机器学习算子模块位于可信执行环境内部。
8.根据权利要求1所述的纵向多方数据聚合计算解决方案系统,其特征在于:
其中,所述多数据聚合部位于可信执行环境,支持多参与方之间的数据特征聚合,
所述任务流部支持实现计算任务的分配和执行次序和算法选择,
数据处理部用于进行模型参数的输入预处理和生成,支持结果的对外分享。
9.根据权利要求1所述的纵向多方数据聚合计算解决方案系统,其特征在于:
其中,所述主动防御模块主动监控处理器、内存、硬件加速器函数执行和指令执行情况,函数或指令复杂度会影响计数权重,执行次数直接被记录,一旦各个模块正常运行过程中出现了异常的函数或指令使用情况,所述主动防御模块会销毁私钥和加密数据,并终止操作。
10.根据权利要求1所述的纵向多方数据聚合计算解决方案系统,其特征在于:
其中,所述安全指令计数部通过与评估的指定计数对比,当指令计数超过安全阈值时,及时终止任务的进行,并关闭与硬件加速器的安全通道,并销毁公私钥对表及缓存中的数据,
所述计算任务评估部所采用的函数或指令执行次数,并根据安全性的不同设定执行权重,所述安全指令计数部根据指令计数乘以权重来进行比较。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210162636.0A CN114546527B (zh) | 2022-02-22 | 2022-02-22 | 一种纵向多方数据聚合计算解决方案系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210162636.0A CN114546527B (zh) | 2022-02-22 | 2022-02-22 | 一种纵向多方数据聚合计算解决方案系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114546527A true CN114546527A (zh) | 2022-05-27 |
CN114546527B CN114546527B (zh) | 2023-10-03 |
Family
ID=81676894
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210162636.0A Active CN114546527B (zh) | 2022-02-22 | 2022-02-22 | 一种纵向多方数据聚合计算解决方案系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114546527B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115580390A (zh) * | 2022-08-24 | 2023-01-06 | 京信数据科技有限公司 | 一种安全多方计算下的多场景模式计算方法及系统 |
CN115994161A (zh) * | 2023-03-21 | 2023-04-21 | 杭州金智塔科技有限公司 | 基于多方安全计算的数据聚合系统及方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090316904A1 (en) * | 2008-06-19 | 2009-12-24 | Qualcomm Incorporated | Hardware acceleration for wwan technologies |
CN107634950A (zh) * | 2017-09-19 | 2018-01-26 | 重庆大学 | 一种利用流水线硬件设计卸载ssl/tls协议的方法 |
WO2021159684A1 (zh) * | 2020-02-14 | 2021-08-19 | 云从科技集团股份有限公司 | 数据处理方法、系统、平台、设备及机器可读介质 |
CN114021734A (zh) * | 2021-10-14 | 2022-02-08 | 深圳致星科技有限公司 | 用于联邦学习和隐私计算的参数计算装置、系统及方法 |
-
2022
- 2022-02-22 CN CN202210162636.0A patent/CN114546527B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090316904A1 (en) * | 2008-06-19 | 2009-12-24 | Qualcomm Incorporated | Hardware acceleration for wwan technologies |
CN107634950A (zh) * | 2017-09-19 | 2018-01-26 | 重庆大学 | 一种利用流水线硬件设计卸载ssl/tls协议的方法 |
WO2021159684A1 (zh) * | 2020-02-14 | 2021-08-19 | 云从科技集团股份有限公司 | 数据处理方法、系统、平台、设备及机器可读介质 |
CN114021734A (zh) * | 2021-10-14 | 2022-02-08 | 深圳致星科技有限公司 | 用于联邦学习和隐私计算的参数计算装置、系统及方法 |
Non-Patent Citations (1)
Title |
---|
刘雪艳;张强;李战明;曹素珍: "面向智能电网通信系统的数据聚合和访问控制方法", 电力系统自动化, vol. 40, no. 14 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115580390A (zh) * | 2022-08-24 | 2023-01-06 | 京信数据科技有限公司 | 一种安全多方计算下的多场景模式计算方法及系统 |
CN115580390B (zh) * | 2022-08-24 | 2023-08-25 | 京信数据科技有限公司 | 一种安全多方计算下的多场景模式计算方法及系统 |
CN115994161A (zh) * | 2023-03-21 | 2023-04-21 | 杭州金智塔科技有限公司 | 基于多方安全计算的数据聚合系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN114546527B (zh) | 2023-10-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11601407B2 (en) | Fast oblivious transfers | |
Bhardwaj et al. | Security algorithms for cloud computing | |
Sanka et al. | Secure data access in cloud computing | |
JP6234607B2 (ja) | 処理されたデータを検証する方法および装置 | |
CN109067528B (zh) | 密码运算、创建工作密钥的方法、密码服务平台及设备 | |
US20180302380A1 (en) | Data tokenization | |
CN113505894A (zh) | 纵向联邦学习线性回归和逻辑回归模型训练方法及装置 | |
CN114546527B (zh) | 一种纵向多方数据聚合计算解决方案系统 | |
Yan et al. | Context-aware verifiable cloud computing | |
Nguyen et al. | Cloud-based secure logger for medical devices | |
Agrawal et al. | A trustworthy agent-based encrypted access control method for mobile cloud computing environment | |
US11575501B2 (en) | Preserving aggregation using homomorphic encryption and trusted execution environment, secure against malicious aggregator | |
WO2022110968A1 (zh) | 一种动态密钥生成方法和系统 | |
CN103618737A (zh) | 一种云计算环境下的虚拟机vnc控制台优化方案 | |
CN115495768A (zh) | 基于区块链及多方安全计算的涉密信息处理方法及系统 | |
CN107204997A (zh) | 管理云存储数据的方法和装置 | |
CN117240625B (zh) | 一种涉及防篡改的数据处理方法、装置及电子设备 | |
Soomro et al. | Review and open issues of cryptographic algorithms in cyber security | |
Chiang et al. | On the privacy risks of compromised trigger-action platforms | |
Huang et al. | ZT-Access: A combining zero trust access control with attribute-based encryption scheme against compromised devices in power IoT environments | |
Bommala et al. | Performance of Evaluation for AES with ECC in Cloud Environment | |
Raeisi-Varzaneh et al. | Internet of Things: Security, Issues, Threats, and Assessment of Different Cryptographic Technologies | |
Koppaka et al. | ElGamal algorithm with hyperchaotic sequence to enhance security of cloud data | |
Njuki et al. | An evaluation on securing cloud systems based on cryptographic key algorithms | |
Sreenivas et al. | Enhancing the security for information with virtual data centers in cloud |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |