一种多核系统中的抗干扰热隐蔽通道通信方法与流程

文档序号:20778634发布日期:2020-05-19 21:01阅读:180来源:国知局
一种多核系统中的抗干扰热隐蔽通道通信方法与流程

本发明涉及隐蔽通道通信的研究领域,特别涉及一种多核系统中的抗干扰热隐蔽通道通信方法。



背景技术:

现有技术中,多核系统中的热隐蔽信道利用芯片温度的变化来泄露用户的敏感信息,这对多核系统产生了巨大的威胁。然而由于热传输慢的特点,以及温度传感器分辨率低的原因,热信号频率不可能很高,极易受到噪声的干扰。特别是当有一个与通信频率相同的信号存在时,基本不能传输信息。



技术实现要素:

本发明的目的在于克服现有技术的缺点与不足,提供一种多核系统中的抗干扰热隐蔽通道通信方法;提出了一种动态频率改变的抗干扰通信方法,有效的解决与通信频率相同的信号存在时的噪声干扰问题,即有干扰存在时,极大的降低了通信的误码率。。

本发明的目的通过以下的技术方案实现:

一种多核系统中的抗干扰热隐蔽通道通信方法,其特征在于,包括以下步骤:

s1、热隐蔽通道发送端将敏感数据进行编码,得到数据包;

s2、通过控制处理器的功耗调制温度变化,得到温度信号,将温度信号在隐蔽通道中传输;

s3、在通信过程中检测热隐蔽通道阻塞情况;

s4、根据阻塞情况动态改变传输频率;

s5、热隐蔽通道接收端接收温度信号并译码,得到敏感数据。

进一步地,所述步骤s1具体为:热隐蔽通道发送端将敏感数据加入识别码,根据识别码,划分不同数据包。

进一步地,所述识别码包括前导码、ecc码、ack码、dfc标志码;所述数据包包括data数据包、ack数据包、dfcq数据包、dfca数据包;其中,data数据包包括前导码、ack码、dfc标志码、有效载荷、ecc码;ack数据包、dfca数据包包含前导码、ack码、dfc标志码、ecc码;dfcq数据包包括前导码、ack码、dfc标志码、dfc码、ecc码。

进一步地,所述步骤s2具体为:分别使用cpu密集型和cpu空闲状态的程序产生高温和低温,通过控制处理器的功耗调制温度变化,得到相应的温度信号,并在隐蔽通道中传输;即比特‘1’编码为温度的上升然后下降,比特‘0’编码为温度的不变或下降。

进一步地,所述步骤s3具体为:热隐蔽通道发送端与接收端建立通信时,使用相同频率,对信道阻塞情况的检测采用三种检测机制进行,三种检测机制包括:自我检测机制、故障累积机制、脱机轮询机制。

进一步地,所述自我检测机制具体为:热隐蔽通道发送端进行自检,发送端发送数据包时,同时从发送端核心的温度传感器接收数据包,并将其接收的数据包与发送的数据包进行比较,计算误码率,如误码率超过第一阈值tber,则认为热隐蔽通道被阻塞;所述第一阈值tber取值为0.3<tber<0.5;

所述故障累积机制具体为:通过热隐蔽通道发送端的故障计数器计数发送端中累积的故障次数,当发送分组时,发送端启动定时器,若定时器超过第二阈值t1,没有收到接收端的答复,则故障计数器增加1;若在第二阈值t1之内收到接收端的答复,则故障计数器重置为0,当故障计数器超过3,则认为热隐蔽通道被阻塞;所述第二阈值t1为发送单个数据包需要时间的一半;

所述脱机轮询机制具体为:在极端情况下,由于严重的干扰噪声,接收端无法正确解码来自发送端的动态频率更改请求数据包,发送端和接收端保留计时器ttcc,记录上一次在动态频率更改的时间,若ttcc超过第三阈值t3,则发送端和接收端根据预先设定的传输频率组顺序进行更改频率,发送端将发送频率更改为fi并发送data数据包,若发生端未接收到ack数据包,则发送端在时间间隔之后将其传输频率迭代更改为fi+1,直到发送端接收到ack数据包;同时,接收端将接收频率更改为fi,准备接收数据包,若没有接收到正确的数据包,则接收端将接收频率迭代更改为fi+1,直到发送端和接收端在新的频率建立通信。

