CN106712928A - 基于大数据彩虹表的解密方法和装置 - Google Patents

基于大数据彩虹表的解密方法和装置 Download PDF

Info

Publication number
CN106712928A
CN106712928A CN201611147432.0A CN201611147432A CN106712928A CN 106712928 A CN106712928 A CN 106712928A CN 201611147432 A CN201611147432 A CN 201611147432A CN 106712928 A CN106712928 A CN 106712928A
Authority
CN
China
Prior art keywords
rainbow table
rainbow
gpu
task
decryption
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201611147432.0A
Other languages
English (en)
Inventor
刘清蝉
李翔
黄衍玺
张建伟
杨明
赵永辉
杨昊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Electric Power Research Institute of Yunnan Power System Ltd
Original Assignee
Electric Power Research Institute of Yunnan Power System Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Electric Power Research Institute of Yunnan Power System Ltd filed Critical Electric Power Research Institute of Yunnan Power System Ltd
Priority to CN201611147432.0A priority Critical patent/CN106712928A/zh
Publication of CN106712928A publication Critical patent/CN106712928A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3215Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a plurality of channels
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3242Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Engineering (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于大数据彩虹表的解密方法和装置,该解密方法包括:将彩虹表任务分配给n个GPU计算节点,其中,n为大于1的整数;每个GPU计算节点生成一个彩虹表;将生成的彩虹表中的哈希链的链尾节点进行索引分组,对分组内的链尾节点进行排序;在经索引分组和排序的彩虹表内,对于待解密的密文先执行索引查找然后执行二分查找,以获得相应的明文完成解密。对于1‑12位的数字字母组合的密码,利用得到的加密结果密文,能够通过利用多个GPU并行生成彩虹表中的哈希链,来大大提高彩虹表生成速度,并且对生成的彩虹表进行索引排序,大大缩短解密阶段的彩虹表查找时间,大大缩短解密时间。

Description

基于大数据彩虹表的解密方法和装置
技术领域
本发明涉及密码逆向恢复技术领域,尤其涉及一种基于大数据彩虹表的解密方法和装置。
背景技术
随着互联网的迅猛发展,网络信息安全要求越来越高。为了保证安全,通常采用密码加密和解密技术。互联网中各种协议的加密技术和手段层出不穷,出现了诸如MD5、SHA1、LM、NTLMHASH和MD4等加密算法。对于各种加密算法实施之后获得的密文,采用解密技术来破解密文得到明文。
目前,对于简单的密码和密码***,密码破解可以采用暴力破解的方式。而对于较复杂的密码和密码***,例如对于大于8位的密码,暴力破解的计算量非常大。通常采用彩虹表进行破解。彩虹表是一个庞大的针对各种可能的数字、字母组合预先计算好的哈希(hash)值的集合,彩虹表技术就是建立一个源数据与加密数据之间对应的哈希表,这样在获得加密数据后通过比较、查询或者一定的运算,可以快速定位源数据,从而通过彩虹表的构造和查找,能够破解密码获得明文。
然而,彩虹表作为一种压缩的哈希表,对于较长的密码,彩虹表往往占用空间巨大,破解时间很长,在某些情况下,超出单机存储范围,或者即使在集群上能够满足存储但是生成时间太长,无法满足实际需要。另外,由于彩虹表文件很大,在查找破解的过程中,耗时很长效率很低。即使存在某些商用的彩虹表,往往只能破解9位以下的密码,而且破解的准确率只有80%左右,破解时间长,难以满足实际需要。
发明内容
为克服相关技术中存在的问题,本发明提供一种基于大数据彩虹表的解密方法和装置,对于1-12位的数字字母组合的密码,利用得到的加密结果密文,能够通过利用多个GPU并行生成彩虹表中的哈希链,来大大提高彩虹表生成速度,并且对生成的彩虹表进行索引排序,大大缩短解密阶段的彩虹表查找时间,从而大大缩短解密时间。
根据本发明实施例的第一方面,提供一种基于大数据彩虹表的解密方法,包括:将彩虹表任务分配给n个GPU计算节点,其中n为大于1的整数;每个GPU计算节点根据分配的彩虹表任务生成一个彩虹表;将生成的彩虹表中的哈希链的链尾节点进行索引分组,对分组内的链尾节点进行排序;在经索引分组和排序的彩虹表内,对待解密的密文先执行索引查找然后执行二分查找,以获得相应的明文完成解密。
根据本发明的一个实施例,将彩虹表任务分配给n个GPU计算节点包括:根据明文的取值范围、彩虹表的查找成功率来设置彩虹表任务的大小,彩虹表任务包括多个哈希链任务,每个哈希链任务要生成一个哈希链;将所述彩虹表任务按照哈希链任务的数量分配给n个GPU计算节点。
根据本发明的一个实施例,在哈希链任务的数量为m的情况下,m/n=x+y,其中,x为m除以n得到的商,y为余数,m为大于1的整数、x为大于0的整数,y为整数,将所述彩虹表任务分配给n个GPU计算节点包括:先均为n个GPU计算节点中的每个GPU计算节点分配x个哈希链任务;然后将剩余的y个哈希链任务顺序地再分配给n个GPU计算节点中的前y个GPU计算节点,为前y个GPU计算节点中的每个GPU计算节点分配一个哈希链任务。
根据本发明的一个实施例,将生成的彩虹表中的哈希链的链尾节点进行索引分组,对分组内的链尾节点进行排序包括:根据哈希链的链尾节点的二进制数值的大小范围来对彩虹表进行索引分组;对每个分组内的哈希链的链尾节点按照二进制数值的大小顺序进行排序。
根据本发明的一个实施例,待解密的密文通过LM、MD4、NTLSHASH、MD5或SHA1算法加密,与待解密的密文相对应的密码为1-12位。
根据本发明实施例的第二方面,提供一种基于大数据彩虹表的解密装置,包括:n个GPU计算节点,被分配彩虹表任务,每个GPU计算节点生成一个彩虹表,n为大于1的整数;彩虹表索引排序单元,用于对n个GPU计算节点生成的彩虹表中的哈希链的链尾节点进行索引分组,对分组内的链尾节点进行排序;查找单元,用于在经索引分组和排序的彩虹表内,对待解密的密文先执行索引查找然后执行二分查找,以获得相应的明文完成解密。
根据本发明的一个实施例,基于大数据彩虹表的解密装置还包括文件***,用于向n个GPU计算节点分配彩虹表任务,存储n个GPU计算节点生成的彩虹表。
根据本发明的一个实施例,文件***包括:彩虹表生成日志记录单元,用于为各个GPU计算节点设置彩虹表生成数据参数,写入彩虹表生成标记,彩虹表生成标记用于指示彩虹表生成是否成功;日志检查单元,用于检查彩虹表生成标记,如果彩虹表生成标记指示彩虹表生成不成功,调用相应的GPU计算节点继续生成彩虹表。
根据本发明的一个实施例,文件***还包括:GPU配置单元,用于根据明文的取值范围、彩虹表的查找成功率为各个GPU计算节点设置计算参数、数据传输和生成算法。
根据本发明的一个实施例,基于大数据彩虹表的解密装置还包括存储阵列,用于储存经索引分组和排序的彩虹表。
由上可见,本发明的实施例提供一种基于大数据彩虹表的解密方法,包括:将彩虹表任务分配给n个GPU计算节点,其中,所述n为大于1的整数;每个GPU计算节点生成一个彩虹表;将生成的彩虹表中的哈希链的链尾节点进行索引分组,对分组内的链尾节点进行排序;在经索引分组和排序的彩虹表内,对于待解密的密文先执行索引查找然后执行二分查找,以获得相应的明文完成解密。本发明的实施例的基于大数据彩虹表的解密方法能够通过利用多个GPU计算节点并行生成彩虹表中的哈希链,来大大提高彩虹表生成速度,并且通过对生成的彩虹表进行索引排序,来大大缩短解密阶段的彩虹表查找时间,从而大大缩短解密时间。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明的一个实施例提供的基于大数据彩虹表的解密方法的流程示意图;
图2是根据本发明的一个实施例提供的基于大数据彩虹表的解密装置的结构示意图;
图3是根据本发明的一个实施例提供的文件***的结构示意框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
图1是根据本发明的一个实施例提供的基于大数据彩虹表的解密方法的流程示意图。如图1所示,根据本发明的一个实施例的基于大数据彩虹表的解密方法包括:步骤S1,将彩虹表任务分配给n个GPU(Graphic Processing Unit,图像处理单元)计算节点,其中,n为大于1的整数;步骤S2,每个GPU计算节点根据分配的彩虹表任务生成一个彩虹表;步骤S3,将生成的彩虹表中的哈希链的链尾节点进行索引分组,对分组内的链尾节点进行排序;步骤S4,在经索引分组和排序的彩虹表内,对待解密的密文先执行索引查找然后执行二分查找,以获得相应的明文完成解密。
具体地,上述步骤S1可以包括:根据明文的取值范围、彩虹表的查找成功率来设置彩虹表任务的大小,彩虹表任务包括多个哈希链任务,每个哈希链任务要生成一个哈希链;将彩虹表任务按照哈希链任务的数量分配给n个GPU计算节点。
举例来说,假设哈希链任务的数量为m,m/n=x+y,其中,x为m除以n得到的商,y为余数,m为大于1的整数、x为大于0的整数,y为整数。根据本发明的一个实施例,上述步骤S1可以包括:先均为n个GPU计算节点中的每个GPU计算节点分配x个哈希链任务;然后将剩余的y个哈希链任务顺序地再分配给n个GPU计算节点中的前y个GPU计算节点,为前y个GPU计算节点中的每个GPU计算节点分配一个哈希链任务。
具体地,上述步骤S3可以包括:根据哈希链的链尾节点的二进制数值的大小范围来对彩虹表进行索引分组;对每个分组内的哈希链的链尾节点按照二进制数值的大小顺序进行排序。
根据本发明的实施例,待解密的密文可以通过LM、MD4、NTLSHASH、MD5或SHA1算法加密,与待解密的密文相对应的密码可以为1-12位。
图2是根据本发明的一个实施例提供的基于大数据彩虹表的解密装置。如图2所示,该解密装置为分布式体系结构,包括:n个GPU计算节点,被分配彩虹表任务,每个GPU计算节点根据分配的彩虹表任务生成一个彩虹表,n为大于1的整数;彩虹表索引排序单元10,用于对n个GPU计算节点生成的彩虹表中的哈希链的链尾节点进行索引分组,对分组内的链尾节点进行排序;查找单元20,用于在经索引分组和排序的彩虹表内,对待解密的密文先执行索引查找然后执行二分查找,以获得相应的明文完成解密。
根据本发明的一个实施例,如图2所示,基于大数据彩虹表的解密装置还包括文件***30,用于向n个GPU计算节点分配彩虹表任务,存储n个GPU计算节点生成的彩虹表。根据本发明的一个实施例,文件***30可以是Hadoop分布式文件***来储存生成的彩虹表。
根据本发明的一个实施例,如图3所示,文件***30可以包括:彩虹表生成日志记录单元301,用于为各个GPU计算节点设置彩虹表生成数据参数,写入彩虹表生成标记,彩虹表生成标记用于指示彩虹表生成是否成功;日志检查单元302,用于检查彩虹表生成标记,如果生成标记指示彩虹表生成不成功,调用相应的GPU计算节点继续生成彩虹表。
根据本发明的一个实施例,如图3所示,文件***30还可以包括:GPU配置单元303,用于根据明文的取值范围、彩虹表的查找成功率为各个GPU计算节点设置计算参数、数据传输和生成算法。
根据本发明的一个实施例,基于大数据彩虹表的解密装置还可以包括存储阵列40,用于储存经索引分组和排序的彩虹表。
根据本发明的一个实施例,文件***30、彩虹表索引排序单元10和查找单元20可以集成在同一***中。例如,文件***30、彩虹表索引排序单元10和查找单元20可以集成在同一主机或服务器中。
鉴于彩虹表的大小将是几十TB级的,本***采用磁盘阵列作为存储设备来储存经索引分组和排序的彩虹表。
具体地,磁盘阵列可以由很多价格较便宜的磁盘,组合成一个容量巨大的磁盘组,利用个别磁盘提供数据所产生加成效果提升整个磁盘***效能。利用这项技术,将数据切割成许多区段,分别存放在各个硬盘上。磁盘阵列还能利用同位检查(Parity Check)的观念,在阵列中任意一个硬盘故障时,仍可读出数据,在数据重构时,将数据经计算后重新置入新硬盘中。磁盘阵列目前支持几十T以上的存储容量,能够满足***的需求。
另外,彩虹表的计算预算量大,单机的平台下生成时间太长,预期需要几十年,本发明的解密装置是基于分布式GPU的分布式体系结构,利用多个GPU进行分布式计算,多个GPU并行地生成彩虹表,可以克服储容量和生成速度的限制。
GPU英文全称Graphic Processing Unit(图像处理单元),GPU从诞生之日起就以超越摩尔定律的速度发展,运算能力不断提升。GPU逐渐从由若干专用的固定功能单元(Fixed Function Unit)组成的专用并行处理器向以通用计算资源为主,固定功能单元为辅的架构转变。
一般而言适合GPU运算的适合运算密集、高度并行、控制简单以及分多个阶段执行,符合这些条件或者是可以改写成类似特征的应用程序,就能够在GPU上获取较高的性能。GPU通用计算通常采用CPU+GPU异构模式,由CPU负责执行复杂逻辑处理和事务处理等不适合数据并行的计算,由GPU负责计算密集型的大规模数据并行计算。这种利用GPU强大处理能力和高带宽弥补CPU性能不足的计算方式以发挥计算机潜在性能,在成本和性价比方面有显著地优势。
在本发明的实施例中,根据明文的取值范围以及彩虹表的查找成功率来设置彩虹表任务的大小。对算法和字符集范围可进行配置。彩虹表任务可以包括多个哈希链任务,每个哈希链任务要生成一个哈希链。由于彩虹表的每个哈希链任务的计算和生成是独立的,各个哈希链任务的执行上具有天然的并行性,因而容易为多个GPU分配并行任务。
下面结合图1至图3简单描述根据本发明的实施例的基于大数据彩虹表的解密方法和解密装置如何解密。
(1)基于GPU的分布式集群的彩虹表生成过程
首先,文件***30将彩虹表任务按照哈希链任务的数量分配给n个GPU计算节点,并且在GPU配置单元中根据明文的取值范围、彩虹表的查找成功率为各个GPU计算节点设置计算参数、数据传输和生成算法,在彩虹表生成日志记录单元301中为每个GPU计算节点设置彩虹表生成数据参数和设置一个彩虹表生成标记logflags,彩虹表生成标记logflags的初始值为0。
举例来说,假设哈希链任务的数量为m,m/n=x+y,其中,x为m除以n得到的商,y为余数,m为大于1的整数、x为大于0的整数,y为整数。如此,子彩虹表计算的调度方法如下:
1)先均为n个GPU计算节点中的每个GPU计算节点分配x个哈希链任务;然后将剩余的y个哈希链任务顺序地再分配给n个GPU计算节点中的前y个GPU计算节点,为前y个GPU计算节点中的每个GPU计算节点分配一个哈希链任务;
2)每个GPU计算节点并行地按照各自分配的哈希链任务生成一个彩虹表;
3)如果GPU计算节点生成彩虹表成功,彩虹表生成日志记录单元301写入相应的彩虹表生成标记logflags为1;
4)日志检查单元302检查彩虹表生成标记,如果彩虹表生成标记logflags为0,则表示彩虹表生成不成功,则文件***30调用相应的GPU计算节点继续生成彩虹表,如果彩虹表生成标记logflags为1,则表示彩虹表生成成功,文件***30储存成功生成的彩虹表。
(2)彩虹表的查找
1)将生成的彩虹表中的哈希链的链尾节点进行索引分组,对分组内的链尾节点进行排序;
2)在经索引分组和排序的彩虹表内,对待解密的密文先执行索引查找然后执行二分查找,以获得相应的明文完成解密。
在彩虹表查找过程中计算出来的64位长整数值,为了能够在彩虹表中快速找到对应的链尾,一般是采用外部排序方法对链尾全排序,然后在彩虹表查找过程中使用二分查找找到对应链尾。但是彩虹表数据规模巨大,全排序的效率较差,I/O瓶颈很突出。本发明采用先索引后排序的方法,将彩虹表索引为多个组,对每个组内的彩虹链的链尾节点进行排序。破解时,先在索引的组中查找,然后将相应的文件加载到内存中,利用二分查找,提高了查找的速度,加快了密码破解的速度。
综上所述,本发明的实施例的基于大数据彩虹表的解密方法能够通过利用多个GPU计算节点并行生成彩虹表中的哈希链,来大大提高彩虹表生成速度,并且通过对生成的彩虹表进行索引排序,来大大缩短解密阶段的彩虹表查找时间,从而大大缩短解密时间。利用本发明的基于大数据彩虹表的解密方法可以3天内破解12位以下的密码,并保证99%的成功率。本发明的基于大数据彩虹表的解密方法能够对LM、MD4、NTLSHASH、MD5或SHA1算法进行解密,并且能非常容易地进行扩展。本发明利用大数据Hadoop技术存储,利用优化改进的基于GPU的彩虹表的生成算法,将彩虹表的生成速度提高了10倍。利用在分布式集群上建立良好的索引结构、加快彩虹表的查找、完成密码破解和抗攻击性验证。本发明的基于大数据彩虹表的解密方法和解密装置可以应用在电网计量自动化终端上,大大提高电网智能电能表通讯可靠性。利用本发明的解密方法和解密装置,密码破解迅速,最长时间不超过3天,能够满足电网计量自动化终端、电网智能电能表通讯可靠性验证的需要。
本领域技术人员在考虑说明书及实践这里发明的公开后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。

