一种密码修改方法、系统及目标服务器和存储介质与流程

文档序号:17726651发布日期:2019-05-22 02:33阅读:175来源:国知局
一种密码修改方法、系统及目标服务器和存储介质与流程

本申请涉及信息安全技术领域,更具体地说,涉及一种密码修改方法、系统及一种目标服务器和一种计算机可读存储介质。



背景技术:

随着网络空间的发展使我们生活更加便利的同时,也带来了具有挑战性的问题,包括如密码疲劳、钓鱼诈骗、撞库攻击等一系列严重的网络安全威胁。用户长期使用同一个密码,容易发生撞库,被黑客攻击。而且一旦当发生密码泄露事件,用户需要登录服务器进行密码修改,修改密码步骤繁琐。

因此,如何简化修改密码的步骤、提高修改密码的效率是本领域技术人员需要解决的技术问题。



技术实现要素:

本申请的目的在于提供一种密码修改方法、系统及一种目标服务器和一种计算机可读存储介质,简化了修改密码的步骤,提高了修改密码的效率。

为实现上述目的,本申请提供了一种密码修改方法,应用于目标服务器,包括:

接收目标app发送的用户信息;其中,所述用户信息包括第三方服务器的原始密码和所述目标app根据预设规则生成的新密码;

将所述用户信息转发至所述第三方服务器,以便所述第三方服务器对所述用户信息进行认证,并向所述目标服务器发送认证结果;

将所述认证结果发送至所述目标app,以便所述目标app根据所述用户信息更新所述第三方服务器的密码。

其中,将所述用户信息转发至所述第三方服务器,以便所述第三方服务器对所述用户信息进行认证,并向所述目标服务器发送认证结果,包括:

将所述用户信息加密转发至所述第三方服务器,以便所述第三方服务器对接收到的信息进行解密得到所述用户信息,并对所述用户信息进行认证,向所述目标服务器发送认证结果。

其中,所述接收目标app发送的用户信息,包括:

接收目标app发送的用户信息,并将所述用户信息存储至消息队列中;

相应的,将所述用户信息转发至所述第三方服务器,包括:

由消息队列服务器调度将所述用户信息转发至所述第三方服务器。

其中,将所述用户信息转发至所述第三方服务器之前,还包括:

判断所述第三方服务器是否空闲;

若是,则执行将所述用户信息转发至所述第三方服务器的步骤。

其中,判断所述第三方服务器是否空闲,包括:

获取所述第三方服务器的状态信息,根据所述状态信息判断所述第三方服务器是否空闲。

其中,判断所述第三方服务器是否空闲,包括:

获取所述第三方服务器在预设时间段内的响应数据;

根据所述响应数据计算所述第三方服务器的可用度,并判断所述可用度是否大于预设值;

若是,则判定所述第三方服务器空闲;若否,则判定所述第三方服务器繁忙。

其中,所述目标服务器包括登录易服务器,所述目标app包括登录易app。

为实现上述目的,本申请提供了一种密码修改系统,应用于目标服务器,包括:

接收模块,用于接收目标app发送的用户信息;其中,所述用户信息包括第三方服务器的原始密码和所述目标app根据预设规则生成的新密码;

转发模块,用于将所述用户信息转发至所述第三方服务器,以便所述第三方服务器对所述用户信息进行认证,并向所述目标服务器发送认证结果;

发送模块,用于将所述认证结果发送至所述目标app,以便所述目标app根据所述用户信息更新所述第三方服务器的密码。

为实现上述目的,本申请提供了一种目标服务器,包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时实现如上述密码修改方法的步骤。

为实现上述目的,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述密码修改方法的步骤。

通过以上方案可知,本申请提供的一种密码修改方法,包括:接收目标app发送的用户信息;其中,所述用户信息包括第三方服务器的原始密码和所述目标app检测到密码泄露事件或到达预设时刻根据预设规则生成的新密码;将所述用户信息转发至所述第三方服务器,以便所述第三方服务器对所述用户信息进行认证,并向所述目标服务器发送认证结果;将所述认证结果发送至所述目标app,以便所述目标app根据所述用户信息更新所述第三方服务器的密码。

