Firmware validation fails randomly

James Pond james+onernglist at cipher.host
Wed Mar 3 17:12:29 GMT 2021


Hi,

I have been testing the OneRNG for a few weeks now and am pretty satisfied with it so far, thinking of ordering a few more even, but I am having a little trouble with the firmware verification process lately and was wondering if someone can point me in the right direction.

While trying to learn more about the device, I built a new feeder[1] based on the new onerng.sh script[2] which does pretty much the same thing as the original, but slightly different. I also call the script using a sandboxed systemd service[3] instead of udev, as the device is always connected to my monitor, which is connected to the workstation.

If I skip the firmware validation, everything works as expected, and I can both interface directly with the device to get data from it and see the entropy pool for the kernel increasing. However, if I chose not to skip validation, it will sometimes work and sometimes not, usually telling me "Short image" or something similar.

Since I can get the error message and then get the verification to work a few minutes or hours later, with no clear reproduction step, I am wondering if it may be related to the device being connected to my monitor, which is a USB hub, or if maybe I did not understand the original code correctly and mangled the verification process instead.

Could someone shed some light on this, please? If it makes a difference, I am running these tests on an Ubuntu 20.04 machine with kernel 5.10.19.

[1] https://git.sr.ht/~jamesponddotco/dotfiles/tree/master/.local/bin/gotrng
[2] http://lists.onerng.info/groups/onerng-talk/messages/topic/6Ks2188YN5KJcepRBINc6k
[3] https://paste.sr.ht/~jamesponddotco/aa6515ed81ee13d6814355a66788255d2d06ba1a


More information about the Discuss mailing list