Claims (10)

1.一种基于大数据彩虹表的解密方法,其特征在于,包括:
将彩虹表任务分配给n个GPU计算节点,其中,所述n为大于1的整数;
每个GPU计算节点根据分配的彩虹表任务生成一个彩虹表;
将生成的彩虹表中的哈希链的链尾节点进行索引分组,对分组内的链尾节点进行排序;
在经索引分组和排序的彩虹表内,对待解密的密文先执行索引查找然后执行二分查找,以获得相应的明文完成解密。
2.根据权利要求1所述的基于大数据彩虹表的解密方法,其特征在于,将彩虹表任务分配给n个GPU计算节点包括:
根据明文的取值范围、彩虹表的查找成功率来设置所述彩虹表任务的大小,所述彩虹表任务包括多个哈希链任务,每个哈希链任务要生成一个哈希链;
将所述彩虹表任务按照哈希链任务的数量分配给所述n个GPU计算节点。
3.根据权利要求2所述的基于大数据彩虹表的解密方法,其特征在于,在哈希链任务的数量为m的情况下,m/n=x+y,其中,x为m除以n得到的商,y为余数,m为大于1的整数、x为大于0的整数,y为整数,将所述彩虹表任务分配给所述n个GPU计算节点包括:
先均为所述n个GPU计算节点中的每个GPU计算节点分配x个哈希链任务;
然后将剩余的y个哈希链任务顺序地再分配给所述n个GPU计算节点中的前y个GPU计算节点,为所述前y个GPU计算节点中的每个GPU计算节点分配一个哈希链任务。
4.根据权利要求1所述的基于大数据彩虹表的解密方法,其特征在于,将生成的彩虹表中的哈希链的链尾节点进行索引分组,对分组内的链尾节点进行排序包括:
根据哈希链的链尾节点的二进制数值的大小范围来对生成的彩虹表进行索引分组;
对每个分组内的哈希链的链尾节点按照二进制数值的大小顺序进行排序。
5.根据权利要求1所述的基于大数据彩虹表的解密方法,其特征在于,
所述待解密的密文通过LM、MD4、NTLSHASH、MD5或SHA1算法加密,与所述待解密的密文相对应的密码为1-12位。
6.一种基于大数据彩虹表的解密装置,其特征在于,包括:
n个GPU计算节点,被分配彩虹表任务,每个GPU计算节点生成一个彩虹表,n为大于1的整数;
彩虹表索引排序单元,用于对所述n个GPU计算节点生成的彩虹表中的哈希链的链尾节点进行索引分组,对分组内的链尾节点进行排序;
查找单元,用于在经索引分组和排序的彩虹表内,对待解密的密文先执行索引查找然后执行二分查找,以获得相应的明文完成解密。
7.根据权利要求6所述的基于大数据彩虹表的解密装置,其特征在于,还包括文件***,用于向所述n个GPU计算节点分配彩虹表任务,存储所述n个GPU计算节点生成的彩虹表。
8.根据权利要求7所述的基于大数据彩虹表的解密装置,其特征在于,所述文件***包括:
彩虹表生成日志记录单元,用于为各个GPU计算节点设置彩虹表生成数据参数,写入彩虹表生成标记,所述彩虹表生成标记用于指示彩虹表生成是否成功;
日志检查单元,用于检查所述彩虹表生成标记,如果所述彩虹表生成标记指示彩虹表生成不成功,调用相应的GPU计算节点继续生成彩虹表。
9.根据权利要求7所述的基于大数据彩虹表的解密装置,其特征在于,所述文件***还包括:
GPU配置单元,用于根据明文的取值范围、彩虹表的查找成功率为各个GPU计算节点设置计算参数、数据传输和生成算法。
10.根据权利要求6所述的基于大数据彩虹表的解密装置,其特征在于,还包括存储阵列,用于储存经索引分组和排序的彩虹表。
CN201611147432.0A 2016-12-13 2016-12-13 基于大数据彩虹表的解密方法和装置 Pending CN106712928A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611147432.0A CN106712928A (zh) 2016-12-13 2016-12-13 基于大数据彩虹表的解密方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611147432.0A CN106712928A (zh) 2016-12-13 2016-12-13 基于大数据彩虹表的解密方法和装置

