mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-22 23:12:32 +00:00
736e3b81aa
7aefb47 jitterentropy-rngd: update to the v1.2.0
What's interesting about jitterentropy-rngd v1.2.0 release is that it
bumps its copy of jitterentropy-library from v2.2.0 to the v3.0.0. That
bump includes a relevant commit 3130cd9 ("replace LSFR with SHA-3 256").
When initializing entropy jent calculates time delta. Time values are
obtained using clock_gettime() + CLOCK_REALTIME. There is no guarantee
from CLOCK_REALTIME of unique values and slow devices often return
duplicated ones.
A switch from jent_lfsr_time() to jent_hash_time() resulted in many less
cases of zero delta and avoids ECOARSETIME.
Long story short: on some system this fixes:
[ 6.722725] urngd: jent-rng init failed, err: 2
This is important change for BCM53573 which doesn't include hwrng and
seems to have arch_timer running at 36,8 Hz.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit c74b5e09e6
)
47 lines
1.4 KiB
Makefile
47 lines
1.4 KiB
Makefile
include $(TOPDIR)/rules.mk
|
|
|
|
PKG_NAME:=urngd
|
|
PKG_RELEASE:=1
|
|
|
|
PKG_SOURCE_PROTO:=git
|
|
PKG_SOURCE_URL=$(PROJECT_GIT)/project/urngd.git
|
|
PKG_SOURCE_DATE:=2023-07-25
|
|
PKG_SOURCE_VERSION:=7aefb47be57df0467d97d539f7fe9e23e607a3b4
|
|
PKG_MIRROR_HASH:=427d4228fd65cf4320b8c212e710b86bcbfcdd4239f4e67132b3b471f7437202
|
|
|
|
PKG_LICENSE:=GPL-2.0 BSD-3-Clause
|
|
PKG_LICENSE_FILES:=
|
|
|
|
include $(INCLUDE_DIR)/package.mk
|
|
include $(INCLUDE_DIR)/cmake.mk
|
|
|
|
define Package/urngd
|
|
SECTION:=utils
|
|
CATEGORY:=Base system
|
|
TITLE:=OpenWrt non-physical true random number generator based on timing jitter
|
|
DEPENDS:=+libubox
|
|
endef
|
|
|
|
define Package/urngd/description
|
|
urngd is OpenWrt's micro non-physical true random number generator based on
|
|
timing jitter.
|
|
|
|
Using the Jitter RNG core, the rngd provides an entropy source that feeds into
|
|
the Linux /dev/random device if its entropy runs low. It updates the
|
|
/dev/random entropy estimator such that the newly provided entropy unblocks
|
|
/dev/random.
|
|
|
|
The seeding of /dev/random also ensures that /dev/urandom benefits from
|
|
entropy. Especially during boot time, when the entropy of Linux is low, the
|
|
Jitter RNGd provides a source of sufficient entropy.
|
|
endef
|
|
|
|
define Package/urngd/install
|
|
$(INSTALL_DIR) $(1)/etc/init.d
|
|
$(INSTALL_BIN) ./files/$(PKG_NAME).init $(1)/etc/init.d/$(PKG_NAME)
|
|
$(INSTALL_DIR) $(1)/sbin
|
|
$(INSTALL_BIN) $(PKG_BUILD_DIR)/$(PKG_NAME) $(1)/sbin/$(PKG_NAME)
|
|
endef
|
|
|
|
$(eval $(call BuildPackage,urngd))
|