基本上这就是我正在考虑的算法:
- 获取用户MAC地址
- 获取用户硬盘ID。
- 获取用户主板ID。
- 获取用户RAM ID
- 将所有这些细节组合成一个很长的字符串。
- 应用某种加密货币。
-
使用这个散列字符串作为它的唯一标识符,并对将其列入白名单的web服务进行验证。
这足够安全吗?我是机器指纹识别的新手,很想听听我可能没有考虑到的建议或陷阱。
.net对反编译非常弱,并且容易实现的混淆方法也很容易被绕过。您作为使用就地安全措施(意味着它们不执行外部检查)的安全控件编写的任何内容都很容易通过注入/更改执行/或完全删除保护措施而被逆转和绕过。还有一些替代方案,例如在启动程序时根据封闭的数据库验证这些id。或者发出cd之类的键,然后通过数据库进行验证数据库还会根据你列出的id检查服务器端值这些都是简单的方法