AES64IM 使用浮点或向量寄存器吗?
不使用。标量密码扩展的这些指令使用整数 X 寄存器。
对rs1的64位半块执行AES InvMixColumns变换(用于等效逆密钥调度)
AES64IM 使用 opcode 0010011(0x13)、funct3 001、funct7 0011000。rs1 字段选择源寄存器,12 位立即数提供第二操作数,rd 选择目标寄存器。
aes64im 是 Zknd 扩展的辅助指令(仅 RV64)。它对 rs1 的低 64 位执行 AES 逆 MixColumns(InvMixColumns)变换,结果写入 rd。该指令主要用于计算等效逆密钥调度(Equivalent Inverse Cipher Key Schedule):将加密用的轮密钥通过 InvMixColumns 变换为解密的等效密钥,从而解密时可直接使用与加密相同的轮函数结构。该指令不涉及轮密钥异或。
AES64IM 是 Zknd 标量密码指令,AES 逆 MixColumns 密钥调度步骤。页面内容按官方标量密码扩展校对,避免把算法轮函数、密钥调度和寄存器来源混淆。
结合 «aes64im a0, a1» 等实际代码理解该场景。
结合 «aes64im a0, a1» 等实际代码理解该场景。
不使用。标量密码扩展的这些指令使用整数 X 寄存器。
不是。它是 AES、SHA、SM3 或 SM4 中的一个低级步骤,软件仍需按算法顺序组合多条指令和轮常数/轮密钥。