一种基于不可信云FPGA的可信通信方法及系统

文档序号:36723215发布日期:2024-01-16 12:27阅读:19来源:国知局
一种基于不可信云FPGA的可信通信方法及系统

本发明属于安全通信,尤其涉及一种基于不可信云fpga的可信通信方法及系统。


背景技术:

1、本部分的陈述仅仅是提供了与本发明相关的背景技术信息,不必然构成在先技术。

2、随着大数据时代的到来,互联网时时刻刻释放出海量的数据;为了从这些海量的数据中获取有用的信息,人们开始分析并计算这些数据,从而获得自己想要的结果;但是,如果想要计算这些数据,必须考虑软硬件设备的开销,来保证计算的灵活性和可靠性;因此,远程计算服务应运而生。

3、远程计算服务提供了在远程服务器上运行应用程序和处理数据的能力,用户只需在支付一定的费用后,上传想要计算的数据到远程服务器上,就可以高效地处理大量数据的计算;虽然远程计算服务商已经采取了很多种措施来保护用户的数据安全和隐私,但在海量数据背后隐藏的巨大经济利益之下,还是会有一些攻击者通过非法的手段来从中获取利益。

4、比如,在一种软件即服务的云中,包括应用程序和远程用户数据在内的一切都由云服务器管理,在这种计算模型下,远程服务器的内部管理员本身就存在威胁,他们可以对用户的隐私数据进行无限制的访问;在这种情况下,负责管理远程计算服务器的内部人员是不可信的;同时,恶意内部工作人员还可能会在用户使用fpga之前将恶意代码植入fpga的配置内存中,使fpga变为恶意硬件模块。

5、因此,现有方案中远程计算服务商的不可信云依然存在漏洞,面临恶意威胁,难以保护用户的数据安全和隐私。


技术实现思路

1、为克服上述现有技术的不足,本发明提供了一种基于不可信云fpga的可信通信方法及系统,对不可信云fpga进行远程认证和密钥协商,通过密钥协商后的会话密钥,将隐私数据上传到认证后的fpga中,从而实现可信通信,极大增强通信的安全性。

2、为实现上述目的,本发明的一个或多个实施例提供了如下技术方案:

3、本发明第一方面提供了一种基于不可信云fpga的可信通信方法。

4、一种基于不可信云fpga的可信通信方法,包括:

5、远程用户在租赁云端fpga使用权时,从fpga生产厂商那获取所租赁区域的认证信息,包括所租赁区域的认证码、二进制填充比特流以及其填充后所计算的哈希值;

6、远程用户在与云端fpga进行通信前,基于认证信息进行远程认证,在认证过程中同时进行密钥协商,生成会话密钥;

7、利用会话密钥将隐私数据上传到租赁区域,远程用户与远程认证后的云端fpga进行可信通信;

8、其中,所述远程认证是远程用户将签名后的认证码、二进制填充比特流发送给云端fpga,云端fpga依据认证码确定所租赁的区域,通过二进制填充比特流对区域进行填充,计算填充后的哈希值并回传给远程用户;远程用户通过比对fpga生产厂商提供的哈希值与云端fpga回传过来的哈希值是否相同,判断fpga是否是可信的,从而完成远程认证。

9、进一步的,所述fpga生产厂商在fpga出厂前,将fpga内部可重构的动态区域分成若干块,每个动态区域块在物理和逻辑上都是相互独立的,每个动态区域块生成自己唯一的认证码和二进制填充比特流;

10、所述远程用户租赁云端fpga使用权,是从划分的动态区域中分配动态区域块给远程用户使用。

11、进一步的,所述fpga生产厂商在fpga出厂前,还会在fpga内部嵌入一个用于加解密认证的主私钥,每块fpga板都会对应不同的主私钥,将主私钥储存到安全代理sp中。

12、进一步的,所述远程用户的远程认证和密钥协商,都是通过云端fpga中的安全代理sp实现的,远程用户向sp验证所租赁区域的真实性与完整性,sp在与远程认证的过程中参与密钥协商的过程;当远程用户完成对云端fpga的认证后获得与其通信的会话密钥,通过此会话密钥远程用户将自已本地隐私数据传输给sp,sp将隐私数据使用会话密钥解密并在fpga内部将数据传送到所租赁区域,数据进入分区后再进行下一步计算。

13、进一步的,所述远程认证的具体步骤为:

14、远程用户通过自己的id租赁云端fpga使用权后用sm2算法生成自己的公私钥对,并向fpga生产厂商公布自己的公钥;

15、云端fpga中的安全代理sp通过安全比特流加载机制加载sp功能并安装在静态区域;sp安装完成后,sp自动加载fpga生产厂商在sp中嵌入的主私钥;

16、远程用户使用数字签名算法签名自己的id,向fpga生产厂商请求其所租赁部分的认证信息,为防止重放攻击需要添加时间戳一同发往fpga端;

17、fpga生产厂商将远程用户所租赁区域di的认证码dmaci、二进制填充比特流bbai以及其填充后所计算的哈希值发送给远程用户,供用户认证云端fpga的正确性及完整性;其次,fpga生产厂商将公布给用户云端fpga上所嵌入主私钥的公钥;

