{"categories":[{"label":"Security","url":"https://skillfed.io/packages/category/security"}],"enrichment":{"capability":"Parses and validates OpenSSH public keys, extracting key type, bit length, and computing cryptographic hashes for ssh-rsa, ssh-dss, ssh-ed25519, and NIST-curve ecdsa keys.","skillfed_tags":["ssh-key-management","cryptography"],"use_cases":["Validate SSH public keys before storing them in an authorized_keys file or database.","Parse and audit authorized_keys files to extract key metadata and compute fingerprints for security logging.","Build SSH key management tools that need to identify key type, bit length, and detect weak keys.","Integrate SSH key validation into deployment or provisioning scripts that accept user-provided keys.","Generate SHA256 or SHA512 fingerprints for SSH keys to match against known-hosts or key registries."],"what_it_does":"sshpubkeys is a native Python parser for OpenSSH public keys that validates and extracts metadata from ssh-rsa, ssh-dss, ssh-ed25519, and NIST-curve ecdsa keys. It depends on cryptography and ecdsa for the underlying cryptographic operations. The package provides a simple API: instantiate an SSHKey object with a key string, call parse(), and access properties like bits, comment, and hash methods (MD5, SHA256, SHA512). It also includes an AuthorizedKeysFile class for bulk parsing of authorized_keys files.\n\nThe package operates in two modes: strict (default), which enforces OpenSSH's own validation rules (e.g., DSA keys must be 1024, 2048, or 3072 bits), and loose, which attempts to accept any key OpenSSH would. It raises specific exceptions for different failure modes\u2014InvalidKeyError for malformed data, NotImplementedError for unsupported key types, and InvalidOptionsError for invalid SSH options. The last release was in February 2021, and the project is dormant; however, the repository remains unarchived and may receive maintenance if issues arise.","worth_installing":"Yes, if you need to parse and validate OpenSSH public keys in Python. The package is stable, has low install friction, carries a permissive license, and has no known vulnerabilities. Dormancy is a minor concern\u2014the last release was over 2017 days ago\u2014but the unarchived repository and broad Python 3 support (3.5+) suggest it remains usable for standard key formats. Install it if your use case is straightforward key parsing; consider alternatives if you need support for newer OpenSSH certificate formats or active maintenance."},"id":"sshpubkeys","links":{"html":"https://skillfed.io/packages/sshpubkeys","md":"https://skillfed.io/packages/sshpubkeys.md","pypi":"https://pypi.org/project/sshpubkeys/"},"maintenance":{"status":"dormant"},"meta":{"latest_release":"2021-02-04","license_spdx":null,"license_treatment":"permissive","name":"sshpubkeys","python_support":"supports_current","summary":"SSH public key parser"},"popularity":{"monthly_downloads":1401982,"position":3948,"tier":"top_5000"},"security":{"n_vulnerabilities":0},"version":"3.3.1"}
