Skip to content

Update Rust crate russh-keys to 0.49.2#8393

Open
oxide-renovate[bot] wants to merge 1 commit intomainfrom
renovate/russh-monorepo
Open

Update Rust crate russh-keys to 0.49.2#8393
oxide-renovate[bot] wants to merge 1 commit intomainfrom
renovate/russh-monorepo

Conversation

@oxide-renovate
Copy link
Copy Markdown
Contributor

@oxide-renovate oxide-renovate Bot commented Jun 19, 2025

This PR contains the following updates:

Package Type Update Change
russh-keys dependencies minor 0.45.00.49.2

Release Notes

warp-tech/russh (russh-keys)

v0.49.2

Compare Source

Fixes

  • cb5d3ba: fixed #​418 - client - incorrect kex signature verification for RSA-SHA2
  • 97ec468: Remove calls to dbg!() (#​414) (Eric Rodrigues Pires)

v0.49.1

Compare Source

v0.49.0

Compare Source

Changes

This release fixes the regression in v0.48 which made it impossible to choose the hash algorithm when using RSA keys for authentication. Unfortunately, the fix is a breaking API change, hence the version bump.

client::Handle::authenticate_publickey now takes a russh_keys::key::PrivateKeyWithHashAlg which you can construct from an Arc<russh_keys::PrivateKey> + Option<russh_keys::HashAlg>.

The latter lets you choose between SHA1, SHA256 and SHA512 for RSA keys, and must be None for all other key types.

Example:

let key_pair = load_secret_key(key_path, None)?;

let auth_res = session
    .authenticate_publickey(
        user, 
        PrivateKeyWithHashAlg::new(Arc::new(key_pair), Some(HashAlg::Sha512))?
    )
    .await?;

v0.48.1

Compare Source

Breaking changes

russh v0.48 drops its own data parsing and key handling code in favor of the RustCrypto project's ssh-key (#​368) and ssh-encoding (#​371) crates. This means there are some breaking changes, which are listed here:

Important for library users
  • russh_keys::key::PublicKey is replaced with russh_keys::PublicKey (ssh_key::PublicKey)

  • russh_keys::key::KeyPair is replaced with russh_keys::PrivateKey (ssh_key::PrivateKey)

  • russh_keys::key::parse_public_key no longer takes a hash algorithm argument as RSA keys are no longer locked down to a specific algorithm internally. RSA key specific hash algorithms are only used in Preferred::key.

  • Key type constants in russh_keys::key and russh_keys::key::Name are removed - use the russh_keys::Algorithm enum instead. Config::preferred::key now also takes russh_keys::Algorithms instead of russh_key::key::Names.

  • russh::client::Handle::authenticate_future is renamed to russh::client::Handle::authenticate_publickey_with

Less important
  • new russh::Error enum variants:

    • Error:Signature
    • Error:SshKey
    • Error:SshEncoding
  • new russh_keys::Error enum variants:

    • Error::Rsa
    • Error::Utf8
  • russh::auth::Signer is now an async_trait

  • russh_keys::ec is removed

  • russh_keys::encoding is removed (use russh_keys::ssh_encoding)

  • russh_keys::signature is removed

  • russh_keys::protocol is removed

  • russh_keys::key::SignatureHash is replaced with russh_keys::HashAlg (ssh_key::HashAlg)

  • russh_keys::key::SignatureBytes is removed

  • russh_keys::key::RsaPrivate is removed (use russh_keys::ssh_key::private::RsaPrivateKey)

  • russh_keys::key::RsaPublic is removed (use russh_keys::ssh_key::public::RsaPublicKey)

  • russh_keys::key::RsaCrtExtra is removed

  • russh_keys::key::Signature is replaced with russh_keys::signature::Signature (signature::Signature)

Features

  • aa9bdb4: added support for <sk-ecdsa-sha2-nistp256-cert-v01@​openssh.com> and <sk-ssh-ed25519-cert-v01@​openssh.com> keys in client
  • 68fff93: Add support for StrictHostKeyChecking and UserKnownHostsFile (#​386) (Mattias Eriksson) #​386
  • 981cf7b: Derive Debug where possible (#​374) (Quentin Santos) #​374
  • c328558: Implement From<&str> and From<&[u8]> for CryptoVec (#​391) (Josh McKinney) #​391

Fixes

Docs

v0.48.0

Compare Source

v0.46.0

Compare Source

Changes

Fixes


Configuration

📅 Schedule: (in timezone America/Los_Angeles)

  • Branch creation
    • "after 8pm,before 6am"
  • Automerge
    • "after 8pm,before 6am"

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate.

@oxide-renovate oxide-renovate Bot added the dependencies Pull requests that update a dependency file label Jun 19, 2025
@oxide-renovate oxide-renovate Bot force-pushed the renovate/russh-monorepo branch 6 times, most recently from c18bc7d to ed05446 Compare June 26, 2025 03:52
@oxide-renovate oxide-renovate Bot force-pushed the renovate/russh-monorepo branch 4 times, most recently from ee696b0 to 28d35cc Compare July 7, 2025 03:31
@oxide-renovate oxide-renovate Bot force-pushed the renovate/russh-monorepo branch 2 times, most recently from e8be74a to a920ec3 Compare July 18, 2025 03:48
@oxide-renovate oxide-renovate Bot force-pushed the renovate/russh-monorepo branch 11 times, most recently from 9fc7497 to 7e2e656 Compare July 28, 2025 03:02
@oxide-renovate oxide-renovate Bot force-pushed the renovate/russh-monorepo branch 3 times, most recently from 4426c78 to 1933609 Compare August 4, 2025 12:27
@oxide-renovate oxide-renovate Bot changed the title Update russh monorepo Update Rust crate russh-keys to 0.49.2 Aug 5, 2025
@oxide-renovate oxide-renovate Bot force-pushed the renovate/russh-monorepo branch 2 times, most recently from 3bb648e to e380e4a Compare August 21, 2025 03:16
@oxide-renovate oxide-renovate Bot force-pushed the renovate/russh-monorepo branch 2 times, most recently from b3a15d4 to 382bfc4 Compare October 14, 2025 03:38
@oxide-renovate oxide-renovate Bot force-pushed the renovate/russh-monorepo branch from 382bfc4 to 937d273 Compare October 22, 2025 03:27
@oxide-renovate oxide-renovate Bot force-pushed the renovate/russh-monorepo branch 4 times, most recently from 3f6d2ce to 398a222 Compare November 6, 2025 04:11
@oxide-renovate oxide-renovate Bot force-pushed the renovate/russh-monorepo branch 3 times, most recently from ea3817d to 8a82ce8 Compare November 12, 2025 04:10
@oxide-renovate oxide-renovate Bot force-pushed the renovate/russh-monorepo branch 2 times, most recently from c252fcf to 6ccde25 Compare November 22, 2025 04:13
@oxide-renovate oxide-renovate Bot force-pushed the renovate/russh-monorepo branch 4 times, most recently from 702b8d7 to 8d8e552 Compare December 4, 2025 07:11
@oxide-renovate oxide-renovate Bot force-pushed the renovate/russh-monorepo branch 4 times, most recently from 27eed84 to fb766a3 Compare December 17, 2025 08:47
@oxide-renovate oxide-renovate Bot force-pushed the renovate/russh-monorepo branch 2 times, most recently from 319df22 to faafffa Compare December 23, 2025 10:05
@oxide-renovate oxide-renovate Bot force-pushed the renovate/russh-monorepo branch 2 times, most recently from a938510 to e644207 Compare January 3, 2026 04:21
@oxide-renovate oxide-renovate Bot force-pushed the renovate/russh-monorepo branch from e644207 to 4678212 Compare January 10, 2026 07:07
@oxide-renovate oxide-renovate Bot force-pushed the renovate/russh-monorepo branch 3 times, most recently from 98b4d64 to 088149c Compare January 25, 2026 04:30
@oxide-renovate oxide-renovate Bot force-pushed the renovate/russh-monorepo branch from 088149c to 07e6b1e Compare January 28, 2026 04:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants