
FileKeyは、パスキーを使ってファイルをすばやく暗号化・共有できるオフラインWebアプリです。アカウント不要、トラッキングなし、クラウドなし。
🛡️ FileKeyは無料・オープンソースで、プライバシー最優先です。 filekey.app で公開中です。
FileKeyを作成する
パスワードマネージャーやセキュリティキー(iCloudキーチェーン、Googleパスワードマネージャー、1Password、YubiKeyなど)に保存されるパスキーを作成します。
ファイルを暗号化する
任意のファイル(またはフォルダ全体)をFileKeyにドロップします。AES-256で即座に暗号化され、name.filekey として保存されます。
ファイルを復号する
暗号化されたファイルをドロップし直します。パスキーでローカルかつ安全にロックを解除できます。
プライベートに共有する
相手のShare Key宛にファイルを暗号化(開けるのは相手だけ)するか、"send me a file"リンクを共有して、誰からでも暗号化ファイルを受け取れるようにします。
リカバリーコードを保存する
オプションでワンタイムのリカバリーコードを保存しておくと、パスキーを失った場合でもファイルにアクセスを取り戻せます。
FileKeyは、WebAuthnのPRF拡張機能をサポートするパスキープロバイダーが必要です。対応するパスワードマネージャー(Apple Passwords、Googleパスワードマネージャー、1Passwordなど)またはFIDO2ハードウェアセキュリティキー(YubiKey 5 / Bioシリーズ)が該当します。ブラウザとOSもWebAuthn + PRFに対応している必要があります。以下は網羅的ではない互換性テーブルです:
⚠️ 注意:
- プロバイダーがWebAuthn PRF拡張機能を実装している必要があります。対応状況はアプリやバージョンによって異なるため、まだ動作しないマネージャーがあれば、おそらくPRFがまだ実装されていません。
- Chromiumベースのブラウザ(Brave、Vivaldi、Opera)は一般的に動作します。
- Windows 10以前はPRFをサポートしていません。
FileKeyは、パスキーから暗号化アイデンティティを導出します。FileKeyを作成すると、アプリのドメイン(filekey.app)をリライングパーティーとしてパスキーが登録されます。認証時には、固定の入力に対してパスキーのPRF拡張機能が実行され、デバイスの外に出ることがない決定的な秘密が生成されます。この秘密はHKDF-SHA-256で処理され、長期的なアイデンティティ鍵ペアが導出されます。そのため、同じパスキーは常に同じアイデンティティを再現し、パスキー以外に保存する必要があるものは何もありません。
ファイルはHPKE(ハイブリッド公開鍵暗号、RFC 9180)のAuthモードで、DHKEM-P256 + HKDF-SHA-256スイートを使用して暗号化されます。HPKEはファイルごとに新しい鍵を導出し、ファイル本体はストリーミング方式のチャンク分割構造でAES-256-GCMにより保護されるため、どのようなサイズのファイルでもすべてをメモリに保持することなく暗号化・復号できます。自分宛ての暗号化には自分の公開鍵を使用し、共有には受信者の公開鍵を使用します。すべての操作は、監査済みの暗号化ライブラリを通じて、完全にデバイス上で実行されます。
🛡️ パスキーだけが唯一の資格情報です。保存すべきものはほかに何もなく、デバイスの外に出るものも一切ありません。
FileKeyのすべてのユーザーは固有のShare Keyを持っています。これはメニューの「Your Share Key」に表示される長い公開文字列です。オープンに共有しても安全です。公開アドレスであり、秘密ではありません。
name.shared.filekey という名前で保存します。メール、メッセージ、ファイル転送など、任意の方法で送信できます。.shared.filekey ファイルをドロップします。"send me a file"リンクを共有します(あなたのShare Keyが埋め込まれます)。アカウントもパスキーも持たない誰でも、ブラウザ上でその場であなた宛てのファイルを暗号化し、その結果を送信できます。開けるのはあなただけです。
アイデンティティはパスキーに由来するため、パスキーを失うと通常はアクセスを失うことになります。FileKeyはオプションのリカバリーコードを提供します。これはアイデンティティをバックアップする24語のフレーズ(BIP39)です。一度保存して安全な場所に保管しておけば、後でアクセスを復元できます。
FileKeyには自己完結型のオフライン復元ツール(recover.html)も同梱されています。ディスクに保存しておける単一のHTMLファイルです。リカバリーコードを使えば、FileKeyのWebサイトが将来消えてしまっても、.filekey ファイルを完全にオフラインで復号できます。
2つのセーフティネットがあります:
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
ビルド出力はプレーンな静的ファイルです。任意の静的ホストまたは自前のサーバーでホストできます。
セルフホスト時の注意: パスキーのリライングパーティーIDは、登録可能ドメイン(ホストの最後の2つのラベル)から導出されます。FileKeyは自前のAPEXドメインまたはサブドメインでホストしてください(例:
files.example.com→ RP-IDexample.com)。登録可能ドメインがパブリックサフィックスであるホスト(例:you.github.io。ブラウザはRP-IDgithub.ioを拒否します)では動作しないため、カスタムドメインを使用してください。
FileKey 1.1は新しい標準ベースの形式を採用しており、元のFileKeyで作成されたファイルは開けません。古いファイルは同じパスキーで v1.filekey.app から引き続き開くことができ、FileKeyはそれを検出すると自動的にそこへリンクします。元のv1ソースコードは v1ブランチ にあります。
🔒 filekey.app – アプリ
📜 Substack – ブログ
💬 Signal Group – チャットで参加
| プラットフォーム | パスキープロバイダー | 備考 |
|---|
| 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パスワードマネージャー、1Password、YubiKey | Chrome 112以降。 |
| Linux | YubiKey(ブラウザ経由) | 最新のChrome / Chromiumブラウザ。 |