On Mon, Nov 9, 2015 at 1:07 PM, Laura Abbott <laura@labbott.name> wrote:

I took a look at something closely related sometime ago[1] for
ARM DT based targets. The stack canary was always the same because
it was early enough no entropy was being added and there's no standard
RNG. This series proposed allowing entropy to be read out of the DT.
This still relied on reliable entropy being added to the DT somehow.
Ultimately, I never followed up and this still seems to be an issue.

Yeah this is something that has been bothering me for at least a year or two.
I've brought it up with Grant Likely, hoping that maybe this was something
Linaro could perhaps focus on, but both he and I have just not had the time
to follow up.

We really really need a standard way to pass entropy from the bootloader
into the random driver, for each architecture, and then each boot loader
needs to fetch whatever entropy it can, which may be SoC or architecture
specific.   Or someone needs to beat up on the ARM consortium to guarantee
HWRNG with a standard interface.

It could be via the device tree, or via a fixed memory segment, such as how the
boot command line is passed from the bootloader to the kernel.   I can help
provide a design and consultation/advice.   But I have zero time to do the
implementation, especially on the ARM architecture (where I lack expertise and
sample hardware).

-- Ted