• Google POI下载工具破解之路


    我是GIS初学者,爱好二次开发,像初恋一样。最近对编译感兴趣,每当成功获取一点信息,就有一种快感,感觉马上就要成功了……其实,还早!

    01.初次反编译

    今天在微创业工作室找到了Google POI下载工具,反编译后错误很多,还有很多问题需要解决,可能反编译源码困难挺大的,还是知难而退,慢慢积累经验,现在解决不了的,以后也可能会解决。

    02.许可代码FrmLisence.cs

    在FrmLisence.cs有获取CPUID的函数,也有加密和解密函数,竟然这样的直白!

    于是,我按照相关函数,也写了这样的许可注册窗口,和它的结果一样。

    但最后重启后,还是只能处理200条数据,空欢喜,生活有时就是这样!

    03.查找200条

    既然是200条在作怪,我就要看看为什么限制了200条,这么少?发现是isKey变量在作怪,isKey是怎么定义的?它是mainForm的构造函数中传进来的,应该要在Program.cs文件中来找答案。

    04.机智的作者

    万万没想到,机智的作者在Program.cs文件中也写了一个Encrypt函数,并且和FrmLisence.cs中的有点不一样。我可以这样理解吗:注册窗口的注册并不能真正注册,我们往下分析。

    05.许可代码Program.cs

    这里的代码写得很显示了,str1是读取ini文件中的许可码(它是由FrmLisence.cs中Encrypt函数生成),str2是由Program.cs文件中Encrypt函数生成,如果两者相等,isKey的属性则为true,如果两者不等,则传入主窗口的函数永远为false,也就是只能下载200条。天啊,这两具函数中的bytes1不一样,其他都一样,怎么可能等?

    06.修改Encrypt函数

    将Encrypt函数修改成与Program.cs文件中的一样后,重新生成许可码,和原来的不一样了,这下应该可以了吧。

    07.许可测试

    最后测试,通过,算是完成破解了。

    08.结果分析

    这个数据质量怎么样,有待研究!

  • 相关阅读:
    编写你的应用程序(二)、原生客户端模块
    编写你的应用程序(一)、应用结构
    checkpoint机制,show engine innodb status
    InnoDB关键特性,innodb_old_blocks_time,锁,内存管理,latch争用
    Innodb引擎,MySQL修改参数
    MySQL数据库体系结构
    IT行业数据库分析
    生成一个千万行的表
    范式小知识
    MySQL触发器
  • 原文地址:https://www.cnblogs.com/liweis/p/4481506.html
Copyright © 2020-2023  润新知