weidai11 / cryptopp

free C++ class library of cryptographic schemes
https://cryptopp.com
Other
4.84k stars 1.5k forks source link

Add AES for ARMv8 #458

Closed noloader closed 7 years ago

noloader commented 7 years ago

CriticalBlue provided patches which added ARMv8 support to mbedTLS. See PR 432, AARCH64 and Cryptography Extension Support, Thanks to @barryor, @sbutcher-arm, @johannesschneiders for their work.

CriticalBlue 's patch gave us something we could observe to cut-in ARMv8 for Crypto++. We had a partial implementation, but we were having problems in the key schedule. We got to spend some time with mbedTLS under the debugger, and it allowed us to pinpoint the problems with Crypto++ and ARMv8 AES.

The speed results are very good. Below are the numbers on a 1.2 GHz LeMaker HiKey, which is an IoT gadget. Server boards, like Mustang and Opterons, are about twice as fast (2.4 to 2.6 cpb).

This ticket will track the cut-in of ARMv8 AES. It is being tested now on a testing fork. Also see the following commits on the fork.

noloader commented 7 years ago

Cleared at Commit 173dd0b530620d1a on Wei's GitHub.