Estoy buscando protocolos existentes para un chat grupal con dos cosas:
De extremo a extremo encriptado. Lo que usted esperaría: los miembros del chat solo pueden descifrar los mensajes y se detecta manipulación de mensajes.
No debe cifrar cada mensaje para cada miembro individualmente. El Protocolo de Señal hace esto, convirtiendo los chats grupales en muchos chats uno a uno, lo que no es una solución escalable adecuada. al problema.
Tenga en cuenta que cada miembro nuevo debe recibir la clave pública de todos al unirse, y cualquier clave de grupo debe rotarse cuando un miembro se retire. Esto se puede escalar de manera bastante razonable, y es posible que no haya una forma de evitarlo sin comprometer la seguridad, por lo que está permitido.
He buscado los protocolos existentes, pero no obtuve resultados que cumplan con estos requisitos. Pensé que había leído sobre algo hace unos años donde el grupo derivó una clave común y usó eso o algo, pero no puedo encontrar nada de eso.
-
Signal, WhatsApp y Allo utilizan el Protocolo de señal que viola el requisito # 2 .
-
Tox tiene alguna documentación extensa pero de alguna manera parece que no encuentro cómo se realiza el cifrado en un chat grupal.
-
Otra fuente incluso afirma que "no puede hacer grupos con extremo a extremo" (aunque estoy bastante seguro de que él / ella está equivocado).
-
Y finalmente un montón de otras aplicaciones populares como Mumble y XMPP no pueden hacerlo de principio a fin, o simplemente no admiten conversaciones de grupo como como Telegram , Ricochet y ZRTP .