18、远程用户用sp公钥加密被签名认证的认证码dmaci以及其对应的bbai发送给sp,为防止重放攻击同样需要添加时间戳发送给sp;

19、sp认证远程用户并使用嵌入在sp中的主私钥解密远程用户的信息,通过认证码寻找到其所对应的租赁区域di,将二进制填充比特流bbai对区域进行填充,并计算其填充后的hash′i值;

20、sp通过使用远程用户的公钥加密被其签名认证的hash′i值以及时间戳返回给用户方;

21、远程用户通过比对fpga生产厂商提供的哈希值与sp端发送过来的hash′i值是否相同,从而判断fpga是否是可信的。

22、进一步的,所述密钥协商的具体步骤为:

23、在正式进入密钥协商之前,将密钥协商过程中的公共参数及原始数据都包含在用户所注册的id信息中,包括椭圆曲线参数,远程用户端与云端fpga的安全代理sp通过随机数生成器生成一定安全长度的随机数,分别为ra和rb;

24、远程用户在自己的客户端利用随机数生成器生成的随机数ra计算其临时密钥值ra,通过用户使用加密消息ufq一同发送给云端fpga;

25、sp利用随机数生成器生成随机数rb,之后进行与远程用户端相同的操作得到其临时密钥值rb,当云端fpga收到ufq消息后,使用其自己主私钥进行解密得到远程用户的临时密钥ra,sp得到ra之后,进行临时密钥的验证、共享密钥kb的计算和共享密钥kb的hash值s2的计算,在使用sm2数字签名算法后密文fkr中添加rb及s2一同发给远程用户;

26、远程用户收到消息fkr值后,使用自己的私钥解密该消息,用数字签名算法验证是否是云端fpga发送过来的,当远程用户解密得到rb后进行与远程用户相同的操作后得到密钥交换协议商定的共享密钥ka,以及为验证共享密钥ka正确性的hash值s1以供远程用户与云端fpga发送过来的s1进行认证;

27、在远程用户远程认证云端fpga通过后,远程用户进一步判断密钥协商后所得的哈希值s1与云端fpga发送过来的哈希值s2是否相同,如果相同则安全会话密钥kab=ka=kb也建立完成。

28、进一步的,所述二进制填充比特流,是根据动态区域块上存储的数据生成的,通过二进制填充比特流对区域进行填充,利用安全可擦除证明机制,完成对区域的初始化,实现对恶意代码的清除。

29、本发明第二方面提供了一种基于不可信云fpga的可信通信系统。

30、一种基于不可信云fpga的可信通信系统,包括用户租赁模块、认证协商模块和可信通信模块:

31、用户租赁模块,被配置为:远程用户在租赁云端fpga使用权时,从fpga生产厂商那获取所租赁区域的认证信息,包括所租赁区域的认证码、二进制填充比特流以及其填充后所计算的哈希值;

32、认证协商模块,被配置为:远程用户在与云端fpga进行通信前,基于认证信息进行远程认证,在认证过程中同时进行密钥协商,生成会话密钥;

33、可信通信模块,被配置为:利用会话密钥将隐私数据上传到租赁区域,远程用户与远程认证后的云端fpga进行可信通信;

34、其中,所述远程认证是远程用户将签名后的认证码、二进制填充比特流发送给云端fpga,云端fpga依据认证码确定所租赁的区域,通过二进制填充比特流对区域进行填充,计算填充后的哈希值并回传给远程用户;远程用户通过比对fpga生产厂商提供的哈希值与云端fpga回传过来的哈希值是否相同,判断fpga是否是可信的,从而完成远程认证。

35、本发明第三方面提供了计算机可读存储介质,其上存储有程序,该程序被处理器执行时实现如本发明第一方面所述的一种基于不可信云fpga的可信通信方法中的步骤。

36、本发明第四方面提供了电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的程序,所述处理器执行所述程序时实现如本发明第一方面所述的一种基于不可信云fpga的可信通信方法中的步骤。

37、以上一个或多个技术方案存在以下有益效果:

38、为了实现远程用户与不可信云fpga间的隐私数据可信通信,本发明在不可信云fpga中构建安全代理作为可信计算方,在fpga出厂时内嵌安全代理sp完成认证及通信过程;通过对恶意云端fpga的安全远程认证,在认证过程中完成密钥协商后获得会话密钥,最后通过此会话密钥实现隐私数据可信通信。

39、本发明在远程认证过程中完成密钥协商的过程,极大减少了远程用户与云端fpga建立安全通信时的通信轮数;并采用国密sm2加解密算法、数字签名算法以及密钥协商算法完成安全通信的建立,极大增强了安全通信的安全性。

40、本发明通过设计fpga硬件框架,使用安全可擦除证明机制用来验证fpga内置模块是可信的,完全杜绝了云服务提供商中恶意内部人员或上一任租户者对fpga内部进行一系列恶意操作。

41、本发明在密钥协商后远程用户使用对称会话密钥与云端fpga的安全代理进行通信,安全代理sp对用户租赁区域拥有独占访问权,安装在租赁区域的隐私数据或应用程序仅通过sp以加密方式与远程用户沟通;因为密钥协商后的会话秘钥k是安全的,因此远程用户使用云端的fpga进行远程计算也是安全的。

42、本发明附加方面的优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。

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