On Mon, May 30, 2016 at 4:30 PM, Emese Revfy <re.em...@gmail.com> wrote:
> I would like to introduce the latent_entropy gcc plugin. This plugin mitigates
> the problem of the kernel having too little entropy during and after boot
> for generating crypto keys.
>
> This plugin mixes random values into the latent_entropy global variable
> in functions marked by the __latent_entropy attribute.
> The value of this global variable is added to the kernel entropy pool
> to increase the entropy.
>
> It is a CII project supported by the Linux Foundation.
>
> The latent_entropy plugin was ported from grsecurity/PaX originally written by
> the PaX Team. You can find more about the plugin here:
> https://grsecurity.net/pipermail/grsecurity/2012-July/001093.html
>
> The plugin supports all gcc version from 4.5 to 6.0.
>
> I do some changes above the PaX version. The important one is mixing
> the stack pointer into the global variable too.
> You can find more about the changes here:
> https://github.com/ephox-gcc-plugins/latent_entropy
>
> This patch set is based on the "Introduce GCC plugin infrastructure" patch 
> set (v9 next-20160520).
>
> Emese Revfy (3):
>  Add the latent_entropy gcc plugin
>  Mark functions with the latent_entropy attribute
>  Add the extra_latent_entropy kernel parameter
>
>
> Changes from v1:
>   * Remove unnecessary ifdefs
>     (Suggested-by: Kees Cook <keesc...@chromium.org>)
>   * Separate the two definitions of add_latent_entropy()
>     (Suggested-by: Kees Cook <keesc...@chromium.org>)
>   * Removed unnecessary global variable (latent_entropy_plugin.c)
>   * About the latent_entropy gcc attribute (latent_entropy_plugin.c)
>   * Measure the boot time performance impact of the latent_entropy plugin 
> (arch/Kconfig)

By the way, as you work on v3, can you also be sure to put your
patches through scripts/checkpatch.pl? There are a lot of >80
character lines, and other nits. I'd like to minimize the warnings.

Thanks!

-Kees

-- 
Kees Cook
Chrome OS & Brillo Security

Reply via email to