URTracker2.11版license验证原理剖析.docVIP

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
URTracker2.11版license验证原理剖析.doc

  URTracker 2.11版 license验证原理剖析教育资源库 注 :原创,。 作 者:草惜草 首 发: roeder/dot Reflector.FileDisassembler Tools/FileDisassembler.aspx 正文: 严重声明:本文只作科研和学习用途。如果由本文产生的法律纠纷,一概与本人无关。 好了,了解了Reflector咱们就可以动手研究URTracker了。 当然首先用Reflector分析bin文件夹下的文件,一共有12个DLL文件,从他们的名称你也可以猜出个八八九九,反正你不怕麻烦你就ublic override License GetLicense(LicenseContext context, Type type, object instance, bool allo GetLicenseDataStream(Type type); protected virtual bool ValidateLicense(ServerLicense license, out string errorMessage); protected virtual bool ValidateLicenseDat 1234下一页 这篇文章来自..,。a(Type type, string licenseData); // Fields private static readonly ServerLicenseCollector LicenseCollector; // Nested Types private sealed class ServerLicenseCollector { // Methods public ServerLicenseCollector(); public void AddLicense(Type objectType, ServerLicense license); public ServerLicense GetLicense(Type objectType); public void RemoveLicense(Type objectType); // Fields private IDictionary _collectedLicenses; } } 看到没,有几个CreateLicense,GetLicense,ValidateLicense ,ValidateLicenseData,GetLicenseDataStream这几个方法。好,打开看看都是什么东东。 protected virtual ServerLicense CreateLicense(Type type, string key) { char[] chArray1 = nee, long userIndex, long clientCount, string mac) : base(type, key) { this._foundMac = false; this._ticks = ticks; this._startTicks = startTicks; this._username = username; this._userIndex = userIndex; this._clientCount = clientCount; this._mac = mac; this._macArray = URTrackerLicense.GetMacArray(); this._foundMac = this._macArray.IndexOf(this._mac) gt; -1; } 哦,看到ticks,startTicks,username,userIndex,clientCount,mac 难道这些就是所需参数到期时间,使用开始时间,用户名,用户名索引,用户数,本机网卡地址 有点意思了。呵呵。 找到了 URTrackerLicense 类,你就会知道我们猜测的没有错了。 public class URTrackerLicense : ServerLicense { // Methods 上一页1234下一页 这篇文章来自..,。public URTrackerLicense(Type type, string key, long startTicks, long ticks, string username, long userIndex, long clientCount, string mac); public static ArrayList GetMacArray(); // Properties public long C

文档评论(0)

ggkkppp + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档