AES加密算法的FPGA实现
文章平均质量分 91
Max玮
2020级集成电路专业在读本科生(大四,已保研),研究生方向为加密IC设计。
GitHub:https://github.com/MaxWei250
展开
-
AES算法基于FPGA的硬件实现(2)AES算法的c++实现(ecb/cbc)
ecb模式是aes加密中最为简单的一个模式,该模式严格按照aes加密标准来执行加密(如下图)。这个模式最大的优点是可以并行执行,因为前后明文密文互不干扰,所以这种加密方式是最快的执行的。但是因为相同的明文会产生相同的密文,所以安全性比较差(效果如下图)。这部分包含了所有子函数定义,包括未给出的在上面,具体实现见GitHub。~aes();//* 扩展密钥//*密钥扩展private://*左移函数//*1.字节代换。原创 2023-11-30 12:59:39 · 1133 阅读 · 0 评论 -
AES算法基于FPGA的硬件实现(1)AES算法的原理以及实现流程
说明这个密钥托拓展过程,实际上不同的密钥长度对应的密钥拓展公式是不同的,比如当AES192的时候,密钥长度为6(32bit),如上图中W0-W3为初始密钥,然后W4-7为第一句轮密钥的数据,然后这里会根据K0以及密钥拓展算法来得到K1-K11,列混合是将输入的矩阵左乘这样一个固定的矩阵,但是这不是传统的矩阵相乘,需要按照有限域的运算规则来尽心运算。在执行过程中,每一轮的输入为上一轮的输出,比如第二轮进行字节代换的矩阵为第一轮进行轮密钥加后的结果。Rcon(round constants)表。原创 2023-11-19 16:22:06 · 1678 阅读 · 0 评论