github.com/sandipmavani/hardwareid (go): package hardwareid provides support for reading the unique hardware id of most OSs (without admin privileges).  https://github.com/sandipmavani/hardwareid  https://godoc.org/github.com/sandipmavani/hardwareid/cmd/hardwareid  This package is Cross-Platform (tested on Win7+, Debian 8+, Ubuntu 14.04+, OS X 10.6+, FreeBSD 11+) and does not use any internal hardware IDs (no MAC, BIOS, or CPU).  Returned hardware IDs are generally stable for the OS installation and usually stay the same after updates or hardware changes.  This package allows sharing of hardware IDs in a secure way by calculating HMAC-SHA256 over a user provided app ID, which is keyed by the hardware id.  Caveat: Image-based environments have usually the same hardware-id (perfect clone). Linux users can generate a new id with `dbus-uuidgen` and put the id into `/var/lib/dbus/hardware-id` and `/etc/hardware-id`. Windows users can use the `sysprep` toolchain to create images, which produce valid images ready for distribution.
Keywords: go|golang|hardwareid|library|mac-address|machine-id|machine-identity