(19)国家知识产权局
(12)发明 专利申请
(10)申请公布号
(43)申请公布日
(21)申请 号 202210289650.7
(22)申请日 2022.03.23
(71)申请人 深圳市紫 光同创电子有限公司
地址 518000 广东省深圳市南 山区粤海街
道高新区社区高新南一道015号国微
研发大楼401
(72)发明人 梁振瑞 夏君
(74)专利代理 机构 深圳国新 南方知识产权代理
有限公司 4 4374
专利代理师 周雷
(51)Int.Cl.
H04L 9/30(2006.01)
G06F 21/44(2013.01)
H04L 9/06(2006.01)
H04L 9/32(2006.01)H04L 9/40(2022.01)
(54)发明名称
可编程器件的交互数据验证方法、 装置、 设
备及介质
(57)摘要
本发明公开了可编程器件的交互数据验证
方法、 装置、 设备及介质, 属于集成电路技术领
域。 它包括: 获取待验证的交互数据; 通过第一摘
要算法获取交互数据的第一公钥摘要和第二公
钥摘要; 通过RSA加密算法获取交互数据的第一
数据流摘要和第二数据流摘要, 通过第二摘要算
法获取交互数据的第三数据流摘要; 判断第一公
钥摘要和第二公钥摘要是否一致, 得到公钥判断
结果; 判断第一数据流摘要、 第二数据流摘要和
第三数据流摘要是否一致, 得到数据流判断结
果; 根据公钥判断结果和数据判断结果确定交互
数据是否被篡改或有部分数据丢失。 本发明的交
互数据的验证速度较快、 花费时间较短, 从而让
整个可编程器件的开发周期较短。
权利要求书2页 说明书10页 附图3页
CN 114844642 A
2022.08.02
CN 114844642 A
1.一种可编程器件的交 互数据验证方法, 其特 征在于, 包括:
获取待验证的交互数据, 所述交互数据包括待验证的公钥、 待验证的私钥、 待验证的模
数和待验证的数据流;
通过基于Verilog语言实现的第一摘要算法获取所述交互数据的第一公钥摘要, 通过
基于SystemVerilog语言实现的第一摘要算法获取所述交互数据的第二公钥摘要, 所述第
一公钥摘要和第二公钥 摘要的位宽相同;
通过基于所述SystemVerilog语言实现的RSA加密算法获取所述交互数据的第一数据
流摘要, 通过基于所述Ver ilog语言实现的RSA加密算法获取所述交互数据的第二数据流摘
要, 通过基于所述Verilog语 言实现的第二摘要算法获取所述交互数据的第三数据流摘要,
所述第一数据流摘要、 第二数据流摘要和第三数据流摘要的位宽相同;
判断所述第一公钥摘要和所述第二公钥摘要是否一致, 得到公钥判断结果; 判断所述
第一数据流摘要、 所述第二数据流摘要和所述第三数据流摘要是否一致, 得到数据流判断
结果;
根据所述公钥判断结果和所述数据判断结果确定所述交互数据是否被篡改或有部分
数据丢失。
2.根据权利要求1所述的方法, 其特征在于, 所述通过基于Verilog语言实现的第一摘
要算法获取所述交互数据的第一公钥摘要, 通过基于SystemVerilog语言实现的第一摘要
算法获取 所述交互数据的第二公钥 摘要, 包括:
将所述待验证的公钥驱动至基于所述Verilog语言实现的第一摘要算法中, 得到第一
公钥摘要;
将所述待验证的公钥驱动至基于所述SystemVerilog语言实现的第一摘要算法中, 得
到第二公钥 摘要。
3.根据权利要求1所述的方法, 其特征在于, 所述通过基于所述Verilog语言实现的RSA
加密算法获取所述交互数据的第一数据流摘要, 通过基于所述Ver ilog语言实现的RSA加密
算法获取 所述交互数据的第二数据流摘要, 包括:
将所述待验证的数据 流驱动至通过基于所述S ystemVerilog语言实现的第二摘 要算法
中, 得到前置数据摘要;
将所述前置数据摘要、 所述待验证的私钥和所述待验证的模数驱动至基于所述
SystemVeri log语言实现的RSA加密算法中, 得到带有签名的认证数据;
将所述认证数据分别驱动至基于所述Verilog语言实现的RSA加密算法和基于所述
SystemVer ilog语言实现的RSA加密算法中, 得到所述第一数据流摘要和所述第二数据流摘
要。
4.根据权利要求1或2或3所述的方法, 其特征在于, 所述通过基于所述Verilog语言实
现的第二摘要算法获取 所述交互数据的第三数据流摘要, 包括:
将所述待验证的数据流驱动至基于所述Verilog语言实现的第二摘要算法中, 得到第
三数据流摘要。
5.根据权利要求4所述的方法, 其特征在于, 所述根据所述公钥判断结果和所述数据判
断结果确定所述交 互数据是否被篡改或有部分数据丢失, 包括:
判断所述公钥判断结果和所述数据判断结果是否均为是, 得到数据验证结果;权 利 要 求 书 1/2 页
2
CN 114844642 A
2若所述数据验证结果为是, 则所述可编 程器件的交互数据在交互数据过程中没有被篡
改且没有数据丢失;
若所述数据验证结果为否, 则所述可编 程器件的交互数据在交互数据过程中有被篡改
或有部分数据丢失。
6.根据权利要求1所述的方法, 其特征在于, 所述第一摘要算法和/或第二摘要算法为
SHA‑2算法、 SHA ‑3算法和MessageDigest算法中的一种, 所述第一数据流摘要的位宽不小于
1024位。
7.根据权利要求6所述的方法, 其特征在于, 所述第一摘 要算法为SHA3 ‑224算法、 SHA3 ‑
256算法、 SHA 3‑384算法、 SHA 3‑512算法、 SHAKE128算法和SHAKE2 56算法中的一种, 所述第二
摘要算法为SHAKE128算法或SHAKE25 6算法, 所述第一数据流摘要的位宽为 4096位。
8.一种可编程器件的交 互数据验证装置, 其特 征在于, 包括:
交互数据采集模块, 用于获取待验证的交互数据, 所述交互数据包括待验证的公钥、 待
验证的私钥、 待验证的模数和待验证的数据流;
公钥摘要生成模块, 用于通过基于Verilog语言实现的第一摘要算法获取所述交互数
据的第一公钥摘要, 通过基于SystemVerilog语言实现的第一摘要算法获取所述交互数据
的第二公钥 摘要, 所述第一公钥 摘要和第二公钥 摘要的位宽相同;
数据流摘要生成模块, 用于通过基于所述S ystemVerilog语言实现的RSA加密算法获取
所述交互数据的第一数据流摘要, 通过基于所述Ver ilog语言实现的RSA加密算法获取所述
交互数据的第二数据流摘要, 通过基于所述Verilog语言实现 的第二摘要算法获取所述交
互数据的第三数据流摘要, 所述第一数据流摘要、 第二数据流摘要和第三数据流摘要的位
宽相同;
摘要判断模块, 用于判断所述第一公钥摘要和所述第二公钥摘要是否一致, 得到公钥
判断结果; 判断所述第一数据流摘要、 所述第二数据流摘要和所述第三数据流摘要是否一
致, 得到数据流判断结果;
数据判断模块, 用于根据所述公钥判断结果和所述数据判断结果确定所述交互数据 是
否被篡改或有部分数据丢失。
9.一种计算机设备, 包括存储器、 处理器以及存储在所述存储器中并可在所述处理器
上运行的计算机程序, 其特征在于, 所述处理器执行所述计算机程序时实现如权利要求 1至
7中任一项所述可编程器件的交 互数据验证方法的步骤。
10.一种计算机可读存储介质, 所述计算机可读存储介质存储有计算机程序, 其特征在
于, 所述计算机程序被处理器执行时实现如权利要求 1至7中任一项 所述可编程器件的交互
数据验证方法的步骤。权 利 要 求 书 2/2 页
3
CN 114844642 A
3
专利 可编程器件的交互数据验证方法、装置、设备及介质
文档预览
中文文档
16 页
50 下载
1000 浏览
0 评论
0 收藏
3.0分
温馨提示:本文档共16页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 SC 于 2024-02-07 12:40:31上传分享