Зачем нужен DocTransfer?
Обмен конфиденциальными документами вроде презентаций или финансовых отчётов не должен требовать ежемесячной платы за платформы, хранящие файлы незашифрованными на своих серверах. Именно поэтому мы создали DocTransfer – платформу для обмена файлами с открытым исходным кодом, обеспечивающую приватность данных через шифрование на стороне клиента.
Архитектура нулевого знания
Большинство сервисов хранения документов используют серверное шифрование файлов при хранении их в облаке. Это означает, что доступ к вашим документам могут получить сотрудники компании-хостинга или злоумышленники, взломавшие её инфраструктуру. В отличие от них, DocTransfer выполняет все операции шифрования исключительно на стороне браузера:
- Шифрование: Файлы зашифровываются прямо в браузере пользователя с помощью WebCrypto API и библиотеки OpenPGP.js, используя алгоритм AES-256-GCM.
- Хранение ключей: Ключ шифрования хранится только во фрагменте URL (
#key=…), который никогда не отправляется на наши сервера. - Динамическое водяные знаки: Для предотвращения несанкционированного распространения документы снабжены динамическими водяными знаками, которые отображают адрес электронной почты получателя поверх документа.
Стек технологий и ключевые особенности
Frontend
Платформа построена на основе современного стека фронтенд-разработки:
- React 19
- TypeScript
- Vite
- Framer Motion
База данных и авторизация
Для управления данными и аутентификации используется платформа Supabase, предоставляющая следующие возможности:
- PostgreSQL с строгой системой безопасности уровня строк
- Edge Functions для выполнения логики на границе сети
- Storage для безопасного хранения файлов
Обработка документов
Документы обрабатываются с использованием следующих библиотек:
- pdf-lib
- react-pdf
- pdfjs-dist
Безопасность и подписи
Безопасность обеспечивается следующими инструментами:
- OpenPGP.js для шифрования и цифровой подписи
- SimpleWebAuthn для биометрической аутентификации пользователей
- Генерация цифровых сертификатов
Аналитика
Система предоставляет аналитику реального времени о взаимодействии пользователей с документом, включая тепловые карты просмотра страниц и телеметрию поведения зрителей.