hat.sh
---
[Hat.sh](https://hat.sh) is a web app that provides secure local file encryption in the browser. It's fast, secure, and uses modern cryptographic algorithms with chunked AEAD stream encryption/decryption.
V2 of hat.sh introduced memory efficient in-browser large file chunked encryption using streams with libsodium.
## Usage
## Features
### Security
- XChaCha20-Poly1305 - for symmetric encryption.
- Argon2id - for password-based key derivation.
- X25519 - for key exchange.
The libsodium library is used for all cryptographic algorithms.
### Privacy
- The app runs locally in your browser.
- No data is ever collected or sent to anyone.
### Functionality
- Secure multiple file encryption/decryption with passwords or keys.
- Secure random password generation.
- Asymmetric key pair generation.
- Authenticated key exchange.
- Password strength estimation.
## Offline Use
The app can be easily self hosted, please follow the [installation](https://hat.sh/about/#installation) instructions.
## Browser Compatibility
We officially support the last two versions of every major browser. Specifically, we test on the following
- **Chrome** on Windows, macOS, and Linux , Android
- **Firefox** on Windows, macOS, and Linux
- **Safari** on iOS and macOS
- **Edge** on Windows
Safari and Mobile browsers are limited to single 1GB files, due to lack of support with server-worker fetch api.
## Official running instances of the app
| # | URL |
| --- | ----------------------------------------- |
| 1 | [hat.sh](https://hat.sh/) |
| 2 | [hat.now.sh](https://hat.now.sh/) |
| 2 | [hat.vercel.app](https://hat.vercel.app/) |
## Donations
The project is maintained in my free time. Donations of any size are appreciated :
## Social
- [Reddit](https://reddit.com/r/hatsh)
## Acknowledgements
- Everyone who supported the project.
- [Samuel-lucas6](https://github.com/samuel-lucas6) from the [Kryptor](https://github.com/samuel-lucas6/Kryptor) project for being helpful and doing a lot of beta testing.
- [stophecom](https://github.com/stophecom) from the [Scrt.link](https://scrt.link/) project for translating to German.
- [bbouille](https://github.com/bbouille) for translating to French.
- [qaqland](https://github.com/qaqland) for translating to Chinese.
- [Ser-Bul](https://github.com/Ser-Bul) for translating to Russian.
- [matteotardito](https://github.com/matteotardito) for translating to Italian.
- [t0mzSK](https://github.com/t0mzSK) for translating to Slovak.
- [Xurdejl](https://github.com/Xurdejl) for translating to Spanish.
- [Franatrtur](https://github.com/Franatrtur) for translating to Czech.
- [darkao](https://github.com/darkao) for translating to Turkish.
- [Frank7sun](https://github.com/Frank7sun) for translating to Japanese.
## Credits
[libsodium.js](https://github.com/jedisct1/libsodium.js)
[next.js](https://nextjs.org/)
[material-ui](https://material-ui.com/)
## License
[Copyright (c) 2022 sh-dv](https://github.com/sh-dv/hat.sh/blob/master/LICENSE)