Безопасность
- Шифрование
- TLS при передаче (версия не ниже 1.2, по умолчанию 1.3; сертификаты Let's Encrypt) и шифрование Fernet для конфиденциальных полей, например API-ключей бирж. Резервные копии шифруются ключом, который есть только у нас, до того, как покидают сервер. Они хранятся на втором сервере в Нюрнберге. Его арендует Coral Capital GmbH, отдельная швейцарская компания, которая не может их прочитать.
- Вход
- Пароли хешируются с помощью Argon2id (параметры OWASP), двухфакторная аутентификация через приложение (TOTP, RFC 6238) или по 6-значному коду из письма, токены обновления меняются при каждом использовании с обнаружением повторного использования, постепенная блокировка после нескольких неудачных попыток.
- Разделение клиентов
- Каждый запрос фильтруется по организации в коде приложения, а ваш доступ проверяется заново при каждом запросе. Политики построчной безопасности (row-level security) PostgreSQL уже заданы для таблиц и станут вторым барьером (см. план ниже).
- Журнал аудита
- Ручные переклассификации, правила, очистки и закрытия финансового года записываются в журнал, куда можно только добавлять записи, с цепочкой SHA-256. База данных отклоняет любое изменение или удаление этого журнала. Каждый экспортированный FEC архивируется с отпечатком SHA-256, который проверяется заново при каждой загрузке.
- Хостинг в Европейском союзе
- netcup (Германия (Нюрнберг, Европейский союз)): сайт, приложение, база данных и файлы (подтверждающие документы, FEC). Coral (Германия (Нюрнберг, Европейский союз)): хостинг зашифрованных резервных копий без возможности их прочитать. Supabase (Ирландия (Европейский союз)): прежняя копия базы данных и файлов (удаление не позднее 09/12/2026). Сторонние сервисы (отправка писем, обозреватели блоков, курсы) и получаемые ими данные перечислены в политике конфиденциальности (на французском).
- Соответствие требованиям
- В соответствии с GDPR TLM Solutions является контролёром данных учётных записей, безопасности и выставления счетов и обрабатывает ваши бухгалтерские данные от вашего имени по соглашению об обработке данных, приложенному к условиям продажи. Об утечке, создающей риск для данных, сообщается в CNIL в течение 72 часов, а также затронутым организациям.
- Сообщить об уязвимости
- Напишите на contact@trotme.fr и опишите, как её воспроизвести.
План по безопасности
Запланировано, но пока не реализовано, чтобы вы знали, как обстоят дела:
- Работа приложения под ролью PostgreSQL с построчной безопасностью (второй барьер изоляции)
- Переход подписи JWT с HS256 на пару ключей RS256
- Конвертное шифрование с KEK и DEK (сейчас используется один ключ Fernet)
- WebAuthn и ключи доступа (passkeys)
- Квалифицированные метки времени eIDAS для экспортированных FEC (RFC 3161)
- Восстановление базы данных на любой момент времени