Filekey: Secure Offline File Encryption and Sharing with Passkeys

Summary
Filekey is an innovative offline web application designed for secure file encryption and sharing. It leverages passkeys for robust, zero-knowledge, and end-to-end encryption, ensuring ultimate privacy without requiring accounts or backend servers. Users can effortlessly encrypt, decrypt, and securely share files with specific recipients, all directly from their browser.
Repository Info
Tags
Click on any tag to explore related repositories
Introduction
Filekey is an innovative, privacy-first offline web application designed for secure file encryption and sharing. It leverages modern passkey technology to provide robust, zero-knowledge, and end-to-end encryption, ensuring your data remains private without the need for accounts, tracking, or backend servers. Built as a local, offline solution, Filekey empowers users to protect their files with AES-256 encryption directly from their browser. It is completely free and open-source, licensed under GPLv3.
Installation
Filekey operates as a 100% offline web app, running directly in your browser. It can also be installed locally as a Progressive Web App (PWA) for convenient access.
To use Filekey, you need a compatible password manager or a hardware security key that supports FIDO2 and PRF (Passkey Resident Functionality). Compatible providers include Apple Passwords, Google Passwords, Windows Hello, and 1Password. For hardware security keys, devices like the YubiKey 5 and Bio Series are supported. Your browser and operating system must also support WebAuthn and the PRF extension.
Compatibility Notes:
- macOS: Safari ? 17 or Chrome ? 112. Yubikeys will not work in Safari.
- Windows: Edge ? 112 or Chrome ? 112, requires Windows 11.
- Linux: Latest Chrome or Chromium-based browsers with YubiKey support.
- iOS: Apple Passwords, 1Password. Safari ? 17 or Chrome ? 112.
- Android: Google Passwords, 1Password, Yubikey. Chrome ? 112.
Note that Proton Pass and BitWarden currently do not work due to lack of proper PRF support. Windows 10 and below also do not support PRF.
Examples
Using Filekey is straightforward and designed for ease of use:
- Create your FileKey: Generate a secure passkey that will be stored in your password manager or security key, such as iCloud Keychain or a Yubikey.
- Encrypt files: Simply drag and drop any file into the Filekey interface. It is immediately encrypted with AES-256.
- Decrypt files: To decrypt, drop the encrypted file back into Filekey. Your passkey quickly, locally, and securely unlocks it.
- Share privately: Filekey allows you to encrypt a file specifically for someone else using their unique "Share Key." Only the intended recipient can open it.
Secure Sharing Process:
Every Filekey user has a unique Share Key, which acts like a public address and can be found in the app's menu under "Your Share Key."
- Sharing a File:
- Click the "Share" button next to any file you wish to send.
- Enter the recipient’s Share Key, which they will need to provide to you.
- Filekey creates a special encrypted version that only that recipient can unlock. Save and send this file (which will end in
.shared_filekey
) via any method, such as email, messaging, or file transfer.
- Receiving a Shared File:
- Open Filekey and authenticate with your passkey.
- Drag and drop the received
.shared_filekey
into Filekey. - Filekey automatically detects it as a shared file and decrypts it using your key.
Security Details for Sharing:
Your private keys never leave your device. Shared files are locked to a specific recipient, and all encryption and decryption occur entirely on your device, with no servers involved. Files are secured with AES-256 encryption. Your Share Key does not need to be kept secret, it can be shared openly.
Why Use Filekey?
Filekey stands out as a powerful tool for anyone prioritizing digital privacy and security:
- Free & Open Source: Licensed under GPLv3, promoting transparency and community contribution.
- Accountless by Design: No logins, no tracking, ensuring your activities remain private.
- Passkey-Based Encryption: Integrates seamlessly with your existing security keys or password managers for strong authentication.
- End-to-End Encrypted: Only you and your intended recipients can access your data.
- Secure Sharing: Share files confidently, knowing only the intended recipient can unlock them.
- Fully Offline: Operates entirely in your browser without an internet connection after initial load, enhancing security and accessibility.
- Self-Hosting Option: For those who prefer complete control, Filekey can be self-hosted.
Links
- Official App: filekey.app (Best in the latest versions of Chrome, Safari, or Edge)
- GitHub Repository: RockwellShah/filekey
- Official Blog (Substack): filekey.substack.com
- Signal Group: Join the chat
- Donate: Support Filekey development