基于PUF技术的流媒体加密解密系统及加密解密方法与流程

文档序号:37944359发布日期:2024-05-11 00:26阅读:36来源:国知局
基于PUF技术的流媒体加密解密系统及加密解密方法与流程

本发明涉及加密卡及数据加密领域,尤其涉及基于puf技术的流媒体加密解密系统及加密解密方法。


背景技术:

1、pcie加密卡设计方法基于流媒体在网络传输过程中的安全性,是一种网络安全数据保护技术。目前pcie加密卡设计过程中常依赖管理cpu对加密卡内部的密钥表进行管理,生成的密钥表存在pcie加密卡内部。

2、参考图1,图2所示,为传统pcie加密卡的业务流程。图1中,配置管理cpu首先分别对fpga1和fpga2内的密钥表配置密钥,并初始化存储在fpga内部的密钥表。在配置密钥初始化完成后,图2中,业务cpu1通过pcie总线下发采集到的流媒体数据,fpga1内部对下发的tlp包(transaction layer packet,事务层数据包)中payload(负载)数据进行加密处理,并对加密后的数据依次进行分类、分包、封装成udp(user datagram protocol用户数据报协议)报文从10g网口发出。在接收端,fpga2在接收到网络报文后对网络报文中的payload进行解密处理,并对解密后的数据依次进行分类、组包、封装成tlp包后从pcie总线上传到cpu2端。整个业务流程中,密钥表始终存在于fpga1跟fpga2内部,因此存在密钥窃取后网络传输数据被破译的风险,对网络安全造成严重损害。

3、由此可见,传统pcie加密卡设计处理的网络流媒体报文,存在密钥窃取,数据破译,网络安全损坏等风险。


技术实现思路

1、针对以上问题,本发明提出基于puf技术的流媒体加密解密系统及加密解密方法。

2、为实现本发明的目的,提供基于puf技术的流媒体加密解密方法,当第一业务cpu和第一fpga作为流媒体数据的发送端,第二业务cpu和第二fpga作为流媒体数据的接收端时,所述加密解密方法包括如下步骤:

3、s1:cpu管理模块确认第一算核模块和第二算核模块都已经准备好接收初始化操作; cpu管理模块调用puf软件模块,所述puf软件模块从sram存储器中提取所述cpu管理模块的唯一物理标识,并基于提取的所述cpu管理模块的唯一物理标识生成中间密钥;第三算法模块对所述中间密钥做哈希处理,并生成最终密钥;

4、s2:所述第三算法模块将所述最终密钥通过第三网络接口模块分别发送给所述第一算核模块和所述第二算核模块;

5、所述第一算核模块通过第一网络接口模块接收所述最终密钥,并进行初始化操作;所述第一算核模块初始化操作完成后,生成第一算核模块初始化成功的应答包,并将其通过所述第一网络接口模块返还给所述cpu管理模块;

6、所述第二算核模块通过第二网络接口模块接收所述最终密钥,并进行初始化操作;所述第二算核模块初始化操作完成后,生成第二算核模块初始化成功的应答包,并将其通过所述第二网络接口模块返还给所述cpu管理模块;

7、所述cpu管理模块通过第三网络接口模块分别接收所述第一算核模块初始化成功的应答包和所述第二算核模块初始化成功的应答包;所述puf软件模块删除所述cpu管理模块的唯一物理标识和所述最终密钥;

8、s3:所述cpu管理模块通过所述第三网络接口模块向第一计数器模块发送查询命令,查询所述第一计数器模块中计数器的值是否为0,

9、若所述第一计数器模块中计数器的值不等于0,则进入步骤s4;

10、若所述第一计数器模块中计数器的值等于0,则进入步骤s5;

11、s4:所述第一计数器模块将所述第一计数器模块中计数器的值不等于0的查询结果发送给所述cpu管理模块;

