掌桥专利:专业的专利平台
掌桥专利
首页

一种网络连接方法及系统、电子设备

文献发布时间:2024-04-18 20:02:18


一种网络连接方法及系统、电子设备

技术领域

本申请实施例涉及网络连接技术领域,特别涉及一种网络连接方法及系统、电子设备。

背景技术

在无线网络连接时,对于密码破解中,暴力遍历和字典遍历是目前密码恢复中最常用的两种破解方式。暴力遍历就是对用户制定的规则内的所有密码进行遍历,字典遍历则是对字典文件中的密码进行遍历。暴力方式往往需要较多的规则来覆盖尽可能大的密码空间以提高密码恢复的成功率,但密码空间太大将造成遍历时间倍增,甚至需要成百上千年的时间,使密码破解失去意义。因此,目前通常使用字典遍历的方式。

然而,目前的字典遍历方式使用到密码字典按照字母排序方式进行排列,又由于遍历是从头开始遍历至尾,因此,在这种排列方式下,破解过程会大致大量无效的运算,导致破解耗时较高。

发明内容

本申请实施例提供一种网络连接方法及系统、电子设备,能降低破解耗时。

第一方面,本申请实施例提供一种网络连接方法,该方法包括:获取多个字符串;获取常用密码集;基于所述常用密码集和所述多个字符串,确定各所述字符串的使用概率;按照使用概率由大至小的顺序,对各所述字符串进行排序,得到密码字典;基于所述密码字典,与无线接入装置进行网络连接认证。

在本实施例中,构建得到的密码字典中的各字符串是按照使用概率由大至小的顺序进行排列的,通过该按照使用概率排序的密码字典连接无线接入装置时,可降低破解密码的时间,提高破解和连接效率。

在一些实施例中,所述获取多个字符串,包括:获取多个字符,所述字符包括字母、数字、符号中的其中一种;对所述多个字符进行排列组合,构建所述多个字符串。

在本实施例中,通过基于多个字符自动生成多个字符串,可降低人工输入的成本,且可提高后续密码字典的密码个数。

在一些实施例中,所述常用密码集包括多个常用密码,所述字符串的使用概率为所述字符串的相似度值,所述基于所述常用密码集和所述多个字符串,确定各所述字符串的使用概率,包括:将各所述字符串与所述多个常用密码进行相似性对比,得到各所述字符串的相似度值。

在本实施例中,通过对比字符串与常用密码的相似性,以确定各字符串的使用概率,可提高计算使用概率的准确性。

在一些实施例中,所述常用密码集包括多个常用密码、与所述常用密码对应的使用次数,所述基于所述常用密码集和所述多个字符串,确定各所述字符串的使用概率,包括:将各所述字符串与各所述常用密码进行比对,得到各所述字符串对应的使用次数;获取各所述常用密码的总使用次数;根据各所述字符串对应的使用次数和总使用次数,得到各所述字符串的使用概率。

在本实施例中,采用上述方式确定各字符串的使用概率,可提高计算使用概率的速度。

在一些实施例中,所述对各所述字符串进行排序,包括:若多个所述字符串的使用概率相等,则对相等使用概率的多个字符串按照预设顺序进行排序,其中,所述预设顺序为字母顺序、数字顺序、字符个数顺序中的其中一种。

在本实施例中,在相等使用概率的情况下,按照预设顺序对字符串进行排序,可有序整理密码字典中的多个字符串。

在一些实施例中,所述基于所述密码字典,与无线接入装置进行网络连接认证,包括:获取接入申请过程的次数;基于所述次数,得到所述密码字典中的第N+1个字符串,其中,N为所述次数;基于所述第N+1个字符串,发送接入申请命令至所述无线接入装置;若接收到所述无线接入装置的认证失败信息,则重新进行接入申请过程;若接收到所述无线接入装置的认证成功信息,则完成网络连接。

在本实施例中,可从头开始抓取密码字典中的字符串,并尝试接入无线接入装置,直至破解成功或遍历所有字符串。

在一些实施例中,所述基于所述第N+1个字符串,发送接入申请命令至无线接入装置,包括:对所述第N+1个字符串进行计算,得到所述第N+1个字符串对应的哈希值;根据所述哈希值,得到所述接入申请命令;将所述接入申请命令发送至所述无线接入装置,其中,所述接入申请命令用于使所述无线接入装置申请接入网络。

