| ▲ | 201984 2 hours ago | |||||||
Are you certain using AES is still faster? Let's say for a 32-bit block size and 64-bit key. From https://en.wikipedia.org/wiki/Speck_(cipher), that Speck combination would use 22 rounds, and using the instruction timings for Zen 5 from https://instlatx64.github.io/InstLatx64/AuthenticAMD/Authent..., it looks like each round would take at most 3 cycles. (Dependency chain for each round is 3 instructions long, ror+add+xor). 22*3 = ~66 cycles. Using AES with a pshufb to take out the ShiftRows step would be 2 cycles for the pshufb and 4 cycles for each aesenc, and at 10 rounds, you have ~60 cycles. It's quite close, and to say which one wins, we'd need to actually benchmark it. One is not clearly much faster than the other. | ||||||||
| ▲ | botusaurus 2 hours ago | parent [-] | |||||||
maybe the reason they are so close is that the AES microcode is inplementing exactly those operations | ||||||||
| ||||||||