提供网络接入服务的方法、接入点、终端与流程

文档序号:26444195发布日期:2021-08-27 13:44阅读:124来源:国知局
提供网络接入服务的方法、接入点、终端与流程

本发明属于通信技术领域,具体涉及一种提供网络接入服务的方法、第一接入点、第二接入点、终端。



背景技术:

随着经济和技术的发展,路由器、交换机等设备已经越来越多被使用,路由器、交换机等作为无线ap(accesspoint,接入点),可以为其释放的wi-fi(行动热点)信号的覆盖范围内、具有接入该wi-fi信号(或者说该接入点)的接入密码(或者说wi-fi密码)的终端提供网络接入服务,以使终端可以接入网络。

如安装在每个家庭的家庭路由器(也可以称为家庭wi-fi),其可以为家庭内拥有该家庭wi-fi的wi-fi密码的终端提供网络接入服务。

当终端移动至家庭wi-fi释放的wi-fi信号无法覆盖的区域后,终端虽然可以搜索到很多其他wi-fi信号,但是由于没有接入这些wi-fi信号对应的接入密码,终端也无法通过这些wi-fi信号接入网络。

同时,由于终端已经处于家庭wi-fi无法覆盖的区域,尽管此时家庭wi-fi可能处于空闲状态,终端也无法通过家庭wi-fi接入网络,造成用户体验较差。



技术实现要素:

本发明至少部分解决现有的提供网络接入服务的方法用户体验较差的问题,提供一种用户体验良好的网络接入服务的方法、第一接入点、第二接入点、终端。

本发明的第一方面提供一种提供网络接入服务的方法,所述方法用于第一接入点,所述第一接入点为共享区块链的节点,所述方法包括:

接收终端发送的网络接入申请信息,所述网络接入申请信息包括第一加密结果以及所述终端对应的第二接入点的标识,所述第一加密结果为所述终端使用同态加密密钥对待加密密码进行同态加密得到,所述待加密密码为所述终端按照与所述第二接入点预先约定的算法从密码本中获取;

生成随机数,根据所述第二接入点的标识通过所述共享区块链向所述第二接入点发送认证申请信息,所述认证申请信息包括所述第一加密结果以及所述随机数;

接收所述第二接入点发送的第二加密结果,所述第二加密结果为所述第二接入点使用与所述同态加密密钥对所述待加密密码和所述随机数进行同态加密得到;

使用所述同态加密密钥对所述随机数进行加密获取第三加密结果,在所述第一加密结果和第三加密结果的和与所述第二加密结果相同的情况下,为所述终端提供网络接入服务。

本发明的第二方面提供一种提供网络接入服务的方法,所述方法用于终端,所述方法包括:

按照与终端对应的第二接入点预先约定的算法从密码本中获取待加密密码,使用同态加密密钥对所述待加密密码进行同态加密获取第一加密结果;

向第一接入点发送网络接入申请信息,所述网络接入申请信息包括所述第一加密结果以及所述第二接入点的标识。

可选的,所述按照与终端对应的第二接入点预先约定的算法从密码本中获取待加密密码,使用同态加密密钥对所述待加密密码进行同态加密获取第一加密结果包括:根据接入时间点按照与所述第二接入点预先约定的算法从密码本中获取待加密密码,使用所述同态加密密钥对所述待加密密码进行同态加密获取第一加密结果;则所述网络接入申请信息还包括所述接入时间点。

进一步可选的,所述根据接入时间点按照与所述第二接入点预先约定的算法从密码本中获取待加密密码包括:根据所述接入时间点按照预先约定的算法生成一个正整数n;确定所述密码本中第n个密码为待加密密码。

本发明的第三方面提供一种提供网络接入服务的方法,所述方法用于第二接入点,所述第二接入点为共享区块链的节点,所述方法包括:

接收所述第一接入点发送的认证申请信息,所述认证申请信息包括第一加密结果以及随机数;

按照与第二接入点对应的终端预先约定的算法从密码本中获取待加密密码,并根据与同态加密密钥对应的同态解密密钥对所述第一加密结果进行解密获取解密结果;

在所述加密结果与所述待加密密码相同的情况下,使用所述同态加密密钥对所述待加密密码和所述随机数进行加密获取第二加密结果,并通过所述共享区块链向所述第一接入点发送所述第二加密结果。

可选的,所述认证申请信息还包括接入时间点;则所述按照与第二接入点对应的终端预先约定的算法从密码本中获取待加密密码,包括:根据接入时间点按照与所述终端预先约定的算法从密码本中获取待加密密码。

进一步可选的,所述通过所述共享区块链向所述第一接入点发送所述第二加密结果,包括:使用所述第二接入点的私钥对所述第二加密结果进行签名后,将所述第二加密结果广播至所述共享区块链的所有节点。

本发明的第四方面提供一种网络的第一接入点,所述第一接入点为共享区块链的节点,所述第一接入点包括:

终端接收模块,用于接收终端发送的网络接入申请信息,所述网络接入申请信息包括第一加密结果以及所述终端对应的第二接入点的标识,所述第一加密结果为所述终端使用同态加密密钥对待加密密码进行同态加密得到,所述待加密密码为所述终端按照与所述第二接入点预先约定的算法从密码本中获取;