在本实施例中,通过对第N+1个字符串进行哈希计算,可与无线接入装置中存储的与密码对应的哈希值进行比较,这样,无线接入装置中可不存储密码,而是存储对应的哈希值,可提高网络连接的安全性。

第二方面,本申请实施例提供一种电子设备,该电子设备包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如第一方面任意一项实施例所述的方法。

第三方面,本申请实施例提供一种网络连接系统,该网络连接系统包括无线接入装置、如第二方面所述的电子设备;所述电子设备与所述无线接入装置通过无线通信连接。

在本实施例中,电子设备基于按照使用概率由大至小排序的密码字典破解无线接入装置的密码,可降低破解密码的耗时,提高破解效率。

在一些实施例中,所述无线接入装置为WiFi接入装置。

第四方面,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如上第一方面任意一项实施例所述的方法。

第五方面,本申请实施例还提供了一种计算机程序产品,所述计算机程序产品包括存储在计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行如上第一方面任意一项实施例所述的方法。

与现有技术相比,本申请的有益效果是:区别于现有技术的情况,本申请实施例提供一种网络连接方法及系统、电子设备,该构方法包括:获取多个字符串;获取常用密码集;基于所述常用密码集和所述多个字符串,确定各所述字符串的使用概率;按照使用概率由大至小的顺序,对各所述字符串进行排序,得到密码字典;基于所述密码字典,与无线接入装置进行网络连接认证。该方法中,通过构建按照字符串使用概率由大至小的顺序进行排列的密码字典,并基于该密码字典破解密码,可降低破解密码的耗时,提高破解效率。

附图说明

一个或多个实施例中通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件/模块和步骤表示为类似的元件/模块和步骤,除非有特别申明,附图中的图不构成比例限制。

图1是本申请实施例提供的一种构建密码字典的方法;

图2是本申请实施例提供的一种电子设备的结构框图。

具体实施方式

下面结合具体实施例对本申请进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本申请,但不以任何形式限制本申请。应当指出的是,对本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进。这些都属于本申请的保护范围。

为了便于理解本申请,下面结合附图和具体实施例,对本申请进行更详细的说明。除非另有定义,本说明书所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。在本申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是用于限制本申请。本说明书所使用的术语“和/或”包括一个或多个相关的所列项目的任意的和所有的组合。

需要说明的是,如果不冲突,本申请实施例中的各个特征可以相互结合,均在本申请的保护范围之内。另外,虽然在装置示意图中进行了功能模块划分,但是在某些情况下,可以以不同于装置中的模块划分。此外,本文所采用的“第一”、“第二”等字样并不对数据和执行次序进行限定,仅是对功能和作用基本相同的相同项或相似项进行区分。

在网络连接过程中,如在无线保真(Wireless Fidelity,WiFi)连接中,电子设备需要通过无线连接无线接入装置实现上网功能时,需要发送密码至无线接入装置,无线接入装置基于该密码确认该电子设备是否可进行无线上网功能。若用户忘记密码时,需要用到密码字典进行破解。

密码字典可以由安全研究人员、密码破解工具开发者或者其他人根据不同的来源和方法进行创建。它可以包含常见的密码模式、常用的单词、姓氏、日期、数字序列和其他常见的密码选择。破解WiFi密码时,攻击者通常会使用这个密码字典来尝试多个可能的密码组合,其可通过密码破解工具或自定义脚本进行自动化处理,尝试字典中的每个密码。

在密码字典中,密码的排序方式一般都是按照字典排序。字典排序,也称为词典序或者字典序,是一种常见的字符串排序方式。即将一组字符串按照其字母排序的方式进行排列,类似于平时使用的字典排序方式。在字典排序中,首先比较两个字符串的第一个字符,如果相同则继续比较第二个字符,以此类推,直到出现差异为止,较小的字符串排在前面。如果所有字符都相同,但有一个字符串已经到达了结尾,则这个字符串就被认为是较小的一个。例如,假设有以下三个字符串:banana、apple、cat,若按照字典排序的方式进行排列,应该是这样的:apple、banana、cat,因为apple开头的字母a在其他两个字符串的开头,所以apple排在最前面,在第二个字符上,b比c大,所以banana排在第二个位置,cat排在最后面。

