[发明专利]PGP密钥管理认证密码恢复算法的FPGA实现方法有效
申请号: | 201810734669.1 | 申请日: | 2018-07-06 |
公开(公告)号: | CN108900307B | 公开(公告)日: | 2020-03-24 |
发明(设计)人: | 李晓潮;赵禀睿;吴孔程;林捷;陈艺慧 | 申请(专利权)人: | 厦门大学 |
主分类号: | H04L9/32 | 分类号: | H04L9/32;H04L9/08 |
代理公司: | 厦门南强之路专利事务所(普通合伙) 35200 | 代理人: | 马应森 |
地址: | 361005 *** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | pgp 密钥 管理 认证 密码恢复 算法 fpga 实现 方法 | ||
1.PGP密钥管理认证密码恢复算法的FPGA实现方法,其特征在于包括以下步骤:
1)用户在控制台上通过网络连接到FPGA片内处理器上,把待解密PGP软件的SKR文件被发送至FPGA片内处理器中,并向FPGA片内处理器发送开始指令;
2)FPGA片内处理器接收到SKR文件和开始指令后,以固定的格式解析该SKR文件,获取密码恢复需要的数据,这些数据被存储在FPGA片内处理器中;所述密码恢复需要的数据包括迭代次数、初始向量、盐值、私钥密文和私钥散列值密文;
3)SKR文件在FPGA片内处理器解析并存储完成后,FPGA片内处理器通过AXI总线向控制模块发送复位信号,复位控制模块并由控制模块向其他各模块发送复位信号,使所有模块都复位至初始状态;
4)各模块复位至初始状态后,FPGA片内处理器通过AXI总线将存储的解密所需数据信息传送到控制模块的相应寄存器中;
5)控制模块的相应寄存器收到数据信息后,FPGA片内处理器通过AXI总线向控制模块发送开始信号,控制模块开始工作,同时控制模块引导其他模块开始工作;
6)开始恢复PGP密钥管理认证密码:认证密码生成模块生成PGP密钥管理认证密码;PGP密钥管理认证密码进入S2K函数模块生成对称密钥;对称密钥输入到Twofish-256解密模块中,并从控制模块中获取密文,进行对称解密,解密完成后向SHA-1检验模块输出解密出的私钥以及解密出的散列值,SHA-1检验模块根据私钥计算出散列值,将计算出的散列值与解密出的散列值进行对比,将对比结果送入控制模块中;
7)控制模块接收到对比结果后,判断对比结果,若对比正确,则进入步骤8);否则回到步骤6),继续验证下一个PGP密钥管理认证密码是否正确;
8)控制模块判断对比正确后,控制模块将该PGP密钥管理认证密码发送至片内处理器中,向FPGA密码恢复计算电路的其他模块发送复位信号,使FPGA密码恢复计算电路停止工作;
9)用户在控制台上看到恢复出来的PGP密钥管理认证密码,PGP密钥管理认证密码恢复结束。
2.如权利要求1所述PGP密钥管理认证密码恢复算法的FPGA实现方法,其特征在于所述PGP密钥管理认证密码恢复算法在FPGA上的实现由PS和PL两部分组成。
3.如权利要求1所述PGP密钥管理认证密码恢复算法的FPGA实现方法,其特征在于所述FPGA片内处理器包括向控制模块发送复位信号、开始信号、记录PGP密钥管理认证FPGA密码恢复计算电路工作的时间、记录当前已检验密码的数量、输出运行信息。
4.如权利要求1所述PGP密钥管理认证密码恢复算法的FPGA实现方法,其特征在于PGP密钥管理FPGA认证密码恢复计算电路,由16个电路模块组成,包括:控制模块、认证密码生成模块、10个S2K函数模块、计数器模块、对称密钥选择模块、Twofish-256对称解密模块、SHA-1检验模块。
5.如权利要求4所述PGP密钥管理认证密码恢复算法的FPGA实现方法,其特征在于所述控制模块与FPGA片内处理器通过AXI总线互相连接,FPGA片内处理器模块向控制模块发送开始和复位控制指令,还包括解析的SKR文件盐值信息,PL端的控制模块向PS端的FPGA片内处理器发送当前密码恢复的状态信息,控制模块的输出与认证密码生成模块的输入相连,向认证密码生成模块输出PGP密钥管理认证FPGA密码恢复计算电路的启动信号,控制模块的输入与认证密码生成模块的输出相连,用于在解密成功时从认证密码生成模块接收正确的PGP密钥管理认证密码。
6.如权利要求4所述PGP密钥管理认证密码恢复算法的FPGA实现方法,其特征在于所述认证密码生成模块的输出与10个S2K函数模块的输入连接,向10个S2K函数模块输出PGP密钥管理认证密码。
7.如权利要求4所述PGP密钥管理认证密码恢复算法的FPGA实现方法,其特征在于所述10个S2K函数模块的输入与控制模块的输出相连,从控制模块获取S2K函数所需的盐值、迭代次数信息;10个S2K函数模块的输出与密钥选择模块的输入连接,向对称密钥选择模块输出10组对称密钥。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于厦门大学,未经厦门大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810734669.1/1.html,转载请声明来源钻瓜专利网。