12、所述cpu管理模块生成计数器清零的命令,并将其通过所述第三网络接口模块分别发送给所述第一计数器模块和所述第二计数器模块;所述第一计数器模块通过所述第一网络接口模块接收所述计数器清零的命令,并将所述第一计数器模块中计数器的值清零;同时,所述第二计数器模块通过所述第二网络接口模块接收所述计数器清零的命令,并将所述第二计数器模块中计数器的值清零;然后进入步骤s6;

13、s5:所述cpu管理模块通过所述第三网络接口模块发送启动业务信号给所述第一网络接口模块;所述第一网络接口模块接收所述启动业务信号后,调用第一中断信号产生模块;所述第一中断信号产生模块生成中断信号,并将所述中断信号通过第一接口交互模块发送给所述第一业务cpu;所述第一业务cpu接收所述中断信号,并将采集的流媒体数据发送给所述第一fpga;

14、s6:所述第一fpga通过所述第一接口交互模块接收所述采集的流媒体数据;第一ddr控制模块调用第一ddr模块,所述第一ddr模块对所述采集的流媒体数据进行缓存操作;第一算法控制模块调用第一算法模块;所述第一算法模块调用所述第一计数器模块,所述第一计数器模块判断此时所述第一计数器模块中计数器的值是否大于或者等于预设的阈值,若所述第一计数器模块中计数器的值大于或者等于所述预设的阈值,则所述第一计数器模块通过所述第一网络接口模块向所述cpu管理模块上传所述告警信息,并返回步骤s1重新生成所述最终密钥,同时,所述第一fpga不断地接收所述采集的流媒体数据,并将其一一存储在所述第一ddr模块中;若所述第一计数器模块中计数器的值小于所述预设的阈值,则进入步骤s7;

15、s7:所述第一算法控制模块调用所述第一算法模块,所述第一算法模块基于所述最终密钥对所述第一ddr模块中存储的所述采集的流媒体数据进行加密操作,并得到加密过的流媒体数据;所述第一算法模块调用所述第一计数器模块,所述第一计数器模块中计数器的值执行加1的操作;第一封包模块将所述加密过的流媒体数据封装成udp报文,并将其通过网口发送给所述第二fpga;

16、s8:所述第二fpga通过网口接收所述udp报文;第二解包模块对所述udp报文进行解包操作,并得到待解密的流媒体数据;第二ddr控制模块调用第二ddr模块,所述第二ddr模块对所述待解密的流媒体数据进行缓存操作;第二算法控制模块调用第二算法模块,所述第二算法模块基于所述最终密钥对所述第二ddr模块中存储的所述待解密的流媒体数据进行解密操作,并得到解密后的流媒体数据;所述第二算法模块调用所述第二计数器模块,所述第二计数器模块中计数器的值执行加1的操作;所述第二算法模块调用所述第二计数器模块,所述第二计数器模块判断此时所述第二计数器模块中计数器的值是否大于或者等于所述预设的阈值,若所述第二计数器模块中计数器的值大于或者等于所述预设的阈值,则所述第二计数器模块通过所述第二网络接口模块向所述cpu管理模块上传所述告警信息,返回步骤s1重新生成最终密钥,同时所述解密后的流媒体数据进入步骤s9;若所述第一计数器模块中计数器的值小于所述预设的阈值,则直接进入步骤s9;

17、s9:所述第二算法模块将所述解密后的流媒体数据通过第二接口交互模块发送给所述第二业务cpu。

18、本发明还提供了基于puf技术的流媒体加密解密系统,采用了上述基于puf技术的流媒体加密解密方法,包括:配置管理设备、所述第一fpga、所述第二fpga、所述第一业务cpu和所述第二业务cpu;

19、所述第一fpga包括:所述第一计数器模块;所述第二fpga包括:所述第二计数器模块;

20、所述配置管理设备:用于生成所述最终密钥,并将其下发给所述第一fpga和所述第二fpga;

