Si el servidor borra un usuario, el cliente no lo vuelve a crear porque está mirando que tiene la llavePrivada en local y por lo tanto asume que ya existe en la base de datos.
Se debe comprobar y en caso de que no exista, generarle nuevas claves aunque el usuario ya tenga clave en local.
Probablemente se desee informar al usuario de que por algún motivo ya no existe en la base de datos y que debe eliminar/mover la clave privada anterior para generar un nuevo par.
curl -X POST -H "Content-Type: application/json" -d '{
"alias": "usuario1",
"pubKey": "-----BEGIN PUBLIC KEY-----\nMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA1Dm8xSDNlROOjH3XVh5i\nAeNld4sAaReW1VQfGqVtLlCw0q5Pl6Q5FhSInyDmHkLRTf1gWcc8hEfAKi9GB01s\nbE7pNYfN0mS8VW/Td3pmymzDjj+4sTz2c9+veL0E7SXz9W8CtQhxVW2UDr7fKUY1\nQLoGosn+31vMT/z0y7oLMKvqK45HhVRhi6o6n1DTYc8ASu+srgGcnpdijyQwoFF4\nz/T19eSJ0ZSDSiX1tBpBNe0wDzR4MmTZ9Pjwz/fTTMz5C7mU8z3X0gDPcqJ95Ysh\nvkX/pEzHvsKJzZ3bhyzeB+LWZS0DCbWlDBgqtCOoR3rU2RX/iN6rKLVNtmxPwkm1\nLdIa8AqBl4pSFDUNpJ+L0jFuyL/7T0mSVmOekXyVpFsFc5ScfxtsOPBRBykZOhwB\nKqBCvW5j3X13XLZv9jMHUtHP7/HFnViXMNlIhA8iFG5SP8k/z+hl9MkEVn19q/Ld\nrmFwUzxEhOfquH7lLc1yOf+4/ULBCz/iF5Yjj6K7HkjAaBqprW6vzR6kCZ8YAWT4\nsBM+IzazYRZv4sMBcXG5i0bg+U6hfyJq9jpW3v2GVWFlz9rZYoHIB67SC29SwZxl\nSKQjmupUnnOdp8MvFFhX90UMCtRJYg3BciPMRnCRhEiUnXUaFzr4ITiqc1FazulB\nnWBlDvTFwJ7K1g1nb9LVqBsCAwEAAQ==\n-----END PUBLIC KEY-----" }' http://localhost:3000/users
Permite generar/cargar privKeys
Demás funcionalidad para enviar mensajes, etc.
Valorar si hacer 2 clientes, uno que emule una terminal de linux y otro con "GUI"
Muchod usuarios no instalarán nodejs