感兴趣者可与 pynq_china@xilinx.com 联系,共同合作拓展项目。
本期小编继续为大家带来暑期学校优秀作品分享之加密算法相关项目!对计算机安全或者密码学感兴趣的同学千万不要错过哟!
所有项目均在GitHub开源,链接已在各项目介绍后附上。
AES加密算法在AWS物联网中的应用
项目目的:为了满足当下在信息安全领域的广泛需求,我们设计的是一个在物联网信息传输中的AES加密、解密装置。由FPGA的ADC串口输入待加密的外部信号(明文),通过拨码开关随时变更来调整加密密钥,同时我们利用FPGA的强大算力对明文和密钥进行AES算法,得到加密后的密文。然后,将加密后的数据通过QSPI串行通信接口发送到ESP32,最后将ESP32读取的数据传输到AWS云端,实现外部信号的加密可视化。
数据加密的基本过程就是对原来为明文的文件或数据按某种算法进行处理,使其成为不可读的一段代码为“密文”,使其只能在输入相应的密钥之后才能显示出原容,通过这样的途径来达到保护数据不被非法人窃取、阅读的目的。加密过程的逆过程为解密,即将该编码信息转化为其原来数据的过程。我们希望应用所学的知识,利用SEA Board的FPGA和ESP32综合实现AES加密及解密过程。同时,该项目让我们加强了对信息加密算法的了解,同时增强了自己的实践能力。
应用领域及适用范围:
该项目涉及领域的应用前景十分广泛,AES算法的研究从理论到应用,己经深入到了信息安全技术的各个领域,深入研究与开发新的AES算法实现和应用具有重要的理论和实践意义。随着密码技术的高速发展,高级加密标准 AES(Rijndae1)算法将逐渐取代 DES在 IPSec、SSL和ATM 中的使用,并广泛应用于虚拟专用网、远程访问服务器(RAS)、SONET(同步光网络)、高速ATM/Ethernet路由器、卫星通信、移动通信、电子金融业务等领域。此外,网络保密系统 、财政保密、电子游戏保密等方面也将采用AES加密算法,将现有的关于AES研究成果与其他领域的相关技术与应用相结合,从应用的角度拓展数据加密技术,从而获得新的应用,是 AES算法(Rijndea1)的发展方向。
AES标准用来替代原先的DES(Data Encryption Standard),已经被多方分析且广为全世界所使用。经过五年的甄选流程,高级加密标准由美国国家标准与技术研究院 (NIST)于2001年11月26日发布于FIPS PUB 197,并在2002年5月26日成为有效的标准。2006年,高级加密标准已然成为对称密钥加密中最流行的算法之一。高级加密标准算法从很多方面解决了令人担忧的问题。
该设计适用于对文本信息、数字信号等进行加密,从电脑上输入一段信息,再人为设定一个秘钥,就会得到输出的加密信息;如果得知秘钥和加密后的信息,也可以对加密信息进行解密。
github链接:https://github.com/KexinLi-design/Xlinx-SummerSchool-AWS_IoT-AES_Algorit...
MD5加密校验
设计目的:利用FPGA提升MD5加密的运算速度
相关知识:MD5加密算法、qspi串口通信、esp32编程开发
应用方向:可将FPGA与传统CPU、MCU建立通信利用FPGA并行计算加速的特性,提升传统处理器的算力。
计划实现:研究MD5加密校验算法原理,参考相关文献论文,完成其代码实现,结合暑期学校所学FPGA知识,在FPGA上运用MD5校验算法进行RTL仿真,并且结合ESP32与FPGA的QSPI通信,将接收到的信息进行MD5校验。
已实现功能:完成了MD5校验算法的verilog代码实现,并完成了RTL仿真,结合QSPI通信,将从ESP32接收到的信息在FPGA中进行MD5校验,通过串口可以直接将加密结果返回到串口监视器,利用arduino烧写.bit文件后在开发板上运行正确。
Github链接: https://github.com/fuqin-feilong/MD5_CRC