Skip to content

sh-dv/hat.sh

Repository files navigation

hat.sh

Status License: MIT CodeQL Node.js CI Snyk


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

how-to-use-gif


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 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
2 hat.now.sh
2 hat.vercel.app

Donations

The project is maintained in my free time. Donations of any size are appreciated :


Crypto

Coin Address
Monero 84zQq4Xt7sq8cmGryuvWsXFMDvBvHjWjnMQXZWQQRXjB1TgoZWS9zBdNcYL7CRbQBqcDdxr4RtcvCgApmQcU6SemVXd7RuG
Bitcoin bc1qlfnq8nu2k84h3jth7a27khaq0p2l2gvtyl2dv6
Ethereum 0xF6F204B044CC73Fa90d7A7e4C5EC2947b83b917e

Kofi

https://ko-fi.com/shdvapps

Open Collective

https://opencollective.com/hatsh



Social


Acknowledgements


Credits

libsodium.js

next.js

material-ui


License

Copyright (c) 2022 sh-dv