Is there a ARM processor support on-chip hardware random number generator?
Asked Answered
M

2

8

Intel supports RDRAND (also known as Intel secure key) instruction for returning random numbers. And it's available in Ivy Bridge processors.

I wonder, is there any ARM processor featuring instructions for on-chip hw random number generator functionally similar to RDRAND?

And I have an additional question.

In the Linux kernel (version 3.10), there are driver sources for hw random number generators in /linux/drivers/char/hw_random. (http://lxr.free-electrons.com/source/drivers/char/hw_random/?v=3.10)

And I found exynos-rng.c described as Random Number Generator driver for the exynos.

So, does exynos has H/W random number generator like Intel processors?

Thanks. Any comments are really appreciated.

Macrophysics answered 8/9, 2016 at 11:45 Comment(3)
Are you asking whether exynos-rng.c is a fake?Cache
No, I asked a question literally. In fact I cannot find any manual of exynos rng..Macrophysics
Many vendors' ARM Cortex-Ms (usually the M4's and up, but some M3's and presumably some M0's) contain hardware crypto and RNGs.Joinery
Y
11

ARM CPU cores don't have any such functionality themselves, but a great many SoCs which contain ARM CPU cores also contain their own HWRNG peripheral. As it's not part of the CPU architecture there are no "standard" instructions or interfaces, so just like any other peripheral there are a wide range of implementations with their own drivers.

Yesima answered 8/9, 2016 at 11:57 Comment(0)
S
1

Some time in the intervening years since this question was originally asked, such an instruction has been added to the armv8 (64 bit arm) instruction set. To read a 64 bit random value into the x0 register, you can use MRS x0, RNDR. It is only available if the processor implements FEAT_RNG_TRAP or FEAT_RNG.

https://developer.arm.com/documentation/ddi0601/2023-12/AArch64-Registers/RNDR--Random-Number

Singband answered 14/3 at 19:1 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.