Primero intentaría SSL / TLS - https. Eso es fácil, hay mucha información excelente, puedes usar websockets para mantener la conexión abierta para mejorar tu velocidad (gran parte de la desaceleración de SSL / TLS se encuentra en el apretón de manos al comienzo de cada conexión).
Si eso no funciona para usted, consulte Quic - enlace - 'https' de Google sobre el protocolo udp: diseñado para Sé rápido y seguro.
Hagas lo que hagas, intenta evitar inventar tu propio protocolo y / o cifrado, es mucho más difícil de lo que piensas evitar todos los agujeros de seguridad.