在使用密码字典遍历时,一般都是从头开始遍历到尾。如果在遍历的过程中有命中,则密码破解成功,如果从头到尾遍历完毕之后仍然没有命中,则破解失败。这个破译算法的效率完全取决于字典的质量。因此改进字典的质量非常关键。而对于目前的密码字典都是按照字母顺序排序,而设置的密码通常毫无自然规律可言,因此,按字母排序的密码字典中靠前的密码的破解概率与靠后的密码的破解概率一样,这样,在使用密码字典破解WIFI时,可能导致大量的比对和运算是无效的。

为了解决上述技术问题,本申请实施例提供一种网络连接方法及系统、电子设备,通过使用按照密码的使用概率进行排序的密码字典破解无线接入装置的密码,可降低破解密码的时间,提高破解效率。

第一方面,本申请实施例提供一种网络连接方法,其中,该构建密码字典的方法的执行主体为电子设备,电子设备可以是手机、计算机等终端,请参阅图1,该方法包括:

步骤S10:获取多个字符串。

字符串为字母、数字、符号等字符之间的组合,通常,字符串包含的字符数应该不少于8个,实际应用中,可通过限定字符串包含的字符数进行获取多个字符串。该多个字符串可由人工输入,或通过网络自动收集。

步骤S20:获取常用密码集。

常用密码集包括多个常用密码,或者在其他一些实施例中,常用密码集包含多个常用密码和其对应的使用次数,该常用密码集可由人工输入,或通过网络自动收集。常用密码也为字符串,其也为字母、数字、符号等字符之间的组合。

步骤S30:基于常用密码集和多个字符串,确定各字符串的使用概率。

在一些实施例中,若常用密码集包括多个常用密码,字符串的使用概率为字符串的相似度值,则该步骤包括:将各字符串与常用密码集中的多个常用密码进行相似性对比,得到该字符串的相似度值。在按照上述方式得到各字符串的相似度值后,即得到各字符串的使用概率。具体的,相似度值可以是杰卡德相似度系数、索伦森-骰子相似度系数、莱文斯坦距离、汉明距离、余弦相似度系数等中的其中一种。关于相似度值具体的计算方式可参照现有技术,在此不做限定。在本实施例中,通过对比字符串与常用密码的相似性,以确定各字符串的使用概率,可提高计算使用概率的准确性。

或者,在其他一些实施例中,若常用密码集包括多个常用密码、与各常用密码对应的使用次数,则该步骤包括:将各字符串与各常用密码进行比对,得到各字符串对应的使用次数;获取各常用密码的总使用次数;根据各字符串对应的使用次数和总使用次数,得到各字符串的使用概率。

具体的,可将各字符串与常用密码集中的常用密码进行对比,确定是否存在相同的字符串,若存在,则以该相同字符串对应的使用次数作为该字符串对应的使用次数,并基于常用密码集,确定各常用密码的使用总次数,接着,计算该字符串对应的使用次数与使用总次数的比值,并以该比值作为该字符串的使用概率,若不存在,则该字符串的使用概率为0。在本实施例中,采用上述方式确定各字符串的使用概率,可提高计算使用概率的速度。

步骤S40:按照使用概率由大至小的顺序,对各字符串进行排序,得到密码字典。

接着,在确定好各字符串的使用概率后,则按照使用概率由大至小的顺序,对各字符串进行排序,得到密码字典。

步骤S50:基于密码字典,与无线接入装置进行网络连接认证。

无线接入装置可以是提供无线热点的设备,如WIFI路由器等。具体的,采用对该密码字典中的多个字符串进行遍历的方式,与无线接入装置进行网络连接认证。

在本实施例中,由于密码字典中靠前的密码的破解概率与靠后的密码的破解概率并不一样,靠前的密码的破解概率大于靠后的密码的破解概率,这样,在使用该密码字典连接无线接入装置时,可降低破解密码的时间,提高破解和连接效率。

