简体   繁体   中英

Fingerprinting an application so it runs on only a machine which has had it's hash whitelisted

Basically this is the algorithm I'm thinking about:

  1. Get users MAC address.
  2. Get users hard drive ID.
  3. Get users motherboard ID.
  4. Get users RAM ID.
  5. Combine all these specifics into a single very long string.
  6. Apply some sort of Ceaser crypto.
  7. Hash this very long mangled string.

  8. User this hashed string as it's unique identifier and verify it against a webservice that will whitelist it for use.

Is this secure enough? I'm new to machine fingerprinting and would love to hear suggestions or pitfalls I might not be taking into consideration.

.net is very weak to decompiling and the methods of obsfusication that are easily implemented are also easily bypassed. Anything that you write as a security control that uses in-place security measures (meaning they perform no external checks) are easily reversed and bypassed by injection/altering of exec/ or absolute removal of the protection measure. There are alternatives such as verifying those id's against a closed data base when the program is launched. or issuing keys like cd's that are verified against a database that also checks server side values against the id's you listed and those are the simple methods.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM