Нет, вам лучше убедиться, что ваша конфигурация TLS безопасна.В этом случае настоятельно рекомендуется использовать TLS 1.2 с ECDHE, AES или Chacha20 / Poly1305 и другими современными примитивами (а также подготовить вас к TLS 1.3).
Конечно, вы можете добавить безопасность данных в покое, но этовероятно, не ваша главная цель.И да, если вы действительно хотите это сделать, вы можете использовать хорошо зарекомендовавший себя формат контейнера, и в этом случае вы, безусловно, можете сделать хуже, чем RNCryptor
, даже если он не был стандартизирован.Конечно, вам все равно придется интегрировать его в свой протокол безопасности осмысленно.
Для таких систем очень важно создать модель угрозы для вашей системы.Если ваша модель потока требует этого (например, в примере, который дал Терри, там компании используют атаку MitM), тогда вам следует начать поиск.В этом случае вы также должны решить выполнить шифрование на стороне клиента (где только клиент может расшифровать) или на стороне сервера.
Более ранняя версия может быть предпочтительнее с точки зрения безопасности, но вы должны каким-то образом сохранить личный ключ на стороне клиента., что часто невозможно сделать безопасно.В этом случае данные, конечно же, также скрыты и для сервера (но поскольку вы управляете приложением, клиент все еще не полностью защищен от утечки открытого текста вам или кому-либо, кто управляет сервером).