Bug 1386824 - random-seed size should be 4096 bytes in size
Summary: random-seed size should be 4096 bytes in size
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: systemd
Version: 7.3
Hardware: All
OS: Linux
high
medium
Target Milestone: rc
: ---
Assignee: systemd-maint
QA Contact: Branislav Blaškovič
URL:
Whiteboard:
Depends On:
Blocks: 1256920 74systemd
TreeView+ depends on / blocked
 
Reported: 2016-10-19 16:48 UTC by Steve Grubb
Modified: 2018-08-20 13:25 UTC (History)
5 users (show)

Fixed In Version: systemd-219-31.el7
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2017-08-01 09:12:22 UTC


Attachments (Terms of Use)


Links
System ID Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2017:2297 normal SHIPPED_LIVE systemd bug fix and enhancement update 2017-08-01 12:40:16 UTC
Red Hat Bugzilla 1066517 None None None Never
Red Hat Bugzilla 1619268 None None None Never

Internal Links: 1066517 1619268

Description Steve Grubb 2016-10-19 16:48:18 UTC
Description of problem:
Back on bz 1066517 it was agreed that systemd would base its random-seed size off of the /proc/sys/kernel/random/poolsize value. The formula was as follows:

read from /proc/poolsize = 4096 bits
calculate bytes = 512 bytes.
multiply by stephan's 2:1 ration = 1024 bytes
multiply by a safety factor of 4 (or 8) = 4096 bytes

Version-Release number of selected component (if applicable):
systemd-219-26.el7

How reproducible:
Always

Steps to Reproduce:
1. ls -l /var/lib/systemd/random-seed

Actual results:
512

Expected results:
4096

Additional info:
RHEL 6 correctly sets the size to 4096.

Comment 8 Jan Synacek 2017-01-23 09:39:22 UTC
I cannot see any agreement on 4096 in that bugzilla... Also, nobody answered Lennart's final question at https://bugzilla.redhat.com/show_bug.cgi?id=1066517#c73, when he asked what he was supposed to do after all the discussion... The whole point of the change seems to be a "better safe than sorry, but nobody actually knows if it's safer" approach. Is there an available demonstration where people can actually show how much difference it makes to change that particular random seed?

Comment 9 Steve Grubb 2017-01-23 15:02:07 UTC
The problem is that the algorithm used to mix the seed into the pool sometimes touches bits and locations more than once. This means a bigger seed is necessary to touch every bit in every location at least once. RHEL7 GA did this right. Somewhere along the way, a patch in systemd was dropped and now we have a regression.

Comment 10 Jan Synacek 2017-01-24 09:31:16 UTC
So you want us to reintroduce https://github.com/lnykryn/systemd-rhel/commit/20436a1eb3a468b7bc32fe1d36cb7c4029519052 again?

Comment 11 Steve Grubb 2017-01-24 18:55:36 UTC
Yes, that would solve the problem. Thanks.

Comment 12 Jan Synacek 2017-01-25 07:40:49 UTC
https://github.com/lnykryn/systemd-rhel/pull/84

Comment 14 Lukáš Nykrýn 2017-02-06 11:09:26 UTC
fix merged to upstream staging branch ->
https://github.com/lnykryn/systemd-rhel/commit/6a4ea99f07b32659362c9a1a38be8bec2bb0964c
-> post

Comment 17 errata-xmlrpc 2017-08-01 09:12:22 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2017:2297


Note You need to log in before you can comment on or make changes to this bug.