一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

数据同化的方法、设备和可读存储介质与流程

2022-06-25 02:41:04 来源:中国专利 TAG:


1.本发明一般地涉及数据安全技术领域。更具体地,本发明涉及一种用于进行数据同化的方法、设备和可读存储介质。


背景技术:

2.在遥感、气象、水文、生态及能源等领域中,通常需要获取各物理变量的时空分布特征。作为能够表示各物理变量时空分布特征的特征数据集,一般称作该物理变量的时空场。为了对时空分布特征进行有效地预测和评估,需要对各物理变量的时空特征进行分析和建模。在分析和建模过程中,需要用到各物理量的时空特征数据集。而现有的时空特征数据集通常来自于以下两种类型:数值模拟的过程和真实传感器的检测过程。具体地,
3.1)数值模拟,其是通过对空间进行合理剖分,即将时空划分空间网格和时间步长,并按照时间演化规律对物理量(或多物理量)进行离散化模拟。例如,在气象领域中,利用大规模天气系统(或气候系统)对未来天气(或气候)状态(温度、风速和降水等)的时空特征进行预估。这种数值模拟的方式虽然能够获取更加清晰的特征机理,但是并不能呈现完全真实的物理信息。
4.2)真实传感器观测,其是通过获取诸多观测站点的点源数据来估计特定区域的物理变量的真实特征。所涉及的观测站点例如可以包括气象站、测风塔、气象/水文卫星等。但是由于现实条件的限制,无法在每个空间格点上都设置相应的观测站点,因此真实观测数据存在空间分布不均且时间连续性难以保证的缺点。
5.为了能够获取既包含真实信息又具有较好的时空连续性的特征数据集,数据同化方法得到了广泛的应用。数据同化方法是基于统计误差估计和贝叶斯理论发展而来的。该方法将模型模拟的结果作为先验信息(也称为“背景场”信息),而观测站点监测的数据作为后验信息,通过最小化分析误差而计算得到的估计值作为更新后的初始场,用以作为模型在下一个时间步长内预测的依据。
6.随着各类观测站点的增多,能够获取一些气象水文相关数据的途径愈加广泛,使得敏感信息的暴露风险陡然增加。一方面,由于气象水文数据对国家信息安全,能源安全至关重要。因此,在使用这类受保护的数据时,需要严格保证原始数据不能“出域”,从而确保数据安全。另一方面,在商业气象服务过程中,例如:存在商业竞争关系的机构为了精准评估特定区域的新能源可开发潜力,对特定区域实施了地理、气象、水文等相关方面的监测。在利用其观测(监测)的数据与气象部门联合进行分析时通常会对观测数据剔除保密性的要求。然而,目前为了实现同化运算,明文数据的传输和使用难以避免,这就增加了观测站点的数据的敏感信息暴露的风险。鉴于此,在确保数据安全性的前提下,如何合理地释放观测数据自身的价值,对提升商业气象服务的数据安全性、精准性方面非常重要。而在同化观测数据实现精准气象服务时,如何避免参与数据同化的双方的原始数据的泄露,对目前地学领域(大气,海洋,生态等)的数据分析过程也具有重要作用。


技术实现要素:

7.为解决上述一个或多个技术问题,本发明提出参与同化计算的双方利用同态加密算法对数据进行加密,从而利用密文数据的同态运算实现数据同化过程,有效保证了参与数据同化计算的双方数据的安全性。为此,本发明在如下的多个方面中提供方案。
8.在第一方面中,本发明提供了一种用于进行数据同化的方法,包括:响应于接收到同化发起方的同化请求,向所述同化发起方发送响应信息;接收来自所述同化发起方的经同态加密后的观测信息;将经同态加密后的观测信息和背景场信息进行同化运算得到同化后的密文结果;以及向所述同化发起方发送所述同化后的密文结果,以便同化发起方从所述同化后的密文结果中获取数据同化结果。
9.在一个实施例中,所述向所述同化发起方发送响应信息包括:向所述同化发起方发送接受同化请求的指令;以及选择性发送经同态加密后的以下数据中的一种或多种:背景场格点空间位置信息、背景场误差协方差矩阵。
10.在一个实施例中,所述选择性发送经同态加密后的以下数据中的一种或多种包括:若所述观测信息来源于公开的观测站点,则无需发送任一所述数据;若所述观测信息来源于非公开的、单独观测站点,则利用所述同化请求中包括的公钥对背景场误差协方差矩阵加密后发送;或者若所述观测信息来源于非公开的、非单独观测站点,则利用所述同化请求中包括的公钥对背景场格点空间位置信息和背景场误差协方差矩阵加密后发送。
11.在一个实施例中,所述接收来自所述同化发起方的经同态加密后的观测信息包括:接收来自所述同化发起方的经同态加密后的观测数据;或者接收来自所述同化发起方的经同态加密后的观测数据,以及经同态加密后的以下数据中的一种或多种:观测算子、观测误差协方差矩阵和增益矩阵。
12.在一个实施例中,所述将经同态加密后的观测信息和背景场信息进行同化运算得到同化后的密文结果包括:对所述背景场信息和所述经同态加密后的观测信息进行同态运算,以得到针对背景场的订正信息;根据所述背景场信息和所述针对背景场的订正信息确定同化后的密文结果。
13.在一个实施例中,所述对所述背景场信息和所述经同态加密后的观测信息进行同态运算,以得到针对背景场的订正信息包括:根据观测算子对所述背景场信息进行计算得到背景场信息到观测点的映射;根据增益矩阵、所述背景场信息到观测点的映射和所述经同态加密后的观测信息进行同态运算,以得到针对背景场的订正信息。
14.在一个实施例中,所述背景场信息到观测点的映射采用以下公式计算得到:
15.x
bo
=hxb16.其中,x
bo
为背景场信息到观测点的映射,h为观测算子,xb为背景场数据,并且当h为加密的观测算子时,x
bo
为加密的背景场信息到观测点的映射。
17.在一个实施例中,所述同化后的密文结果采用以下公式计算:
18.ca=xb g(c
o-x
bo
)
19.其中,xb为背景场数据,g(c
o-x
bo
)为针对背景场的订正信息,x
bo
为背景场信息到观测点的映射,co为经同态加密后的观测数据,g为增益矩阵,并且当采用加密的观测算子时,g为加密的增益矩阵且x
bo
为加密的背景场信息到观测点的映射。
20.在第二方面中,本发明还提供了一种用于进行数据同化的方法,包括:向同化响应
方发送同化请求;响应于接收到来自所述同化响应方的响应信息,向所述同化响应方发送经同态加密后的观测信息;接收来自所述同化响应方的同化后的密文结果;以及对所述密文结果进行解密,以获取数据同化结果。
21.在一个实施例中,所述接收到来自所述同化响应方的响应信息包括:接收来自所述同化响应方的接受同化请求的指令;或者接收来自所述同化响应方的接受同化请求的指令,以及经同态加密后的以下数据中的一种或多种:背景场格点空间位置信息、背景场误差协方差矩阵。
22.在一个实施例中,所述向所述同化响应方发送经同态加密后的观测信息包括:向所述同化响应方发送经同态加密后的观测数据;选择性发送经同态加密后的以下数据中的一种或多种:观测算子、增益矩阵和观测误差协方差矩阵。
23.在一个实施例中,所述选择性发送经同态加密后的以下数据中的一种或多种包括:若所述观测信息来源于公开的观测站点,则无需发送任一所述数据;若所述观测信息来源于非公开的、单独观测站点,则利用公钥对观测算子和观测误差协方差矩阵进行同态加密后发送;或者若所述观测信息来源于非公开的、非单独观测站点,则利用公钥对观测算子和增益矩阵进行同态加密后发送。
24.在第三方面中,本发明还提供了一种用于进行数据同化的设备,包括:处理器;以及存储器,其存储有用于进行数据同化的计算机指令,当所述计算机指令由所述处理器运行时,使得所述电子设备执行根据前述第一方面中多个实施例所述的方法,或前述第二方面中多个实施例所述的方法。
25.在第四方面中,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有用于进行数据同化的计算机可读指令,该计算机可读指令被一个或多个处理器执行时实现如前述第一方面中多个实施例所述的方法,或前述第二方面中多个实施例所述的方法。
26.利用本发明的方案,可以根据同态加密算法对参与同化计算的同化发起方的观测信息和同化响应方的背景场信息进行加密,从而利用同态运算过程实现数据同化计算,保证了参与数据同化的双方无法获取对方的原始数据信息,实现在不泄露观测数据和背景场信息的前提下同化分析场的构建。具体地,本发明的方案中通过同态加密算法构建数据同化计算过程,利用密文数据实现同化计算流程,可以有效避免参与同化计算的双方的数据的泄露,有效提升了观测信息和背景场信息的数据安全性。进一步,本方案中还结合观测点的类型,选择性的传输相应的用于同化计算的数据,从而有效减小了通信成本,同时也减小了同化响应方和同化发起方的计算成本,有效提升了计算效率。
附图说明
27.通过参考附图阅读下文的详细描述,本发明示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本发明的若干实施方式,并且相同或对应的标号表示相同或对应的部分,其中:
28.图1是示意性示出其中应用本发明的用于进行数据同化的方案的示例性场景的示意图;
29.图2是示意性示出根据本发明的实施例的用于进行数据同化的方法的示意图;
30.图3是示意性示出根据本发明的实施例的同化响应方执行的方法的示意图;
31.图4是示意性示出根据本发明的实施例的用于进行数据同化的另一种方法的示意图;
32.图5是示意性示出根据本发明的实施例的同化发起方执行的方法的示意图;
33.图6a是示意性示出根据本发明的实施例的同化响应方和同化发起方的交互过程的第一种情况的示意图;
34.图6b是示意性示出根据本发明的实施例的同化响应方和同化发起方的交互过程的第二种情况的示意图;
35.图6c是示意性示出根据本发明的实施例的同化响应方和同化发起方的交互过程的第三种情况的示意图;
36.图7是示出根据本发明实施例的用于进行数据同化的设备的示意框图。
具体实施方式
37.下面将结合本发明实施方式中的附图,对本发明实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式是本发明一部分实施方式,而不是全部的实施方式。基于本发明中的实施方式,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施方式,都属于本发明保护的范围。
38.应当理解,本发明的权利要求、说明书及附图中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。本发明的说明书和权利要求书中使用的术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
39.还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施方式的目的,而并不意在限定本发明。如在本发明说明书和权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。还应当进一步理解,在本发明说明书和权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
40.如在本说明书和权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
[0041]
目前在气象、遥感和水文等领域以时间顺序实施的同化方案中,大部分采用卡尔曼滤波技术作为基本技术。对于一般线性系统而言,卡尔曼滤波方法主要包括两个过程:
[0042]
1)时间更新:
[0043]
基于建模信息对状态向量以及状态变量的误差协方差矩阵进行单步预测。如下公式(1)表示状态向量的时间转移,公式(2)表示对应的误差协方差矩阵的时间转移过程,
[0044][0045]
p

