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

一种配置FPGA的码流加、解密实现方法、系统及设备与流程

2022-11-23 12:58:41 来源:中国专利 TAG:

技术特征:
1.一种配置fpga码流的加、解密实现方法,其特征在于,所述方法包括在上位机执行以下步骤:选定目标加密算法并根据对应算法基于伪随机数自行生成相应的第一密钥;利用所述第一密钥对明文码流加密,并利用目标加密算法编号以及对应的密钥种子对加密码流进行封装;使用封装后的加密码流对fpga芯片进行配置,由fpga芯片内部解密电路进行处理,得到明文码流,完成对fpga配置。2.如权利要求1所述的一种配置fpga码流的加、解密实现方法,其特征在于,选定目标加密算法并根据对应算法基于伪随机数自行生成相应的第一密钥,包括:从多种加密算法中选取目标加密算法;基于预设的加密算法编号映射表,获取目标加密算法编号;由伪随机数发生器根据选取的目标加密算法生成对应密钥种子;由选定加密算法密钥需求长度结合密钥种子长度,确定迭代预设次数;每次迭代将所述密钥种子向左/右移一位以便生成与前次不同的伪随机数;完成全部迭代后,将所有伪随机数按照生成顺序、逆序或乱序进行拼接,得到所述第一密钥。3.如权利要求2所述的一种配置fpga的码流加、解密实现方法,其特征在于,利用目标加密算法编号以及对应的密钥种子对加密码流进行封装,包括:将所述目标加密算法编号以及对应的密钥种子按照前后顺序组合在一起,产生原始包头;按照包头长度定义对所述原始包头进行补齐,完成包头生成;对补齐后的包头进行数据加扰;将加扰后的数据进行ecc计算,得到ecc计算结果,并将所述ecc结果附在加扰后的包头后面;将完成ecc计算后的包头和所述加密码流拼接在一起;对拼接后的码流进行crc计算,得到crc结果,并将crc结果附加在拼接后的码流后面,完成对加密码流进行封装。4.如权利要求3所述的一种配置fpga的码流加、解密实现方法,其特征在于,对补齐后的包头进行数据加扰,包括:采用将0,1互相取反的方式,对补齐后的包头进行数据加扰;或者对数据中的0,1个数进行统计,将个数较多的项进行压缩,对补齐后的包头进行数据加扰。5.如权利要求1至4中任一项所述的一种配置fpga的码流加、解密实现方法,其特征在于,所述方法还包括在所述fpga芯片内部执行以下步骤:对封装后的加密码流进行解封装,提取出所述目标加密算法编号以及对应的密钥种子;利用所述密钥种子生成与所述目标加密算法相对应的第二密钥;其中,所述第一密钥和所述第二密钥的密钥生成算法相同;利用所述第二密钥对解封装后的加密码流进行解密,得到明文码流,以利用所述明文
码流对fpga进行配置。6.如权利要求5所述的一种配置fpga的码流加、解密实现方法,其特征在于,对封装后的加密码流进行解封装,提取出所述目标加密算法编号以及对应的密钥种子,包括:对接收到的封装后的加密码流进行crc校验;如果crc校验失败,置位crc校验错误,停止后续流程;如果crc校验成功,根据包格式将对加扰的包头进行ecc校验;如果ecc校验失败,置位ecc校验错误,停止后续流程;如果ecc校验成功,对包头进行解扰,恢复出原始包头信息;按照包头组建方式,提取出所述目标加密算法编号以及对应的密钥种子的相关字段。7.如权利要求6所述的一种配置fpga的码流加、解密实现方法,其特征在于,利用所述密钥种子生成与所述目标加密算法相对应的第二密钥,包括:利用所述密钥种子和加密算法作为基础,确定生成密钥的迭代预设次数;采用移位寄存器生成为随机数,每次迭代将所述密钥种子向左/右移一位以便生成与前次不同的伪随机数;每次迭代产生的伪随机数使用另外的寄存器存储,完成全部迭代后,将所有伪随机数按照生成顺序、逆序或乱序拼接,得到所述第二密钥。8.一种配置fpga的码流加、解密实现系统,其特征在于,所述系统包括:第一密钥生成模块,用于选定目标加密算法并根据对应算法基于伪随机数自行生成相应的第一密钥;码流加密及封装模块,用于利用所述第一密钥对明文码流加密,并利用目标加密算法编号以及对应的密钥种子对加密码流进行封装;输出模块,用于使用封装后的加密码流对fpga芯片进行配置,由fpga芯片内部解密电路进行处理,得到明文码流,完成对fpga配置;其中,所述第一密钥生成模块、所述码流加密及封装模块、所述输出模块装载于所述上位机。9.如权利要求8所述的一种配置fpga的码流加、解密实现系统,其特征在于,所述系统还包括:接收模块,用于从所述上位机接收封装后的加密码流;解封装模块,用于对封装后的加密码流进行解封装,提取出所述目标加密算法编号以及对应的密钥种子;第二密钥生成模块,用于利用所述密钥种子生成与所述目标加密算法相对应的第二密钥;其中,所述第一密钥和所述第二密钥的密钥生成算法相同;解密模块,用于利用所述第二密钥对解封装后的加密码流进行解密,得到明文码流;配置模块,用于利用所述明文码流对fpga进行配置;其中,所述接收模块、所述解封装模块、所述第二密钥生成模块、所述解密模块、所述配置模块装载于所述fpga芯片内部。10.一种配置fpga的码流加、解密实现设备,其特征在于,所述设备包括:处理器和存储器;
所述存储器用于存储一个或多个程序指令;所述处理器,用于运行一个或多个程序指令,用以执行如权利要求1至7任一项所述的一种配置fpga的码流加、解密实现方法的步骤。

技术总结
本发明实施例提供了一种配置FPGA码流的加、解密实现方法、系统及设备,通过使用简单的生成伪随机数设计,降低原使用EFUSE保存密钥的容量,采用更小容量的EFUSE电路,使得芯片生成的良品率有大幅提升,烧写EFUSE过程时间缩短同时提高写EFUSE的成功概率。同时,因EFUSE容量减小,EFUSE所占芯片面积比例也相应缩小,使得FPGA芯片总面积也减小,相应的提高了FPGA芯片的产量,从而降低了FPGA生成成本。因配置码流在生成过程中有加密算法选择,码流加扰,完整性校验等步骤,使得FPGA配置码流的保密性得到有效提升,进而保护用户FPGA设计的安全不易被窃取。易被窃取。易被窃取。


技术研发人员:杨堃 王海力
受保护的技术使用者:京微齐力(上海)信息科技有限公司
技术研发日:2022.08.05
技术公布日:2022/11/22
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

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

相关文献