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)
PDF
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
Creative Commons Attribution
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}
}
Note: In order to protect the privacy of readers, eprint.iacr.org does not use cookies or embedded third party content.