摘要

本发明公开了一种基于FPGA的Keccak算法故障检测系统,包括填充和冗余码生成模块、Keccak函数运算模块和冗余码校验模块,填充和冗余码生成模块将原数据填充到指定比特数形成原码,存于寄存器中并生产对应比特数的时间冗余码和动态冗余校验码X,再由Keccak函数运算模块中三级流水线同时运算该三个编码生成其对应的Keccak值,最后由冗余码校验模块校验原码、时间冗余码和动态冗余校验码X的Keccak值,输出校验结果。所述系统只在极少量降低吞吐率和增加资源使用率的情况下实现故障检测方案,并且双冗余码的方案保证了既能检测临时性故障也可以检测永久性故障还能够抵御大多数硬件木马的攻击。