ChaCha is a high-throughput stream cipher designed with the aim of ensuring high-security margins while achieving high performance on software platforms. RISC-V, an emerging, free, and open Instruction Set Architecture (ISA) is being developed with many instruction set extensions (ISE). ISEs are a native concept in RISC-V to support a relatively small RISC-V ISA to suit different use-cases including cryptographic acceleration via either standard or custom ISEs. This paper proposes a lightweight ISE to support ChaCha on RISC-V architectures. This approach targets embedded computing systems such as IoT edge devices that don’t support a vector engine. The proposed ISE is designed to accelerate the computation of the ChaCha block function and align with the RISC-V design principles. We show that our proposed ISEs help to improve the efficiency of the ChaCha block function. The ISE-assisted implementation of ChaCha encryption speeds up at least 5.4× and 3.4× compared to the OpenSSL baseline and ISA-based optimised implementation, respectively. For encrypting short messages, the ISE-assisted implementation gains a comparative performance compared to the implementations using very high area overhead vector extensions.
|Number of pages||8|
|Publication status||Published - Aug 2021|
|Event||IEEE International Conference on Application-specific Systems, Architectures and Processors - |
Duration: 7 Jul 2021 → …
Conference number: 32
|Conference||IEEE International Conference on Application-specific Systems, Architectures and Processors|
|Period||7/07/21 → …|
Bibliographical noteFunding Information:
ACKNOWLEDGEMENT This work has been supported in part by EPSRC via grant EP/R012288/1, under the RISE (http://www.ukrise.org) programme.
© 2021 IEEE.
- Stream Ciphers
- Instruction Set Extension