# robinmoisson/staticrypt

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/robinmoisson-staticrypt).**

7,829 stars · 485 forks · HTML · mit

## Links

- GitHub: https://github.com/robinmoisson/staticrypt
- Homepage: https://robinmoisson.github.io/staticrypt/
- awesome-repositories: https://awesome-repositories.com/repository/robinmoisson-staticrypt.md

## Topics

`cli` `encryption` `html` `javascript` `password` `static` `static-html` `webcrypto`

## Description

Staticrypt is a tool for securing static HTML files using AES-256 encryption. It provides a command-line interface to encrypt and decrypt web pages, transforming plain HTML into encrypted payloads that are decrypted directly in the browser without the need for a backend server or database.

The project distinguishes itself through access management features such as auto-decrypting links, which use hashed passwords in URL fragments to unlock files for specific recipients. It also supports browser session persistence, storing hashed passwords in local storage to prevent repeated authentication.

The utility covers a broad range of capabilities, including password-based key derivation and the ability to customize the styling and behavior of the password prompt interface. It also includes management for encryption salts to ensure consistent decryption across deployments.

## Tags

### Part of an Awesome List

- [HTML Payload Encryption](https://awesome-repositories.com/f/awesome-lists/security/file-encryption/html-payload-encryption.md) — Transforms plain HTML into encrypted payloads that remain opaque until decrypted by the client runtime.
- [Static Web Page Encryption](https://awesome-repositories.com/f/awesome-lists/security/file-encryption/static-web-page-encryption.md) — Provides AES-256 encryption for static HTML files that are decrypted directly in the web browser. ([source](https://cdn.jsdelivr.net/gh/robinmoisson/staticrypt@main/README.md))
- [HTML File Decryption](https://awesome-repositories.com/f/awesome-lists/security/file-encryption/html-file-decryption.md) — Restores original content from protected files by reversing AES-256 encryption via the CLI. ([source](https://cdn.jsdelivr.net/gh/robinmoisson/staticrypt@main/README.md))
- [Password-Based Encryption](https://awesome-repositories.com/f/awesome-lists/security/file-encryption/password-based-encryption.md) — Secures static HTML files using symmetric keys derived from user passwords.

### Development Tools & Productivity

- [Encryption CLI Utilities](https://awesome-repositories.com/f/development-tools-productivity/encryption-cli-utilities.md) — Provides a command line interface for encrypting and decrypting HTML files using AES-256.

### Security & Cryptography

- [Client-Side Decryption](https://awesome-repositories.com/f/security-cryptography/client-side-decryption.md) — Implements AES-256 decryption of HTML content directly in the browser using the Web Crypto API.
- [Password Access Restrictions](https://awesome-repositories.com/f/security-cryptography/domain-access-restrictions/request-access-restrictions/password-access-restrictions.md) — Wraps HTML content in an encrypted shell that requires a password to unlock.
- [Key Derivation Functions](https://awesome-repositories.com/f/security-cryptography/password-management/key-derivation-functions.md) — Derives unique cryptographic keys from user passwords and salts to secure static files.
- [Password-Protected Static Sites](https://awesome-repositories.com/f/security-cryptography/password-protected-static-sites.md) — Enables the creation of private website areas that require authentication without needing a backend server.
- [URL-Fragment Key Distribution](https://awesome-repositories.com/f/security-cryptography/url-fragment-key-distribution.md) — Uses URL fragments to pass hashed credentials for automatic, server-blind decryption of pages.
- [Encrypted File Sharing](https://awesome-repositories.com/f/security-cryptography/message-encryption/encrypted-file-sharing.md) — Facilitates sharing encrypted documents via URLs containing hashes for automatic decryption.

### Web Development

- [Encrypted Static Content Generators](https://awesome-repositories.com/f/web-development/web-infrastructure-deployment/web-infrastructure-servers/static-html-serving/encrypted-static-content-generators.md) — Encrypts static HTML files using AES-256 to create password-protected web pages.
- [Browser Session Management](https://awesome-repositories.com/f/web-development/browser-integration-utilities/browser-session-management.md) — Persists hashed passwords in the browser to automatically decrypt pages on return visits. ([source](https://cdn.jsdelivr.net/gh/robinmoisson/staticrypt@main/README.md))
- [UI Prompt Injections](https://awesome-repositories.com/f/web-development/client-side-components/script-injection-mechanisms/dom-script-injection/ui-prompt-injections.md) — Injects a customizable password prompt interface into the browser document before rendering protected content.

### Data & Databases

- [Access Link Generators](https://awesome-repositories.com/f/data-databases/data-governance-modeling/data-management-governance/data-lifecycle-retention/data-lifecycle-management/key-expiration-policies/access-link-expiration/access-link-generators.md) — Generates shareable links with embedded hashed passwords for automatic content decryption. ([source](https://cdn.jsdelivr.net/gh/robinmoisson/staticrypt@main/README.md))

### Software Engineering & Architecture

- [Browser Session Persistence](https://awesome-repositories.com/f/software-engineering-architecture/workflow-persistence/state-persistence/browser-session-persistence.md) — Stores hashed passwords in browser local storage to maintain authentication state across page refreshes.
