URL: <https://savannah.gnu.org/bugs/?64918>
Summary: Provide random entropy for the OpenBSD kernel Group: GNU GRUB Submitter: yuichiro Submitted: Wed 22 Nov 2023 06:47:42 AM UTC Category: Booting Severity: Major Priority: 5 - Normal Item Group: Feature Request Status: None Privacy: Public Assigned to: None Originator Name: Originator Email: Open/Closed: Open Release: 2.02 Release: Discussion Lock: Any Reproducibility: Every Time Planned Release: None _______________________________________________________ Follow-up Comments: ------------------------------------------------------- Date: Wed 22 Nov 2023 06:47:42 AM UTC By: Yuichiro Naito <yuichiro> The OpenBSD kernel expects that the loader fills random entropy in the “.openbsd.randomdata” section. The OpenBSD loader generates pseudo-random data in the following code. https://github.com/openbsd/src/blob/master/sys/lib/libsa/loadfile_elf.c#L100-L108 I added almost the same logic to Grub2. It filled random bytes generated by encrypted data from the random key and initial vector. And I fixed the “pmtimer_tsc_get_random_bit” function to use the second bit, next to LSB. Because my PC (core i7-6700) always returns even TSC value. So the LSB of the TSC value is always 0. It won’t be the random bit. My patch suppresses the OpenBSD kernel warning message, “warning: no entropy supplied by boot loader”. _______________________________________________________ File Attachments: ------------------------------------------------------- Date: Wed 22 Nov 2023 06:47:42 AM UTC Name: openbsd_randomdata.patch Size: 6KiB By: yuichiro <http://savannah.gnu.org/bugs/download.php?file_id=55346> _______________________________________________________ Reply to this item at: <https://savannah.gnu.org/bugs/?64918> _______________________________________________ Message sent via Savannah https://savannah.gnu.org/