进一步地,所述步骤s4具体为:当热隐蔽通道被阻塞时,触发动态频率更改机制,发送端检查预先设定的传输频率组的每个频率,排除当前使用频率,对于每个选定频率fj,发送端通过将热隐蔽通道的信号幅度和给定的阈值进行比较,测试该热隐蔽通道是否被阻塞,若选定频率fj不可用,则选择下一个频率进行测试,直到找到可用频率,若选定频率fj可用,则开始动态频率更改;所述给定的阈值为在无信号传输时噪音信号的平均幅度;

发送端向接收端发送动态频率更改请求dfcq(fi,fj),即dfcq数据包在热隐蔽通道的频率由fi请求更改为fj,发送端为dfcq数据包设置数据包计时器tp,并等待接收端的答复,若在计时器tp超时之前有答复,则发送端进入下一步操作,否则,将重新发送更改请求;接收端接收到更改请求dfcq(fi,fj)后,设置fir滤波器的中心频率为fj以接收数据包,并以频率向发送端发送答复dfca(fi,fj),即热隐蔽通道同意将频率由fi更改为fj;

若发生端接收到答复dfca(fi,fj),则将频率更改为fj,并以频率fj发送数据包,若在计时器tp超时之前没有收到任何数据包,则发送端重新发送更改请求。

进一步地,所述动态频率更改还包括:当发送端无法正确接收dfcq数据包时,发送端仍使用频率fi与接收端进行通信,在接收端设置动态频率改变定时器tfh,若tfh超过阈值t4,则超时;若接收端以新的频率接收数据包,即发送端成功更改频率为fj,计时器tfh复位;若tfh超时,则发送端和接收端启动脱机轮询机制。

进一步地,所述预先设定的传输频率组为f,f={f1,f2…,fm}。

进一步地,所述步骤s5具体为:

1)对温度信号进行带通滤波,输出只包含通信频率fi的带通信号;

2)对带通信号进行整流、低通滤波,输出信号包络;

3)对信号包络进行判决,输出基带信号;

4)根据编码方式进行解码。

本发明与现有技术相比,具有如下优点和有益效果:

本发明通过多核的热隐蔽通道进行敏感数据传输,采用跳频方法动态改变其传输频率,并采用多种检测机制检测热隐蔽通道受干扰情况,结合动态频率变化的通信协议实现动态频率更改,保障热隐蔽通道进行安全数据传输,减少通信干扰,避免信道阻塞。

附图说明

图1为本发明所述一种多核系统中的抗干扰热隐蔽通道通信方法的通信流程图;

图2为本发明所述实施例中data数据包格式示意图;

图3为本发明所述实施例中ack/dfca数据包格式示意图;

图4为本发明所述实施例中dfcq数据包格式示意图;

图5为本发明所述实施例中编码与频率之间的映射示意图;

图6为本发明所述实施例中比特‘1’与功率之间的关系示意图;

图7为本发送所述实施例中比特‘1’与温度之间的关系示意图;

图8为本发明所述实施例中比特‘0’与功率之间的关系示意图;

图9为本发送所述实施例中比特‘0’与温度之间的关系示意图;

图10为本发明所述实施例中动态频率更改的三种触发机制示意图;

图11为本发明实施例中动态频率更改模块流程示意图;

图12为本发明实施例中抗干扰热隐蔽通道各模块之间协作完成通信示意图。

具体实施方式

下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。

实施例:

多核系统的热隐蔽通道主要由发送端与接收端两个部分组成,如图1所示,它们在相同或不同的处理器核心上运行,通过编码芯片温度进行通信,传输敏感数据。

为避免阻塞,应动态更改传输频率,以保护热隐蔽通道中的通信。提出一种支持动态频率更改的通信协议,发送方能够检测到干扰,并请求接收方执行动态频率更改。接收方能够识别频率请求并更改其fir滤波器中心频率。正常通信中热隐蔽通道使用基于请求确认的通信协议,在每次传输中,发送方向接收方发送请求数据包req,接收方回复ack数据包。之后传输开始,直到发送方向接收方发送ter数据包终止。

