Litcius/Paper detail

Implementing AES Encryption on Programmable Switches via Scrambled Lookup Tables

Xiaoqi Chen

202074 citationsDOIOpen Access PDF

Abstract

AES is a symmetric encryption algorithm widely used in many applications. An AES implementation in the data plane can help us build in-network security and privacy applications, such as IP header encryption or onion routing. However, it is not straightforward to implement AES on today's commodity programmable switches, which may not include a dedicated cryptography co-processor and support only simple arithmetic operation and table lookup. In this paper, we present the Scrambled Lookup Table technique for reducing the number of sequential arithmetic operations required for AES encryption, by utilizing the table matching capability available on programmable switches. We demonstrate an efficient implementation of AES on the Barefoot Tofino programmable switch that encrypts 10.92Gbit, 8.76Gbit, and 7.37Gbit of data per second, for AES-128, -192, and -256 respectively, using less than 15% of the switch memory.

Topics & Concepts

Computer scienceEncryptionLookup tableAdvanced Encryption StandardAES implementationsCryptographyHeaderField-programmable gate arrayTable (database)Routing tableEmbedded systemComputer hardwareParallel computingRouting (electronic design automation)ArithmeticComputer networkAlgorithmOperating systemRouting protocolMathematicsData miningCryptographic Implementations and SecurityAdvanced Malware Detection TechniquesChaos-based Image/Signal Encryption