ssh-agent-pkcs11
ssi
ssh-agent-pkcs11 | ssi | |
---|---|---|
1 | 2 | |
5 | 175 | |
- | 0.6% | |
10.0 | 4.8 | |
almost 5 years ago | 4 days ago | |
C | Rust | |
- | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
ssh-agent-pkcs11
-
It's Now Possible to Sign Arbitrary Data with Your SSH Keys
It hasn't been able to do it in a meaningful way.
I've been patching support for this into ssh-agent for about a decade. I wrote a PKCS#11 module which talks to the SSH agent socket to forward your smartcard [0]. Doing so requires three changes to the protocol:
1. The ability to sign arbitrary data and get back the signed result [1]; normally you get back a hashed result [2].
2. The ability to decrypt data, this is what you said. This is less important since many things only require signatures (and not all algorithms support encryption/decryption).
3. The ability to request your certificates [3] [4] this one is kinda obvious.
The benefits of this are that you can use your smartcard on the remote host to do fully authenticated password-less sudo with pam_pkcs11. You can also do anything else that requires you to use your private key to be used, which can include fetching files (TLS client certificate authentication).
Within the US Government, passwords have been being phased out since 2004, but the requirements for authenticated privilege elevation remain.
Another way to accomplish this is to use SSH forwarding of your PC/SC socket but that's less portable and more fragile (and even less secure).
[0] https://github.com/rkeene/ssh-agent-pkcs11
[1] https://cackey.rkeene.org/fossil/artifact/0d0e90bbfdee672c?l...
[2] https://datatracker.ietf.org/doc/html/draft-miller-ssh-agent...
[3] https://cackey.rkeene.org/fossil/artifact/0d0e90bbfdee672c?l...
[4] https://datatracker.ietf.org/doc/html/rfc6187#section-2.1
ssi
-
Show HN: A decentralized semantic web built atop Activity Pub
For authenticating messages, Chatter Net uses Linked Data Proofs (https://www.w3.org/TR/vc-data-integrity/#proofs). The JS client uses this implementation: https://github.com/digitalbazaar/crypto-ld. And the Rust server uses this one: https://github.com/spruceid/ssi.
I hadn't seen ucan yet, I think the space of JWT adjacent protocols is growing, and I'll be interested to see where it all goes!
-
It's Now Possible to Sign Arbitrary Data with Your SSH Keys
We've implemented a DID method based on this!
https://github.com/spruceid/ssi/tree/main/did-webkey
What are some alternatives?
age - A simple, modern and secure encryption tool (and Go library) with small explicit keys, no config options, and UNIX-style composability.
git-crypt - Transparent file encryption in git
trezor-agent - Hardware-based SSH/GPG/age agent
chatternet-client-http
whoami.filippo.io - A ssh server that knows who you are. $ ssh whoami.filippo.io
pinafore - Alternative web client for Mastodon (UNMAINTAINED)
rage - A simple, secure and modern file encryption tool (and Rust library) with small explicit keys, no config options, and UNIX-style composability.
sops - Simple and flexible tool for managing secrets
spec - User Controlled Authorization Network (UCAN) Specification