| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | Merge branch 'publisher-todos' into 'main' | Nick Mathewson | 2023-09-27 | 2 | -10/+11 | |
| |\ | | | | | | | | | tor-hsservice: Resolve a couple of publisher todo!()s See merge request tpo/core/arti!1624 | |||||
| | * | tor-hsservice: Specify the expiry for the hs_desc_sign_cert. | Gabriela Moldovan | 2023-09-27 | 1 | -3/+4 | |
| | | | | | | | | | | | | | | | Like the other certificates, the descriptor signing key certificate should have a lifetime of `HS_DESC_CERT_LIFETIME_SEC` seconds (at least, this is what C-Tor does. See build_desc_signing_key_cert() in feature/hs/hs_service.c). | |||||
| | * | tor-hsservice: Make HsSvcKeySpecifier borrow the nickname. | Gabriela Moldovan | 2023-09-27 | 2 | -9/+9 | |
| | | | | | | | | | This helps avoid cloning the nickname unnecessarily. | |||||
| | * | tor-hsservice: Use the nickname from the OnionServiceConfig. | Gabriela Moldovan | 2023-09-27 | 1 | -3/+3 | |
| |/ | | | | | The publisher can just read the nickname of the service from its `OnionServiceConfig`. | |||||
| * | Merge branch 'service-api' into 'main' | Nick Mathewson | 2023-09-27 | 6 | -9/+85 | |
| |\ | | | | | | | | | arti-client: sketch out an initial "launch an onion service" API. See merge request tpo/core/arti!1620 | |||||
| | * | arti-client: add a minimal onion-service-launching API. | Nick Mathewson | 2023-09-27 | 2 | -6/+62 | |
| | | | ||||||
| | * | hss: Implement HasKind for StartupError | Nick Mathewson | 2023-09-26 | 1 | -1/+15 | |
| | | | ||||||
| | * | hss: Make launch() non-consuming. | Nick Mathewson | 2023-09-26 | 1 | -1/+1 | |
| | | | | | | | | | | | We want to still have the OnionService kicking around, so we can use it as a handle. | |||||
| | * | arti-client: add an onion-service-service feature | Nick Mathewson | 2023-09-26 | 2 | -1/+7 | |
| | | | | | | | | | (I am not thrilled with this name.) | |||||
| * | | Merge branch 'worst-case-end' into 'main' | Nick Mathewson | 2023-09-27 | 1 | -34/+85 | |
| |\ \ | | | | | | | | | | | | | or-hsservice: Set a timeout for desc upload tasks. See merge request tpo/core/arti!1623 | |||||
| | * | | tor-hsservice: Set a timeout for the upload task. | Gabriela Moldovan | 2023-09-27 | 1 | -19/+48 | |
| | | | | | | | | | | | | | | | | | | | | | | The IPT manager needs to know how long the publication attempt will take in the worst case, so we add a timeout for the upload task. Part of #1050 | |||||
| | * | | tor-hsservice: Explain how note_publication_attempt is not called in the ↵ | Gabriela Moldovan | 2023-09-27 | 1 | -0/+23 | |
| | | | | | | | | | | | | | right place. | |||||
| | * | | tor-hsservice: Fix descriptor reactor lifetime bugs. | Gabriela Moldovan | 2023-09-27 | 1 | -20/+14 | |
| | | | | | | | | | | | | | | | | The problem was that several variables were borrowed in the spawned async block. | |||||
| | * | | tor-hsservice: Describe the lifetime bug from Reactor::upload_all. | Gabriela Moldovan | 2023-09-27 | 1 | -0/+5 | |
| | | | | ||||||
| * | | | Merge branch 'desc-todos' into 'main' | Alexander Færøy | 2023-09-27 | 1 | -8/+3 | |
| |\ \ \ | |/ / |/| | | | | | | | | tor-hsservice: Remove unnecessary TODO. See merge request tpo/core/arti!1621 | |||||
| | * | | tor-hsservice: Remove unnecessary TODO. | Gabriela Moldovan | 2023-09-26 | 1 | -8/+3 | |
| | | | | | | | | | | | | | | | | `Ipt` _is_ `IntroPointDesc`, so we don't need `build_intro_point_desc()` at all. | |||||
| * | | | Merge branch 'keymgr-blinded-keys' into 'main' | gabi-250 | 2023-09-26 | 6 | -27/+179 | |
| |\| | | | | | | | | | | | | | | tor-keymgr: Support storing `ed25519::ExpandedKeypair`s in the keystore See merge request tpo/core/arti!1619 | |||||
| | * | | tor-keymgr: Fix clippy warning (fmt). | Gabriela Moldovan | 2023-09-26 | 1 | -4/+1 | |
| | | | | ||||||
| | * | | tor-keymgr: Fix clippy warning. | Gabriela Moldovan | 2023-09-26 | 1 | -1/+1 | |
| | | | | ||||||
| | * | | tor-keymgr: Add a TODO regarding parsing errors. | Gabriela Moldovan | 2023-09-26 | 1 | -0/+3 | |
| | | | | ||||||
| | * | | tor-keymgr: Test expanded expanded-ed25519 SSH key parsing. | Gabriela Moldovan | 2023-09-26 | 4 | -0/+47 | |
| | | | | ||||||
| | * | | tor-keymgr: Extend parse_openssh! to support expanded ed25519 keypairs. | Gabriela Moldovan | 2023-09-26 | 1 | -5/+46 | |
| | | | | ||||||
| | * | | tor-keymgr: Implement EncodableKey for ExpandedKeypair. | Gabriela Moldovan | 2023-09-26 | 3 | -6/+44 | |
| | | | | ||||||
| | * | | tor-keymgr: Assign a custom algorithm name for expanded ed25519 keys. | Gabriela Moldovan | 2023-09-26 | 1 | -16/+42 | |
| | | | | | | | | | | | | | | | | | | | | | | We need to be able to store `HsBlindIdKeypair`s in the keystore, and since blinded keys are expanded e25519 keypairs which don't have a "standard" OpenSSH key encoding, we define a custom `[email protected]` SSH key type for this purpose. | |||||
| * | | | Merge branch 'keymgr-public-keys' into 'main' | gabi-250 | 2023-09-26 | 10 | -117/+314 | |
| |\ \ \ | |_|/ |/| | | | | | | | | tor-keymgr: Add support for public keys. See merge request tpo/core/arti!1618 | |||||
| | * | | tor-keymgr: Add TODO about key file extensions. | Gabriela Moldovan | 2023-09-26 | 1 | -0/+9 | |
| | | | | ||||||
| | * | | tor-keymgr: Make SshKeyData accessors more idiomatic. | Gabriela Moldovan | 2023-09-26 | 2 | -9/+11 | |
| | | | | ||||||
| | * | | tor-keymgr: Fix broken doc link. | Gabriela Moldovan | 2023-09-26 | 1 | -1/+1 | |
| | | | | ||||||
| | * | | tor-keymgr: Make SshKeyData non-exhaustive. | Gabriela Moldovan | 2023-09-26 | 1 | -1/+1 | |
| | | | | | | | | | | | | | | | | We will need to add another variant to this when we add support for certificates. | |||||
| | * | | tor-keymgr: Derive Clone, Debug for SshKeyData. | Gabriela Moldovan | 2023-09-26 | 1 | -1/+1 | |
| | |/ | ||||||
| | * | tor-keymgr: Rename as_ssh_keypair_data to as_ssh_key_data. | Gabriela Moldovan | 2023-09-26 | 3 | -8/+8 | |
| | | | | | | | | | | | This function no longer returns `KeypairData` (it now returns `SshKeyData`). | |||||
| | * | tor-keymgr: Add tests for OpenSSH public key parsing. | Gabriela Moldovan | 2023-09-26 | 5 | -0/+30 | |
| | | | ||||||
| | * | tor-keymgr: Use a macro to make the tests less repetitive. | Gabriela Moldovan | 2023-09-26 | 1 | -33/+45 | |
| | | | ||||||
| | * | tor-keymgr: Add TODO about rethinking KeyType. | Gabriela Moldovan | 2023-09-26 | 1 | -0/+8 | |
| | | | ||||||
| | * | tor-keymgr: Make parse_ssh_format_erased handle public keys too (fmt). | Gabriela Moldovan | 2023-09-26 | 1 | -8/+15 | |
| | | | ||||||
| | * | tor-keymgr: Make parse_ssh_format_erased handle public keys too. | Gabriela Moldovan | 2023-09-26 | 1 | -57/+5 | |
| | | | | | | | | | | | This rewrites `KeyType::parse_ssh_format_erased` to use the new `parse_openssh!` macro. | |||||
| | * | tor-keymgr: Add helpers for parsing OpenSSH public and private keys. | Gabriela Moldovan | 2023-09-26 | 1 | -0/+103 | |
| | | | | | | | | | | | | | | | | | | | `KeyType::parse_ssh_format_erased` currently only handles private keys. The code for parsing public keys is very similar, so we introduce a macro to avoid code duplication. Note: the macro is currently unused (it will be used in a future commit). | |||||
| | * | tor-keymgr: Implement ToEncodableKey for HsIdKey. | Gabriela Moldovan | 2023-09-25 | 1 | -3/+3 | |
| | | | ||||||
| | * | tor-keymgr: Implement EncodableKey for ed25519 public keys. | Gabriela Moldovan | 2023-09-25 | 1 | -3/+5 | |
| | | | ||||||
| | * | tor-keymgr: Implement EncodableKey for x25519 public keys. | Gabriela Moldovan | 2023-09-25 | 1 | -0/+26 | |
| | | | ||||||
| | * | tor-keymgr: Add KeyType variants for public keys. | Gabriela Moldovan | 2023-09-25 | 2 | -4/+15 | |
| | | | ||||||
| | * | tor-keymgr: Make EncodableKey support public keys too. | Gabriela Moldovan | 2023-09-25 | 4 | -22/+61 | |
| | | | | | | | | | | | | | | | | | | | Previously, `EncodableKey::to_keypair_data` could only be used for encoding private keys (its return type was `KeypairData`). Now `EncodableKey::to_keypair_data` can return public key data (`KeyData`) too. Note: `to_keypair_data()` will be renamed in a future commit. | |||||
| | * | tor-keymgr: Represent unparsed ssh key as strings. | Gabriela Moldovan | 2023-09-25 | 2 | -10/+10 | |
| |/ | | | | | | | | The underlying representation of an `UnparsedOpenSshKey` is now a `String`. This will make it easier to support storing public keys in the keystores: in the future, we will use `PublicKey::from_openssh` to parse public keys, and `PublicKey::from_openssh` expects a string slice (unlike `PrivateKey::from_openssh`, which takes a `&[u8]`). | |||||
| * | Merge branch 'keymgr-curve25519-keypair' into 'main' | gabi-250 | 2023-09-25 | 17 | -56/+112 | |
| |\ | | | | | | | | | tor-hsclient, arti-client, tor-keymgr, tor-netdoc: Use a keypair instead of StaticSecret. See merge request tpo/core/arti!1617 | |||||
| | * | tor-hsclient: Update HsClientSecretKeys docs. | Gabriela Moldovan | 2023-09-25 | 1 | -1/+1 | |
| | | | ||||||
| | * | tor-keymgr: Add (experimental) notices to semver.md | Gabriela Moldovan | 2023-09-25 | 1 | -6/+6 | |
| | | | ||||||
| | * | tor-llcrypto: Implement Clone and Debug for StaticKeypair. | Gabriela Moldovan | 2023-09-25 | 1 | -0/+11 | |
| | | | ||||||
| | * | tor-netdoc: Remove outdated note. | Gabriela Moldovan | 2023-09-25 | 1 | -4/+0 | |
| | | | ||||||
| | * | tor-hsclient, arti-client, tor-keymgr, tor-netdoc: Use a keypair instead of ↵ | Gabriela Moldovan | 2023-09-25 | 7 | -17/+17 | |
| | | | | | | | | | StaticSecret (fmt). | |||||
| | * | tor-hsclient, arti-client, tor-keymgr, tor-netdoc: Use a keypair instead of ↵ | Gabriela Moldovan | 2023-09-25 | 13 | -45/+62 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | StaticSecret. Previously, when retrieving `KS_hsc_desc_enc` keys (or any other x25519 keys) from the keystore, the keymgr would discard the public part of the key (SSH private keys contain the public part of the key too). Instead of discarding the public key and returning just the `StaticSecret`, the keymgr now returns a `StaticKeypair`. This makes the x25519 `EncodableKey`/`ToEncodableKey` implementation consistent with the ed25519 one (which retrieves key pairs rather than "unescorted" secrets). | |||||
