Jump to content

# Haveged

2 languages

- 日本語
- Русский

From ArchWiki

Related articles

- Rng-tools

This article or section is out of date.

Reason: Using the Haveged service is obsolete since kernel v5.6, see haveged's README and [1][2]. This page needs a rewrite to focus on the library and user space usage. (Discuss in Talk:Haveged)

The haveged project is an attempt to provide an easy-to-use, unpredictable random number generator based upon an adaptation of the HAVEGE algorithm. Haveged was created to remedy low-entropy conditions in the Linux random device that can occur under some workloads, especially on headless servers.

Warning: The quality of the generated entropy is not guaranteed and sometimes contested (see LCE: Do not play dice with random numbers and Is it appropriate to use haveged as a source of entropy on virtual machines?). Use it at your own risk or use it with a hardware based random number generator with the rng-tools (see #Alternative section)

## Installation

Install the haveged package.

Start and enable `haveged.service`.

## List available entropy

This article or section is out of date.

Reason: The random pool is 256 now, always. See Random number generation#Kernel built-in RNG (Discuss in Talk:Haveged)

If you are not sure, whether you need haveged, run:

    # cat /proc/sys/kernel/random/entropy_avail

This command shows you how much entropy your server has collected. If it is rather low (<1000), you should probably install haveged. Otherwise cryptographic applications will block until there is enough entropy available, which eg. could result in slow wlan speed, if your server is a Software access point.

You should use this command again to verify how much haveged boosted your entropy pool after the installation.

## Alternative

Unless you have a specific reason to not trust any hardware random number generator on your system, you should try to use them with the rng-tools first and if it turns out not to be enough (or if you do not have a hardware random number generator available), then use Haveged.

## Virtual machines

As discussed at Is it appropriate to use haveged as a source of entropy on virtual machines?, it can be contested whether haveged provides quality entropy within a virtual environment. Haveged relies on the rdtsc instruction, which may be virtualized within a virtual machine resulting in lower quantity entropy. On some hypervisors, it is possible to disable the virtualization of rdtsc, which would in theory allow haveged to provide higher quality entropy.

## See also

- Official website
- DigitalOcean's article on haveged

Category:

- Cryptography

Hidden category:

- Pages or sections flagged with Template:Out of date