注册码获取装置和注册码获取方法

上传人:ting****789 文档编号:310008145 上传时间:2022-06-14 格式:DOCX 页数:3 大小:17.54KB
返回 下载 相关 举报
注册码获取装置和注册码获取方法_第1页
第1页 / 共3页
亲,该文档总共3页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《注册码获取装置和注册码获取方法》由会员分享,可在线阅读,更多相关《注册码获取装置和注册码获取方法(3页珍藏版)》请在金锄头文库上搜索。

1、注册码获取装置和注册码获取方法专利名称:注册码获取装置和注册码获取方法技术领域:本发明涉及计算机技术领域:,具体而言,涉及注册码获取装置和注册码获取方法。背景技术:目前一般采用注册码来对软件进行保护,如果没有注册码,就不能使用软件的功能,一旦丢失注册码,将给软件的使用带来不便,或者如果注册码输入错误,也将不能使用软件,而注册码一般都不易记忆,因此,容易出现注册码丢失或记录错误造成的使用障碍。因此需要一种用于注册码获取技术,可方便获取软件的注册码。发明内容考虑到上述背景技术:,本发明所要解决的技术问题在于,一种用于注册码获取技术,可方便获取软件的注册码。有鉴于此,根据本发明的一个方面,提供了一种

2、注册码获取装置,包括:解析单元,去除软件的保护代码,解析出所述软件的源代码;获取单元,根据所述软件的源代码获取所述注册码的位置,以获取所述注册码。保护代码即软件的壳,是一段执行于原始程序前的代码,原始程序的代码在加壳过程中可能被压缩、加密等。当加壳即加保护代码的文件执行时,壳这一段代码先于原始程序运行。软件的壳分为加密壳、压缩壳、伪装壳、多层壳等。在此,先去除软件的保护代码,以便于获取软件的源代码,进而获取注册的位置,以便顺利获取注册码,解决了没有注册码而无法使用软件的技术问题。在上述技术方案中,优选的,还可以包括,检测单元,检测所述软件的保护代码的类型,以根据所述保护代码的类型去除所述保护代

3、码。不同类型的保护代码具有不同的去除方案,在此,因此首先需检测出软件的保护代码的类型,才能定位到相应的去除方案。在上述技术方案中,优选的,所述获取单元包括:反馈信息获取子单元,在运行并注册所述软件时,获取注册反馈信息;转换子单元,采用反汇编方式将所述软件的二进制文件转换为所述源代码;地址获取子单元,在所述源代码中获取所述注册反馈信息的汇编地址,根据所述汇编地址确定所述注册码的地址。在上述技术方案中,优选的,在所述源代码中没有获取到所述汇编地址时,所述解析单元解析所述源代码,在解析结果中获取与所述注册反馈信息对应的编号;所述注册码获取装置还包括反编译单元,对所述编号进行反编译处理,得到所述注册反

4、馈信息的汇编地址,所述获取单元根据所述汇编地址获取所述注册码。解析过程实际上类似于汉化过程,在不能识别文字时,需对源代码进行汉化,当然,也可以转换为其他语言,从而获取注册反馈信息的汇编地址。在上述技术方案中,优选的,所述获取单元将所述汇编地址设置为调试中断点,在执行所述软件时,获取生成的注册码。根据本发明的另一方面,还提供了一种注册码获取方法,包括以下步骤:去除软件的保护代码,解析出所述软件的源代码;根据所述软件的源代码获取所述注册码的位置,以获取所述注册码。保护代码即软件的壳,是一段执行于原始程序前的代码,原始程序的代码在加壳过程中可能被压缩、加密等。当加壳即加保护代码的文件执行时,壳这一段

5、代码先于原始程序运行。软件的壳分为加密壳、压缩壳、伪装壳、多层壳等。在此,先去除软件的保护代码,以便于获取软件的源代码,进而获取注册的位置,以便顺利获取注册码,解决了没有注册码而无法使用软件的技术问题。在上述技术方案中,优选的,在去除所述软件的保护代码之前还包括:检测所述软件的保护代码的类型,以根据所述保护代码的类型去除所述保护代码。不同类型的保护代码具有不同的去除方案,在此,因此首先需检测出软件的保护代码的类型,才能定位到相应的去除方案。在上述技术方案中,优选的,解析出所述软件的原始代码的步骤包括:在运行并注册所述软件时,获取注册反馈信息;采用反汇编方式将所述软件的二进制文件转换为所述源代码

