一种改进的PPT2003文件破译方法和装置与流程

文档序号:15594466发布日期:2018-10-02 19:20阅读:155来源:国知局

本发明涉及信息安全技术领域,具体涉及一种改进的ppt2003文件破译方法和装置。



背景技术:

ppt2003文件为复合文件,复合文档(compounddocument)是一种不仅包含文本而且包括图形、电子表格数据、声音、视频图象以及其它信息的文档。可以把复合文档想象成一个所有者,它装着文本、图形以及多媒体信息如声音和图象。目前建立复合文档的趋势是使用面向对象技术,在这里,非标准信息如图像和声音可以作为独立的、自包含式对象包含在文档中。microsoftwindows就是使用这种技术,叫做“ole2storagefileformat”或“microsoftofficecompatiblestoragefileformat”。

ppt2003文件保护现在主要是基于口令进行保护,根据口令和盐值(salt)生成加密密钥,然后使用此密钥利用rc4算法进行文件内容加密,同时加密所使用的盐值、口令验证对应的新鲜数及其哈希值加密后,保存在文件中。ppt2003文件中是按照对象加密的,每个对象使用的加密密钥由初始密钥加上对象对应的块号,经过哈希变换得到。初始密钥即由口令和salt计算得到的哈希值。

现在的破译方法一般是基于暴力和字典攻击,通过从文件中提取出salt值、加密后的新鲜数和哈希值。根据盐值和口令计算初始加密密钥,根据初始密钥生成解密密钥,使用解密密钥对加密后的新鲜数和哈希值解密,再计算新鲜数的哈希值并和解密后的哈希值进行比较,如果相等,则认为破译成功。但是ppt2003文件加密时,加密密钥由16字节组成,前面5个字节与初始密钥的前5个字节一致,后11字节默认全部为0,即只有前面5个字节有效,这样按照上述方法进行攻击就存在问题,如果两个口令生成的初始密钥的前5个字节一致,则两个口令都可以验证通过,但是ppt2003文件中每个对象使用块号加初始密钥进一步生成自己加密所用的密钥,因此如果待验证口令生成的初始密钥与正确口令生成的初始密钥不相等,即使能够通过上述的验证,也不能对文件中的各个对象进行解密,即不能正确打开加密文件。

因此上述方法存在漏洞,破译出来的口令有可能是错误。



技术实现要素:

本发明的目的是为了解决现有技术中的上述缺陷,提供一种改进的ppt2003文件破译方法,在一次口令验证的基础上,增加二次口令验证流程,确保破解口令的正确性。

另外本发明提供一种改进的ppt2003破解装置,该装置根据通过从文件中提常规验证和二次验证所需的数据,然后进行两次口令验证,保证破解口令的正确性。

根据公开的实施例,本发明的第一方面公开了一种改进的ppt2003文件破译方法,所述的破译方法包括:

s1、破译参数解析步骤,从待破解的加密文件中,提取出破解需要的参数和密文,其中,破解需要的参数包括salt值、加密的新鲜数和其对应的哈希值、加密后的documentatom头文件数据;

s2、初始加密密钥计算步骤,根据输入口令password和salt值,计算初始加密密钥key;

s3、对称加密算法密钥计算步骤,根据初始加密密钥key,选择documentatom头文件数据对应的块号,根据哈希算法生成documentatom头文件数据解密需要的对称加密算法密钥key1;

s4、解密步骤,利用对称加密算法密钥key1对加密的documentatom头文件数据进行解密;

s5、第一次口令验证步骤,将加密的documentatom头文件数据解密后,和已知的固定数据进行比较,确定待验证口令是不是正确的口令,如果第一次口令验证通过,则转到步骤s6进行第二次口令验证,否则,放弃下面的二次口令验证操作,尝试下一个口令;

s6、第二次口令验证步骤,利用初始加密密钥key和全部私钥参数对应的块号生成新鲜数及其哈希值解密需要的密钥key2,利用密钥key2对新鲜数及其哈希值解密,然后对解密后的新鲜数进行哈希计算,并和解密后的哈希值比较,如果相等,则认为二次口令验证通过,破解成功,上报正确的口令。

进一步地,所述的破译方法在步骤s6之后还包括:

s7、如果步骤s6中的二次口令短语验证没有通过,则尝试下一个口令短语,继续进行步骤s2-s6的处理,直到获得正确的口令短语。

根据公开的实施例,本发明的第二方面公开了一种改进的ppt2003文件破译装置,所述的破译装置包括依次连接的破译参数解析单元、初始加密密钥计算单元、对称加密算法密钥计算单元、解密单元、第一次口令验证单元和第二次口令验证单元,其中,

所述的破译参数解析单元,用于从待破解的加密文件中,提取出破解需要的参数和密文,其中,破解需要的参数包括salt值、加密的新鲜数和其对应的哈希值、加密后的documentatom头文件数据;

所述的初始加密密钥计算单元,用于根据输入口令password和salt值,计算初始加密密钥key;

所述的对称加密算法密钥计算单元,用于根据初始加密密钥key,选择documentatom头文件数据对应的块号,根据哈希算法生成documentatom头文件数据解密需要的对称加密算法密钥key1;

所述的解密单元,利用对称加密算法密钥key1对加密的documentatom头文件数据进行解密;

所述的第一次口令验证单元,用于将加密的documentatom头文件数据解密后,和已知的固定数据进行比较,确定待验证口令是不是正确的口令,如果第一次口令验证通过,则转到所述的第二次口令验证单元进行第二次口令验证,否则,放弃下面的二次口令验证操作,尝试下一个口令;

