Это на самом деле не имеет ничего общего с C ++.Вы задаете общий вопрос об информационной безопасности.Вы хотите отправить информацию через TCP или UDP, которая включает в себя конфиденциальную информацию (адрес электронной почты, пароль и IP).Для этого вам нужно использовать криптографию.
Криптография - сложная область, в которой вы не должны пытаться создавать свои собственные протоколы, если вы не знаете много о том, что вы делаете.Вместо этого вам следует избегать UDP (поскольку ОЧЕНЬ сложно сделать шифрование правильно по UDP) и просто использовать SSL по TCP.
Чтобы сделать это из C ++, вы можете использовать библиотеку сокетов OpenSSL.И клиент, и сервер связаны с библиотекой.Если вам нужна небольшая помощь, вы можете выполнить отладку с помощью sslwrap, инструмента командной строки, который позволяет вам использовать сокеты открытого текста с вашего клиента и сервера, но иметь незашифрованные данные, заключенные в соединение SSL TCP.