[devel] [sisyphus] Не переключается в графический режим

Andrey Savchenko bircoph на altlinux.org
Пт Ноя 9 03:30:19 MSK 2018


On Fri, 9 Nov 2018 02:07:05 +0300 Alexey V. Vissarionov wrote:
> On 2018-11-08 20:06:28 +0300, Andrey Savchenko wrote:
> 
>  >> 5. желательно всем обзавестись такими энтропийными ключиками,
>  >> как у Алексея! :)
>  > И да, и нет. То, что у Алексея ключик аппаратный — это хорошо, но,
>  > как я помню, там нет равномеризации выборки и не гарантируется
>  > несмещённость.
> 
> Первое обеспечивается аппаратно (на том ОУ, который компаратор), а
> второе достигается банальным отбеливанием по SHA2 внутри CSPRNG.

Покажи мне, пожалуйста, где там SHA2?
Вот последние исходники random.c ядра:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/char/random.c

Для смешивания входных данных используется CRC-32 полином:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/char/random.c#n323
 * For the purposes of better mixing, we use the CRC-32 polynomialas
 * well to make a (modified) twisted Generalized Feedback Shift
 * Register.

Для выходных данных используется SHA-1 (чтоб не выдавать внутреннее
состояние пула), который затем замешивается обратно в пул:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/char/random.c#n333
 * The mixing operation is much less sensitive than the output hash,
 * where we use SHA-1.  All that we want of mixing operation is that
 * it be a good non-cryptographic hash; i.e. it not produce collisions
 * when fed "random" data of the sort we expect to see.

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/char/random.c#n1417
 * We mix the hash back into the pool to prevent backtracking
 * attacks (where the attacker knows the state of the pool
 * plus the current outputs, and attempts to find previous
 * ouputs), unless the hash function can be inverted. By
 * mixing at least a SHA1 worth of hash data back, we make
 * brute-forcing the feedback as hard as brute-forcing the
 * hash.

> Или, если так будет понятнее: оно и не надо - лишь бы оно добавляло
> в пул хоть что-то действительно случайное (а стабилитронам в этом
> отношении действительно можно доверять, особенно дешевым на низкое
> напряжение, что для генерации шума самое то).
> 
>  > А если третий момент распределения будет сильно отличен от нуля,
>  > то это тоже значимая уязвимость, поскольку делает возможным
>  > корреляционный анализ данных, особенно на большой выборке.
> 
> Именно поэтому данные примешиваются в пул через хеш-функцию.

Однако, в исходном коде по ссылкам выше это не совсем так.

Best regards,
Andrew Savchenko
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : отсутствует
Тип     : application/pgp-signature
Размер  : 833 байтов
Описание: отсутствует
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20181109/686cb77a/attachment.bin>


Подробная информация о списке рассылки Devel