所述的第二次口令验证单元,利用初始加密密钥key和全部私钥参数对应的块号生成新鲜数及其哈希值解密需要的密钥key2,利用密钥key2对新鲜数及其哈希值解密,然后对解密后的新鲜数进行哈希计算,并和解密后的哈希值比较,如果相等,则认为二次口令验证通过,破解成功,上报正确的口令。

进一步地,所述的第二次口令验证单元,在二次口令短语验证没有通过,则尝试下一个口令短语。

本发明相对于现有技术具有如下的优点及效果:

1、本发明在原来验证的基础上,增加一次口令验证流程,保证了破解到的口令的正确性。

2、本发明中,只有通过了新增加的口令验证流程,才会进行现有方法的验证,可以降低计算量,加快破解速度。

附图说明

图1是本发明公开的一种改进的ppt2003文件破译方法的流程步骤图;

图2是本发明公开的一种改进的ppt2003文件破译装置的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

实施例一

如附图1所示,本实施例公开了一种改进的ppt2003文件破译方法的流程,该破译方法包括:

s1、破译参数解析步骤,从待破解的加密文件中,提取出破解需要的参数和密文,其中,破解需要的参数包括salt值、加密的新鲜数和其对应的哈希值、加密后的documentatom头文件数据;

s2、初始加密密钥计算步骤,根据输入口令password和salt值,计算初始加密密钥key;

s3、对称加密算法密钥计算步骤,根据初始加密密钥key,选择documentatom头文件数据对应的块号,根据哈希算法生成documentatom头文件数据解密需要的对称加密算法密钥key1;

s4、解密步骤,利用对称加密算法密钥key1对加密的documentatom头文件数据进行解密;

s5、第一次口令验证步骤,将加密的documentatom头文件数据解密后,和已知的固定数据进行比较,确定待验证口令是不是正确的口令,如果第一次口令验证通过,则转到步骤s6进行第二次口令验证,否则,口令短语第一次验证失败,放弃下面的第二次口令验证操作,尝试下一个口令;

s6、第一次口令验证步骤,利用初始加密密钥key和全部私钥参数对应的块号生成新鲜数及其哈希值解密需要的密钥key2,利用密钥key2对新鲜数及其哈希值解密,然后对解密后的新鲜数进行哈希计算,并和解密后的哈希值比较,如果相等,则认为二次口令验证通过,破解成功,上报正确的口令。

s7、如果步骤s6中的二次口令短语验证没有通过,则尝试下一个口令短语,继续进行步骤s2-s6的处理,直到获得正确的口令短语。

实施例二

本实施例使用documentatom的文件头作为固定数据,其对应的块号为2。假设本发明新增加的口令验证为第一次口令验证,原来的口令验证为第二次口令验证。具体破译方法如下:

r1、从加密的ppt2003文件中获取salt值、加密的新鲜数和其对应的哈希值、还有加密后的documentatom头文件数据。

r2、根据输入口令password和salt值,然后使用哈希算法生成解密所需要的密钥key。

r3、利用密钥key和documentatom对应的块号2,生成documentatom头文件解密需要的密钥key1。

r4、利用密钥key1对加密的documentatom头文件数据进行解密,然后进行比较,如果不相等,则认为第一次口令验证失败,接着验证下一个口令。

r5、如果第一次口令验证通过,则转到步骤r6,开始进行第二次口令验证。

r6、利用密钥key和块号0生成新鲜数及其哈希值解密需要的密钥key2。

r7、利用密钥key2对新鲜数及其哈希值解密,然后对解密后的新鲜数进行哈希计算,并和解密后的哈希值比较,如果相等,则认为二次口令验证通过,破解成功,上报正确的口令。

r8、如果步骤r7中的二次口令短语验证没有通过,则尝试下一个口令短语,继续进行步骤r2-r7的处理,直到获得正确的口令短语。

实施例三

如附图2所示,一种改进的ppt2003文件破译装置,所述的破译装置包括依次连接的破译参数解析单元、初始加密密钥计算单元、对称加密算法密钥计算单元、解密单元、第一次口令验证单元和第二次口令验证单元,其中,

所述的破译参数解析单元,用于从待破解的加密文件中,提取出破解需要的参数和密文,其中,破解需要的参数包括salt值、加密的新鲜数和其对应的哈希值、加密后的documentatom头文件数据;

所述的初始加密密钥计算单元,用于根据输入口令password和salt值,计算初始加密密钥key;

所述的对称加密算法密钥计算单元,用于根据初始加密密钥key,选择documentatom头文件数据对应的块号,根据哈希算法生成documentatom头文件数据解密需要的对称加密算法密钥key1;

所述的解密单元,利用对称加密算法密钥key1对加密的documentatom头文件数据进行解密;

所述的第一次口令验证单元,用于将加密的documentatom头文件数据解密后,和已知的固定数据进行比较,确定待验证口令是不是正确的口令,如果第一次口令验证通过,则转到所述的第二次口令验证单元进行第二次口令验证,否则,放弃下面的二次口令验证操作,尝试下一个口令;

所述的第二次口令验证单元,利用初始加密密钥key和全部私钥参数对应的块号生成新鲜数及其哈希值解密需要的密钥key2,利用密钥key2对新鲜数及其哈希值解密,然后对解密后的新鲜数进行哈希计算,并和解密后的哈希值比较,如果相等,则认为二次口令验证通过,破解成功,上报正确的口令。

在具体的实施方式中,所述的第二次口令验证单元,在二次口令短语验证没有通过,则尝试下一个口令短语。

上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1