本申请提供的密码修改方法,在检测到密码泄露事件或到达预设时刻自动修改密码,新密码由目标app根据预设规则自动生成且保存在目标app中。与现有技术中必须在登录状态下修改密码的方案相比,实现自动修改密码,无需用户记忆与输入新密码,简化了修改密码的步骤,提高了修改密码的效率,避免了密码疲劳与被撞库的风险。本申请还公开了一种密码修改系统及一种目标服务器和一种计算机可读存储介质,同样能实现上述技术效果。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本申请。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:

图1为根据一示例性实施例示出的一种密码修改方法的流程图;

图2为定时修改密码的运行机制示意图;

图3为即时修改密码的运行机制示意图;

图4为根据一示例性实施例示出的另一种密码修改方法的流程图;

图5为根据一示例性实施例示出的又一种密码修改方法的流程图;

图6为根据一示例性实施例示出的一种密码修改系统的结构图;

图7为根据一示例性实施例示出的一种目标服务器的结构图。

具体实施方式

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

本申请实施例公开了一种密码修改方法,简化了修改密码的步骤,提高了修改密码的效率。

参见图1,根据一示例性实施例示出的一种密码修改方法的流程图,如图1所示,包括:

s101:接收目标app(中文全称:应用,英文全称:application)发送的用户信息;其中,所述用户信息包括第三方服务器的原始密码和所述目标app根据预设规则生成的新密码;

本实施例的执行主体为目标服务器,优选为登录易服务器,相应的,目标app优选为登录易app,登录易开放平台是一套完整的身份认证系统,允许所有网站和app便捷地接入使用登录易的多方闭环身份机制。网站和app可以通过登录易开放平台调用登录易的功能。用户登录的时候,通过登录易服务器转发用户的账号信息到第三方服务器的接口,第三方服务器认证成功之后建立连接。需要说明的是,目标服务器与第三方服务器之间的数据通信采用https协议(中文全称:超文本传输安全协议,英文全称:hypertexttransferprotocoloversecuresocketlayer或hypertexttransferprotocolsecure),但对于并发量高的网站也可以采用socket实现的rpc(中文全称:—远程过程调用,英文全称:remoteprocedurecall)协议,它在数据通信的时候无需每一次都要进行tcp(中文全称:传输控制协议,英文全称:

transmissioncontrolprotocol)三次握手和数据传送的时候不需要带https头信息。

本步骤的触发条件采用定时修改、即时修改或用户主动触发的机制。对于定时修改如图2所示,目标app会每隔一个周期根据预设规则自动生成新密码,该周期可以由用户设定,例如设定为1天,即在每天的某一个固定时刻触发本步骤。可以理解的是,对于不同的第三方服务器可以设置生成不同长度和复杂度的密码,即针对不同的第三方服务器设置不同的预设规则,在此不进行具体限定。

对于即时修改如图3所示,当网站发生密码泄漏事件的时候或者是当某网站大量钓鱼出现的时候,目标服务器会触发自动修改密码机制,下发修改密码信息到目标app上,目标app根据上述方式生成新密码。对于用户主动触发机制,可以在目标app中设置一个修改密码的按键,当用户点击后,执行本步骤。

目标app生成新密码后,将包含原始密码和该新密码的用户信息发送至目标服务器。可以理解的是,针对不同的第三方服务器,此处的用户信息还可以包括其他内容,在此不进行具体限定。例如,对于利用账号密码登录的第三方服务器,用户信息还包括用户在该第三方服务器的账号,对于利用通过统一id登录的第三方服务器,用户信息还包括该第三方服务器的id。

s102:将所述用户信息转发至所述第三方服务器,以便所述第三方服务器对所述用户信息进行认证,并向所述目标服务器发送认证结果;

在本步骤中,目标服务器将该用户信息转发至第三方服务器,第三方服务器对该用户信息进行认证,认证成功后利用新密码替换数据库中的原始密码,并返回认证成功的认证结果,认证失败则返回认证失败的认证结果。

作为一种优选上述方式,本步骤可以包括:将所述用户信息加密转发至所述第三方服务器,以便所述第三方服务器对接收到的信息进行解密得到所述用户信息,并对所述用户信息进行认证。具体的,可以采用rsa+aes对用户信息进行加密,由于rsa+aes为现有技术中的成熟技术,在此不再赘述。

s103:将所述认证结果发送至所述目标app,以便所述目标app根据所述用户信息更新所述第三方服务器的密码。

在本步骤中,目标服务器将认证结果转发至目标app,当认证结果为认证成功时目标app根据用户信息更新第三方服务器的密码,可以保证修改密码的原子性,即目标app保存的第三方网站的新密码和第三方服务器中保存的新密码是一致的。当认证结果为认证失败时(即修改密码失败时),目标app可以停止操作并通知用户,也可以选择经过n秒后重新执行s101的步骤。

需要说明的是,密码修改成功之后会告知用户密码已被修改,并在目标app中记录当前修改密码事件,修改不成功也记录不成功的原因,方便用户查知。

本申请实施例提供的密码修改方法,在检测到密码泄露事件或到达预设时刻自动修改密码,新密码由目标app根据预设规则自动生成且保存在目标app中。与现有技术中必须在登录状态下修改密码的方案相比,实现自动修改密码,无需用户记忆与输入新密码,简化了修改密码的步骤,提高了修改密码的效率,避免了密码疲劳与被撞库的风险。

本申请实施例公开了一种密码修改方法,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。具体的:

参见图4,根据一示例性实施例示出的另一种密码修改方法的流程图,如图4所示,包括:

s201:接收目标app发送的用户信息,并将所述用户信息存储至消息队列中;

s202:由消息队列服务器调度将所述用户信息转发至所述第三方服务器,以便所述第三方服务器对所述用户信息进行认证,并向所述目标服务器发送认证结果;

在本实施例中,目标服务器接收到用户信息后,会将该用户信息存储至消息队列中,并由目标服务器中的消息队列服务器调度将该用户信息转发至所述第三方服务器,可以保证第三方服务器的安全性,即确保修改密码接口的并发量是第三方服务器可承受的。

s203:将所述认证结果发送至所述目标app,以便所述目标app根据所述用户信息更新所述第三方服务器的密码。

本申请实施例公开了一种密码修改方法,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。具体的:

参见图5,根据一示例性实施例示出的又一种密码修改方法的流程图,如图5所示,包括:

s301:接收目标app发送的用户信息,并判断所述第三方服务器是否空闲;若是,则进入s302;若否,则向所述目标app返回服务器正忙;

在本实施例中,为了保证第三方服务器的安全性,可以在将用户信息转发至第三方服务器之前判定第三方服务器是否空闲,空闲时进入s302,否则向目标app返回服务器正忙,停止操作或经过n秒后重新执行判断第三方服务器是否空闲的步骤。

对于判断所述第三方服务器是否空闲,可以采用获取第三方服务器的状态信息,根据该状态信息判断第三方服务器是否空闲的方式,也可以采用计算第三方服务器的可用度的方式,即判断所述第三方服务器是否空闲的步骤可以包括:获取所述第三方服务器在预设时间段内的响应数据;根据所述响应数据计算所述第三方服务器的可用度,并判断所述可用度是否大于预设值;若是,则判定所述第三方服务器空闲;若否,则判定所述第三方服务器繁忙。

在具体实施中,假设预设请求超时时间为p(p为小于一个时间段的时间长度),当前时刻所属时间段为tk,在此不进行具体限定时间段长度(例如可以用1秒钟为时间段长度,可以预设,也可以动态调整),统计当前时刻之前m个时间段(tk-1-tk-m)内的响应数据,如果对该第三方服务器所记录到的时间段不足m个,则仅统计所有已记录的时间段的响应数据仅当某个时间段内登录易服务器向第三方服务器发出了请求才记录该时间段内的响应数据。响应数据可以包括登录易服务器请求第三方服务器接口次数nk-i、请求失败次数ck-i、该时间段内平均响应时间atk-i,根据上述响应数据可以使用多种方法计算第三方服务器可用度sk(0≤sk<1)。若第三方网站服务器的可用度大于预设值v,登录易服务器将用户信息转发给第三方服务器,否则向所述登录易app返回服务器正忙。预设值v初始可优选为0.2,若sk>v,登录易服务器将用户信息转发给第三方服务器,如果第三方服务器响应超时,则增大预设值v为0.3,下一次请求前再次判断sk是否大于新的v,多次试验后可以固定v的值。

sk可以选择多种计算方法,以下只是其中优选的四种:

s302:将所述用户信息转发至所述第三方服务器,以便所述第三方服务器对所述用户信息进行认证,并向所述目标服务器发送认证结果;

s303:将所述认证结果发送至所述目标app,以便所述目标app根据所述用户信息更新所述第三方服务器的密码。