区块链发送模块,用于生成随机数,根据所述第二接入点的标识通过所述共享区块链向所述第二接入点发送认证申请信息,所述认证申请信息包括所述第一加密结果以及所述随机数;

区块链接收模块,用于接收所述第二接入点发送的第二加密结果,所述第二加密结果为所述第二接入点使用与所述同态加密密钥对所述待加密密码和所述随机数进行同态加密得到;

接入模块,用于使用所述同态加密密钥对所述随机数进行加密获取第三加密结果,在所述第一加密结果和第三加密结果的和与所述第二加密结果相同的情况下,为所述终端提供网络接入服务。

本发明的第五方面提供一种终端,所述终端包括:

终端加密模块,用于根按照与终端对应的第二接入点预先约定的算法从密码本中获取待加密密码,使用同态加密密钥对所述待加密密码进行同态加密获取第一加密结果;

发送模块,用于向第一接入点发送网络接入申请信息,所述网络接入申请信息包括所述第一加密结果以及所述第二接入点的标识。

本发明的第六方面提供一种第二接入点,所述第二接入点为共享区块链的节点,所述第二接入点包括:

接收模块,用于接收所述第一接入点发送的认证申请信息,所述认证申请信息包括第一加密结果以及随机数;

接入点加密模块,用于按照与第二接入点对应的终端预先约定的算法从密码本中获取待加密密码,并根据与同态加密密钥对应的同态解密密钥对所述第一加密结果进行解密获取解密结果;

通信模块,用于在所述加密结果与所述待加密密码相同的情况下,使用所述同态加密密钥对所述待加密密码和所述随机数进行加密获取第二加密结果,并通过所述共享区块链向所述第一接入点发送所述第二加密结果。

本发明实施例的网络接入服务的方法、第一接入点、第二接入点、终端中,第一接入点和第二接入点为同一个共享区块链的不同节点,第一接入点接收终端发送的第一加密结果,并通过区块链向第二接入点发送第一加密结果,并根据第二接入点返回的第二加密结果判断是否为终端提供网络接入服务。通过本实施例的提供网络接入服务的方法,一方面,可以避免可疑终端接入第一接入点,进而避免可疑终端对其他终端进行攻击,提升了网络安全性;另一方面,在通过验证之后,第一接入点直接为终端提供网络接入服务,所有的信息不需要再通过其他接入点,通信效率高,用户体验好。

附图说明

图1为本发明实施例的一种用于第一接入点的提供网络接入服务的方法的流程示意图;

图2为本发明实施例的一种用于终端的提供网络接入服务的方法的流程示意图;

图3为本发明实施例的一种用于第二接入点的提供网络接入服务的方法的流程示意图;

图4为本发明实施例的一种提供网络接入服务的方法的流程示意图;

图5为本发明实施例的一种提供网络接入服务的方法的部分步骤的流程示意图;

图6为本发明实施例的另一种提供网络接入服务的方法的部分步骤的流程示意图;

图7为本发明实施例的另一种提供网络接入服务的方法的部分步骤的流程示意图;

图8为本发明实施例的一种第一接入点的组成示意框图;

图9为本发明实施例的一种终端的组成示意框图;

图10为本发明实施例的一种第二接入点的组成示意框图。

具体实施方式

为使本领域技术人员更好地理解本发明的技术方案,下面结合附图和具体实施方式对本发明作进一步详细描述。

可以理解的是,此处描述的具体实施例和附图仅仅用于解释本发明,而非对本发明的限定。

可以理解的是,在不冲突的情况下,本发明中的各实施例及实施例中的各特征可相互组合。

可以理解的是,为便于描述,本发明的附图中仅示出了与本发明相关的部分,而与本发明无关的部分未在附图中示出。

可以理解的是,本发明的实施例中所涉及的每个单元、模块可仅对应一个实体结构,也可由多个实体结构组成,或者,多个单元、模块也可集成为一个实体结构。

可以理解的是,在不冲突的情况下,本发明的流程图和框图中所标注的功能、步骤可按照不同于附图中所标注的顺序发生。

可以理解的是,本发明的流程图和框图中,示出了按照本发明各实施例的系统、装置、设备、方法的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可代表一个单元、模块、程序段、代码,其包含用于实现规定的功能的可执行指令。而且,框图和流程图中的每个方框或方框的组合,可用实现规定的功能的基于硬件的系统实现,也可用硬件与计算机指令的组合来实现。

可以理解的是,本发明实施例中所涉及的单元、模块可通过软件的方式实现,也可通过硬件的方式来实现,例如单元、模块可位于处理器中。

在一些相关技术中,通过在接入点设备设置访客模式,为没有该接入点对应的接入密码的终端提供网络接入服务,终端只需通过身份验证就可以接入该接入点的一次性接入密码,以获取接入点提供的网络接入服务。

但随着暗黑客技术的发展,黑客可以通过监听到接入路由器、交换机等接入点的终端进行的数据通信,窃取终端用户的隐私;甚至可以劫持用户接入钓鱼热点,实现流量劫持、篡改等。

