Мне нужно быстро передавать файлы через Интернет с сервера Java на клиенты C ++, где часто многим клиентам нужны одни и те же файлы. Я смотрел, скажем, TransferTo () в Java, который звучит так, как будто это была бы неплохо оптимизированная функция для отправки файлов. Однако я не уверен, когда использую TransferTo (), как наилучшим образом получить это в C ++ (т.е. это просто передача необработанных данных, как определить, когда файл закончен на стороне клиента и т. Д.). Мне нужно, чтобы это работало как на Windows, так и на Linux. Кроме того, кроме TransferTo (), будет ли какой-то способ быть более эффективным, особенно если использовать тот факт, что многим клиентам обычно нужны одни и те же файлы? Я не уверен, как сделать многоадресную рассылку и т. Д. Кроме того, я использую безопасность на уровне приложений, а не VPN, и на сервере Java, шифрую с помощью AES и использую цифровую подпись MAC, поэтому я также ищу Рекомендация кроссплатформенной библиотеки для решения крипто на стороне C ++ с минимальными затратами.
Я очень хорошо разбираюсь в C ++, но у меня нет опыта работы с сетевым программированием, поэтому, пожалуйста, подумайте о чем-нибудь еще.
Спасибо.