| Crates.io | device-fingerprint |
| lib.rs | device-fingerprint |
| version | 0.1.1 |
| created_at | 2025-12-25 12:52:03.014924+00 |
| updated_at | 2026-01-06 14:08:01.086076+00 |
| description | Collect hardware information to generate a unique device fingerprint; Windows systems only. |
| homepage | |
| repository | https://github.com/MelvinIris/device-fingerprint |
| max_upload_size | |
| id | 2004525 |
| size | 19,538 |
Generate a unique device fingerprint by collecting hardware identifiers from Windows devices.
windows-sys for native API calls, with optional WMIC supportAdd the dependency to your Cargo.toml:
[dependencies]
device-fingerprint = "0.1.1"
use device_fingerprint::{generate, verify};
fn main() {
// Generate device fingerprint
let fingerprint = generate();
println!("Device Fingerprint: {}", fingerprint);
// Verify device fingerprint
if verify(&fingerprint) {
println!("Fingerprint verification passed");
}
}
| Function | Description |
|---|---|
generate() |
Generate device fingerprint, returns 64-character SHA256 hash |
verify(expected) |
Verify if the fingerprint matches the current device |
| Function | Description |
|---|---|
collectors::machine_guid() |
Get Windows Machine GUID |
collectors::cpu_id() |
Get CPU vendor and feature information |
collectors::wmic_uuid() |
(Optional) Get SMBIOS UUID via WMI |
| Component | Source | Stability |
|---|---|---|
| Machine GUID | Registry HKLM\SOFTWARE\Microsoft\Cryptography |
Changes after OS reinstall |
| CPU ID | CPUID instruction | Changes after CPU replacement |
Use this library in scenarios where client-side feature modification is restricted, enabling:
MIT