如名为“krack(keyreinstallationattack,密钥重安装攻击)”的漏洞,就是基于wpa2保密协议,攻击者使用接入点提供给终端的一次性密钥,破解接入点与终端之间交换的信息,以获取终端用户的信用卡、聊天信息、支付密码等重要信息。

尤其是接入点是为公共场合释放wi-fi信号的接入点,其接入密码是所有公众都知道的,更加容易导致黑客破解接入点与终端之间交换的信息。

在另一些相关技术中,当终端移动至家庭wi-fi释放的wi-fi信号无法覆盖的区域后,终端向搜索到其他wi-fi信号对应的接入点发送想要发送至家庭wi-fi的信息,其他wi-fi信号对应的接入点将接收到的信息发送至家庭wi-fi。

即所有的信息都需要通过其他接入点转发至家庭wi-fi,这种方法虽然可以实现家庭wi-fi为终端提供网络接入服务,但由于需要其他接入点的中转,通信效率低,用户体验差。

实施例1:

参照图1,本实施例提供一种提供网络接入服务的方法。

本实施例提供的一种提供网络接入服务的方法用于网络的第一接入点。

其中,网络可以是广域互联网,也可以是局域网(如校园网),当网络为局域网时,网络的覆盖范围内有至少两个可以供终端接入该局域网的接入点(如路由器、交换机等)。

网络的接入点具体可以是路由器、交换机等设备,其释放wi-fi信号,在wi-fi信号覆盖范围内的终端可以通过连接wi-fi信号接入网络。

一个网络可能有多个接入点,如对于广域互联网来说,几乎所有的路由器都是其接入点。

每个接入点都有其对应的接入密码(或者说是wi-fi密码),多个接入点可以组成一个共享区块链,每个接入点都是该共享区块链的一个节点,其可以将其自己的标识,具体可以是接入点的ssid,(servicesetidentifier,服务集标识符)以及自己的ip(internetprotocol,互联网协议)地址存储在区块链中。

接入点在加入共享区块链之后,可以在公开的ssid中提示自己已加入共享区块链,以通知与其对应的终端(或者说与其连接的终端)其已加入共享区块链。

第一接入点具体是指需要接入网络的终端当前所搜索到的wi-fi信号对应的接入点,且终端没有该接入点对应的接入密码(或者说是wi-fi密码),无法通过该接入点接入网络(或者说该接入点无法为其提供网络接入服务)。

具体的,终端拥有的接入密码对应的接入点未工作,或终端正好处在这些接入点释放的wi-fi信号覆盖范围之外的情况下,终端在搜索到其他wi-fi信号之后,向搜索到的wi-fi信号对应的接入点发送网络接入申请信息,该网络接入申请信息用于申请释放该wi-fi信号的接入点(也即第一接入点)为其提供网络接入服务。

终端在搜索到多个wi-fi信号之后,可能会向多个wi-fi信号对应的接入点都发送申请信息,那这多个wi-fi信号对应的接入点都是第一接入点。

对于每一个第一接入点,本实施例提供的一种提供网络接入服务的方法都具体包括:

s101、接收终端发送的网络接入申请信息,网络接入申请信息包括第一加密结果以及终端对应的第二接入点的标识,第一加密结果为终端使用同态加密密钥对待加密密码进行同态加密得到,待加密密码为终端按照与第二接入点预先约定的算法从密码本中获取。

终端在发送网络接入申请信息之后,第一接入点接收到终端的网络接入申请信息。

其中,网络接入申请信息第一加密结果、终端对应的第二接入点的标识。

终端对应的第二接入点是指,终端拥有该接入点的接入密码,当终端移动至该接入点释放的信号覆盖的区域时,终端可直接通过接入密码使该接入点为其提供网络接入服务的接入点。

当终端拥有网络中的多个接入点的接入密码,即网络中有多个接入点都可以成为该终端对应的第二接入点,则终端可以选择一个接入点作为第二接入点,并将该接入点的标识(具体可以是该接入点的ssid)放入网络接入申请信息中。

终端与第二接入点共同协商,预先生成一个密码本,并约定从密码本中获取待加密密码的算法,同时约定对待加密密码进行同态加密的同态加密密钥hk。

具体的,终端在确定接入时间点tn(具体可以是终端发现第一接入点的时间)后,根据接入时间点tn使用与第二接入点约定的算法生成一个正整数n,将密码本中第n个密码作为待加密密码rk,并在获取待加密密码rk之后,使用同态加密密钥hk对待加密密码rk进行同态加密,获取第一加密结果e(rk)。

s102、生成随机数,根据第二接入点的标识通过共享区块链向第二接入点发送认证申请信息,认证申请信息包括第一加密结果以及随机数。

第一接入点在接收到网络接入申请信息后,生成一个随机数r,根据网络接入申请信息中第二接入点的标识,使用共享区块链向第二区块链发送认证申请信息。

其中,认证申请信息包括接入申请信息中包括的第一加密结果e(rk)以及第一接入点生成的随机数r。

