You are looking at a specific version 20200903:110844 of this paper. See the latest version.

Paper 2020/866

Building a Modern TRNG: An Entropy Source Interface for RISC-V

Markku-Juhani O. Saarinen and G. Richard Newell and Ben Marshall

Abstract

The currently proposed RISC-V True Random Number Generator (TRNG) architecture breaks with previous ISA TRNG practice by splitting the Entropy Source (ES) component away from cryptographic PRNGs into a separate interface, and in its use of polling. We describe the interface, its use in cryptography, and offer additional discussion, background, and rationale for various aspects of it. This design is informed by lessons learned from earlier mainstream ISAs, recently introduced SP 800-90B and FIPS 140-3 entropy audit requirements, AIS 31 and Common Criteria, current and emerging cryptographic needs such as post-quantum cryptography, and the goal of supporting a wide variety of RISC-V implementations and applications. Many of the architectural choices are a result of quantitative observations about random number generators in secure microcontrollers, the Linux kernel, and cryptographic libraries. We further compare the architecture to some contemporary random number generators and describe a minimalistic TRNG reference implementation that uses the Entropy Source together with RISC-V AES instructions.

Metadata
Available format(s)
PDF
Category
Implementation
Publication info
Published elsewhere. Minor revision. In 4th Workshop on Attacks and Solutions in Hardware Security (ASHES’20), November 13, 2020, Virtual Event, USA.
DOI
10.1145/3411504.3421212
Keywords
Entropy SourceRISC-VRandomTRNGFIPS 140-3SP 800-90B
Contact author(s)
mjos @ mjos fi
History
2021-11-11: last of 44 revisions
2020-07-12: received
See all versions
Short URL
https://ia.cr/2020/866
License
Creative Commons Attribution
CC BY
Note: In order to protect the privacy of readers, eprint.iacr.org does not use cookies or embedded third party content.