{"categories":[{"label":"Utilities","url":"https://skillfed.io/packages/category/utilities/4"}],"enrichment":{"capability":"Retrieves the unique machine ID of a host without requiring admin privileges, with options for raw GUID or hashed anonymized identifiers.","skillfed_tags":["device-identification","licensing"],"use_cases":["Implement per-device licensing checks in software distribution systems to bind licenses to specific machines.","Generate stable, anonymized device identifiers for telemetry or analytics without exposing raw hardware details.","Build machine fingerprinting for security audits or compliance logging without requiring elevated privileges.","Scope application-specific identifiers to ensure the same device gets a unique ID per application.","Disable registry queries on Windows to prevent machine fingerprints from being manually modified by users."],"what_it_does":"py-machineid is a lightweight Python library that retrieves a unique identifier for the host machine without requiring administrator privileges. It provides two main functions: id() returns the raw machine GUID, and hashed_id() returns a cryptographic hash of that identifier, optionally scoped to a specific application. On Windows, the library can query the registry to construct the identifier; this behavior can be disabled via a kwarg for security-conscious deployments.\n\nThe package is typically used for device licensing, telemetry, or machine fingerprinting in applications that need to identify or track individual hosts. It has one runtime dependency (winregistry) and installs as a pure Python wheel with low friction. The maintenance status is aging\u2014the last commit was 2025-12-02\u2014so updates and bug fixes may come slowly, but the repository remains active and has not been archived.","worth_installing":"Yes, if you need a simple, low-friction way to retrieve machine identifiers for licensing or telemetry. The MIT license is permissive, install friction is minimal, and there are no known vulnerabilities. However, aging maintenance means you should verify that the library's behavior on your target platforms matches your security and accuracy requirements before relying on it in production."},"id":"py-machineid","links":{"html":"https://skillfed.io/packages/py-machineid","md":"https://skillfed.io/packages/py-machineid.md","pypi":"https://pypi.org/project/py-machineid/"},"maintenance":{"status":"aging"},"meta":{"latest_release":"2025-12-02","license_spdx":null,"license_treatment":"permissive","name":"py-machineid","python_support":"unspecified","summary":"Get the unique machine ID of any host (without admin privileges)"},"popularity":{"monthly_downloads":851778,"position":4902,"tier":"top_5000"},"security":{"n_vulnerabilities":0},"version":"1.0.0"}
