Lo que usted propone es realmente similar a los https normales con la reutilización de la sesión, es decir,
- El protocolo de enlace inicial necesita un cifrado asimétrico para identificar el servidor y (según el cifrado) para crear de forma segura la clave para el cifrado simétrico. El cifrado de transporte se realiza solo con cifrado simétrico.
- Los siguientes handshakes solo reutilizan la sesión existente y solo se necesita un cifrado simétrico.
Así, lo que propones existe, está establecido y recomiendo usarlo.
¿Ve algún inconveniente y problemas de seguridad en esto?
No veo ningún problema de seguridad obvio en el diseño e implementación porque el diseño no es lo suficientemente específico y todavía no hay implementación. Pero en el aspecto técnico veo varios problemas:
- No sé cómo implementa su cifrado, pero las bibliotecas que implementan SSL / TLS ya están optimizadas para la velocidad (a menudo utilizan la aceleración de hardware). ¿Puedes superar fácilmente esto con tu implementación?
- El protocolo SSL / TLS se usa ampliamente y se analiza en gran medida. ¿Qué hay de tu diseño?
- Nunca entendí por qué cualquier persona interesada en el rendimiento utiliza formatos basados en texto como JSON o XML de todos modos. Si necesita rendimiento y bajos gastos generales, utilice formatos binarios como protobuf o el antiguo pero establecido codificación NAS.1 .