Paper 2014/575
Simple AEAD Hardware Interface (SÆHI) in a SoC: Implementing an On-Chip Keyak/WhirlBob Coprocessor
Markku-Juhani O. Saarinen
Abstract
Simple AEAD Hardware Interface (SÆHI) is a hardware cryptographic interface aimed at CAESAR Authenticated Encryption with Associated Data (AEAD) algorithms. Cryptographic acceleration is typically achieved either with a coprocessor or via instruction set extensions. ISA modifications require re-engineering the CPU core, making the approach inapplicable outside the realm of open source processor cores. At minimum, we suggest implementing CAESAR AEADs as universal memory-mapped cryptographic coprocessors, synthesizable even on low end FPGA platforms. AEADs complying to SÆHI must also include C language API drivers targeting low-end MCUs that directly utilize the memory mapping in a ``bare metal'' fashion. This can also be accommodated on MMU-equipped mid-range CPUs. Extended battery life and bandwidth resulting from dedicated cryptographic hardware is vital for currently dominant computing and communication devices: mobile phones, tablets, and Internet-of-Things (IoT) applications. We argue that these should be priority hardware optimization targets for AEAD algorithms with realistic payload profiles. We demonstrate a fully integrated implementation of WhirlBob and Keyak AEADs on the FPGA fabric of Xilinx Zynq 7010. This low-cost System-on-Chip (SoC) also houses a dual-core Cortex-A9 CPU, closely matching the architecture of many embedded devices. The on-chip coprocessor is accessible from user space with a Linux kernel driver. An integration path exists all the way to end-user applications.
Metadata
- Available format(s)
- Publication info
- Published elsewhere. Minor revision. TrustED 2014, 03 November 2014, Scottsdale AZ US. ACM (2014)
- DOI
- 10.1145/2666141.2666144
- Keywords
- Secret-key cryptographyCryptographic coprocessorSystem-on-ChipKeccakKeyakWhirlpoolWhirlBobStriBobCAESAR Project
- Contact author(s)
- mjos @ iki fi
- History
- 2014-10-24: last of 5 revisions
- 2014-07-24: received
- See all versions
- Short URL
- https://ia.cr/2014/575
- License
-
CC BY
BibTeX
@misc{cryptoeprint:2014/575, author = {Markku-Juhani O. Saarinen}, title = {Simple {AEAD} Hardware Interface ({SÆHI}) in a {SoC}: Implementing an On-Chip Keyak/{WhirlBob} Coprocessor}, howpublished = {Cryptology {ePrint} Archive, Paper 2014/575}, year = {2014}, doi = {10.1145/2666141.2666144}, url = {https://eprint.iacr.org/2014/575} }