Skip to content

Releases: alphabetanetcom/system-hardware-id-generator

System Hardware ID Generator v1.1.1-beta.1

27 Dec 15:42
a31564a
Compare
Choose a tag to compare

feat: add Python App Bundle Shield integration

  • Add support for standalone application creation
  • Implement cross-platform executable packaging
  • Enable secure distribution features
  • Integrate with Python App Bundle Shield protection mechanisms

System Hardware ID Generator v1.1-beta.1

19 Nov 19:02
57dde58
Compare
Choose a tag to compare

The System Hardware ID Generator Script

Version: 1.1
© 2024 αβ.net (alphabetanet.com) - Alpha Beta Network. All Rights
Reserved.


Note: This project is currently in Beta Testing and available
for free.

Table of Contents


1. Introduction

The System Hardware ID Generator Script is a Python tool designed to
generate a unique Hardware ID (HWID) for the device it runs on. The HWID
is represented as an 18-digit integer, making it efficient for storage
in databases and indexing. This script can be used in various
applications such as software licensing, device authentication, and
hardware inventory management.

Key features of the script include:

  • Unique Hardware Identification: Generates a unique HWID based on
    the system's hardware information.

  • Cross-Platform Compatibility: Works on Windows, macOS,
    Linux/Unix, and other operating systems where Python 3.6+ is
    installed.

  • Modular Design: Can be used as a standalone script or imported
    as a module in other Python projects.

  • Cached HWID Value: Caches the HWID value during import for
    performance optimization.

This tool is effectively used in the Alpha Beta Network cloud platform,
including the Python Obfuscator
Online
Secure Python Code Manager
Script
,
and Local Python Code Protector
Script
.

The published scripts system_hardware_id_generator.py (uses cloud
protection) and system_hardware_id_generator.pyz (uses local protection
and is able to run without internet connection) are ready-to-use secure
cross platform versions in order to ensure the confidentiality of the
algorithm used.


2. Installation

Before using the System Hardware ID Generator Script, ensure that you
have Python 3.6+ installed on your system.

2.1 Installing Required Packages

The script requires the following Python packages:

  • requests

  • psutil

  • cryptography

You can install them using pip:

pip install requests psutil cryptography

Ensure that you are using the correct version of pip associated with
your Python 3 installation. If you are using a virtual environment,
activate it before installing the package.


3. Main Functions of the Script

The System Hardware ID Generator Script provides the following
functionalities:

  • Generate Hardware ID (HWID): Computes a unique HWID based on the
    system's hardware and platform information.

  • Provide HWID via Module Import: Allows other Python scripts to
    import the module and obtain the HWID programmatically.


4. Detailed Description

4.1 Generating Hardware ID (HWID)

The script gathers system information such as hostname, processor,
system type, and machine architecture. It then concatenates these
details and computes a SHA-256 hash. The hash is converted to an
18-digit integer, which serves as the unique HWID.

Key Functions:

  • Saves the HWID to a log file named system_hardware_id_<HWID>.log.

  • generate_hwid(): Public function that returns the cached HWID.

4.2 Using the Script as a Module

The script is modular and can be imported into other Python projects. It
provides the generate_hwid() function, which returns the cached HWID
value. This ensures that the HWID is generated only once per session,
optimizing performance.

Error Handling:

  • The script includes try-except blocks to handle potential exceptions
    during HWID generation and file operations.

  • If an error occurs, a warning message is displayed, and a default
    HWID of "0" is returned.


5. Usage Examples

5.1 Running the Script Directly

To generate and display the HWID, run the script directly from the
command line:

python system_hardware_id_generator.py

Output:

Your Hardware ID (HWID) is: 123456789012345678

The HWID will also be saved to a log file
named system_hardware_id_123456789012345678.log in the current
directory.

5.2 Importing the Module

You can import the script as a module in your Python project to obtain
the HWID:

# test_hwid.py

from system_hardware_id_generator import generate_hwid

def main():
    try:
        hwid = generate_hwid()
        print(f"Generated HWID: {hwid}")
        print(f"HWID length: {len(hwid)} characters")
    except Exception as e:
        print(f"Error occurred while generating HWID: {e}")

if __name__ == "__main__":
    main()

Example Output:

Generated HWID: 123456789012345678

HWID length: 18 characters

This example is based on the test_hwid.py file.

5.3 Using the .pyz Archive

The script can be packaged into a .pyz archive for distribution. To use
the module from the .pyz file:

# test_hwid_from_pyz.py
import sys

# Add .pyz archive path to the system's module search path
sys.path.insert(0, 'system_hardware_id_generator.pyz')

from system_hardware_id_generator import generate_hwid

def main():
    try:
        hwid = generate_hwid()
        print(f"Generated HWID: {hwid}")
        print(f"HWID length: {len(hwid)} characters")
    except Exception as e:
        print(f"Error occurred while generating HWID: {e}")

if __name__ == "__main__":
    main()

Instructions:

  • Ensure the system_hardware_id_generator.pyz file is in the same
    directory as your script or provide the correct path.

  • This approach adds the .pyz archive to the system path, allowing you
    to import modules contained within it.

Example Output:

Generated HWID: 123456789012345678

HWID length: 18 characters

This example is based on the test_hwid_pyz.py file.


6. Applications and Use Cases

The System Hardware ID Generator Script can be used in various
scenarios:

  • Software Licensing:

    • Bind licenses to specific devices using the HWID.

    • Control the number of software installations.

    • Prevent unauthorized software usage.

  • Security Systems:

    • Identify devices in corporate networks.

    • Track suspicious activities from specific devices.

    • Authenticate devices accessing protected resources.

  • Monitoring and Inventory:

    • Manage hardware assets in organizations.

    • Track changes in device configurations.

    • Automate IT asset inventory.

  • Analytics and Statistics:

    • Collect data about devices used.

    • Analyze user distribution by hardware types.

    • Track unique software installations.

  • Technical Support:

    • Quickly identify devices during support requests.

    • Track support history for specific devices.

    • Automate support processes.

  • Development and Testing:

    • Debug issues on specific devices.

    • Reproduce errors in specific configurations.

    • Automate testing across different devices.

  • System Integration:

    • Integrate into larger systems as a component.

    • Use in access control systems.

    • Integrate with monitoring and logging systems.


7. Recommendations and Best Practices

  • Use the Cached HWID: Utilize the cached HWID provided by
    the generate_hwid() function to optimize performance in your
    applications.

  • Handle Exceptions: Implement appropriate error handling when
    using the module to ensure your application can handle any issues
    during HWID generation.

  • Security Considerations: When using HWIDs for licensing or
    security purposes, ensure that the HWID generation method meets your
    security requirements and consider potential spoofing risks.

  • Integration with Other Tools: The script can be effectively used
    in conjunction with other tools like the Local Python Code
    Protector
    Script
     for
    enhanced code protection.


Appendix A: Generating Hardware IDs

To restrict code execution to specific devices or fo...

Read more