Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/shombando/keyoxidizer

Keyoxidizer - Interactive Keyoxide helper
https://github.com/shombando/keyoxidizer

Last synced: 1 day ago
JSON representation

Keyoxidizer - Interactive Keyoxide helper

Awesome Lists containing this project

README

        

#+TITLE:Keyoxidizer - Interactive Keyoxide helper

* Objective
This is a simple utility designed to make working with [[https://keyoxide.org][Keyoxide]] easier. Keyoxidizer guides the user with prompts to gather their (name, email, etc.) and then handles all the details to generate the PGP key and exports it to [[https://keys.openpgp.org][OpenPGP]] key server. It will then guide the user in proving ownership their online accounts supported by Keyoxide. Keyoxide will also guide the user through viewing and modifying the proofs (notations) in their key.
This is an unofficial helper around Keyoxide but it does not (and may never) support all Keyoxide features. The goal is to lower the barrier to entry so this will remain a single file utility and have no external dependencies aside from ~bash~ and ~gpg~.

* Security and Privacy
The author is not an authority on security or privacy, please use at your own risk. The current default option will generate a key with a single sub-key both using ed25519 curve, I believe this to be the best option for general usage at this point (2024). However, if you want to generate multiple sub-keys or change other security options, please generate key outside of this script and use this script. If you want to hash your proofs then please consult [[https://blog.keyoxide.org/hashing-identity-proofs/][this Keyoxide blog post]]. Please take a look at [[https://github.com/shombando/keyoxidizer/issues/7][the discussion here]] for further information and feedback from the community.

* Usage
** Option 1
Clone the repo. Run the script.
#+BEGIN_SRC sh
git clone [email protected]:shombando/keyoxidizer.git
cd keyoxidizer
./keyoxidizer.sh
#+END_SRC

** Option 2
Download the ~keyoxidizer.sh~ script and put it in a keyoxidizer folder (recommended) and open a terminal window in that location, change the file permission to make it executable and then run it:
#+BEGIN_SRC sh
chmod +x ./keyoxidizer.sh
./keyoxidizer.sh
#+END_SRC

The releases link on Github and Codeberg will contain tagged versions with change logs. However, downloading the script from the repo root is recommended since it will be most up to date version with latest bug fix.

* Features
- Generate new key pairs
- Load existing key
- Add proofs for Supported Platforms
- List proofs
- Delete proofs (currently requires pasting a command and typing "save" see issue 1)

* Supported Platforms
1. Domain/DNS (note: sometimes DNS records take some time to update)
2. Gitea
3. Github
4. Gitlab
5. Mastodon
6. Twitter
7. Reddit
8. Hackernews
9. dev.to
10. IRC
11. Matrix

* Roadmap
- Incrementally add support for adding proofs to [[https://docs.keyoxide.org/][the supported service providers]]. They will be listed under the [[Supported Platforms]] sections.
- +List and delete proofs+ - done but delete is a bit tedious
- Setup a build pipeline to automate releases for a tagged release.
- Additional security and privacy options.

* Contributing
I absolutely welcome feedback in the form of PRs, whether it is improving my shell scripting or adding new functionality. A few guidelines to help me out:
- each PR should be focused on a single aspect (add functionality / improve existing functionality)
- draft PRs are encouraged so we can collaborate better
- if you're refactoring please explain the changes so I can learn from it