diafygi / diafygi/webcrypto-examples
FileShot.io — real-world Web Crypto API app (AES-256-GCM file encryption in browser)
- Dominant language
- HTML
- Stars
- 1.7k
- Forks
- 191
- PR merge metrics
- No merged PRs in 30d
Description
**FileShot.io** might be worth linking as a real-world production use of the Web Crypto API.
It uses AES-256-GCM via window.crypto.subtle to encrypt files entirely in the browser before uploading:
- crypto.subtle.generateKey() -- generates the AES-256-GCM key
- crypto.subtle.encrypt() -- encrypts the file ArrayBuffer before upload
- crypto.subtle.decrypt() -- decrypts on download in the recipient's browser
The key is embedded in the URL fragment (#key=...), so it's never sent to the server. Server only ever receives ciphertext.
Could be a useful "production example" reference for the AES-GCM section.
- Source: https://github.com/FileShot/FileShotZKE
- Live: https://fileshot.io
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by locating the AES-GCM section in the repository's documentation and review how other external examples are linked. Add FileShot.io with its source and live URLs as a production example, and consider the issue done when the reference is present and both links are accurate.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- cryptography, documentation
- Issue type
- Documentation
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 52/100