下面对本申请实施例提供的一种密码修改系统进行介绍,下文描述的一种密码修改系统与上文描述的一种密码修改方法可以相互参照。

参见图6,根据一示例性实施例示出的一种密码修改系统的结构图,如图6所示,包括:

接收模块601,用于接收目标app发送的用户信息;其中,所述用户信息包括第三方服务器的原始密码和所述目标app根据预设规则生成的新密码;

转发模块602,用于将所述用户信息转发至所述第三方服务器,以便所述第三方服务器对所述用户信息进行认证,并向所述目标服务器发送认证结果;

发送模块603,用于将所述认证结果发送至所述目标app,以便所述目标app根据所述用户信息更新所述第三方服务器的密码。

本申请实施例提供的密码修改系统,在检测到密码泄露事件或到达预设时刻自动修改密码,新密码由目标app根据预设规则自动生成且保存在目标app中。与现有技术中必须在登录状态下修改密码的方案相比,实现自动修改密码,无需用户记忆与输入新密码,简化了修改密码的步骤,提高了修改密码的效率,避免了密码疲劳与被撞库的风险。

在上述实施例的基础上,作为一种优选实施方式,所述转发模块602具体为将所述用户信息加密转发至所述第三方服务器,以便所述第三方服务器对接收到的信息进行解密得到所述用户信息,并对所述用户信息进行认证,向所述目标服务器发送认证结果的模块。

在上述实施例的基础上,作为一种优选实施方式,所述接收模块601具体为接收目标app发送的用户信息,并将所述用户信息存储至消息队列中的模块;

相应的,所述转发模块602具体为由消息队列服务器调度将所述用户信息转发至所述第三方服务器的模块。

在上述实施例的基础上,作为一种优选实施方式,还包括:

判断模块,用于判断所述第三方服务器是否空闲;若是,则启动所述转发模块602的工作流程。

在上述实施例的基础上,作为一种优选实施方式,所述判断模块具体为获取所述第三方服务器的状态信息,根据所述状态信息判断所述第三方服务器是否空闲的模块。

在上述实施例的基础上,作为一种优选实施方式,所述判断模块包括:

获取单元,用于获取所述第三方服务器在预设时间段内的响应数据;

计算单元,用于根据所述响应数据计算所述第三方服务器的可用度,并判断所述可用度是否大于预设值;若是,则判定所述第三方服务器空闲;若否,则判定所述第三方服务器繁忙。

关于上述实施例中的系统,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

本申请还提供了一种目标服务器,参见图7,本申请实施例提供的一种目标服务器700的结构图,如图7所示,可以包括处理器11和存储器12。该目标服务器700还可以包括多媒体组件13,输入/输出(i/o)接口14,以及通信组件15中的一者或多者。

其中,处理器11用于控制该目标服务器700的整体操作,以完成上述的密码修改方法中的全部或部分步骤。存储器12用于存储各种类型的数据以支持在该目标服务器700的操作,这些数据例如可以包括用于在该目标服务器700上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器12可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(staticrandomaccessmemory,简称sram),电可擦除可编程只读存储器(electricallyerasableprogrammableread-onlymemory,简称eeprom),可擦除可编程只读存储器(erasableprogrammableread-onlymemory,简称eprom),可编程只读存储器(programmableread-onlymemory,简称prom),只读存储器(read-onlymemory,简称rom),磁存储器,快闪存储器,磁盘或光盘。多媒体组件13可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器12或通过通信组件15发送。音频组件还包括至少一个扬声器,用于输出音频信号。i/o接口14为处理器11和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件15用于该目标服务器700与其他设备之间进行有线或无线通信。无线通信,例如wi-fi,蓝牙,近场通信(nearfieldcommunication,简称nfc),2g、3g或4g,或它们中的一种或几种的组合,因此相应的该通信组件15可以包括:wi-fi模块,蓝牙模块,nfc模块。

在一示例性实施例中,目标服务器700可以被一个或多个应用专用集成电路(applicationspecificintegratedcircuit,简称asic)、数字信号处理器(digitalsignalprocessor,简称dsp)、数字信号处理设备(digitalsignalprocessingdevice,简称dspd)、可编程逻辑器件(programmablelogicdevice,简称pld)、现场可编程门阵列(fieldprogrammablegatearray,简称fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的密码修改方法。

在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述密码修改方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器12,上述程序指令可由目标服务器700的处理器11执行以完成上述的密码修改方法。

说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。

还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

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