t
=ap
t-1at
q
ꢀꢀꢀꢀꢀꢀ
(2)
[0046]
其中为t时刻的状态向量,表示t时刻的初步估计值,状态更新时称为背景场,a、b、u为对应线性模型的参数。p
t-1
表示t-1时刻的背景场误差协方差矩阵,p

t
为t时刻背景场误差协方差矩阵估计值,q为外部噪声参数。
[0047]
2)状态更新:
[0048]
在利用前述公式(1)和公式(2)进行时间更新后,利用以下公式(3)至公式(5)对数据模型预测的状态向量(背景场)进行更新。
[0049]gt
=p

tht
(r h p
t

th
t
)-1
ꢀꢀꢀꢀ
(3)
[0050][0051]
p
t
=(i-g
t
h)p

t
ꢀꢀꢀꢀ
(5)
[0052]
利用公式(3)可以计算卡尔曼增益(kalman gain)矩阵g
t
,其中r为观测误差协方差矩阵,h为观测算子,一般观测算子可以根据观测变量与状态变量的转换关系构造而来。公式(4)是状态更新的核心步骤。利用公式(4)对背景场信息进行更新。具体地,公式(4)中的利用前述公式(3)计算的增益矩阵将观测变量与背景场之间的差异进行“缩放”并叠加到背景场,得到t时刻的分析场其中y
t
表示t时刻的观测变量,表示将背景场状态变量映射到观测空间后的数值。这一部分差异体现了模型预测变量数值与真实状态的差异。因此,计算得到的分析场结果(即分析场)可以认为是对背景场真实性的订正,同时该分析场会作为下一个时间步的预测时所采用的公式(1)的初始状态。公式(5)是对背景场误差协方差矩阵的更新,并且更新后的背景场误差协方差矩阵可以作为下一步时间更新的初始误差协方差。
[0053]
需要说明的是,公式(1)-(5)描述了卡尔曼滤波基本步骤,由于实际中预测模型往往不是线性的,因此估算背景误差协方差矩阵往往采用集合统计的方式进行,或者采用静态的背景误差协方差矩阵。例如,集合最优插值算法。
[0054]
本发明的方案中除了上述数据同化的方法之外,还涉及到同态加密算法的实现过程。在密码学领域中,全同态加密(full homomorphic encryption,fhe)算法主要包括以下四个基本算法。
[0055]

密钥生成算法(he.keygen):选择合适的安全参数λ,并根据公式(6)生成对应同态公私密钥对,其中pk为公钥,sk为私钥。
[0056]
(pk,sk)=he.keygen(λ)
ꢀꢀꢀꢀꢀꢀ
(6)
[0057]
例如全同态加密bfv方案的密钥生成算法中应包含依据私钥生成计算密钥(evaluation key,ek)的过程,即:
[0058]
evk=he.evalkeygen(sk)
ꢀꢀꢀꢀꢀ
(7)
[0059]

