我知道MixColumns是一个混合操作,它对状态的列进行操作,将每个列中的四个字节组合在一起。所以我们用特殊矩阵把我们的状态相乘。为了乘法,我们正在计算许多点积。对于每个点乘积,我们将字节乘以伽罗瓦域\pmod 2,然后将答案\bmod减少为神奇多项式:x^8+x^4+x^3+x^1+x^0。
幸运的是,通过使用一些查找表,可以大大加快整个任务的速度。乘法矩阵由1,2,3的伽罗瓦域组成。因此,我们可以预先计算所有256个八位伽罗瓦域(在我们状态下可能的字节)的结果乘以这些值。
我将如何为解密过程实现逆MixColumns?
发布于 2018-09-25 13:27:13
MixColumns实现一个矩阵乘法,因此InvMixColumns是该矩阵的逆乘法。因此,它归结为计算矩阵的逆。手工操作可能很繁琐,但它只涉及到简单的计算。或者,查找AES标准本身(FIPS 197):逆矩阵在5.3.3节中明确说明。
更普遍地说,FIPS 197是相当可读的(就标准而言),如果您想知道AES是如何工作的,建议阅读它(特别是第4节,其中给出了基本数学的一些细节)。
发布于 2018-09-25 18:05:49
一旦你倒置混合柱矩阵,
你可以使用E表和L表。参见在…示例
https://crypto.stackexchange.com/questions/62608
复制相似问题