6、;在所述源代码中获取所述注册反馈信息的汇编地址,根据所述汇编地址确定所述注册码的地址。解析过程实际上类似于汉化过程,在不能识别文字时,需对源代码进行汉化,当然,也可以转换为其他语言,从而获取注册反馈信息的汇编地址。在上述技术方案中,优选的,在所述源代码中没有获取到所述汇编地址时,解析所述源代码,在解析结果中获取与所述注册反馈信息对应的编号;对所述编号进行反编译处理,得到所述注册反馈信息的汇编地址;根据所述汇编地址获取所述注册码。在上述技术方案中,优选的,将所述汇编地址设置为调试中断点,在执行所述软件时,获取生成的注册码。根据本发明的技术方案,在丢失软件的注册码或忘记注册码时,可准确快速地获取软

7、件的注册码,方便用户正常使用软件的功能。图1示出了根据本发明的实施例的注册码获取装置的框图;图2示出了根据本发明的实施例的注册码获取方法的流程图;图3示出了根据本发明的实施例的注册码获取方法的流程图。具体实施例方式为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明并不限于下面公开的具体实施例的限制。图1示出了根据本发明的实施例的注册码获取装置

8、的框图。如图1所示,根据本发明的实施例的注册码获取装置100,包括:解析单元102,去除软件的保护代码,解析出所述软件的源代码;获取单元104,根据所述软件的源代码获取所述注册码的位置,以获取所述注册码。保护代码即软件的壳,是一段执行于原始程序前的代码,原始程序的代码在加壳过程中可能被压缩、加密等。当加壳即加保护代码的文件执行时,壳这一段代码先于原始程序运行。软件的壳分为加密壳、压缩壳、伪装壳、多层壳等。在此,先去除软件的保护代码,以便于获取软件的源代码,进而获取注册的位置,以便顺利获取注册码,解决了没有注册码而无法使用软件的技术问题。在上述技术方案中,优选的,还可以包括:检测单元106,检测

9、所述软件的保护代码的类型,以根据所述保护代码的类型去除所述保护代码。不同类型的保护代码具有不同的去除方案,在此,因此首先需检测出软件的保护代码的类型,才能定位到相应的去除方案。在上述技术方案中,优选的,所述获取单元104包括:反馈信息获取子单元1042,在运行并注册所述软件时,获取注册反馈信息;转换子单元1044,采用反汇编方式将所述软件的二进制文件转换为所述源代码;地址获取子单元1046,在所述源代码中获取所述注册反馈信息的汇编地址,根据所述汇编地址确定所述注册码的地址。在上述技术方案中,优选的,在所述源代码中没有获取到所述汇编地址时,所述解析单元102解析所述源代码,在解析结果中获取与所述

10、注册反馈信息对应的编号;所述注册码获取装置还包括反编译单元108,对所述编号进行反编译处理,得到所述注册反馈信息的汇编地址,所述获取单元根据所述汇编地址获取所述注册码。解析过程实际上类似于汉化过程,在不能识别文字时,需对源代码进行汉化,当然,也可以转换为其他语言,从而获取注册反馈信息的汇编地址。在上述技术方案中,优选的,所述获取单元104将所述汇编地址设置为调试中断点,在执行所述软件时,获取生成的注册码。图2示出了根据本发明的实施例的注册码获取方法的流程图。如图2所示,根据本发明的实施例的注册码获取方法,包括以下步骤:步骤202,去除软件的保护代码,解析出所述软件的源代码;步骤204,根据所述

11、软件的源代码获取所述注册码的位置,以获取所述注册码。保护代码即软件的壳,是一段执行于原始程序前的代码,原始程序的代码在加壳过程中可能被压缩、加密等。当加壳即加保护代码的文件执行时,壳这一段代码先于原始程序运行。软件的壳分为加密壳、压缩壳、伪装壳、多层壳等。在此,先去除软件的保护代码,以便于获取软件的源代码,进而获取注册的位置,以便顺利获取注册码,解决了没有注册码而无法使用软件的技术问题。在上述技术方案中,优选的,在去除所述软件的保护代码之前还包括:检测所述软件的保护代码的类型,以根据所述保护代码的类型去除所述保护代码。不同类型的保护代码具有不同的去除方案,在此,因此首先需检测出软件的保护代码的

