Pour ma part, je trouve dommage qu’on ne puisse pas déchiffrer un message avec plusieurs clients.
Le problème de la signature n’en ai pas un, en fait : il suffit de signer le message, ou un hash du message, dans la trame qu’on envoi.
C’est ce que je fais dans Cesium+.
Voici un exemple de message :
{
"issuer" : "DMwEdBiWuCGkPutfvGs7fAoyaqbiA3ZXeX5grcNsg5x8",
"recipient" : "FbvRnCM8gQdDig614qR1y1QY7x7sUN2RzXr3a9D9Rzw4",
"title" : "jBhFV2kDyUvDxmYtoWWO1D9ZpbX+j2vyOjVuMkgWa4vTyvM6VCqZWhutwYpMmXr1vdA=",
"content" : "sX5/XOwcZe2RUIM2jd7Wlz9NoLTvgxPbNXZtNU8Qa4vT2qApB2rHFloNFdk+mHHo+NOfwk6RZjU3gnmUN0yi3eyUIOr2FYAoltdhx6C4Zmd9JQy5jVMzKg1HfD6K7daYbtN72ZTLfIxwlnAXG8z1+Rf9hZcmRNSIpFJ6lC2IUFcrFbulE8EsZuMPtrfuLlzNoW8HButmBlfbkMlALKcOcGYhVUCFhVAiL5FSgF+sHsUZe9CtubeGPlNT9m1y2joNZ8B4/rBn97XGV5odsaZZBO5gqcRQN4Y9SJSaNEbNFdaeWIFaO4NPT0r48eXKP4OGhYeQl4vCUQGG21U+GmcJiT4hiYJm41Xwp+qyjePlJ+om",
"time" : 1504199549,
"nonce" : "CWKAtBXqXu2ZuifenHRBePw15e36gw3v9",
"hash" : "965E9C4693C0B63C6F4CC6924A93354F0CE2616F91BF0243FB5A355B4222D502",
"signature" : "f0sPHFKukSbIahwkrYzPis9T5fP73QuH6UB76IdXN0JeWfg3Gh9A0oUc/YL78QmcKaM0FrD8JoK8BqYZNd1YAQ=="
}
On y voit donc :
- le
nonce
(pour répondre à ta question plus haut) - la pubkey ED25215 de l’émetteur et de récepteur
- le hash du document (sérialisé par Json.stringify(), sans le hash ni la signature)
- la signature, du hash, avec l’algo de signature ed25519
il est donc possible de vérifier l’authenticité du message sans l’ouvrir la box
.
Bon après je suis pas un pro de la crypto. J’ai sans doute fait des erreurs…
@tuxmain générer de tels messages JSON, compatible Cs+, te semble il intéressant ?