fix: Support both DSA and RSA public keys for OpenSSH 10.0+ compatibility#494
Open
Tarun-goswamii wants to merge 1 commit intosugarlabs:masterfrom
Open
Conversation
…lity OpenSSH 10.0 removed DSA key support. This change updates the public key parsing to support both key types: - ssh-dss (DSA) - for existing user profiles - ssh-rsa (RSA) - for new profiles created on OpenSSH 10.0+ This ensures backward compatibility: users with existing DSA keys can continue using Sugar, while new users will have RSA keys generated by the companion change in the sugar repository. The _hash_private_key() function already supports both key formats through the OPENSSH PRIVATE KEY header detection. Related: sugarlabs/sugar#1004
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
OpenSSH 10.0 (released 2025-04-09) removed DSA key support. This updates
_load_pubkey()to recognize both DSA and RSA public keys, ensuring backward compatibility for existing users while supporting new installations.Fixes the toolkit side of: sugarlabs/sugar#1004
Problem
The existing code only recognizes
ssh-dss(DSA) prefix: