Перейти к основному содержимому
Версия: 7.0

Общее описание

Два уровня защиты данных

Пассворк защищает ваши пароли на двух уровнях. Серверное шифрование работает всегда — все данные о паролях автоматически шифруются алгоритмом AES-256-CFB перед записью в базу данных. Этот механизм не требует никаких действий от администратора.

Клиентское шифрование (CSE) добавляет второй слой защиты. При его включении данные шифруются уже в браузере пользователя, мобильном приложении, расширениях, и на сервер попадает только зашифрованный текст. По умолчанию этот режим отключён, поэтому пользователи работают без мастер-паролей — это упрощает повседневное использование системы.

Принцип работы клиентского шифрования

Когда клиентское шифрование включено, создаётся цепочка ключей для:

  • Пользователей
  • Сейфов
  • Записей (паролей и ярлыков)
  • Ссылок на пароли

Пользователь задаёт мастер-пароль, из которого через алгоритм PBKDF2 формируется мастер-ключ. Этот ключ расшифровывает закрытый RSA-ключ пользователя, который в свою очередь даёт доступ к мастер-ключам сейфов. С помощью мастер-ключа сейфа система расшифровывает мастер-ключ записи, а мастер-ключ записи позволяет расшифровать данные пароля.

Пользователи могут поделиться паролем внутри Пассворка не добавляя другого пользователя в сейф. В этом случае с помощью закрытого RSA-ключа пользователя система расшифрует конкретый мастер-ключ записи.

Основные сценарии:

  • Через сейф: Мастер-пароль пользователя → Мастер-ключ пользователя → Закрытый RSA-ключ пользователя → Мастер-ключ сейфа → Мастер-ключ записи → Данные пароля;
  • Через раздел входящие: Мастер-пароль пользователя → Мастер-ключ пользователя → Закрытый RSA-ключ пользователя → Мастер-ключ записи → Данные пароля.

Важно отметить, что все ключи (RSA, мастер-ключ сейфа, мастер-ключ записей) создаются на стороне клиента (в браузере) с помощью криптографических алгоритмов и не передаются на сервер в открытом виде, что делает расшифровку данных на стороне сервера невозможным.

На клиенте шифруются все парольные поля, дополнительные поля, TOTP-секреты, вложения и все редакции записей. При этом названия записей, основной логин, теги, URL и комментарии на клиенте не шифруются, так как поиск выполняется по этим полям.

Схема с отдельными ключами для сейфов и записей позволяет реализовать Zero Knowledge схему и End-to-End шифрование как для конкретных паролей, так и в общих сейфах.

Когда использовать клиентское шифрование

Клиентское шифрование рекомендуется включать для обеспечения модели Zero Knowledge при облачном размещении Пассворка или когда нужно соответствовать требованиям стандартов безопасности (в вашей компании или глобальных). Особенно важно клиентское шифрование при хранении критически важных данных — root-учёток, SSH-ключей или seed-фраз.

Если Пассворк развернут в изолированной корпоративной сети под полным контролем организации, серверного шифрования обычно достаточно. В этом случае отсутствие мастер-паролей упрощает работу пользователей.

Настройка и восстановление доступа

Мастер-пароль пользователя никогда не передается на сервер. Поэтому если пользователь забывает мастер-пароль — нет возможности его восстановить. Без мастер-пароля пользователь не сможет авторизоваться в системе и расшифровать свои данные.

В таком случае администратор Пассворка может сбросить мастер-пароль пользователя, затем пользователь сможет установить новый мастер-пароль (и сгенерировать новую пару RSA-ключей).

Администраторы сейфов или папок должны заново подтвердить такого пользователя в сейфах, после чего все права восстанавливаются автоматически.

Работа с группами

Клиентское шифрование совместимо с системой групп и LDAP-синхронизацией. При добавлении пользователя в группу создаются запросы на доступ ко всем связанным сейфам. Администратор сейфа подтверждает запрос, и мастер-ключ сейфа безопасно передаётся через RSA-шифрование. Это обеспечивает Zero Knowledge схему при сохранении автоматизации через группы.

Техническая реализация

Система использует проверенные криптографические алгоритмы: PBKDF2-SHA-256 для вывода ключей, AES-256-CFB для шифрования данных, RSA-2048 для защищённой передачи ключей сейфов. Клиентское шифрование поддерживается во всех официальных клиентах Пассворка — веб-интерфейсе, браузерных расширениях и мобильных приложениях. Для серверных интеграций доступен Python-коннектор с той же логикой шифрования.

Включение клиентского шифрования