第二接入点在接收到认证申请信息之后,根据与终端约定的从密码本中获取待加密密码的算法从密码本(与终端共同协商,预先生成的密码本)中,获取待加密密码rk’,同时,第二接入点使用与终端预先约定的同态加密密钥hk对应的同态解密密钥对第一加密结果进行解密,获取解密结果rk,若解密结果rk与待加密结果rk’一致,说明终端与第二接入点是预先约定的,第二接入点使用同态加密密钥hk对待加密密码rk和随机数r进行同态加密,获取第二加密结果e(rk+r)。

第二接入点在获取第二加密结果e(rk+r)之后,通过共享区块链向第一接入点发送第二加密结果e(rk+r),第一接入点接收第二接入点发送的第二加密结果e(rk+r)。

s103、接收第二接入点发送的第二加密结果,第二加密结果为第二接入点使用与同态加密密钥对待加密密码和随机数进行同态加密得到。

s104、使用同态加密密钥对随机数进行加密获取第三加密结果,在第一加密结果和第三加密结果的和与第二加密结果相同的情况下,为终端提供网络接入服务。

第一接入点接收第二接入点发送的第二加密结果e(rk+r),并在得到第二加密结果e(rk+r)之后,使用同态加密密钥hk对随机数r进行机密获取第三加密结果e(r),在第三加密结果e(r)和第一加密结果e(rk)之和与第二加密结果e(rk+r)相同的情况下,即e(r)+e(rk)=e(rk+r),第一接入点为终端提供网络接入服务,在第三加密结果e(r)和第一加密结果e(rk)之和与第二加密结果e(rk+r)不相同的情况下,即e(r)+e(rk)≠e(rk+r),第一接入点则拒绝为终端提供网络接入服务。

本实施例的提供网络接入服务的方法中,第一接入点和第二接入点为同一个共享区块链的不同节点,第一接入点接收终端发送的第一加密结果,并通过区块链向第二接入点发送第一加密结果,并根据第二接入点返回的第二加密结果判断是否为终端提供网络接入服务。通过本实施例的提供网络接入服务的方法,一方面,可以避免可疑终端接入第一接入点,进而避免可疑终端对其他终端进行攻击,提升了网络安全性;另一方面,在通过验证之后,第一接入点直接为终端提供网络接入服务,所有的信息不需要再通过其他接入点,通信效率高,用户体验好。

同时,第一接入点和第二接入点为共享区块链的节点,其传递信息都通过区块链,区块链作为一种去中心化的数据库,安全性高,使用区块链传递信息,可以进一步保障信息的安全性。

实施例2:

参照图2,本实施例提供一种提供网络接入服务的方法,与实施例1不同的是,本实施例的提供网络接入服务的方法用于终端。

本公开实施例提供的提供网络接入服务的方法具体包括:

s201、按照与终端对应的第二接入点预先约定的算法从密码本中获取待加密密码,使用同态加密密钥对待加密密码进行同态加密获取第一加密结果。

终端在搜索到多个wi-fi信号后,发现没有这些wi-fi信号对应的接入密码,则从搜索到的wi-fi信号中选取想要接入的wi-fi信号(此时该接入点即为第一接入点)。

终端根据与第二接入点预先约定的从密码本中获取待加密密码的算法从与第二接入点预先协商生成的密码本中获取待加密密码rk,并使用与第二接入点约定的同态加密密钥hk对待加密密码rk进行加密获取第一加密结果e(rk)。

s202、向第一接入点发送网络接入申请信息,网络接入申请信息包括第一加密结果以及第二接入点的标识。

终端获取第一加密结果e(rk)后,将第一加密结果e(rk)、第二接入点的标识写入网络接入申请信息中,并将网络接入申请信息发送至第一接入点。

第一接入点接收终端发送的接入申请信息,生成随机数r并根据网络接入申请信息中第二接入点的标识,使用共享区块链向第二区块链发送认证申请信息,认证申请信息包括接入申请信息中包括的第一加密结果e(rk)以及第一接入点生成的随机数r。

第二接入点在接收到认证申请信息之后,根据与终端约定的从密码本中获取待加密密码的算法从密码本(与终端共同协商,预先生成的密码本)中,获取待加密密码rk’,同时,第二接入点使用与终端预先约定的同态加密密钥hk对应的同态解密密钥对第一加密结果进行解密,获取解密结果rk,若解密结果rk与待加密结果rk’一致,说明终端与第二接入点是预先约定的,第二接入点使用同态加密密钥hk对待加密密码rk和随机数r进行同态加密,获取第二加密结果e(rk+r)。

第二接入点在获取第二加密结果e(rk+r)之后,通过共享区块链向第一接入点发送第二加密结果e(rk+r),第一接入点接收第二接入点发送的第二加密结果e(rk+r),使用同态加密密钥hk对随机数r进行机密获取第三加密结果e(r),在第三加密结果e(r)和第一加密结果e(rk)之和与第二加密结果e(rk+r)相同的情况下,即e(r)+e(rk)=e(rk+r),第一接入点为终端提供网络接入服务。