12、类型,才能定位到相应的去除方案。在上述技术方案中,优选的,解析出所述软件的原始代码的步骤包括:在运行并注册所述软件时,获取注册反馈信息;采用反汇编方式将所述软件的二进制文件转换为所述源代码;在所述源代码中获取所述注册反馈信息的汇编地址,根据所述汇编地址确定所述注册码的地址。解析过程实际上类似于汉化过程,在不能识别文字时,需对源代码进行汉化,当然,也可以转换为其他语言,从而获取注册反馈信息的汇编地址。在上述技术方案中,优选的,在所述源代码中没有获取到所述汇编地址时,解析所述源代码,在解析结果中获取与所述注册反馈信息对应的编号;对所述编号进行反编译处理,得到所述注册反馈信息的汇编地址;根据所述汇编

13、地址获取所述注册码。在上述技术方案中,优选的,将所述汇编地址设置为调试中断点,在执行所述软件时,获取生成的注册码。下面以翻译软件为例来详细说明本发明的技术方案。根据本法的注册码获取方法主要是通过反汇编程序而分析出软件的源代码,包括分析软件,分析软件的源代码,分析源代码的互操作性,根据编译器产生的代码来验证编译器的性能和正确性(软件注册)。获取注册码就是在执行程序时,通过调试设立中断点,把系统生成的正确注册码截下来,从而得到正确的注册码。基本流程如下:检测壳一脱壳一尝试注册一反汇编一解析汉化一确定注册码位置调试。步骤302,检测壳(壳即软件的保护代码):可使用检测软件,例如PEIDv0.92来检

14、测壳,通过该软件获知了翻译软件这款软件的壳的类型。用检测软件对翻译软件进行扫描,找到壳的类型。步骤304,脱壳:去除其中无关的干扰信息和保护限制,把软件的壳脱去,解除伪装,还原软件本来的面目。这个过程就叫做脱壳,可使用UPXSHELLv3.09UPX外壳程序成功进行脱壳。步骤306,尝试注册:运行翻译软件,尝试注册,获取注册相关信息。通过尝试注册,发现一个关键的字符串“序列号输入错误”的提示信息。步骤308,反汇编:将翻译软件可执行的二进制文件转为汇编代码,进而可以研究该程序。可使用W32Dasm无极版,反汇编翻译软件的程序文件,然后看看PE(PortableExecute)信息一字符串参考,

15、在搜索栏中输入“序列号输入错误”。步骤310,解析汉化:通过eXeScope这个软件来查看未能在w32dasm中正确显示的字符串信息。1.没搜索到与“序列号输入错误”对应的汇编地址,原因不识别汉字,所以使用eXeScopev6.50软件更改字体,更改菜单,更改对话框的排列,重写可执行文件的资源,包括(EXE,DLL,OCX)等。该软件是方便强大的汉化工具,可以直接修改用VC+及DELPHI编制的程序的资源,包括菜单、对话框、字符串表等新版可以直接查看加壳文件的资源。2.在eXeScopev6.50中打开翻译软件,选择资源一字符串找到关键字一序列号输入错误对应的编号。3.例如找到如下字串符:12

16、2,序列号输入错误;123,恭喜您成为正式用户中的一员!;124,注册成功;125,失败。步骤312,确定注册代码的位置:再次返回到反汇编步骤,即回到软件w32dasm,查找编号122得到PossibleReferencetoStringResourceID=00122:?e。在查找中找PossibleReferencetoStringResourceID=00122对应的汇编语言。最终得到序列号输入错误对应的汇编地址406F01,将该地址作为调试断点的地址。步骤314,调试:采用的测试软件是ollydbg测试程序。打开翻译软件;点击右键选择“前往”并输入406F01地址;设置断点;运行该测试程序;注册观察提示信息;F8单步跳过,观察提示信息,获取到注册码。以上结合附图详细说明了根据本发明的技术方案,在丢失软件的注册码或忘记注册码时,可准确快速地获取软件的注册码,方便用户正常使用软件的功能。以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号