Клиентское шифрование простыми словами

Клиентское шифрование означает, что исходный текст превращается в зашифрованный пакет прямо в браузере пользователя. Сервер получает уже зашифрованные данные и не участвует в самом процессе шифрования текста.

Роль пароля

Пароль используется для получения криптографического ключа. В браузере TrustHide для этого применяется PBKDF2-SHA256, после чего текст шифруется AES-GCM. Получателю нужен тот же пароль, чтобы расшифровать пакет.

Автоматический и ручной пароль

Если отправитель не задает ручной пароль, браузер генерирует пароль автоматически и добавляет его в часть ссылки после символа #. Эта часть обычно не отправляется на сервер при обычном HTTP-запросе. Если задан ручной пароль, его нужно передать получателю отдельно.

Важное ограничение текущей конфигурации

В текущем режиме TrustHide сохраняет служебный ключ для закрытой панели. Это удобно для администрирования, но такой режим нельзя называть zero-knowledge. Если требуется режим, при котором оператор сайта не может прочитать содержимое, хранение служебного ключа нужно отключить в конфигурации.