本实施例的提供网络接入服务的方法中,终端和第二接入点根据预先预定的算法获取待加密密码,并根据预先约定的算法对待加密密码进行加密,若终端对待加密密码进行加密获取第一加密结果和第一接入点对生成的随机数加密的第三加密结果的和与第二接入点对待加密密码和第一接入点生成的随机数进行加密的第二加密结果相同,说明终端和第二接入点加密使用的同态加密密钥以及获取的待加密密码都一致,进一步说明终端是与第二接入点预先约定的,即终端的身份是经过第二接入点认证的,第一接入点可以为终端提供网络接入服务。通过本实施例的提供网络接入服务的方法,一方面,通过双重加密(一重是获取待加密密码,一重是对待加密密码进行加密),避免可疑终端接入第一接入点,进而避免可疑终端对其他终端进行攻击,提升了网络安全性;另一方面,由于第一接入点直接为终端提供网络接入服务,所有的信息不需要再通过其他接入点,通信效率高,用户体验好。

实施例3:

参照图3,本实施例提供一种提供网络接入服务的方法,其与实施例1、实施例2不同的是,方法用于网络的第二接入点。

本实施例的提供网络接入服务的方法具体包括:

s301、接收第一接入点发送的认证申请信息,认证申请信息包括第一加密结果以及随机数。

第一接入点在接收到终端发送的网络接入申请信息后,生成随机数,并根据网络接入申请信息中第二接入点的标识,使用共享区块链向第二接入点发送认证申请信息,第二接入点接收第一接入点发送的认证申请信息。

其中,认证申请信息包括接入申请信息中包括的第一加密结果。

s302、按照与第二接入点对应的终端预先约定的算法从密码本中获取待加密密码,并根据与同态加密密钥对应的同态解密密钥对第一加密结果进行解密获取解密结果。

第二接入点在接收到认证申请信息之后,根据与终端约定的从密码本中获取待加密密码的算法从密码本(与终端共同协商,预先生成的密码本)中,获取待加密密码rk’,同时,第二接入点使用与终端预先约定的同态加密密钥hk对应的同态解密密钥对第一加密结果e(rk)进行解密,获取解密结果rk。

s303、在加密结果与待加密密码相同的情况下,使用同态加密密钥对待加密密码和随机数进行加密获取第二加密结果,并通过共享区块链向第一接入点发送第二加密结果。

若解密结果rk与待加密结果rk’一致,说明终端与第二接入点是预先约定的,第二接入点使用同态加密密钥hk对待加密密码rk和随机数r进行同态加密,获取第二加密结果e(rk+r)。

第二接入点通过共享区块链向第一接入点发送第二加密结果e(rk+r),第一接入点在得到第二加密结果e(rk+r)之后,使用同态加密密钥hk对随机数r进行机密获取第三加密结果e(r),在第三加密结果e(r)和第一加密结果e(rk)之和与第二加密结果e(rk+r)相同的情况下,第一接入点为终端提供网络接入服务。

本实施例的提供网络接入服务的方法中,终端和第二接入点根据预先预定的算法获取待加密密码,并根据预先约定的算法对待加密密码进行加密,若终端对待加密密码进行加密获取第一加密结果和第一接入点对生成的随机数加密的第三加密结果的和与第二接入点对待加密密码和第一接入点生成的随机数进行加密的第二加密结果相同,说明终端和第二接入点加密使用的同态加密密钥以及获取的待加密密码都一致,进一步说明终端是与第二接入点预先约定的,即终端的身份是经过第二接入点认证的,第一接入点可以为终端提供网络接入服务。通过本实施例的提供网络接入服务的方法,一方面,通过双重加密(一重是获取待加密密码,一重是对待加密密码进行加密),避免可疑终端接入第一接入点,进而避免可疑终端对其他终端进行攻击,提升了网络安全性;另一方面,由于第一接入点直接为终端提供网络接入服务,所有的信息不需要再通过其他接入点,通信效率高,用户体验好。

实施例4:

参照图4,本实施例提供一种提供网络接入服务的方法。

其中,本实施例中网络具体可以是广域互联网,其包括多个接入点(具体可以是路由器、交换机等释放wi-fi信号的设备或装置)。

网络的多个接入点中都有自己对应的接入密码(或者说是wi-fi密码),这些接入点可以组成一个共享区块链,每个接入点都是该共享区块链的一个节点,其可以将其自己的标识,具体可以是接入点的ssid,(servicesetidentifier,服务集标识符)以及自己的ip(internetprotocol,互联网协议)地址存储在区块链中。

接入点在加入共享区块链之后,可以在公开的ssid中提示自己已加入共享区块链,以通知与其对应的终端(或者说与其连接的终端)其已加入共享区块链,那么对拥有该接入点wi-fi密码的终端来说,该接入点就是终端的homewifi,其他将标识以及ip地址发送至共享区块链的接入点就是终端的visitwifi。

本实施例的提供网络接入服务的方法具体包括:

s401、终端按照与终端对应的第二接入点预先约定的算法从密码本中获取待加密密码,使用同态加密密钥对待加密密码进行同态加密获取第一加密结果。

对于一个终端(如手机、平板电脑等)来说,在其拥有一个接入点(如终端用户所在的家庭的家庭wi-fi)的接入密码的情况下,该接入点(如终端用户所在的家庭的家庭wi-fi)就可以成为其对应的homewifi。

