I think it would be much better if the identity (files in PATH_IDENTITY & PATH_IDENTITY_BAK) on SD card were encrypted-at-rest.
- messages should be stored in original over-the-wire format, which is pretty safe (without plaintext identity)
- identity should be stored encrypted, with a password the user must type in on first use, so nothing can be spoofed or read when it's turned off, or if someone bad gets access to the SD card. After getting password, the identity key can be read into memory and should just work the same. Even if the user doesn't want to enter a password, it could still be stored, and all would work the same, but slightly better.
Here is a script for desktop to interop and arduino lib to encrypt/decrypt with password, in a reasonably safe way:
identity_file.zip
Also, sidenote, but we should work together on this stuff, if you're down. I made a bunch of stuff in this space, and I think we could make it all better if we team up.
Here are some related projects I made:
- reticulum-arduino - very light arduino-based protocol-only library
- rns-lite - light python reference-implementation for figuring out how to do things in other languages
- nomadnet-js - javascript client-lib for native & web
- signal-worker - a websocket server that runs on free CF workers (which works with native python clients and nomadnet-js)
- cyd-nomad - this is just the start of ideas, but I like ratdeck/ratcom better
My focus is light no-class setups that run on arduino/python/javascript (web & node.)
I think it would be much better if the identity (files in
PATH_IDENTITY&PATH_IDENTITY_BAK) on SD card were encrypted-at-rest.Here is a script for desktop to interop and arduino lib to encrypt/decrypt with password, in a reasonably safe way:
identity_file.zip
Also, sidenote, but we should work together on this stuff, if you're down. I made a bunch of stuff in this space, and I think we could make it all better if we team up.
Here are some related projects I made:
My focus is light no-class setups that run on arduino/python/javascript (web & node.)