在其中一些实施例中,步骤S10包括:步骤S11:获取多个字符,字符包括字母、数字、符号中的其中一种;步骤S12:对多个字符进行排列组合,构建多个字符串。

具体的,字母可以是“a”,“b”,“c”等,数字可以是“1”、“2”、“3”等,符号可以是“!”,“—”,“*”等。在得到多个字符后,可限定字符串包含的字符个数,对多个字符进行随机排列组合,生成多个字符串。

在本实施例中,通过基于多个字符自动生成多个字符串,可降低人工输入的成本,且可提高后续密码字典的密码个数。

在其中一些实施例中,对各字符串进行排序,包括步骤S41:若多个字符串的使用概率相等,则对相等使用概率的多个字符串按照预设顺序进行排序,其中,预设顺序为字母顺序、数字顺序、字符个数顺序中的其中一种。

如按照字母顺序,则可比对相等使用概率的各个字符串中的首个字母,并按照字母顺序进行排序。如按照数字顺序,则可比对相等使用概率的各个字符串中的首个数字,并按照数字由大至小顺序或由小至大的顺序进行排序。如按照字符个数顺序,则可比对相等使用概率的各个字符串对应的字符个数,并按照字符个数由大至小顺序或由小至大的顺序进行排序。

具体的,对于字符串“ab2cdefg”和字符串“ba1cdefg*”,二者的使用概率相等,那么,若按照字母顺序进行排序,对比第一个字符可知,字符串“ab2cdefg”应位于字符串“ba1cdefg*”之前,若按照数字顺序进行排序,则对比第三个字符可知,字符串“ba1cdefg*”应位于字符串“ab2cdefg”之前,若按照字符个数由小至大的顺序进行排序,由于字符串“ba1cdefg*”的字符个数为9,而字符串“ab2cdefg”的字符个数为8,则字符串“ab2cdefg”应位于字符串“ba1cdefg*”之前。实际应用中,预设顺序可根据实际需要进行设置,在此不做限定。

在本实施例中,在相等使用概率的情况下,按照预设顺序对字符串进行排序,可有序整理密码字典中的多个字符串。

在其中一些实施例中,步骤S50包括:步骤S51:获取接入申请过程的次数;步骤S52:基于次数,得到密码字典中的第N+1个字符串,其中,N为次数;步骤S53:基于第N+1个字符串,发送接入申请命令至无线接入装置;步骤S54:若接收到无线接入装置的认证失败信息,则重新进行接入申请过程;步骤S55:若接收到无线接入装置的认证成功信息,则完成网络连接。

N为大于或等于0的整数。具体的,若密码字典中包括按顺序排列的第一字符串、第二字符串和第三字符串。那么,首先,若电子设备接收到用户的第一次连接请求时,接入申请过程的次数为0,则获取密码字典中的第一个字符串,即第一字符串,并基于该第一字符串,发送接入申请命令至无线接入装置,完成第一次接入申请过程;若电子设备接收到无线接入装置的认证成功消息,则表明电子设备可通过无线接入装置连接上网,若电子设备接收到无线接入装置的认证失败消息,则重新进行接入申请过程,此时,接入申请过程的次数为1,那么,获取密码字典中的第二个字符串,即第二字符串,并基于该第二字符串,发送接入申请命令至无线接入装置,完成第二次接入申请过程;若电子设备接收到无线接入装置的认证成功消息,则表明电子设备可通过无线接入装置连接上网,若电子设备接收到无线接入装置的认证失败消息,则重新进行接入申请过程,此时,接入申请过程的次数为2,那么,获取密码字典中的第三个字符串,即第三字符串,并基于该第三字符串,发送接入申请命令至无线接入装置,完成第三次接入申请过程;若电子设备接收到无线接入装置的认证成功消息,则表明电子设备可通过无线接入装置连接上网,若电子设备接收到无线接入装置的认证失败消息,则提示用户破解失败,无法连接。

可见,在本实施例中,可从头开始抓取密码字典中的字符串,并尝试接入无线接入装置,直至破解成功或遍历所有字符串。

在其中一些实施例中,基于第N+1个字符串,发送接入申请命令至无线接入装置,包括:

步骤S531:对第N+1个字符串进行计算,得到第N+1个字符串对应的哈希值;