一种多核系统中的抗干扰热隐蔽通道通信方法,包括以下步骤:

第一步、热隐蔽通道发送端将敏感数据进行编码,得到数据包;具体为:热隐蔽通道发送端将敏感数据加入识别码,根据识别码,划分不同数据包。所述识别码包括前导码、ecc码、ack码、dfc标志码;所述数据包包括data数据包、ack数据包、dfcq数据包、dfca数据包;其中,data数据包如图2所示,包括前导码、ack码、dfc标志码、有效载荷、ecc码;ack数据包、dfca数据包如图3所示,包含前导码、ack码、dfc标志码、ecc码;dfcq数据包如图4所示,包括前导码、ack码、dfc标志码、dfc码、ecc码。

前导码数据字段是101010的比特流,用作包开始的指示符。如果数据包类型为ack,则1位ack标志为“1”,否则为“0”。如果是dfcq或dfca数据包,则将1位的dfc标志位设置为“1”,否则将其设置为“0”。n1位ecc代码用于纠错。n3位dfc码用于指示特定频率。频率和编码之间的映射如图5所示。

第二步、通过控制处理器的功耗调制温度变化,得到温度信号,将温度信号在隐蔽通道中传输;具体为:分别使用cpu密集型和cpu空闲状态的程序产生高温和低温,通过控制处理器的功耗调制温度变化,得到相应的温度信号,并在隐蔽通道中传输。为了产生温度信号,使用cpu密集型和cpu空闲状态的程序来产生高温和低温。通过控制处理器的功耗来调制温度变化。

假设传输频率为f1,信号变化周期为1/f1。要发送比特‘1’,在前1/2f1周期中运行cpu绑定程序,然后在下一个1/2f1周期中运行cpu空闲程序。要传输比特‘0’,则在整个1/f1周期内运行cpu空闲程序。图6,7,8,9展示了发送‘1’和‘0’时的cpu功率与片上温度之间的关系,其中图6为发送‘1’时功率变化,图7为发送‘1’时温度变化,图8为发送‘0’时功率变化,图9为发送‘0’时温度变化。

第三步、在通信过程中检测热隐蔽通道阻塞情况;具体如下:为了支持动态频率改变,上述通信协议被增强如下:

假设隐蔽信道可以使用一组传输频率f={f1,f2…,fm}。首先,将发送方和接收方初始化为使用相同的频率f1。它们以常规(非动态频率变化)方式进行通信。

通信协议提供了三种机制来检测信道是否被阻塞,对信道阻塞情况的检测采用三种检测机制进行,三种检测机制包括:自我检测机制、故障累积机制、脱机轮询机制,如图10所示。

所述自我检测机制具体为:热隐蔽通道发送端进行自检,发送端发送数据包时,同时从发送端核心的温度传感器接收数据包,并将其接收的数据包与发送的数据包进行比较,计算误码率,如误码率超过第一阈值tber,则认为热隐蔽通道被阻塞;所述第一阈值tber取值为0.3<tber<0.5;

所述故障累积机制具体为:通过热隐蔽通道发送端的故障计数器计数发送端中累积的故障次数,当发送分组时,发送端启动定时器,若定时器超过第二阈值t1,没有收到接收端的答复,则故障计数器增加1;若在第二阈值t1之内收到接收端的答复,则故障计数器重置为0,当故障计数器超过3,则认为热隐蔽通道被阻塞;所述第二阈值t1为发送单个数据包需要时间的一半;

尽管前两种机制涵盖了大多数干扰情况,在极端情况下,由于严重的干扰噪声,接收端无法正确解码来自发送端的动态频率更改请求数据包dfcq,发送方和接收方都只能从彼此接收不正确的数据包,他们处于“离线”模式,无法正确相互通信。所述脱机轮询机制具体为:发送端和接收端保留计时器ttcc,记录上一次在频率fi接收的时间,若ttcc超过第三阈值t3,则发送端和接收端根据预先设定的传输频率组顺序进行更改频率,即按照{f1,f2…,fm,f1,f2,…}相同的顺序进行更改频率,发送端将发送频率更改为fi并发送data数据包,若发生端未接收到ack数据包,则发送端在时间间隔之后将其传输频率迭代更改为fi+1,直到发送端接收到ack数据包;同时,接收端将接收频率更改为fi,准备接收数据包,若没有接收到正确的数据包,则接收端将接收频率迭代更改为fi+1,直到发送端和接收端在新的频率建立通信。