当终端拥有的接入密码对应的接入点(即终端对应的homewifi)未工作且该homewifi已经加入共享区块链(如共享区块链aaa.blockchain,homewifi为homewifi@aaa.blockchain)中,或终端正好处在其对应的homewifi释放的wi-fi信号覆盖范围之外的情况下,终端搜索共享区块链其他节点释放的其他wi-fi信号。

终端在搜索到其他共享区块链的节点(如visitwifi@aaa.blockchain)wi-fi信号的情况下,终端根据与homewifi预先约定的从密码本中获取待加密密码的算法从与第二接入点预先协商生成的密码本中获取待加密密码rk,并使用与第二接入点约定的同态加密密钥hk对待加密密码rk进行加密获取第一加密结果e(rk)。

具体的,参照图5,终端按照与终端对应的第二接入点预先约定的算法从密码本中获取待加密密码,使用同态加密密钥对待加密密码进行同态加密获取第一加密结果(s401)可以包括:

s501、终端根据接入时间点按照与第二接入点预先约定的算法从密码本中获取待加密密码,使用同态加密密钥对待加密密码进行同态加密获取第一加密结果。

终端和第二接入点,即homewifi共同协商生成一个密码本,根据该密码本可以定时同步生成大量的密码,终端和homewifi可以约定按照一定规则同步修改密码,如每5秒钟修改一次密码。终端在确定visitwifi之后,可以将发现visitwifi(或者说确定visitwifi)的时间定为接入时间点tn,并将时间为接入时间点tn时的密码获取待加密密码。

终端使用与homewifi预先约定的同态加密密钥hk对待加密密码rk进行同态加密,获取第一加密结果e(rk)。

其中,与homewifi预先约定的共享密钥sk可以是homewifi的接入密码,也可以其他homewifi与终端都知道的密码。

更加具体的,参照图6,终端根据接入时间点按照与第二接入点预先约定的算法从密码本中获取待加密密码(s501),还可以包括:

s601、根据接入时间点按照预先约定的算法生成一个正整数n。

s602、确定密码本中第n个密码为待加密密码。

终端和homewifi共同协商生成一个密码本,根据该密码本可以定时同步生成大量的密码,终端和homewifi可以约定按照一定规则同步修改密码,如每5秒钟修改一次密码。

终端在确定visitwifi之后,可以将确定visitwifi的时间点定为接入时间点tn,并根据接入时间点tn从每隔一段时间修改的密码本中获取待加密密码,如根据接入时间点按照预先与homewifi约定的算法生成一个正整数n,将密码本中的第n个密码作为待加密密码rk。

终端在获取待加密密码rk之后,使用与homewifi预先约定的同态加密密钥hk对待加密密码rk进行同态加密,获取第一加密结果e(rk)。

s402、终端向第一接入点发送网络接入申请信息,网络接入申请信息包括第一加密结果以及第二接入点的标识。

终端获取第一加密结果e(rk)后,将第一加密结果e(rk)、第二接入点的标识,即homewifi的标识写入网络接入申请信息中,并将网络接入申请信息发送至第一接入点,即visitwifi。

在待加密密码rk是终端根据接入时间点tn获取的情况下,网络接入申请信息还包括接入时间点tn。

需要强调的是,终端在搜索到多个wi-fi信号之后,可能会向多个wi-fi信号对应的接入点都发送网络接入申请信息,对于每一个网络接入申请信息对应的提供网络接入服务的过程而言,接收该网络接入申请信息的接入点就是第一接入点。

s403、第一接入点接收终端发送的网络接入申请信息。

s404、第一接入点生成随机数,根据第二接入点的标识通过共享区块链向第二接入点发送认证申请信息,认证申请信息包括第一加密结果以及随机数。

第一接入点,即visitwifi,接收终端发送的网络接入申请信息,并在接收到网络接入申请信息后,生成一个随机数r,根据网络接入申请信息中第二接入点的标识,使用共享区块链向第二区块链发送认证申请信息。

具体的,visitwifi可以使用区块链的私钥对认证申请信息进行签名,使用广播的方式将认证申请信息发送至第二接入点,即homewifi。

其中,认证申请信息包括其中,认证申请信息包括接入申请信息中包括的第一加密结果e(rk)以及第一接入点生成的随机数r。在待加密密码rk是终端根据接入时间点tn获取,即终端发送的网络接入申请信息包括接入时间点tn的情况下,认证申请信息还包括接入时间点tn。

s405、第二接入点接收第一接入点发送的认证申请信息。

s406、第二接入点按照与第二接入点对应的终端预先约定的算法从密码本中获取待加密密码,并根据与同态加密密钥对应的同态解密密钥对第一加密结果进行解密获取解密结果。

s407、第二接入点在加密结果与待加密密码相同的情况下,使用同态加密密钥对待加密密码和随机数进行加密获取第二加密结果,并通过共享区块链向第一接入点发送第二加密结果。

第二接入点(即homewifi)对第一接入点(即visitwifi)广播的消息的私钥签名进行验证,在验证通过后,获取认证申请信息。