Publications (1)

Publication Number Publication Date
CN106712928A true CN106712928A (zh) 2017-05-24

Family

ID=58937362

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611147432.0A Pending CN106712928A (zh) 2016-12-13 2016-12-13 基于大数据彩虹表的解密方法和装置

Country Status (1)

Country Link
CN (1) CN106712928A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107425957A (zh) * 2017-08-31 2017-12-01 郑州云海信息技术有限公司 一种密码攻击方法、装置及异构加速平台
CN107465500A (zh) * 2017-07-20 2017-12-12 广州慧睿思通信息科技有限公司 基于fpga的md5暴力破解***及方法
CN108038382A (zh) * 2017-10-18 2018-05-15 北京丁牛科技有限公司 基于cpu-gpu架构的彩虹链表的处理方法及***
CN108416208A (zh) * 2018-02-05 2018-08-17 深圳大普微电子科技有限公司 一种破解密码的方法、主机设备及存储设备
CN109840245A (zh) * 2019-01-31 2019-06-04 中铁工程装备集团有限公司 一种基于分片存储和折半索引的数据查询引擎
CN115062293A (zh) * 2022-06-21 2022-09-16 北京奇艺世纪科技有限公司 弱口令检测方法、装置及存储介质、电子设备和计算机程序产品

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103049709A (zh) * 2013-01-22 2013-04-17 上海交通大学 基于生成元扩展彩虹表的密码恢复***及其恢复方法
CN103400072A (zh) * 2013-07-31 2013-11-20 厦门市美亚柏科信息股份有限公司 哈希值密码的恢复方法和装置
CN103714300A (zh) * 2014-01-06 2014-04-09 武汉虹旭信息技术有限责任公司 基于分布式gpu和彩虹表的加密分析***及其方法
CN105933120A (zh) * 2016-04-06 2016-09-07 清华大学 一种基于Spark平台的口令哈希值恢复方法和装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103049709A (zh) * 2013-01-22 2013-04-17 上海交通大学 基于生成元扩展彩虹表的密码恢复***及其恢复方法
CN103400072A (zh) * 2013-07-31 2013-11-20 厦门市美亚柏科信息股份有限公司 哈希值密码的恢复方法和装置
CN103714300A (zh) * 2014-01-06 2014-04-09 武汉虹旭信息技术有限责任公司 基于分布式gpu和彩虹表的加密分析***及其方法
CN105933120A (zh) * 2016-04-06 2016-09-07 清华大学 一种基于Spark平台的口令哈希值恢复方法和装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
马思硕: "《基于GPU的彩虹表弱口令旁路检查工具》", 《电气应用增刊》 *
黄东江: "《GPU集群上彩虹表构造与查找的研究与实现》", 《中国优秀硕士学位论文全文数据库(电子期刊)》 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107465500A (zh) * 2017-07-20 2017-12-12 广州慧睿思通信息科技有限公司 基于fpga的md5暴力破解***及方法
CN107465500B (zh) * 2017-07-20 2020-04-03 广州慧睿思通信息科技有限公司 基于fpga的md5暴力破解***及方法
CN107425957A (zh) * 2017-08-31 2017-12-01 郑州云海信息技术有限公司 一种密码攻击方法、装置及异构加速平台
CN107425957B (zh) * 2017-08-31 2021-02-19 苏州浪潮智能科技有限公司 一种密码攻击方法、装置及异构加速平台
CN108038382A (zh) * 2017-10-18 2018-05-15 北京丁牛科技有限公司 基于cpu-gpu架构的彩虹链表的处理方法及***
CN108416208A (zh) * 2018-02-05 2018-08-17 深圳大普微电子科技有限公司 一种破解密码的方法、主机设备及存储设备
CN109840245A (zh) * 2019-01-31 2019-06-04 中铁工程装备集团有限公司 一种基于分片存储和折半索引的数据查询引擎
CN109840245B (zh) * 2019-01-31 2020-12-18 中铁工程装备集团有限公司 一种基于分片存储和折半索引的数据查询引擎
CN115062293A (zh) * 2022-06-21 2022-09-16 北京奇艺世纪科技有限公司 弱口令检测方法、装置及存储介质、电子设备和计算机程序产品

