目前很多软件都是通过网络验证来实现的,一种比较流行的方式便是把服务器端(如验证网页)放在服务器上,软件为客户端,当软件注册或启动时通过网络与服务器端进行数据交换,重新实现验证的目的。
个人觉得网络验证将是一种趋势,做得好的网络验证方式将是对软件的一种极大保护,如把软件的关键数据或关键代码放在服务器端,当认证通过后再发回到软件,且在传输过程中都用比较成熟的大型算法加密,从而达到一种防破解的目的。举个简单的例子,软件SMC加传输数据的RSA加密便是一个强度还可以的保护。
这段程序只是一个示例,显示其最简单的实现方式,程序很好的可移植性和很大的发挥空间。
服务端为一个验证网页Conn.asp,getinfo.asp,data.mdb,只需把它放至空间上,其中访问getinfo.asp的格式为:getinfo.asp?username = XXXXXXX & password = XXXXXXX,(XXXXXX表示需要提交确认的用户名和密码)。
软件的实现方式为经典的wininet编程,其流程(类似closehandle之类的就不列出来了)基本上为:
1, hInternet = OpenInternet ()
2, hConnection = OpenConnection (hInternet, szUrl, szUsrName, szUsrPwd) ;
3, hRequest = OpenRequest (hConnection, HttpTool::szPost, szUrl, dwFlags, szReferer) ;
一种软件网络验证方式的实现 + 网络验证转本地验证的一种实现(附VC源码)...
最新推荐文章于 2021-02-11 09:26:13 发布