步骤S532:根据哈希值,得到接入申请命令;

步骤S533:将接入申请命令发送至无线接入装置,其中,接入申请命令用于使无线接入装置申请接入网络。

哈希函数可将任意长度的二进制值映射为较短的固定长度的二进制值,这个小的二进制值称为哈希值。哈希值是一段数据唯一且极其紧凑的数值表示形式。如果散列一段明文而且哪怕只更改该段落的一个字母,随后的哈希都将产生不同的值。要找到散列为同一个值的两个不同的输入,在计算上是不可能的,所以数据的哈希值可以检验数据的完整性。一般用于快速查找和加密算法。其是一种单向密码体制,即它是一个从明文到密文的不可逆的映射,只有加密过程,没有解密过程。同时,哈希函数可以将任意长度的输入经过变化以后得到固定长度的输出。哈希函数的这种单向特征和输出数据长度固定的特征使得它可以生成消息或者数据。哈希函数算法能将将任意长度的二进制明文映射为较短的二进制串的算法,并且不同的明文很难映射为相同的哈希值。

具体的,在得到第N+1个字符串后,通过哈希函数对该第N+1个字符串进行计算,得到第N+1个字符串对应的哈希值,接着,基于该哈希值得到接入申请命令,并将该接入申请命令发送至无线接入装置,无线接入装置基于接入申请命令中的哈希值判断是否与正确密码对应的哈希值一致,若一致,则发送认证成功消息至电子设备,若不一致,则发送认证失败消息至电子设备。

在本实施例中,通过对第N+1个字符串进行哈希计算,可与无线接入装置中存储的与密码对应的哈希值进行比较,这样,无线接入装置中可不存储密码,而是存储对应的哈希值,可提高网络连接的安全性。

第二方面,本申请实施例还提供了一种电子设备,请参见图2,其示出了能够执行如第一方面任意一项实施例所述的网络连接方法的电子设备的硬件结构。

所述电子设备包括:至少一个处理器11;以及,与所述至少一个处理器11通信连接的存储器12,图2中以一个处理器11为例。所述存储器12存储有可被所述至少一个处理器11执行的指令,所述指令被所述至少一个处理器11执行,以使所述至少一个处理器11能够执行上述第一方面任意一项实施例所述的网络连接方法。所述处理器11和所述存储器12可以通过总线或者其他方式连接,图2中以通过总线连接为例。

存储器12作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本申请实施例中的网络连接方法对应的程序指令/模块。处理器11通过运行存储在存储器12中的非易失性软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述第一方面任意一项实施例所述的网络连接方法。

存储器12可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器12可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在其中一些实施例中,存储器12可选包括相对于处理器11远程设置的存储器,这些远程存储器可以通过网络连接至电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

所述一个或者多个模块存储在所述存储器12中,当被所述一个或者多个处理器11执行时,执行上述第一方面任意一项实施例所述的网络连接方法。

上述产品可执行本申请实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本申请第一方面任意一项实施例所述的网络连接方法。

第三方面,本申请实施例提供一种网络连接系统,该网络连接系统包括无线接入装置和如第二方面所述的电子设备。电子设备通过无线通信连接无线接入装置。

具体的,无线接入装置为WiFi接入装置,其可提供WiFi热点。电子设备可以是手机、计算机等终端。在本实施例中,电子设备具有与如第三方面实施例所述的电子设备相同的结构与功能,在此不再赘述。

在本实施例中,电子设备基于按照使用概率由大至小排序的密码字典破解无线接入装置的密码,可降低破解密码的耗时,提高破解效率。

第四方面,本申请实施例还提供了一种非易失性计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行,例如,执行以上第一方面任意一项实施例所述的网络连接方法步骤。

第五方面,本申请实施例还提供了一种计算机程序产品,包括存储在非易失性计算机可读存储介质上的计算程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时时,使所述计算机执行上述任意方法实施例中的构建密码字典的方法或网络连接方法,例如,执行以上第一方面任意一项实施例所述的网络连接方法步骤。

需要说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用至少一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;在本申请的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本申请的不同方面的许多其它变化,为了简明,它们没有在细节中提供;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。

技术分类

06120116576066