Alexis Sellier
96d1ce5da6
crypto: Add ECDH trait and `MemorySigner` impl
...
Signed-off-by: Alexis Sellier <alexis@radicle.xyz>
2022-12-08 13:21:00 +01:00
Alexis Sellier
66d1f99a1e
Simplify key generation for tests and debugging
...
Signed-off-by: Alexis Sellier <alexis@radicle.xyz>
2022-11-22 10:44:30 +01:00
xphoniex
5847ad2ff1
Add `Clone` instance to `Profile`
...
Signed-off-by: xphoniex <xphoniex@users.noreply.github.com>
2022-11-06 12:42:30 +01:00
Alexis Sellier
45c7f3049b
Update to Rust 1.65
...
* Use new let-else syntax
* Fix new clippy lints
Signed-off-by: Alexis Sellier <alexis@radicle.xyz>
2022-11-05 12:47:26 +01:00
Alexis Sellier
dc79130988
Zeroize passphrases
...
Signed-off-by: Alexis Sellier <alexis@radicle.xyz>
2022-11-03 16:52:29 +01:00
Alexis Sellier
6e8e1e0972
Zeroize secret key in signer
...
Signed-off-by: Alexis Sellier <alexis@radicle.xyz>
2022-11-03 16:49:29 +01:00
Alexis Sellier
577b632056
Use `Signer::try_sign` in interactive contexts
...
In interactive (user) contexts, use `try_sign` instead of `sign`.
We also revisit the `Profile` by adding a `signer` method that can
fail, eg. if we couldn't connect to ssh-agent.
Finally, we replace `UnsafeSigner` with `MemorySigner`, which makes
use of `ssh::Keystore`.
Signed-off-by: Alexis Sellier <alexis@radicle.xyz>
2022-11-03 13:06:00 +01:00
Alexis Sellier
5494490c40
crypto: implement an OpenSSH keystore
...
This will become the primary keystore.
Signed-off-by: Alexis Sellier <alexis@radicle.xyz>
2022-11-02 14:11:07 +01:00