Git Product home page Git Product logo

age-plugin-op's Introduction

โš ๏ธ I have been using this plugin for a while without issue. However, it hasn't received much review. YMMV.

1Password Plugin for Age Clients

age-plugin-op is a plugin for age clients like age and rage. It allows you to use your 1Password SSH keys with age clients.

Requirements

Installation

Age plugins must be available in the $PATH. Right now there are no pre-built binaries, so you will need to build the plugin yourself.

Usage

  1. Generate a new age identity file using the age-plugin-op plugin. You will be prompted to authenticate with 1Password.
    $ age-plugin-op --generate "op://Personal/wxrzetxonuggniebjzruxycq/private key" -o age-identity.txt
    # Created: 2024-02-16 13:25:00.433868 -0800 PST m=+0.003075709
    # Recipient: age1op102xjaf99y9u69cf64cl8trptuenerd3gal8t4hc2exd8z4ntvpyquwaf9l
    
    AGE-PLUGIN-OP-1Q9D7XC8RDFW0X3F9P7R9WGZDTST5V22CQUMUM3MK6VTKWKJ[...]
  2. Encrypt a file/stream for the recipient.
    $ echo "Hello World" | age -r "age1op102xjaf99y9u69cf64cl8trptuenerd3gal8t4hc2exd8z4ntvpyquwaf9l" > secret.age
  3. Decrypt the file/stream using the age-plugin-op plugin.
    $ age --decrypt -i age-identity.txt -o - secret.age
    Hello World`

Supported SSH Key Types

Only RSA and ECD25519 keys are supported since these are the only types supported by 1Password.

Inspiration

This plugin is heavily inspired by the age-plugin-tpm plugin and age-plugin-se plugin. Some internal code from age was used directly.

License

Licensed under the MIT license. See LICENSE or http://opensource.org/licenses/MIT

age-plugin-op's People

Contributors

bromanko avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

acuteaura-forks

age-plugin-op's Issues

Enable multi-architecture builds

Right now the GitHub Action for building is only building a linux build. The nix build will need to be updated to support building for multiple architectures including linux and darwin for both x86 and arm64.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.