Machine System ID — A revolutionary, lightweight, and secure machine fingerprint generator for Ruby.
msid generates a unique, consistent, and cryptographically secure identity hash for the host machine by gathering immutable hardware signatures (CPU model, MAC addresses, Disk UUIDs, and more). It works seamlessly across macOS, Linux, and Windows.
Ideal for licensing, analytics, fraud prevention, and security enforcement.
Add this line to your application's Gemfile:
gem 'msid'And then execute:
$ bundle installrequire 'msid'
# Generate a unique 64-character SHA-256 machine fingerprint
Msid.generate
# => "a1b2c3d4..."
# Generate a salted fingerprint (Recommended for app-specific or user-specific IDs)
Msid.generate(salt: 'my-super-secret-key')
# => "e5f6g7h8..."
# Inspect the raw gathered hardware data (New in v0.2.0)
Msid.info
# => {
# hostname: "MacBook-Pro.local",
# cpu_model: "Apple M1",
# mac_address: "00:1A:2B:3C:4D:5E",
# disk_uuid: "..."
# }You can also use msid directly from the terminal:
$ msid
a1b2c3d4...Bug reports and pull requests are welcome on GitHub.
The gem is available as open source under the terms of the MIT License.