{"id":13516963,"url":"https://github.com/FiloSottile/awesome-age","last_synced_at":"2025-03-31T07:30:41.884Z","repository":{"id":169030413,"uuid":"631214572","full_name":"FiloSottile/awesome-age","owner":"FiloSottile","description":"A collection of projects and resources in the age file encryption ecosystem.","archived":false,"fork":false,"pushed_at":"2024-04-30T14:00:12.000Z","size":63,"stargazers_count":206,"open_issues_count":10,"forks_count":19,"subscribers_count":9,"default_branch":"main","last_synced_at":"2024-05-19T21:10:44.030Z","etag":null,"topics":["age-encryption","awesome"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/FiloSottile.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"custom":"https://github.com/FiloSottile/FiloSottile/blob/main/maintenance.md#funding"}},"created_at":"2023-04-22T09:57:29.000Z","updated_at":"2024-05-18T22:01:44.000Z","dependencies_parsed_at":"2024-04-23T22:47:18.328Z","dependency_job_id":"358463fc-e748-41bd-a3e3-99fdc64410fb","html_url":"https://github.com/FiloSottile/awesome-age","commit_stats":null,"previous_names":["filosottile/awesome-age"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FiloSottile%2Fawesome-age","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FiloSottile%2Fawesome-age/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FiloSottile%2Fawesome-age/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FiloSottile%2Fawesome-age/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/FiloSottile","download_url":"https://codeload.github.com/FiloSottile/awesome-age/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246365641,"owners_count":20765546,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["age-encryption","awesome"],"created_at":"2024-08-01T05:01:27.859Z","updated_at":"2025-03-31T07:30:41.876Z","avatar_url":"https://github.com/FiloSottile.png","language":null,"funding_links":["https://github.com/FiloSottile/FiloSottile/blob/main/maintenance.md#funding"],"categories":["Technical","Others","Other Lists"],"sub_categories":["awesome-*","TeX Lists"],"readme":"\u003cp align=\"center\"\u003e\n    \u003cpicture\u003e\n        \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"https://github.com/FiloSottile/age/blob/main/logo/logo_white.svg\"\u003e\n        \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"https://github.com/FiloSottile/age/blob/main/logo/logo.svg\"\u003e\n        \u003cimg alt=\"The age logo, an wireframe of St. Peters dome in Rome, with the text: age, file encryption\" width=\"600\" src=\"https://github.com/FiloSottile/age/blob/main/logo/logo.svg\"\u003e\n    \u003c/picture\u003e\n\u003c/p\u003e\n\n# Awesome age [![Awesome](https://awesome.re/badge.svg)](https://awesome.re)\n\nA collection of projects and resources in the age file encryption ecosystem.\n\n* [Implementations](#implementations)\n* [Plugins](#plugins)\n* [GUIs](#guis)\n* [Tools](#tools)\n* [Integrations](#integrations)\n* [Articles](#articles)\n* [Development](#development)\n\nFor more, explore [the *age-encryption* GitHub topic](https://github.com/topics/age-encryption)!\n\n⭐️ Featured or official — 🧪 Beta or experimental\n\n## Implementations\n\n* ⭐️ [age](https://filippo.io/age) ([Go docs](https://pkg.go.dev/filippo.io/age), [man page](https://filippo.io/age/age.1)) — CLI and Go reference implementation.\n\n* ⭐️ [rage](https://str4d.xyz/rage) — Rust implementation, fully interoperable and feature complete.\n\n* ⭐️ [typage](https://github.com/FiloSottile/typage) ([npm package](https://www.npmjs.com/package/age-encryption)) — TypeScript implementation for the JavaScript ecosystem.\n\n* [pyrage](https://github.com/woodruffw/pyrage) — Python bindings for rage.\n\n* [Jagged](https://github.com/exceptionfactory/jagged) - Java library implementation.\n\n* 🧪 [kage](https://github.com/android-password-store/kage) — Work-in-progress implementation for Kotlin/JVM and Android.\n\n* 🧪 [AgeKit](https://github.com/jamesog/AgeKit) — Work-in-progress Swift implementation on top of CryptoKit.\n\n* 🧪 [wage](https://github.com/str4d/wage) — Wasm package powered by rage.\n\n* [rage-wasm](https://github.com/kanru/rage-wasm) — Wasm wrapper of rage.\n\n* [agemobile](https://github.com/MarinX/agemobile) — gomobile support for age.\n\n* 🧪 [age_ex](https://hexdocs.pm/age/) - Elixir implementation using libsodium and :crypto.\n\n* 🧪 [dage](https://github.com/Producement/dage) - Dart implementation.\n\n## Plugins\n\n* ⭐️ [age-plugin-yubikey](https://github.com/str4d/age-plugin-yubikey) — YubiKey (and other PIV tokens) plugin.\n\n* [age-plugin-se](https://github.com/remko/age-plugin-se) — Apple Secure Enclave plugin.\n\n* 🧪 [age-plugin-tpm](https://github.com/Foxboron/age-plugin-tpm) — TPM 2.0 plugin.\n\n* 🧪 [age-plugin-tkey](https://github.com/quite/age-plugin-tkey) — Tillitis TKey plugin.\n\n* [age-plugin-trezor](https://github.com/romanz/trezor-agent/blob/master/doc/README-age.md) — Trezor hardware wallet plugin, supporting native keys.\n\n* 🧪 [age-plugin-sntrup761x25519](https://github.com/keisentraut/age-plugin-sntrup761x25519) — Post-quantum hybrid plugin mixing NTRU Prime and X25519.\n\n* 🧪 [age-plugin-fido](https://github.com/riastradh/age-plugin-fido) — Prototype of a symmetric encryption plugin for FIDO2 keys.\n\n* 🧪 [age-plugin-fido2-hmac](https://github.com/olastor/age-plugin-fido2-hmac) — Similar to age-plugin-fido, adds support for PINs.\n\n* 🧪 [age-plugin-sss](https://github.com/olastor/age-plugin-sss) — Plugin for splitting encryption keys using Shamir's Secret Sharing (SSS).\n\nThe Go package [filippo.io/age/plugin](https://pkg.go.dev/filippo.io/age@v1.2.1-0.20240618131852-7eedd929a6cf/plugin#Plugin) and the Rust crate [age_plugin](https://docs.rs/age-plugin/latest/age_plugin/) provide frameworks for implementing plugins.\n\n## GUIs\n\n* ⭐️ [Winage](https://winage.spiegl.dev/) — Contextual menu driven Windows GUI.\n\n* [agewasm](https://github.com/MarinX/agewasm) ([live](https://agewasm.marin-basic.com/)) — Static HTML and Wasm in-browser encryption tool.\n\n* 🧪 [rage-encry.pt](https://rage-encry.pt/) — In-browser encryption/decryption tool powered by wage.\n\n* [age-online](https://github.com/nkcmr/age-online) ([live](https://age-online.com/)) — Wasm in-browser encryption/decryption tool for text.\n\n## Tools\n\n* ⭐️ [passage](https://github.com/FiloSottile/passage) — Fork of password-store that uses age in place of gpg.\n\n* [PaperAge](https://github.com/matiaskorhonen/paper-age) — Easy and secure paper backups of secrets.\n\n* [pa](https://github.com/biox/pa) — A simple password manager, written in portable POSIX shell.\n\n* [agebox](https://github.com/slok/agebox) — Easy file repository encryption tool, focused on simplicity and gitops.\n\n* 🧪 [kbs2](https://github.com/woodruffw/kbs2) — A secret manager backed by age.\n\n* 🧪 [ciphey](https://www.nickzana.dev/projects/ciphey/) — Password and secret manager.\n\n* [age-keygen-deterministic](https://github.com/keisentraut/age-keygen-deterministic) — Deterministically generate age keys from a passphrase with Argon2id.\n\n* [vanity-age](https://github.com/seaofmars/vanity-age) — Vanity age public key bruteforcer.\n\n* [vanity-rage](https://github.com/siltyy/vanity-rage) — Faster rage-based reimplementation of vanity-age.\n\n* [age-op](https://github.com/stevelr/age-op) — Transparently use age keys stored in 1Password.\n\n## Integrations\n\n* [agenix](https://github.com/ryantm/agenix) — age-encrypted secrets for NixOS.\n\n* [ragenix](https://github.com/yaxitech/ragenix) — Drop-in replacement for agenix in Rust.\n\n* [homeage](https://github.com/jordanisaacs/homeage) — Nix home-manager module for runtime decryption of declarative age files.\n\n* [scalpel](https://github.com/polygon/scalpel) — Secret provisioning to Nix-generated service config files.\n\n* [agenix-rekey](https://github.com/oddlama/agenix-rekey) — agenix extension facilitating automating per-host secret rekeying.\n\n* [age.el](https://github.com/anticomputer/age.el) — age encryption support for Emacs.\n\n* [passage.el](https://github.com/anticomputer/passage.el) — passage support for Emacs.\n\n* [age.nvim](https://github.com/KingMichaelPark/age.nvim) — Neovim utility for loading encrypted secrets.\n\n* ⭐️ [SOPS](https://github.com/mozilla/sops#encrypting-using-age) — Flexible and widely integrated secret manager.\n\n* [kustomize-age](https://github.com/jmhodges/kustomize-age) — Kustomize plugin for using age encrypted files in Secrets.\n\n* [Kustomizer](https://kustomizer.dev/guides/artifacts-encryption/) — Kubernetes configuration as OCI artifacts, natively supports age.\n\n* [chezmoi](https://www.chezmoi.io/user-guide/encryption/age/) — Dotfiles manager with native age support.\n\n* [gopass](https://github.com/gopasspw/gopass/blob/master/docs/backends/age.md) — Password manager with a built-in age backend.\n\n* [tlock](https://github.com/drand/tlock) — Practical timelock encryption, with an age-based CLI.\n\n* [Logseq](https://web.archive.org/web/20230422154136/https://twitter.com/logseq/status/1587905208667230209) — Open-source knowledge base, uses age for its cloud Sync.\n\n* [eldim](https://github.com/daknob/eldim) — A file upload proxy that encrypt files with age.\n\n* [paw](https://github.com/lucor/paw) — Cross-platform password manager app.\n\n* [Cryptocam](https://cryptocam.gitlab.io/) — Android app that encrypts video with age as it is recorded.\n\n## Articles\n\n* [age and Authenticated Encryption](https://words.filippo.io/dispatches/age-authentication/)\n\n* [KEMs and Post-Quantum age](https://words.filippo.io/dispatches/post-quantum-age/)\n\n* [My age+YubiKeys Password Management Solution](https://words.filippo.io/dispatches/passage/)\n\n* [age Plugins](https://words.filippo.io/dispatches/age-plugins/)\n\n* Len, Julia, Paul Grubbs, and Thomas Ristenpart. [\"Partitioning Oracle Attacks.\"](https://eprint.iacr.org/2020/1491) *USENIX Security Symposium.* 2021.\n\n* Gailly, Nicolas, Kelsey Melissaris, and Yolan Romailler. [\"tlock: Practical Timelock Encryption from Threshold BLS.\"](https://eprint.iacr.org/2023/189) *Cryptology ePrint Archive.* 2023.\n\n* Stäuble, Mirco. [\"Actually Good Encryption? Confusing Users by Changing Nonces.\"](https://ethz.ch/content/dam/ethz/special-interest/infk/inst-infsec/appliedcrypto/education/theses/project_MircoStauble.pdf) *Semester project. Department of Computer Science, ETH Zürich.* 2022.\n\n* [gitattributes age encrypt](https://seankhliao.com/blog/12020-09-24-gitattributes-age-encrypt/) — Encrypting and decrypting files with gitattributes.\n\n* [age Encryption in Python with pyrage](https://blog.yossarian.net/2022/07/25/age-encryption-in-python-with-pyrage) — Announcement of pyrage with extensive technical details.\n\n* [Introducing Jagged for age Encryption in Java](https://exceptionfactory.com/posts/2023/08/29/introducing-jagged-for-age-encryption-in-java/)\n\n## Development\n\n* ⭐️ [age-encryption.org/v1](https://age-encryption.org/v1) — The official file format specification.\n\n* ⭐️ [c2sp.org/CCTV/age](https://c2sp.org/CCTV/age) — Comprehensive implementation-agnostic test suite of over 100 vectors.\n\n* [c2sp.org/age-plugin](https://c2sp.org/age-plugin) — Plugin system specification.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FFiloSottile%2Fawesome-age","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FFiloSottile%2Fawesome-age","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FFiloSottile%2Fawesome-age/lists"}