Sign in to goframe drive
Безопасность
Приватность — в основе.
Никаких трекеров в наших продуктах, никаких паролей, которые можно украсть, ключи к хранилищу живут минуты, а каждый байт проверяется перед использованием. Как это устроено — и чего мы пока не сделали.
- трекеров — ни в продукте, ни на сайте
- 0
- живёт код для входа
- 10 мин
- живёт ключ к хранилищу
- 15 мин
- для каждого фрагмента
- SHA‑256
01Приватность
Ноль трекеров. Ни одного.
Никакой аналитики, телеметрии и отчётов о сбоях — ни в приложении для Mac, ни в веб-приложении, ни на этом сайте. Из продукта их удалили вместе с кодом, а не просто отключили. Шрифты загружаются с нашего домена, а строгая Content-Security-Policy не даёт страницам загружать код откуда-то ещё.
АналитикаТелеметрияОтчёты о сбояхЗапись сессийРекламные пикселиСторонние шрифты
default-src 'none';script-src 'self' 'nonce-…' 'wasm-unsafe-eval';style-src 'self' 'unsafe-inline';font-src 'self';img-src 'self' data: blob: <api> <storage>;media-src 'self' blob: <api> <storage>;connect-src 'self' <api> <storage> <live>;worker-src 'self' blob:;frame-src blob: <api> <storage>;object-src 'none';base-uri 'none';form-action 'none';frame-ancestors 'none'default-src 'none';script-src 'self';style-src 'self' 'unsafe-inline';font-src 'self';img-src 'self' data:;media-src 'self';connect-src 'self';manifest-src 'self';object-src 'none';base-uri 'none';form-action 'none';frame-ancestors 'none'- Трекеры
- 0
- SDK аналитики и телеметрии
- 0
- Сборщики отчётов о сбоях
- 0
- Шрифты
- со своего домена
- Referrer-Policy
- no-referrer
- Встраивание в чужие сайты
- запрещено
- HSTS
- 1 год, preload
Страницы и файлы доставляет Cloudflare, наш хостинг. Мы за вами не следим, и ничто из того, что мы выпускаем, тоже.
02Вход
Нет пароля — нечего украсть. Код, затем сессия.
Вы входите по 6-значному коду из письма. Он действует 10 минут и сгорает после 5 неверных попыток, а мы храним только его отпечаток SHA‑256. Сессия длится час и продлевается токеном, который срабатывает ровно один раз.
- Код
- 6 цифр
- Действует
- 10 минут
- Неверных попыток
- 5
- Хранится как
- отпечаток SHA‑256
- Сессия
- 60 минут
- Токен обновления
- одноразовый, с ротацией
- Без повторного входа
- до 30 дней
- Пароли
- нет
Если токен обновления предъявят второй раз, аккаунт выйдет из всех сессий.
03Доступ к хранилищу
Ключи живут минуты. Каждый открывает один диск.
На Mac нет долгоживущих ключей к хранилищу. Приложение обменивает вашу сессию на ключ, который открывает один диск на 15 минут, и обновляет его заранее. Браузер ключей не получает вовсе — только короткоживущие подписанные ссылки на запрошенные блоки.
- Срок ключа
- 15 минут
- Обновление
- за 5 минут до конца
- Область
- один диск
- Ключи в браузере
- нет
- Где лежат файлы
- Cloudflare R2
- Формат
- фрагменты с адресацией по хешу
- При передаче
- только HTTPS
- При хранении
- шифрует Cloudflare R2
04Целостность
Каждый байт проверен. Прежде чем его используют.
Файлы хранятся фрагментами, и каждый назван по своему SHA‑256. Каждый фрагмент сверяется с хешем, прежде чем его отдадут или положат в кэш, а каждую загрузку из браузера сервер проверяет заново — по блокам и целиком, прежде чем файл появится. Несовпадение — это ошибка, а не правдоподобная догадка.
- Хеш
- SHA‑256
- Проверяется
- каждый фрагмент
- Когда
- до отдачи и кэширования
- При несовпадении
- отказ
- Загрузки из браузера
- сервер проверяет заново
- Одинаковые данные
- хранятся один раз на диске
05Приложение
Подписано, нотаризовано, проверяется перед обновлением.
Приложение для Mac подписано нашим Developer ID и нотаризовано Apple. Установщик отказывается ставить приложение на Mac, где оно не сможет работать, а обновление устанавливается, только если сошлись и SHA‑256, и подпись.
spctl --assess -v "/Applications/goframe drive.app"
/Applications/goframe drive.app: accepted
source=Notarized Developer ID
codesign -dv "/Applications/goframe drive.app" 2>&1 | grep Team
TeamIdentifier=Y5U8RN35QX
- Подпись
- Developer ID
- Team ID
- Y5U8RN35QX
- Нотаризация
- Apple, тикет в пакете
- Канал обновлений
- только HTTPS
- Перед установкой
- SHA‑256 + Team ID
- Локальный сокет управления
- только владелец (0600)
06Ссылки
Ссылки, которые можно отозвать. Всегда только для просмотра.
Публичная ссылка открывает один файл или папку только для просмотра — и больше ничего на диске. Замените её, чтобы старый адрес перестал работать, или отзовите совсем.
- Доступ
- только чтение
- Ссылок на объект
- до 16
- Токен
- случайный, 256 бит
- Хранится как
- отпечаток SHA‑256
- Показывается
- один раз
- Всё за пределами ссылки
- 404
07Честно
Чего мы пока не сделали.
Страницы о безопасности обычно перечисляют сильные стороны. Вот чего goframe drive сегодня не умеет — чтобы вы решали, видя всю картину.
- Сквозное шифрованиеФайлы шифруются при передаче, а при хранении их шифрует Cloudflare R2 — но не ваше устройство. Клиентского шифрования и zero-knowledge нет.
- Единый вход (SSO)Вход только по коду из письма: без SAML, без входа через Google или Apple, без ключей входа (passkeys) и второго фактора.
- История версий и корзинаУдаление окончательное. Нет корзины, восстановления и резервных копий.
- Пароль и срок у ссылокПубличной ссылке нельзя задать пароль или срок действия. Её можно заменить или отозвать.
- Журнал аудитаКаждое изменение записывается на диске вместе с автором, но экрана аудита и выгрузки нет.
- СертификатыSOC 2, ISO 27001 и подобных сертификатов сейчас нет.
08Связаться
Нашли уязвимость? Напишите нам.
Сообщения об уязвимостях и вопросы о безопасности присылайте на hello@goframe.dev. Опишите, что нашли и как это воспроизвести.