第四步、根据阻塞情况动态改变传输频率,如图11所示;具体为:一旦检测到信道被阻塞,就会触发动态频率更改。动态频率变化的通信协议如下。现在假设隐蔽信道工作在频率fi。

1)发送方检查预先设定的传输频率组f中的每个频率,当前使用的fi除外。对于每个选定的频率fj,发送方通过将信道的信号幅度与给定的阈值进行比较,来测试该信道是否被阻塞。如果fj不可用,则选择下一个频率并进行测试,直到找到可用频率为止。如果fj可用,则动态频率更改开始。

2)发送方向接收方发送动态频率更改请求dfcq(fi,fj),指示此数据包将在fj这是当前工作的隐蔽通道)发送,并请求更改为fj。然后,发送方为dfcq数据包设置数据包计时器tp,并等待来自接收方的答复。如果在tp超时之前有答复,则发送方转到步骤4。否则,将重新发送更改请求dfcq(fi,fj)。

3)接收方在收到dfcq数据包后执行以下步骤:

3.1)设置fir滤波器的中心频率为fj以接收请求数据包。

3.2)它以频率fi向发送方发送dfca(fi,fj),指示隐蔽通道现在在fi处工作并同意更改为fj。

3.3)以上两个步骤保证了正常通信下动态频率变化的同步。但是,考虑到发送方无法正确接收步骤2)中的dfcq数据包的情况,发送方仍然使用fi与接收方进行通信,这会导致传输失败。为了解决这个问题,接收方设置了动态频率改变定时器tfh。如果tfh超过阈值t4,则超时。如果接收方以新的频率fj接收数据包,这意味着发送方也成功更改为fj,则此计时器复位。如果tfh超时,则发送方和接收方将启动脱机轮询机制。

4)如果发送方收到dfca数据包,则将其传输和自检频率更改为fj。它开始以新的频率fj发送数据包。如果在tp超时之前未收到任何数据包,则发送方返回到第一步,并尝试选择另一个频道。

第五步、热隐蔽通道接收端接收温度信号并译码,得到敏感数据。分为以下几个步骤进行:

1)温度采集:现代处理器都具有数字温度传感器,它实时读取芯片温度并将其存储在温度寄存器内,通过读取温度寄存器的值可以获取温度数据;

2)带通滤波:带通滤波过滤掉热信号中固定频率之外的信号,输出只包含频率为fi的信号,即信息传输的频率;

3)整流、低通滤波:对带通信号整流滤波后得到信号的包络;

4)判决:对信号的包络进行判决输出,得到基带信号;

5)解码:根据编码方式,如单极性归零码将‘1’编码为‘1’,将‘0’编码为‘0’,对基带信号进行解码。

热隐蔽通道包括发送端和接收端;抗干扰热隐蔽通道各模块之间协作完成通信示意图如图12所示;

发送端包括传输模块、接收模块、动态频率触发模块、动态频率更改模块;其中,

传输模块通过隐蔽通道发送敏感数据;

接收模块通过读取其热传感器记录温度信号,并将解码后的信号解码为ack/nak。

动态频率触发模块,用于检测干扰。共有三种机制来检测干扰,自我检查,故障累积计数器和离线轮询,并且发送方同时使用所有这三种检测机制。三种机制中的任何一种都将能够触发动态频率变化模块。

动态频率更改模块,它用于更改为新频率以避免信道被阻塞。首先,它选择一个要更改为的可用频率。然后,发送端发送dfcq(fi,fj)并等待来自接收端的答复。如果在tp超时之前没有应答,则应重新发送dfcq(fi,fj)。如果从接收端接收到dfca(fi,fj)数据包,则发送端将其传输频率更改为fi并从该点开始以fj进行通信。

接收端包括发送模块、接收模块、动态频率更改模块;其中,

发送模块通过热隐蔽通道发送ack/nack。

接收模块通过读取其热传感器记录温度信号,并对信号进行解码。

动态频率更改模块将fir滤波器的中心频率设置为fj,并将dfca数据包回复给发送端。

上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1