
Офлайн-веб-приложение с открытым исходным кодом для шифрования файлов и обмена ими на основе passkey. AES-256-GCM/HPKE, без облака, без аккаунтов; шифрование для получателей с помощью публичных Share Keys.
FileKey — это офлайн-веб-приложение, которое позволяет быстро шифровать файлы и делиться ими с помощью passkey. Без аккаунтов, без отслеживания, без облака.
🛡️ FileKey — бесплатный проект с открытым исходным кодом, где конфиденциальность в приоритете. Доступен на filekey.app.
Создайте свой FileKey
Создайте passkey, который будет храниться в вашем менеджере паролей или на ключе безопасности (iCloud Keychain, Google Password Manager, 1Password, YubiKey и т. д.).
Шифруйте файлы
Перетащите любой файл (или целую папку) в FileKey. Он мгновенно шифруется с помощью AES-256 и сохраняется как name.filekey.
Расшифровывайте файлы
Перетащите зашифрованный файл обратно. Ваш passkey откроет его локально и безопасно.
Делитесь приватно
Зашифруйте файл для чьего-либо Share Key (открыть его сможет только получатель) или поделитесь ссылкой «отправить мне файл», чтобы получать зашифрованные файлы от любого человека.
Сохраните код восстановления
По желанию сохраните одноразовый код восстановления, чтобы снова получить доступ к своим файлам, даже если вы потеряете passkey.
FileKey требует passkey-провайдера, поддерживающего расширение WebAuthn PRF: совместимый менеджер паролей (Apple Passwords, Google Password Manager, 1Password и т. д.) или аппаратный ключ безопасности FIDO2 (YubiKey 5 / Bio Series). Ваш браузер и ОС также должны поддерживать WebAuthn + PRF. Неполная таблица совместимости:
⚠️ Примечания:
- Провайдер должен реализовывать расширение WebAuthn PRF; поддержка зависит от приложения и версии, поэтому если менеджер пока не работает, скорее всего, в нём ещё нет PRF.
- Браузеры на основе Chromium (Brave, Vivaldi, Opera) в целом работают.
- Windows 10 и более ранние версии не поддерживают PRF.
FileKey формирует вашу шифровальную идентичность из passkey. Когда вы создаёте свой FileKey, passkey регистрируется для домена приложения (filekey.app) в качестве проверяющей стороны (relying party). При аутентификации расширение PRF passkey выполняется над фиксированными входными данными, создавая детерминированный секрет, который никогда не покидает ваше устройство. Этот секрет пропускается через HKDF-SHA-256 для получения долговременной пары ключей идентичности, поэтому один и тот же passkey всегда воспроизводит одну и ту же идентичность, и помимо самого passkey хранить ничего не нужно.
Файлы шифруются с помощью HPKE (гибридное шифрование с открытым ключом, RFC 9180) в режиме Auth с использованием набора DHKEM-P256 + HKDF-SHA-256. HPKE создаёт новые ключи для каждого файла, а тело файла запечатывается с помощью AES-256-GCM в потоковой блочной конструкции, так что файлы любого размера шифруются и расшифровываются без полной загрузки в память. При шифровании для себя используется ваш собственный открытый ключ; при обмене — открытый ключ получателя. Все операции выполняются полностью на вашем устройстве с использованием прошедших аудит криптобиблиотек.
🛡️ Ваш passkey — единственный ключ доступа. Больше хранить ничего не нужно, и ничто никогда не покидает ваше устройство.
У каждого пользователя FileKey есть уникальный Share Key — длинная публичная строка, которую вы найдёте в меню в разделе «Ваш Share Key». Ей можно безопасно делиться открыто; это публичный адрес, а не секрет.
name.shared.filekey. Отправьте его любым способом: электронной почтой, в мессенджере, через передачу файлов..shared.filekey внутрь.Поделитесь ссылкой «отправить мне файл» (в неё встроен ваш Share Key). Любой человек (без аккаунта и passkey) может использовать её, чтобы зашифровать файл для вас прямо в своём браузере, а затем отправить вам результат. Открыть его сможете только вы.
Поскольку ваша идентичность исходит из passkey, его потеря обычно означала бы потерю доступа. FileKey предлагает опциональный код восстановления — фразу из 24 слов (BIP39), которая резервирует вашу идентичность. Сохраните его один раз в надёжном месте, и позже вы сможете восстановить доступ.
Также FileKey включает автономный инструмент восстановления (recover.html): один HTML-файл, который можно хранить на диске. С помощью кода восстановления он расшифровывает ваши файлы .filekey полностью офлайн, даже если сайт FileKey когда-либо исчезнет.
Две страховки:
Откройте FileKey, нажмите «Установить» в адресной строке и подтвердите. Он откроется как автономное офлайн-приложение.
Откройте FileKey в Safari → нажмите «Поделиться» → «На экран “Домой”» → «Добавить».
Откройте FileKey → нажмите «Добавить на главный экран» (баннер или меню ⋮) → подтвердите.
Поскольку FileKey — статический сайт без бэкенда, вы также можете разместить его у себя (см. ниже).
FileKey — статический сайт, собираемый с помощью Bun:
cd reference
bun install
bun test # crypto-core tests
bun run build:web # build the app
bun run serve # serve it locally
Результат сборки — обычные статические файлы. Разместите их на любом статическом хостинге или на собственном сервере.
Примечание по самостоятельному хостингу: идентификатор проверяющей стороны passkey определяется как регистрируемый домен (последние две метки хоста). Разместите FileKey на своём корневом домене или поддомене (например,
files.example.com→ RP-IDexample.com). Хост, чей регистрируемый домен является публичным суффиксом (например,you.github.io, где браузеры отклоняют RP-IDgithub.io), не будет работать; используйте собственный домен.
FileKey 1.1 использует новый формат на основе стандартов и не может открывать файлы, созданные оригинальным FileKey. Старые файлы по-прежнему открываются на v1.filekey.app с тем же passkey, и FileKey автоматически перенаправит вас туда, когда обнаружит такой файл. Исходный код оригинальной версии v1 находится в ветке v1.
🔒 filekey.app — приложение
📜 Substack — наш блог
💬 Signal Group — пообщайтесь с нами
| Платформа | Passkey-провайдеры | Примечания |
|---|
| macOS | Apple Passwords, 1Password, YubiKey | Safari ≥ 17 или Chrome ≥ 112. YubiKey может не работать в Safari. |
| iOS / iPadOS | Apple Passwords, 1Password | Safari ≥ 17 или Chrome ≥ 112. |
| Windows | 1Password, YubiKey | Edge ≥ 112 или Chrome ≥ 112. Требуется Windows 11. |
| Android | Google Password Manager, 1Password, YubiKey | Chrome ≥ 112. |
| Linux | YubiKey (через браузер) | Актуальные браузеры Chrome / Chromium. |