加密算法(he.enc):对转化为向量或多项式的明文消息m进行公钥加密,得到密文c。
[0060]
c=he.enc(m,pk)
ꢀꢀꢀꢀꢀ
(8)
[0061]

解密算法(he.dec):利用对应的私钥进行解密,即有:
[0062]m′
=he.dec(c,sk)
ꢀꢀꢀꢀꢀ
(9)
[0063]
其加解密算法的正确性:
[0064]
m=he.dec(he.enc(m,pk),sk)
ꢀꢀꢀꢀꢀ
(10)
[0065]

同态运算算法(he.eval):对于某个消息序列(m1,m2,

,mn)加密得到的密文分别为(c1,c2,

,cn),代数运算电路f,其中f可以是加法、乘法或给定深度的代数电路,则同态运算算法描述为:
[0066]c*
=he.eval(f,c1,c2,...,cn,evk)
ꢀꢀꢀꢀ
(11)
[0067]
其正确性满足:
[0068]
he.dec(c
*
,sk)=f(m1,m2,...,mn)
ꢀꢀꢀ
(12)
[0069]
对于同态加密方案的安全性,一般认为至少要达到选择明文攻击(choose plaintext attack,cpa)安全。假设具有多项式时间攻击能力的敌手a,在已知公钥和明文的情况下,试图破解给定安全参数的加密方案,并不能获得显著优势,即满足式(13),则称同态加密方案具有不可区分的选择明文(ind-cpa)安全。
[0070]
|pr(a(pk,he.enc(1,pk))=1)-pr(a(pk,he.enc(0,pk))=1)|=negl(λ)
ꢀꢀꢀꢀꢀꢀ
(13)
[0071]
本发明的方案中为了确保同化计算参与方的数据源不被泄露,提出了在对同化方法中处于核心地位的状态更新部分(如前述公式(4)中状态更新的核心步骤)设计具有隐私保护功能的计算协议,并且充分考虑双方的具体实现情形,以期获取最优的计算效率和通信效率。
[0072]
下面结合附图来详细描述本发明的具体实施方式。
[0073]
图1是示意性示出其中应用本发明的用于进行数据同化的方案的示例性场景100的示意图。在发明的上下文中,前述的场景可以是对各种物理变量的时空分布特征进行分析时的数据同化场景。例如观测点获取的遥感数据、气象数据、生态数据等和数据分析模型预测的数据同化过程。在数据分析和建模过程中,需要涉及到观测信息和某物理量的背景场信息。基于此,本方案中仅为了示例性的目的而将观测点作为同化发起方,将拥有某物理量的背景场信息的机构作为同化响应方。例如同化发起方可以是一些具有气象水文数据观测能力的商业机构,而同化响应方可以是拥有气象要素场信息的气象部门(如:气象局,气象服务机构等),也可以是进行新能源发电或储能预测相关的部门或机构等。
[0074]
如图1所示,本发明的方案中参与数据同化的双方包括机构a和机构b,其中机构a作为同化响应方,机构b作为同化发起方。机构b可以采集观测信息,机构a则拥有某些物理变量的背景场信息。为了实现数据同化过程,需要将某物理量的背景场信息和观测信息进行同化计算,从而实现对背景场的状态更新。
[0075]
具体地,设空间格点数量为n,观测点的点位数量为m。机构a可以拥有某物理量的背景场信息。例如背景场数据(xb,n
×
1)、背景场误差协方差矩阵(p,n
×
n)和背景场格点空间位置信息(loc_b)。基于此,可以将机构a为参与同化计算的服务方(或响应方),即同化响应方。
[0076]
机构b拥有观测信息。例如观测点的观测数据(xo,m
×
1)、观测误差协方差矩阵(r,m
×
m)和观测站点位置信息(loc_o)。基于此,机构b可以作为同化计算的发起方,即同化发起方。
[0077]
在进行同化计算的过程中,需要首先定义观测算子h:
[0078]
h=f(loc_b,loc_o)(14)
[0079]
观测算子h可以由背景场空间格点位置与观测点空间位置构造而来。例如采用地理位置的双线性插值,或者地理位置的反距离平方加权等。最终实现的观测算子h为(m
×
n)的矩阵。由此,可以有公式(15):
[0080]
x
bo
=hxbꢀꢀꢀꢀꢀꢀꢀ
(15)
[0081]
x
bo
表示观测点上“观测”得到的背景场数值,即背景场信息到观测点的映射。卡尔曼增益矩阵的计算以及状态更新方程为如下公式(16)和公式(17)的形式:
[0082]
g=ph
t
(r hph
t
)-1
ꢀꢀꢀꢀꢀꢀ
(16)
[0083]
xa=xb g(x
o-x
bo
)
ꢀꢀꢀꢀꢀꢀ
(17)
[0084]
本发明的方案中主要通过公式(14)至公式(17)实现由观测信息和背景场信息得到分析场信息的过程,并将获取的分析场信息作为同化结果返回给同化发起方(机构b)。
[0085]
图2是示意性示出根据本发明的实施例的用于进行数据同化的方法200的示意图。可以理解的是图2中所示出的方法流程可以在图1中所示出的示例性场景中实施,并且由图1中的同化响应方来执行,因此关于图1所描述内容(关于机构a实现的功能)也同样适用于图2。
[0086]
如图2所示,在步骤s201处,响应于接收到同化发起方的同化请求,向同化发起方发送响应信息。在一些实施例中,可以根据观测点的情况向同化发起方发送对应内容的响应信息。例如观测点为公开的观测点时,即观测信息是通过公开的观测站点提供的,则向同化发起方发送接受同化请求的指令。如果观测信息的来源是非公开的观测点,则可以向同化发起方发送接受同化请求的指令,并同时选择性发送经同态加密后的以下数据中的一种或多种:背景场格点空间位置信息、背景场误差协方差矩阵。
[0087]
在步骤s202处,接收来自同化发起方的经同态加密后的观测信息。在一个应用场景中,若观测信息来源于公开的观测点,同化响应方将接收来自同化发起方的经同态加密后的观测数据。如果观测信息来源于非公开的观测点,则同化响应方将可能接收来自同化发起方的经同态加密后的观测数据,以及经同态加密后的以下数据中的一种或多种:观测算子、观测误差协方差矩阵和增益矩阵。
[0088]
接着,在步骤s203处,将经同态加密后的观测信息和背景场信息进行同化运算得到同化后的密文结果。在一些实施例中,利用前述内容中说明的状态更新方程对经同态加密后的观测信息和背景场信息进行同化运算。在同化运算过程中,可以基于前述同态加密算法进行运算,从而有效保证了原始数据的安全性。
[0089]
最后,在步骤s204处,向所述同化发起方发送同化后的密文结果,以便同化发起方从同化后的密文结果中获取数据同化结果。
[0090]
以上结合图2对本发明中方案中同化响应方所执行的功能进行了简单说明。同化响应方将基于观测点的情况执行不同的计算方式,接下来将结合观测信息的不同来源对同化响应方所执行的方法进一步详细阐述。
[0091]
图3是示意性示出根据本发明的实施例的同化响应方执行的方法300的示意图。可以理解的是图3中所示出的方法流程可以在图1中所示出的示例性场景中实施,因此关于图1所描述内容(关于机构a实现的功能)也同样适用于图3。
[0092]
如图3所示,在步骤s301处,接收到同化发起方的同化请求。在步骤s301处,根据观测信息来源执行不同的操作。
[0093]
如果观测信息来自公开的观测站点,则执行步骤s303,向同化发起方发送接受同化请求的指令。并在步骤s304处,接收来自同化发起方的经同态加密后的观测数据。
[0094]
若观测信息来自非公开的、单独观测站点,则利用同化请求中包括的公钥对背景场误差协方差矩阵加密后发送,即在步骤s305处,向同化发起方发送接受同化请求的指令和加密后的背景场误差协方差矩阵。接着在步骤s306处,接收来自同化发起方的经同态加密后的观测数据、观测算子和观测误差协方差矩阵。
[0095]
当观测信息来源于非公开的、非单独观测站点时,则利用同化请求中包括的公钥对背景场格点空间位置信息和背景场误差协方差矩阵加密后发送,即在步骤s307处,向同化发起方发送接受同化请求的指令和加密后的背景场格点空间位置信息、背景场误差协方差矩阵。然后在步骤s308处,接收来自同化发起方的经同态加密后的观测数据、观测算子和增益矩阵。
[0096]
接着,在步骤s309处,根据观测算子对背景场信息进行计算得到背景场信息到观测点的映射。在一个应用场景中,背景场信息到观测点的映射采用以下公式计算得到:
[0097]
x
bo
=hxbꢀꢀꢀꢀ
(18)
[0098]
其中,x
bo
为背景场信息到观测点的映射,h为观测算子,xb为背景场数据,并且当h为加密的观测算子时,x
bo
为加密的背景场信息到观测点的映射。
[0099]
在步骤s310处,根据增益矩阵、所述背景场信息到观测点的映射和经同态加密后的观测信息进行同态运算,以得到针对背景场的订正信息。在步骤s311处,根据背景场信息和针对背景场的订正信息确定同化后的密文结果。在一个应用场景中,同化后的密文结果采用以下公式计算:
[0100]
ca=xb g(c
o-x
bo
)
ꢀꢀꢀꢀ
(19)
[0101]
其中,xb为背景场数据,g(c
o-x
bo
)为针对背景场的订正信息,x
bo
为背景场信息到观测点的映射,co为经同态加密后的观测数据,g为增益矩阵,并且当采用加密的观测算子时,g为加密的增益矩阵且x
bo
为加密的背景场信息到观测点的映射。
[0102]
图4是示意性示出根据本发明的实施例的用于进行数据同化的另一种方法400的示意图。可以理解的是图4中所示出的方法流程可以在图1中所示出的示例性场景中实施,并且由图1中的同化发起方来执行,因此关于图1所描述内容(关于机构b实现的功能)也同样适用于图4。
[0103]
如图4所示,在步骤s401处,向同化响应方发送同化请求。在步骤s402处,响应于接收到来自同化响应方的响应信息,向同化响应方发送经同态加密后的观测信息。在一些实施例中,同化发起方可能接收来自同化响应方的接受同化请求的指令,也可能接收来自同化响应方的接受同化请求的指令,以及经同态加密后的以下数据中的一种或多种:背景场格点空间位置信息、背景场误差协方差矩阵。进一步,在向同化响应方发送经同态加密后的观测信息时,可以根据同化发起方的观测信息来源,选择发送对应的观测电信息。例如,如果观测信息来源于公开的观测站点,则向同化响应方发送经同态加密后的观测数据。若观测信息来源于非公开的观测站点,则除了需要向同化响应方发送经同态加密后的观测信息,还需要选择性发送经同态加密后的以下数据中的一种或多种:观测算子、增益矩阵和观测误差协方差矩阵。在步骤s403处,接收来自同化响应方的同化后的密文结果。最后在步骤s404处,对密文结果进行解密,以获取数据同化结果。
[0104]
以上结合图4对本发明中方案中同化发起方所执行的功能进行了简单说明。同化发起方将基于观测点的情况向同化响应方发送不同的信息,接下来将结合观测信息的不同来源对同化发起方所执行的方法进一步详细阐述。
[0105]
图5是示意性示出根据本发明的实施例的同化发起方执行的方法500的示意图。可以理解的是图5中所示出的方法流程可以在图1中所示出的示例性场景中实施,因此关于图1所描述内容(关于机构b实现的功能)也同样适用于图5。
[0106]
如图5所示,在步骤s501处,向同化响应方发送同化请求。在步骤s502处,基于观测信息来源的不同,分别执行不同的信息接收、发送操作。
[0107]
如果观测信息来源于公开的观测站点,则执行步骤s503,接收来自同化响应方的同化请求的指令。并且在步骤s504处,向同化响应方发送经同态加密后的观测数据。
[0108]
若观测信息来源于非公开的、单独观测站点,则在步骤s505处,将接收到来自同化响应方的接受同化请求的指令和背景场格点空间位置信息。并利用公钥对观测算子和观测误差协方差矩阵进行同态加密后发送至同化响应方,即在步骤s506处,向同化响应方发送经同态加密后的观测数据、观测算子和观测误差协方差矩阵。
[0109]
当观测信息来源于非公开的、非单独观测站点时,在步骤s507处,接收来自同化响应方的接受同化请求的指令、经同态加密的背景场格点空间位置信息和背景场误差协方差矩阵。然后同化发起方可以利用公钥对观测算子和增益矩阵进行同态加密,并在步骤s508处,向同化响应方发送经同态加密后的观测数据、观测算子和增益矩阵。
[0110]
在一些实施例中,当观测信息来源于非公开的观测站点时,观测算子的计算公式为:
[0111]
h=f(loc_b,loc_c)
ꢀꢀꢀꢀꢀꢀꢀ
(20)
[0112]
其中,h为观测算子,loc_b为利用私钥解密后的背景场空间格点位置,loc_c为观测点空间格点位置。
[0113]
进一步,增益矩阵的计算公式为:
[0114]
g=ph
t
(r hph
t
)-1
ꢀꢀꢀꢀꢀꢀ
(21)
[0115]
其中,g为增益矩阵,p为利用私钥解密后的背景场误差协方差矩阵,r为观测误差协方差矩阵,h为观测算子。
[0116]
接下来将结合具体过程对本发明中同化响应方(机构a)和同化发起方(机构b)之间的数据交互和数据处理过程进行详细说明。
[0117]
图6a至图6c是示意性示出根据本发明的实施例的同化响应方和同化发起方的交互过程的示意图。图6a至图6c分别示出了基于观测信息来源划分的三种不同情况下的交互过程。
[0118]
如图6a中示出了第一种情况:观测信息来源于非公开、非单独的观测站点。机构a和机构b主要包括以下5个步骤的交互、计算过程。
[0119]
(1)当机构b为非公开、非单独的观测站点时,机构b可以设定安全参数λ,同态加密方案生成公私密钥对(pk,sk)。并同时向机构a发送同化请求,该同化请求中可以包括公钥信息pk。例如密钥生成过程为(sk,pk)=keygen(λ)。
[0120]
(2)如果机构a接受请求,将会向机构b发送接受同化请求的指令。并同时将当前的背景场格点空间位置信息(loc_b)与背景场误差协方差矩阵(p)分别进行加密,并将密文与
接受同化请求的指令向机构b发送。例如加密过程为c
loc_b
=enc(loc_b,pk),c
p
=enc(p,pk)。
[0121]
(3)机构b对接收到的密文进行解密,loc_b=dec(c
loc_b
,sk),p=dec(c
p
,sk),并依据前述观测算子的计算公式计算观测算子h,再计算增益矩阵g,并将h、g以及观测数据xo加密后的密文发送给机构a。例如,ch=enc(h,pk),cg=enc(g,pk),co=enc(xo,pk)
[0122]
(4)机构a首先用观测算子密文对持有的背景场数据进行同态运算得到背景场数据到观测点的密文映射,c
bo
=ch*xb,再计算针对背景场的订正信息,最终得到分析场的密文结果,ca=xb cg(c
o-c
bo
),并发还给机构b。
[0123]
(5)机构b采用私钥解密获取到同化结果,解密过程为xa=dec(ca,sk)。
[0124]
需要说明的是,在上述过程中通过对明文向量进行单指令批处理(single instruction multiple data,simd)的加密方式,可实现机构a中密文的同态乘法对应明文向量的内积运算,从而进一步实现矩阵密文与向量密文的乘积运算。
[0125]
上述第一种情况中,机构a所拥有的物理变量,即背景场信息(xb)并没有泄露给机构b。同时,机构b所拥有的观测信息的向量(xo)与观测点空间位置有关的观测算子h矩阵均以密文形式传输。因此,机构a和机构b双方的原始信息与位置信息均得到了保护。
[0126]
而且,机构a向机构b发送了背景场格点位置信息与误差协方差矩阵信息,但对于机构a而言,前者属于客观信息,比如经纬网格的位置信息几乎是公开的,所以可不作为隐私进行保护,对于后者,尽管机构b拿到了背景场误差协方差矩阵,但该矩阵是基于格点历史样本的误差统计信息获取的,其本质是对误差的描述,因此,并不能从中获取到背景场信息。基于此,本发明的方案使得数据的隐私性得到较好的保护。
[0127]
另外,机构b作为同化发起方,持有解密私钥。在确保私钥安全的前提下,作为同化响应方的机构a在持有公钥与来自机构b的密文信息时,假定机构a与机构b均是“半诚实”的参与方,密文信息对机构a的安全性取决于同态加密方案的安全强度。因此,本发明的方案中所采用的全同态加密方案至少需要达到选择明文攻击(choose plaintext attack,cpa)的安全强度。
[0128]
如图6b中示出了第二种情况:观测信息来源于非公开、单独的观测站点。
[0129]
当机构b为非公开、单独的观测站点时,机构b的观测数据将由向量退化为标量数据,此时前述步骤(2)中机构a将不再向机构b发送背景场误差协方差矩阵。并且在步骤(3)中机构b也不必计算增益矩阵,而是由机构a基于密文同态计算获取增益矩阵的密文。例如,cg=p*ch*poly(cr ch*p*ch),c
bo
=ch*xb。
[0130]
该第二种情况相对于第一种情况的优势是增益矩阵等由具有丰富的计算资源的机构a完成,从而可以减小机构b的计算成本。并且由于需要传输的数据量减少,可以进一步减小通信成本。
[0131]
如图6c中示出了第三种情况:观测信息来源于公开的观测站点。
[0132]
当机构b为公开的观测站点时,即机构b采用的是公开的观测仪器,相对应的观测误差协方差矩阵r也被公开。如果在同一公开观测点个数m和空间位置信息(loc_o)的情况下,前述第二种情况可以进行进一步简化。在前述步骤(2)中只需要向机构b发送接受同化请求的指令,并且在步骤(3)中只需要向机构a发送经同态加密后的观测数据。机构a在执行同化计算操作时,只需结合公开的观测算子和增益矩阵进行分析场的计算即可。例如采用
计算背景场数据到观测点的映射时,采用公式x
bo
=h*xb,计算分析场信息时,ca=xb g*(c
o-x
bo
)得到数据同化结果的密文结果。
[0133]
在此种情况下,观测点位置信息并不作为隐私信息进行保护,增益矩阵的计算由机构a完成,而来自机构b的观测数据依然可以收到保护。需要说明的是,第三种情况下的数据同化计算过程除了进一步减小计算成本和通信成本,其计算同化结果(即分析场信息)的过程不再设计密文的同态乘法运算,因而也可以使用半同态加密方案。
[0134]
图7是示出根据本发明实施例的用于进行数据同化的设备700的示意框图。该设备700可以包括根据本发明实施例的设备701以及其外围设备和外部网络。设备701实现数据接收、发送和同化计算等操作,以实现前述结合图2至图5所述的本发明的方案。
[0135]
如图7中所示,设备701可以包括cpu7011,其可以是通用cpu、专用cpu或者其他信息处理以及程序运行的执行单元。进一步,设备701还可以包括大容量存储器7012和只读存储器rom 7013,其中大容量存储器7012可以配置用于存储各类数据以及计算特征值距离所需的各种程序,rom 7013可以配置成存储对于设备701的加电自检、系统中各功能模块的初始化、系统的基本输入/输出的驱动程序及引导操作系统所需的数据。
[0136]
进一步,设备701还包括其他的硬件平台或组件,例如示出的tpu(tensor processing unit,张量处理单元)7014、gpu(graphic processing unit,图形处理器)7015、fpga(field programmable gate array,现场可编程逻辑门阵列)7016和mlu(memory logic unit),存储器逻辑单元)7017。可以理解的是,尽管在设备701中示出了多种硬件平台或组件,但这里仅仅是示例性的而非限制性的,本领域技术人员可以根据实际需要增加或移除相应的硬件。例如,设备701可以仅包括cpu作为公知硬件平台和另一硬件平台作为本发明的测试硬件平台。
[0137]
本发明的设备701还包括通信接口7018,从而可以通过该通信接口7018连接到局域网/无线局域网(lan/wlan)705,进而可以通过lan/wlan连接到本地服务器706或连接到因特网(“internet”)707。替代地或附加地,本发明的设备701还可以通过通信接口7018基于无线通信技术直接连接到因特网或蜂窝网络,例如基于第三代(“3g”)、第四代(“4g”)或第5代(“5g”)的无线通信技术。在一些应用场景中,本发明的设备701还可以根据需要访问外部网络的服务器708以及可能的数据库709。
[0138]
设备701的外围设备可以包括显示装置702、输入装置703以及数据传输接口704。在一个实施例中,显示装置702可以例如包括一个或多个扬声器和/或一个或多个视觉显示器。输入装置703可以包括例如键盘、鼠标、麦克风、姿势捕捉相机,或其他输入按钮或控件,其配置用于接收数据的输入或用户指令。数据传输接口704可以包括例如串行接口、并行接口或通用串行总线接口(“usb”)、小型计算机系统接口(“scsi”)、串行ata、火线(“firewire”)、pci express和高清多媒体接口(“hdmi”)等,其配置用于与其他设备或系统的数据传输和交互。
[0139]
本发明的设备701的上述cpu 7011、大容量存储器7012、只读存储器rom 7013、tpu 7014、gpu 7015、fpga 7016、mlu 7017和通信接口7018可以通过总线7019相互连接,并且通过该总线与外围设备实现数据交互。在一个实施例中,通过该总线7019,cpu 7011可以控制设备701中的其他硬件组件及其外围设备。
[0140]
在工作中,本发明的设备701的处理器cpu 7011可以通过输入装置703或数据传输
接口704获取来自同化发起方或同化响应方的数据信息,并调取存储于存储器7012中的计算机程序指令或代码进行数据处理,以完成数据同化过程。
[0141]
从上面关于本发明模块化设计的描述可以看出,本发明的系统可以根据应用场景或需求进行灵活地布置而不限于附图所示出的架构。进一步,还应当理解,本发明示例的执行操作的任何模块、单元、组件、服务器、计算机或设备可以包括或以其他方式访问计算机可读介质,诸如存储介质、计算机存储介质或数据存储设备(可移除的)和/或不可移动的)例如磁盘、光盘或磁带。计算机存储介质可以包括以用于存储信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质,例如计算机可读指令、数据结构、程序模块或其他数据。基于此,本发明也公开了一种计算机可读存储介质,其上存储有用于进行数据同化的计算机可读指令,该计算机可读指令被一个或多个处理器执行时,实现在前结合附图所描述的方法和操作。
[0142]
虽然本说明书已经示出和描述了本发明的多个实施方式,但对于本领域技术人员显而易见的是,这样的实施方式是仅以示例的方式提供的。本领域技术人员在不偏离本发明思想和精神的情况下想到许多更改、改变和替代的方式。应当理解在实践本发明的过程中,可以采用本文所描述的本发明实施方式的各种替代方案。所附权利要求书旨在限定本发明的保护范围,并因此覆盖这些权利要求范围内的模块组成、等同或替代方案。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献