第二接入点(即homewifi)在接收到认证申请信息之后,根据与终端约定的从密码本中获取待加密密码的算法从密码本(与终端共同协商,预先生成的密码本)中,获取待加密密码rk’,同时,第二接入点使用与终端预先约定的同态加密密钥hk对应的同态解密密钥对第一加密结果e(rk)进行解密,获取解密结果rk。

若解密结果rk与待加密结果rk’一致,说明终端与第二接入点(即homewifi)是预先约定的,第二接入点(即homewifi)使用同态加密密钥hk对待加密密码rk和随机数r进行同态加密,获取第二加密结果e(rk+r)。

具体的,参照图7,第二接入点按照与第二接入点对应的终端预先约定的算法从密码本中获取待加密密码(s406)可以包括:

s701、第二接入点根据接入时间点按照与终端预先约定的算法从密码本中获取待加密密码。

终端和homewifi共同协商生成一个密码本,根据该密码本可以定时同步生成大量的密码,终端和homewifi可以约定按照一定规则同步修改密码,如每5秒钟修改一次密码。

homewifi在获取接入时间点tn后,根据接入时间点tn按照预先与homewifi约定的算法生成一个正整数n,将密码本中的第n个密码作为待加密密码rk’。

homewifi使用与终端预先约定的同态加密密钥hk对应的同态解密密钥对第一加密结果e(rk)进行解密,获取解密结果rk。

其中,与homewifi预先约定的共享密钥sk’可以是homewifi的接入密码,也可以其他homewifi与终端都知道的密码。

若解密结果rk与待加密结果rk’一致且第一次出现,说明终端与第二接入点(即homewifi)是预先约定的,第二接入点(即homewifi)使用同态加密密钥hk对待加密密码rk和随机数r进行同态加密,获取第二加密结果e(rk+r)。

需要强调的是,由于待加密密码是根据接入时间点从密码本中获取的,因此若homewifi获取的第二加密结果不是第一次出现,则说明发送网络接入申请信息的终端可能不是正常终端,homewifi可以向visitwifi发送拒绝信息。

在获取第二加密结果后,homewifi对第二加密结果e(rk+r)进行签名,并通过共享区块链将第二加密结果e(rk+r)发送至第一接入点,即visitwifi。

具体的,通过共享区块链向第一接入点(即visitwifi)发送第二加密结果,即e(rk+r),包括:使用第二接入点的私钥对第二加密结果进行签名后,将第二加密结果广播至共享区块链的所有节点。

即第二接入点(homewifi)使用homewifi的私钥对第二加密结果进行签名,并在区块链中发布,通过广播的方式将第二加密结果广播至共享区块链的所有节点。

s408、第一接入点接收第二接入点发送的第二加密结果。

s409、第一接入点使用同态加密密钥对随机数进行加密获取第三加密结果,在第一加密结果和第三加密结果的和与第二加密结果相同的情况下,为终端提供网络接入服务。

visitwifi接收homewifi发送的第二加密结果e(rk+r),并在得到第二加密结果e(rk+r)之后,使用同态加密密钥hk对随机数r进行机密获取第三加密结果e(r),并比较第三加密结果e(r)和第一加密结果e(rk)之和与第二加密结果e(rk+r)是否相同。

在第三加密结果e(r)和第一加密结果e(rk)之和与第二加密结果e(rk+r)相同的情况下,即e(r)+e(rk)=e(rk+r),由于同态加密具有“对经过同态加密的数据进行处理得到一个输出,将这一输出进行解密,其结果与用同一方法处理未加密的原始数据得到的输出结果是一样”的特点,则说明终端和第二接入点使用的是相同的同态加密密钥和相同的待加密密码进行的加密,也就是说,终端确实是和第二接入点预先约定了,其身份是被第二接入点认证过的,不是可疑终端或黑客,可以为该终端提供网络接入服务。

在第三加密结果e(r)和第一加密结果e(rk)之和与第二加密结果e(rk+r)不相同的情况下,即e(r)+e(rk)≠e(rk+r),说明终端和第二接入点使用的可能是不同的同态加密密钥或不同的待加密密码进行的加密,也就是说,终端确实是和第二接入点并没有预先约定,其身份并没有被第二接入点认证,可能是可疑终端或黑客,则不为该终端提供网络接入服务。

其中,同态加密密钥hk可以是第二接入点共享在共享区块链中,第一接入点可直接从共享区块链获取,也可以是随着第二加密结果一起发送给第一接入点,供第一接入点使用。

本实施例的提供网络接入服务的方法中,终端和第二接入点分别根据预先预定的算法获取待加密密码,并根据预先约定的算法对待加密密码进行加密,若终端对待加密密码进行加密获取第一加密结果和第一接入点对生成的随机数加密的第三加密结果的和与第二接入点对待加密密码和第一接入点生成的随机数进行加密的第二加密结果相同,说明终端和第二接入点加密使用的同态加密密钥以及获取的待加密密码都一致,进一步说明终端是与第二接入点预先约定的,即终端的身份是经过第二接入点认证的,第一接入点可以为终端提供网络接入服务。

