Since my KASLR implementation for arm64 Linux is based on the EFI_RNG_PROTOCOL (at least for UEFI systems), which is not yet widely available on systems that are under developement currently, this implements a pseudo-random version for ARM Juno. This code is not suitable for production, but since Juno is strictly a development platform, that concern does not apply here. Note that the library is delivered as a binary which prints a warning to the console the first time it is called.
Ard Biesheuvel (2): Platforms/ARM: implement a pseudo-random version of RngLib Platforms/ArmJuno: add RngDxe based on PseudoRngLib
Platforms/ARM/Drivers/PseudoRngLib/License.txt | 19 ++++++++++ Platforms/ARM/Drivers/PseudoRngLib/PseudoRngLib.inf | 38 ++++++++++++++++++++ Platforms/ARM/Drivers/PseudoRngLib/PseudoRngLib.lib | Bin 0 -> 29610 bytes Platforms/ARM/Drivers/PseudoRngLib/README | 8 +++++ Platforms/ARM/Juno/ArmJuno.dsc | 8 +++++ Platforms/ARM/Juno/ArmJuno.fdf | 5 +++ 6 files changed, 78 insertions(+) create mode 100644 Platforms/ARM/Drivers/PseudoRngLib/License.txt create mode 100644 Platforms/ARM/Drivers/PseudoRngLib/PseudoRngLib.inf create mode 100644 Platforms/ARM/Drivers/PseudoRngLib/PseudoRngLib.lib create mode 100644 Platforms/ARM/Drivers/PseudoRngLib/README