We want to create a unique machine id - key fingerprint, in order to use it to identify a PC(s) over a secure network (probably ssl/tls), so that we are sure that the server delivers to the certain PC , and not to someone who has stolen the license. The pc(s) will be on Linux OS. How should we do it?
相关问题
- “Zero out” sensitive String data in Swift
- High cost encryption but less cost decryption
- How to restrict VOB read access in ClearCase (Wind
- fingerprint android with multiple user
- My android app is getting device not supported whe
相关文章
- Warning : HTML 1300 Navigation occured?
- linux / libusb get usb device path
- Security concerns about CORS
- How do I prevent SQL injection with ColdFusion
- Can I release an app without the device?
- LINQ to Entities and SQL Injection
- How to use Google application-specific password in
- Will re-populating a password field in a form be a
Couple of suggestions.
Create a unique hashing algorithm that hashes the computer name and MAC address together, sends the hash back to the secure server, and stores it in a binary file on the local machine. When communicating, your protocol then requires the client to send it's hashcode fingerprint to the server to authenticate before communicating.
Generate a set of valid license keys (another hash) that you store in a special file. When the application boots for the first time, it registers the key and computer information with the server (ie: computer name) or username/password combo. As with #1, the computer must send the unique key to the server to authenticate before communicating. Set up your server code so the same key cannot come from two different devices.
Check out this stackoverflow answer to the same question. The author had some interesting insights to a very similar question.