通过本实施例的提供网络接入服务的方法,一方面,可以避免可疑终端接入第一接入点(因为可疑终端没有与第二接入点预先约定,其需要知道密码本以及预先约定的算法才可以获取正确的加密结果),避免可疑终端对其他终端进行攻击,提升了网络安全性;另一方面,由于第一接入点直接为终端提供网络接入服务,所有的信息不需要再通过其他接入点,通信效率高,用户体验好。

实施例5:

参照图8,本实施例提供一种网络的第一接入点,第一接入点为共享区块链的节点,第一接入点包括:

终端接收模块,用于接收终端发送的网络接入申请信息,网络接入申请信息包括第一加密结果以及终端对应的第二接入点的标识,第一加密结果为终端使用同态加密密钥对待加密密码进行同态加密得到,待加密密码为终端按照与第二接入点预先约定的算法从密码本中获取;

区块链发送模块,用于生成随机数,根据第二接入点的标识通过共享区块链向第二接入点发送认证申请信息,认证申请信息包括第一加密结果以及随机数;

区块链接收模块,用于接收第二接入点发送的第二加密结果,第二加密结果为第二接入点使用与同态加密密钥对待加密密码和随机数进行同态加密得到;

接入模块,用于使用同态加密密钥对随机数进行加密获取第三加密结果,在第一加密结果和第三加密结果的和与第二加密结果相同的情况下,为终端提供网络接入服务。

本实施例的网络的第一接入点中,第一接入点和第二接入点为同一个共享区块链的不同节点,第一接入点接收终端发送的第一加密结果,并通过区块链向第二接入点发送第一加密结果,并根据第二接入点返回的第二加密结果判断是否为终端提供网络接入服务。通过本实施例的提供网络接入服务的方法,一方面,可以避免可疑终端接入第一接入点,进而避免可疑终端对其他终端进行攻击,提升了网络安全性;另一方面,在通过验证之后,第一接入点直接为终端提供网络接入服务,所有的信息不需要再通过其他接入点,通信效率高,用户体验好。

实施例6:

参照图9,本实施例提供一种终端,包括:

终端加密模块,用于根按照与终端对应的第二接入点预先约定的算法从密码本中获取待加密密码,使用同态加密密钥对待加密密码进行同态加密获取第一加密结果;

发送模块,用于向第一接入点发送网络接入申请信息,网络接入申请信息包括第一加密结果以及第二接入点的标识。

本实施例的网络的终端中,终端和第二接入点根据预先预定的算法获取待加密密码,并根据预先约定的算法对待加密密码进行加密,若终端对待加密密码进行加密获取第一加密结果和第一接入点对生成的随机数加密的第三加密结果的和与第二接入点对待加密密码和第一接入点生成的随机数进行加密的第二加密结果相同,说明终端和第二接入点加密使用的同态加密密钥以及获取的待加密密码都一致,进一步说明终端是与第二接入点预先约定的,即终端的身份是经过第二接入点认证的,第一接入点可以为终端提供网络接入服务。通过本实施例的提供网络接入服务的方法,一方面,通过双重加密(一重是获取待加密密码,一重是对待加密密码进行加密),避免可疑终端接入第一接入点,进而避免可疑终端对其他终端进行攻击,提升了网络安全性;另一方面,由于第一接入点直接为终端提供网络接入服务,所有的信息不需要再通过其他接入点,通信效率高,用户体验好。

实施例7:

参照图10,本实施例提供一种第二接入点,第二接入点为共享区块链的节点,该第二接入点包括:

接收模块,用于接收第一接入点发送的认证申请信息,认证申请信息包括第一加密结果以及随机数;

接入点加密模块,用于按照与第二接入点对应的终端预先约定的算法从密码本中获取待加密密码,并根据与同态加密密钥对应的同态解密密钥对第一加密结果进行解密获取解密结果;

通信模块,用于在加密结果与待加密密码相同的情况下,使用同态加密密钥对待加密密码和随机数进行加密获取第二加密结果,并通过共享区块链向第一接入点发送第二加密结果。

本实施例的第二接入点中,终端和第二接入点根据预先预定的算法获取待加密密码,并根据预先约定的算法对待加密密码进行加密,若终端对待加密密码进行加密获取第一加密结果和第一接入点对生成的随机数加密的第三加密结果的和与第二接入点对待加密密码和第一接入点生成的随机数进行加密的第二加密结果相同,说明终端和第二接入点加密使用的同态加密密钥以及获取的待加密密码都一致,进一步说明终端是与第二接入点预先约定的,即终端的身份是经过第二接入点认证的,第一接入点可以为终端提供网络接入服务。通过本实施例的提供网络接入服务的方法,一方面,通过双重加密(一重是获取待加密密码,一重是对待加密密码进行加密),避免可疑终端接入第一接入点,进而避免可疑终端对其他终端进行攻击,提升了网络安全性;另一方面,由于第一接入点直接为终端提供网络接入服务,所有的信息不需要再通过其他接入点,通信效率高,用户体验好。

可以理解的是,以上实施方式仅仅是为了说明本发明的原理而采用的示例性实施方式,然而本发明并不局限于此。对于本领域内的普通技术人员而言,在不脱离本发明的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本发明的保护范围。

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