21、所述第一业务cpu将所述采集的流媒体数据发送给所述第一fpga;所述第一fpga接收所述流媒体数据,并基于所述最终密钥对所述流媒体数据进行加密操作,然后将加密后的所述流媒体数据发送给所述第二fpga;所述第二fpga接收所述加密后的流媒体数据,并基于所述最终密钥对所述加密后的所述流媒体数据进行解密操作,得到解密后的流媒体数据;所述第二fpga将所述解密后的流媒体数据发送给所述第二业务cpu;

22、所述第一计数器模块:用于统计所述第一fpga内经过加密或者解密的数据帧的数量;还用于向所述配置管理设备上传所述告警信息以便重新启动生成所述最终密钥的流程;

23、所述第二计数器模块:用于统计所述第二fpga内经过加密或者解密的数据帧的数量;还用于向所述配置管理设备上传所述告警信息以便重新启动生成所述最终密钥的流程。

24、进一步地,所述第一业务cpu跟所述第一fpga通过pcie总线传递数据;

25、所述第二业务cpu跟所述第二fpga通过pcie总线传递数据。

26、进一步地,所述配置管理设备包括:所述cpu管理模块、所述puf软件模块、所述第三算法模块和所述第三网络接口模块;所述cpu管理模块包括:所述sram存储器;

27、所述cpu管理模块:用于调用所述配置管理设备内各模块进行所述最终密钥的生成、下发和删除操作;

28、所述puf软件模块:用于从所述sram存储器中提取所述cpu管理模块的唯一物理标识,并基于所述cpu管理模块的唯一物理标识生成所述中间密钥;

29、所述第三算法模块:用于对所述中间密钥做哈希处理,并生成所述最终密钥;

30、所述第三网络接口模块:用于将所述最终密钥分别下发给所述第一fpga和所述第二fpga。

31、进一步地,所述第一fpga还包括:所述第一算法模块、所述第一算法控制模块、所述第一ddr模块、所述第一ddr控制模块、所述第一封包模块、所述第一解包模块、所述第一网络接口模块、所述第一接口交互模块和所述第一中断信号产生模块;

32、所述第二fpga还包括:所述第二算法模块、所述第二算法控制模块、所述第二ddr模块、所述第二ddr控制模块、所述第二封包模块、所述第二解包模块、所述第二网络接口模块、所述第二接口交互模块和所述第二中断信号产生模块;

33、所述第一算法模块和所述第二算法模块:均用于对所述采集的流媒体数据进行加密或者解密操作;

34、所述第一算法控制模块和所述第二算法控制模块:分别用于调用所述第一算法模块和所述第二算法模块进行加密或者解密操作;

35、所述第一ddr模块和所述第二ddr模块:均用于缓存加密或者解密过程中的流媒体数据;

36、所述第一ddr控制模块和所述第二ddr控制模块:分别用于调用所述第一ddr模块和所述第二ddr模块缓存加密或者解密过程中的流媒体数据;

37、所述第一封包模块和所述第二封包模块:均用于对加密过程中的流媒体数据进行封包操作;

38、所述第一解包模块和所述第二解包模块:均用于对解密过程中的流媒体数据进行解包操作;

39、所述第一网络接口模块和所述第二网络接口模块:分别用于跟所述配置管理设备传递数据包;

40、所述第一接口交互模块和所述第二交互接口模块:分别用于跟所述第一业务cpu和所述第二业务cpu传输数据包;

41、所述第一中断信号产生模块和所述第二中断信号产生模块:用于产生所述中断信号,并将其分别发送给所述第一业务cpu和所述第二业务cpu。

42、进一步地,所述第一算法模块包括:所述第一算核模块;

43、所述第二算法模块包括:所述第二算核模块;

44、所述第一算核模块和所述第二算核模块:均用于管理所述配置管理设备下发的所述最终密钥。

45、跟现有技术相比,本发明具有以下有益的技术效果:

46、本发明中,基于puf技术的密钥随用随取,不保存秘钥,并且提供定时更新密钥的机制,确保了网络传输中流媒体数据的安全性。

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