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

Обзор криптографии

Безопасность — это не дополнительная функция Пассворка, а основа архитектуры продукта. В этом разделе описана криптографическая модель, алгоритмы и механизмы защиты данных.

Для кого этот раздел​

  • Специалисты по информационной безопасности — для проведения аудита и оценки соответствия требованиям организации
  • Технические руководители — для принятия решения о внедрении продукта
  • Администраторы — для понимания принципов работы и настройки системы

Стандарты и лицензии​

Пассворк следует методологиям OWASP, требованиям ISO 27001 и принципам безопасной разработки (SDL).

Компания имеет лицензии ФСТЭК на техническую защиту конфиденциальной информации (ТЗКИ) и создание средств криптографической защиты (СКЗИ), а также лицензию ФСБ на деятельность, связанную с шифровальными средствами.


Архитектура нулевого доверия​

Пассворк построен на принципе Zero Knowledge (нулевое знание): сервер не располагает информацией, достаточной для расшифровки пользовательских данных. Доступ к данным невозможен ни для администраторов сервера, ни для технических специалистов.

  • Мастер-пароль никогда не покидает устройство пользователя
  • Все криптографические ключи генерируются на клиенте
  • Сервер хранит только зашифрованные данные и зашифрованные ключи
  • Расшифровка возможна только на стороне клиента

Двухуровневая защита​

Пассворк применяет два уровня шифрования:

УровеньГде выполняетсяКлючКогда активен
Клиентское шифрованиеБраузер/приложениеКлючи пользователяПри включённом CSE
Серверное шифрованиеСерверСерверный ключВсегда

Даже при отключённом клиентском шифровании данные защищены серверным шифрованием.

Используемые алгоритмы​

НазначениеАлгоритмПараметры
Вывод ключа из пароляPBKDF2SHA-256, 300K итераций
Симметричное шифрование (сервер)AES-256-CFBOpenSSL
Симметричное шифрование (клиент)AES-256-CBC+ Base32 кодирование
Асимметричное шифрованиеRSA-OAEP2048 бит, SHA-256
ХешированиеSHA-256, SHA-512—

Структура раздела​

Основы

  • Глоссарий — определения терминов: мастер-пароль, мастер-ключ, сейф, запись, ключи
  • Модель данных — иерархия объектов и связь с криптографическими ключами

Шифрование

Процессы

Инфраструктура

Быстрый обзор цепочки шифрования​

                        КЛИЕНТ
┌─────────────────┐
│ Мастер-пароль │ ← Вводит пользователь
└────────┬────────┘
│ PBKDF2 (300K итераций)
▼
┌─────────────────┐
│ Мастер-ключ │ ← 512 бит
└────────┬────────┘
│ AES-256-CBC
▼
┌─────────────────┐
│ Приватный RSA │ ← 2048 бит
└────────┬────────┘
│ RSA-OAEP (WebCrypto)
▼
┌─────────────────┐
│ Ключ сейфа │ ← 256 бит
└────────┬────────┘
│ AES-256-CBC
▼
┌─────────────────┐
│ Ключ записи │ ← 256 бит
└────────┬────────┘
│ AES-256-CBC
▼
┌─────────────────┐
│ Данные записи │ ← Пароли, секреты, файлы (зашифрованы)
└────────┬────────┘
│
─────────┼───────────────────────────────────
│ СЕРВЕР
▼
┌─────────────────┐
│ Серверный ключ │ ← 256 бит (OpenSSL)
└────────┬────────┘
│ AES-256-CFB
▼
┌─────────────────┐
│ База данных │ ← Двойное шифрование
└─────────────────┘

Что шифруется на клиенте​

Не все данные шифруются на клиенте — некоторые поля защищены только серверным шифрованием для обеспечения поиска и сортировки.

Подробная информация о шифровании каждого поля — в разделе Область шифрования.

Ключевые параметры​

ПараметрЗначение
RSA ключ2048 бит
AES ключ256 бит
PBKDF2 итерации (клиент)300 000
PBKDF2 итерации (сервер)600 000
Access Token энтропия256 бит
Токен ссылки энтропия256 бит
Ключ сейфа энтропия~596 бит