Hello,
The README states:
espradio uses the binary blobs provided by Espressif...
It could be great if we added better traceability for the binary blobs. As of now the blobs could have been modified anywhere in the process and we wouldn't know.
I guess that they come from repos like https://github.com/espressif/esp32-wifi-lib but as of now there is no way to be 100% sure.
I would like to suggest the addition of a tool (go script, lets call it blosbmanager) to automatically fetch the blobs for a given git commit of the upstream repo(s), hash all the blobs with SHA-512 and generate a checksums.txt file and README.md file in the blobs folder to indicate which upstream commits have been used.
The content of blobs/checksums.txt would look like:
58a82a3f8d8941b7c7e0e2db45003d1470f75ba80638821945cc54732b180e9ac163fbfba4701b701499685438aa519ad918e2d00aec30d51e250307223b3f11 libs/esp32/libcore.a
...
We could also add a verify command to the script to fetch the binaries from upstream (from the pinned commit) and compare the hashes with the local binaries. This verify command would run as a CI workflow.
Ideally we should be able to verify hashes and signatures directly from Espressif, but I couldn't find anything in their repos.
It would look like: https://nodejs.org/dist/v26.7.0/SHASUMS256.txt
Let me know what you think. I may be able to work on it if we define a clear scope and spec.
Hello,
The README states:
It could be great if we added better traceability for the binary blobs. As of now the blobs could have been modified anywhere in the process and we wouldn't know.
I guess that they come from repos like https://github.com/espressif/esp32-wifi-lib but as of now there is no way to be 100% sure.
I would like to suggest the addition of a tool (go script, lets call it
blosbmanager) to automatically fetch the blobs for a given git commit of the upstream repo(s), hash all the blobs with SHA-512 and generate achecksums.txtfile andREADME.mdfile in theblobsfolder to indicate which upstream commits have been used.The content of
blobs/checksums.txtwould look like:We could also add a
verifycommand to the script to fetch the binaries from upstream (from the pinned commit) and compare the hashes with the local binaries. Thisverifycommand would run as a CI workflow.Ideally we should be able to verify hashes and signatures directly from Espressif, but I couldn't find anything in their repos.
It would look like: https://nodejs.org/dist/v26.7.0/SHASUMS256.txt
Let me know what you think. I may be able to work on it if we define a clear scope and spec.