Article | REF: H5215 V1

Electronic circuit for random-numbers generation

Author: Arnaud TISSERAND

Publication date: August 10, 2014, Review date: February 7, 2020

You do not have access to this resource.
Click here to request your free trial access!

Already subscribed? Log in!


Overview

Français

ABSTRACT

There are two main types of random number generators: the pseudo-random generators based on deterministic algorithms and the true random generators based on physical noise sources with chaotic properties. This document presents their main principles and a few examples of generators, and then discuss the tricky problem of randomness evaluation as well as some typical applications.

Read this article from a comprehensive knowledge base, updated and supplemented with articles reviewed by scientific committees.

Read the article

AUTHOR

  • Arnaud TISSERAND: Researcher at the Centre National de la Recherche Scientifique (CNRS), PhD in computer science, HDR - Researcher in the IRISA laboratory and the CAIRN project-team at Lannion - Part-time lecturer at Rennes 1 University and the École Nationale Supérieure des Sciences Appliquées et de Technologie (ENSSAT).

 INTRODUCTION

Random numbers are needed for a number of applications: lotteries, computer games, cryptography, system security, digital simulation, randomized algorithms, program and IC testing, and so on. RNGs (random number generators) are used for this purpose. There are two main types of RNG: on the one hand, pseudo-random number generators or PRNGs (Pseudo RNGs) based on deterministic algorithms, and on the other, true random number generators or TRNGs (True RNGs) which exploit a source of physical noise with stochastic properties.

Two main characteristics guide the choice of an RNG: its flow rate and the quality of the hazard produced. The flow rate must be adapted to the target application, but there are other characteristics such as the cost of the generator, its start-up time and whether its flow rate is constant or variable over time.

The quality of an RNG is probably its most important feature, but also the most complex to assess. The random sequence generated must have a uniform, equiprobable probability distribution. In addition, each new element in the sequence must be statistically independent and unpredictable in relation to the preceding elements. Some applications require the sequence to be non-reproducible, i.e. totally different after each restart. Finally, in some secure applications, nothing or no-one must be able to predict or bias the values produced: this is attack resistance.

PRNGs can be implemented in software or hardware. High-performance software PRNGs, i.e. with very high throughput and good randomness at low cost, are available for most processor types. In hardware, numerous PRNGs exist for ASICs (Application Specific Integrated Circuits) and FPGAs (Field Programmable Gate Arrays). We know how to design PRNGs with excellent characteristics of uniformity, equiprobability, independence and non-predictability. But since PRNGs are deterministic, they cannot guarantee the characteristic of non-reproducibility of sequences after each restart. In practice, you need a truly random source to initialize them correctly.

TRNGs require a hardware implementation, such as an integrated circuit, for the physical noise source. This physical noise source has properties of non-predictability and non-reproducibility due to certain stochastic physical phenomena (e.g. thermal or electro-magnetic noise, quantum mechanics, radioactive decay). But "ideal" physical noise is mixed, and often diluted, with other noises linked to the operation of the integrated circuit and its environment (circuit clock, electromagnetic disturbances, variations in supply voltage or temperature, etc.). To design a good TRNG, you need to extract the truly random physical noise from the other noises. This extraction is complex and delicate. What's...

You do not have access to this resource.

Exclusive to subscribers. 97% yet to be discovered!

You do not have access to this resource.
Click here to request your free trial access!

Already subscribed? Log in!


The Ultimate Scientific and Technical Reference

A Comprehensive Knowledge Base, with over 1,200 authors and 100 scientific advisors
+ More than 10,000 articles and 1,000 how-to sheets, over 800 new or updated articles every year
From design to prototyping, right through to industrialization, the reference for securing the development of your industrial projects

KEYWORDS

True random number generator   |   pseudo random number generator   |   physical noise sources   |   randomness quality evaluation   |   Information technology   |   microelectronic   |   integrated circuits   |   digital security


This article is included in

Software technologies and System architectures

This offer includes:

Knowledge Base

Updated and enriched with articles validated by our scientific committees

Services

A set of exclusive tools to complement the resources

Practical Path

Operational and didactic, to guarantee the acquisition of transversal skills

Doc & Quiz

Interactive articles with quizzes, for constructive reading

Subscribe now!

Ongoing reading
Electronic circuits for random number generation