Similar Documents

Publication Publication Date Title
CN106712928A (zh) 基于大数据彩虹表的解密方法和装置
CN103546288B (zh) Sm2数字签名生成算法的实现方法及装置
Beamer et al. Direction‐optimizing breadth‐first search
CN107819569A (zh) 登录信息的加密方法及终端设备
JP6973633B2 (ja) 秘密集約最大値システム、秘密集約最小値システム、秘密計算装置、秘密集約最大値方法、秘密集約最小値方法、およびプログラム
CN108063758A (zh) 用于区块链网络的签名验证方法及区块链网络中的节点
CN104615945A (zh) 一种基于多gpu破解设备的密码破解方法和***
CN103995827B (zh) MapReduce计算框架中的高性能排序方法
CN111612458A (zh) 用于区块链数据处理的方法、装置及可读存储介质
CN111950032A (zh) 基于区块链的数据存储方法、终端设备和存储介质
CN115795517A (zh) 资产数据存储方法及装置
CN112181307A (zh) 基于区块链的分布式数据冗余存储方法和电子设备
CN112217639B (zh) 数据的加密共享方法、装置、电子设备及计算机存储介质
CN111951112A (zh) 基于区块链的智能合约执行方法、终端设备和存储介质
CN112182108A (zh) 基于区块链的分布式数据存储更新方法和电子设备
CN107465717A (zh) 一种密码按需服务的方法、装置与设备
CN106327153A (zh) 基于事件直接先于关系的云间科学工作流挖掘方法
CN107122849B (zh) 基于SparkR的产品检测总完工时间极小化方法
CN110135178A (zh) 区块链验证中的零延迟账本访问技术
CN115643090A (zh) 基于隐私检索的纵向联邦分析方法、装置、设备及介质
CN115759746A (zh) 可配置化的用户预警方法、装置、电子设备及存储介质
CN113918517A (zh) 多类型文件集中管理方法、装置、设备及存储介质
Wen et al. Challenges and Opportunities of Building Fast GBDT Systems.
CN109784094B (zh) 一种支持预处理的批量外包数据完整性审计方法及***
Chopard et al. Problems, algorithms, and computational complexity

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20170524