一种验证码获取方法、装置和终端与流程

文档序号:16310769发布日期:2018-12-19 05:16阅读:186来源:国知局
一种验证码获取方法、装置和终端与流程

本发明实施例涉及安全技术领域,尤其涉及一种预验证码获取的方法、装置和终端。

背景技术

随着各类网络安全事件的出现,比如网络账号和密码的泄露或被窃取,普通的采用验证码登陆账号的方式,已经不一定是安全的无风险操作了。为了更好的保护用户的隐私,越来越多的应用(application,简称app)开发商都会对应用的登录或是敏感操作使用双重认证保护机制,验证码(或者叫校验码)就是其中最常见的一种方式。其中,以短信(shortmessagingservice,简称sms)的形式接收的验证码(verificationcode),经常也被称作短信验证码。

目前在安卓(android)系统中,应用通过申请读取短信(textmessageorshortmessage,或叫短消息、简讯)权限可以读取系统中的所有短信,并从中获取验证码。除了短信应用,其他绝大部分应用申请短信权限的主要功能都是为了读取短信验证码。系统给应用读取所有短信记录的权限,当系统接收到一条短信后,会在系统中发送一个接收到短信的广播,具有读取短信权限的应用接收到广播后,读取短信内容,提取出短信中的验证码。

问题在于应用申请到的读取短信的权限是读取所有短信的权限,不仅可以读取正常的验证码信息,还可以读取用户在正常使用短信应用时收发的信息,这容易造成用户隐私的泄露。此外,短信验证码是属于敏感的内容,现有技术中任何具有短信读取权限的应用都可以读取其他应用的短信验证码,这也会导致移动终端上的移动支付等业务面临风险。



技术实现要素:

本发明实施例提供了一种验证码获取方法、装置和终端,能够防止用户短信信息泄露,保障短信中验证码信息的安全。

第一方面,提供了一种验证码获取方法,该方法包括以下步骤:待获取验证码的应用向服务器发送获取验证码请求,其中,该待获取验证码的应用安装在终端上,该终端安装的应用还包括输入法应用和短信应用;该短信应用接收该服务器发送的包含验证码的短信;该输入法应用读取该短信中的验证码,其中,该终端不允许该输入法应用和该短信应用以外的应用读取该终端中的短信。因此,短信中的验证码,只有输入法应用和短信应用能够读取,其他应用则不能读取,能够防止用户短信中的信息泄露;在移动支付或验证领域,也能够减小移动支付或验证面临的风险,保障移动支付或验证的安全。

结合第一方面,在第一方面第一种可能的实现方式中,该输入法应用读取该短信中的验证码之后,该方法还包括:将读取到的该验证码填入验证码输入区域。可以省去用户需要先记下验证码再手动输入验证码的麻烦,提升用户体验。

结合第一方面,在第一方面第二种可能的实现方式中,该输入法应用读取该短信中的验证码之后,该方法还包括:将读取到的该验证码显示在该输入法应用在该终端上的显示区域。可以省去用户打开短信应用查看验证码的麻烦。之后,用户按照显示在输入法应用区域的验证码,将验证码填入验证码输入框。这种先将验证码显示在输入法应用区域,用户再手动输入验证码的方案,相比于自动填入验证码的方案,可以保证验证码输入的准确性。

在一种可能的实现方式中,基于用户对输入法应用在终端上的显示区域上显示的验证码的点击操作,将该验证码填入验证码输入区域。

结合第一方面,在第一方面第三种可能的实现方式中,该输入法应用读取该短信中的验证码之后,该方法还包括:根据读取到的该验证码中包括的字符串的字符顺序,将该字符串中的字符逐个显示在该输入法应用的键盘上。这种方案以更加直观的方式提醒用户待输入的验证码。

在一种可能的实现方式中,将该字符串中的字符以动画的形式在输入法应用上逐个显示。该动画形式包括更改输入法应用区域对应字符的大小、形状、色彩、边框、底纹等。

结合第一方面至第一方面第三种可能的实现方式中任一种可能的实现方式,在第一方面第四种可能的实现方式中,该短信应用接收该服务器发送的包含验证码的短信具体为:在预设时间内,该短信应用接收该服务器发送的包含验证码的短信的个数至少为2;在该短信应用接收该服务器发送的包含验证码的短信之后,该方法还包括:确定在该预设时间内接收到的所有包含验证码的短信;确定该所有包含验证码的短信中包含应用标识的短信,其中,该应用标识用于标识该待获取验证码的应用;该输入法应用读取该短信中的验证码具体为:该输入法应用读取包含该应用标识的短信中的验证码。能够解决用户在一定时间内,收到多条验证码时,自动筛选符合条件的验证码,省去用户手动筛选的麻烦。

结合第一方面第四种可能的实现方式,在第一方面第五种可能的实现方式中,确定该所有包含验证码的短信中包含应用标识的短信,具体为:若确定该所有包含验证码的短信中包含应用标识的短信个数至少为2,确定包含应用标识的短信中接收时间最晚的短信;该输入法应用读取包含该应用标识的短信中的验证码,具体为:该输入法应用读取该接收时间最晚的短信中的验证码。能够省去用户手动选择符合条件的验证码的麻烦。

第二方面,提供了一种获取验证码的装置,该装置安装的应用包括待获取验证码的应用、输入法应用和短信应用;该装置还包括:发送单元,用于向服务器发送获取验证码请求;接收单元,用于接收该服务器发送的包含验证码的短信;读取单元,用于读取该短信中的验证码,其中,该装置不允许该输入法应用和该短信应用以外的应用读取该装置中的短信。因此,短信中的验证码,只有输入法应用和短信应用能够读取,其他应用则不能读取,能够防止用户短信中的信息泄露;在移动支付或验证领域,也能够减小移动支付或验证面临的风险,保障移动支付或验证的安全。

结合第二方面,在第二方面第一种可能的实现方式中,该装置还包括填入单元,用于将读取到的该验证码填入验证码输入区域。可以省去用户需要先记下验证码再手动输入验证码的麻烦,提升用户体验。

结合第二方面,在第二方面第二种可能的实现方式中,该装置还包括第一显示单元,用于将读取到的该验证码显示在该输入法应用在该装置上的显示区域。可以省去用户打开短信应用查看验证码的麻烦。之后,用户按照显示在输入法应用区域的验证码,将验证码填入验证码输入框。这种先将验证码显示在输入法应用区域,用户再手动输入验证码的方案,相比于自动填入验证码的方案,可以保证验证码输入的准确性。

结合第二方面,在第二方面第三种可能的实现方式中,该装置还包括第二显示单元,用于根据读取到的该验证码中包括的字符串的字符顺序,将该字符串中的字符逐个显示在该输入法应用的键盘上。这种方案以更加直观的方式提醒用户待输入的验证码。

在一种可能的实现方式中,将该字符串中的字符以动画的形式在输入法应用上逐个显示。该动画形式包括更改输入法应用区域对应字符的大小、形状、色彩、边框、底纹等。

结合第二方面至第二方面第三种可能的实现方式中任一种可能的实现方式,在第二方面第四种可能的实现方式中,该接收单元具体用于在预设时间内,接收该服务器发送的包含验证码的短信的个数至少为2;该装置还包括:第一确定单元,用于确定在该预设时间内接收到的所有包含验证码的短信;第二确定单元,用于确定该所有包含验证码的短信中包含应用标识的短信,其中,该应用标识用于标识该待获取验证码的应用;该读取单元,具体用于读取包含该应用标识的短信中的验证码。能够解决用户在一定时间内,收到多条验证码时,自动筛选符合条件的验证码,省去用户手动筛选的麻烦。

结合第二方面第四种可能的实现方式,在第二方面第五种可能的实现方式中,该第二确定单元,具体用于若确定该所有包含验证码的短信中包含应用标识的短信个数至少为2,确定包含应用标识的短信中接收时间最晚的短信;该读取单元,具体用于读取该接收时间最晚的短信中的验证码。能够省去用户手动选择符合条件的验证码的麻烦。

第三方面,提供了一种终端,包括处理器、存储器和收发器;该存储器用于存储应用,该应用安装在该终端上,该存储器存储的应用包括待获取验证码的应用、输入法应用和短信应用,该短信应用用于显示该终端中的短信;该收发器用于向服务器发送获取验证码请求;该收发器还用于接收该服务器发送的包含验证码的短信;该处理器用于读取该短信中的验证码,其中,该终端不允许该输入法应用和该短信应用以外的应用读取该终端中的短信。因此,短信中的验证码,只有输入法应用和短信应用能够读取,其他应用则不能读取,能够防止用户短信中的信息泄露;在移动支付或验证领域,也能够减小移动支付或验证面临的风险,保障移动支付或验证的安全。

结合第三方面,在第三方面第一种可能的实现方式中,该处理器还用于将读取到的该验证码填入验证码输入区域。可以省去用户需要先记下验证码再手动输入验证码的麻烦,提升用户体验。

结合第三方面,在第三方面第二种可能的实现方式中,该处理器还用于将读取到的该验证码显示在该输入法应用在该终端上的显示区域。可以省去用户打开短信应用查看验证码的麻烦。之后,用户按照显示在输入法应用区域的验证码,将验证码填入验证码输入框。这种先将验证码显示在输入法应用区域,用户再手动输入验证码的方案,相比于自动填入验证码的方案,可以保证验证码输入的准确性。

结合第三方面,在第三方面第三种可能的实现方式中,该处理器还用于根据读取到的该验证码中包括的字符串的字符顺序,将该字符串中的字符逐个显示在该输入法应用的键盘上。这种方案以更加直观的方式提醒用户待输入的验证码。

在一种可能的实现方式中,将该字符串中的字符以动画的形式在输入法应用上逐个显示。该动画形式包括更改输入法应用区域对应字符的大小、形状、色彩、边框、底纹等。

结合第三方面至第三方面第三种可能的实现方式中任一种可能的实现方式,在第三方面第四种可能的实现方式中,该收发器具体用于在预设时间内,接收该服务器发送的包含验证码的短信的个数至少为2;该处理器还用于确定在该预设时间内接收到的所有包含验证码的短信;确定该所有包含验证码的短信中包含应用标识的短信,其中,该应用标识用于标识该待获取验证码的应用;读取包含该应用标识的短信中的验证码。能够解决用户在一定时间内,收到多条验证码时,自动筛选符合条件的验证码,省去用户手动筛选的麻烦。

结合第三方面第四种可能的实现方式,在第三方面第五种可能的实现方式中,该处理器具体还用于若确定该所有包含验证码的短信中包含应用标识的短信个数至少为2,确定包含应用标识的短信中接收时间最晚的短信;读取该接收时间最晚的短信中的验证码。能够省去用户手动选择符合条件的验证码的麻烦。

第四方面提供了一种存储一个或多个程序的计算机可读存储介质,该一个或多个程序包括指令,该指令当被包括显示器和多个应用的便携式电子设备执行时使该便携式电子设备执行根据第一方面至第一方面第五种可能的实现方式中任一种可能的实现方式中的方法,其中,该显示器用于显示该便携式电子设备上运行的应用。

第五方面提供了验证码获取方法,该方法包括:待获取验证码的应用向服务器发送获取验证码请求,其中,该待获取验证码的应用运行在操作系统上;基于接收到的该服务器发送的包含验证码的短信,该操作系统读取该短信中的验证码,并将读取到的该验证码发送到该操作系统的剪切板上;该操作系统接收粘贴指令,将该剪切板上的验证码粘贴至验证码输入区域。该方案无需考虑是否赋予其他应用程序读取短信的权限,操作系统直接将验证码读取到剪切板上,既可以方便用户输入验证码,也可以保障用户短信隐私不被泄露。

第六方面提供了一种终端,包括处理器、存储器和收发器。该存储器用于存储待获取验证码的应用;该收发器用于向服务器发送获取验证码请求;该收发器还用于接收该服务器发送的包含验证码的短信;该处理器用于读取该短信中的验证码,并将读取到的该验证码发送到该操作系统的剪切板上;该处理器还用于根据粘贴指令,将该剪切板上的验证码粘贴至验证码输入区域。该方案无需考虑是否赋予其他应用程序读取短信的权限,处理器直接将验证码读取到剪切板上,既可以方便用户输入验证码,也可以保障用户短信隐私不被泄露。

在一种可能的实现方式中,待获取验证码的应用向服务器发送获取验证码的请求之前,上述方法还包括:接收基于用户触发的获取验证码操作。获取验证码的操作由用户触发,可以防止应用滥发验证码信息。

在一种可能的实现方式中,操作系统包括:android操作系统、ios操作系统和windowsphone操作系统。

在一种可能的实现方式中,输入法应用和短信应用是终端上运行的操作系统的开发商开发的应用。在这种情况下,输入法应用和短信应用是操作系统的默认应用,安全性相对于第三方应用更高。

在一种可能的实现方式中,输入法应用和短信应用是第三方应用开发商开发的应用,其中该第三方应用开发商为终端上运行的操作系统的开发商之外的应用开发商。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。

图1a是获取验证码的方法示例图;

图1b是又一获取验证码的方法示例图;

图1c是再一获取验证码的方法示例图;

图2a是本发明实施例提供的显示验证码的示例图;

图2b是本发明实施例提供的又一显示验证码的示例图;

图3a是本发明实施例提供的再一显示验证码的示例图;

图3b是本发明实施例提供的又一显示验证码的示例图;

图3c是本发明实施例提供的再一显示验证码的示例图;

图3d是本发明实施例提供的又一显示验证码的示例图。

具体实施方式

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

当本发明实施例提及“第一”、“第二”等序数词时,除非根据上下文其确实表达顺序之意,应当理解为仅仅是起区分之用。

目前终端上常用的操作系统包括:google开发的android操作系统、苹果公司开发ios操作系统和微软公司开发的windowsphone操作系统。

以安卓(android)系统为例,应用通过申请读取短信权限可以读取系统中的所有短信,并从中获取验证码。除了短信应用,其他绝大部分应用申请短信权限的主要功能都是为了读取短信验证码。如图1a所示,用户使用某应用购物,为了交易安全,提示用户需要填写校验码。用户可以在终端接收到包含校验码的短信后,手动将将短信中的校验码填写到图1a中的“付款校验码”输入框中;若该应用已申请读取短信权限,那么该应用可以提取短信中的校验码,并自动将提取到的校验码填入图1a中的“付款校验码”输入框中。再如图1b至图1c所示,用户登录微信(wechat)时,为了用户的账户安全,要求用户输入验证码。在用户收到“腾讯科技”的验证码短信之后,用户可以手动将短信中的验证码“240960”输入到图1c中的“填写验证码”输入框处;若微信已申请读取短信权限,那么微信可以提取短信中的验证码,并自动将短信中的验证码“240960”填写到图1c中的“填写验证码”输入框中。

为了实现自动提取短信中的验证码,并自动将提取的验证码输入到验证码输入框中,应用(如微信)首先需要申请读取系统中短信的权限。当系统接收到一条短信后,会在系统中发送一个接收到短信的广播,微信接收到广播后,读取短信内容,并从中提取出验证码。但是,微信的读取短信权限是读取系统中所有短信的权限,不仅可以读取微信需要的验证码短信,还可以读取用户在正常使用短信应用时收发的短信,此外,微信还可以读取其他应用的短信验证码,这会导致移动终端上的移动支付等业务面临风险,也容易造成用户隐私的泄露。

实施例一

实施例一提供了一种验证码获取方法,该方法包括以下步骤:

101:待获取验证码的应用向服务器发送获取验证码请求,其中,该待获取验证码的应用安装在终端上,该终端安装的应用还包括输入法应用和短信应用。

该待获取验证码的应用是终端上安装的应用。比如,该应用可以是微信、支付宝(alipay)等。终端上运行的操作系统可以是android操作系统、ios操作系统和windowsphone操作系统。

终端上默认安装的应用一般都包括输入法应用和短信应用。在又一个实施例中,输入法应用和短信应用是终端上运行的操作系统的开发商开发的应用。在另一个实施例中,输入法应用和短信应用是第三方应用开发商开发的应用,其中该第三方应用开发商为终端上运行的操作系统的开发商之外的应用开发商。比如android的开发者为google,那么android原生系统默认的输入法为google输入法。google输入法是android系统的开发商开发的应用。搜狗输入法或swype输入法是第三方应用开发商开发的应用。

相似的,android5.0默认短信应用为messenger,是google开发的短信应用;textra或gosms短信应用是第三方应用开发商开发的应用。在某些版本的android系统上,环聊(hangout)可以用来显示终端上的短信,那么环聊也属于短信应用。一般短信应用都可以用来管理并显示终端上的短信。

再比如,googlemap相对于android系统,是android系统开发商google开发的应用,叫做android原生应用;googlemap相对于苹果公司的ios系统,属于第三方开发商开发的应用,googlemap不是ios原生的应用。

服务器是与待获取验证码的应用对应的服务器。比如微信对应的服务器,可以是腾讯公司自己的服务器,也可以是租用的服务器,本发明对此不做限制。

102:该短信应用接收该服务器发送的包含验证码的短信。

短信应用可以接收和发送短信,具体可以通过收发器接收和发送短信。

这种短信可能的形式为:

短信例1:(2665)滴滴出行验证码【滴滴出行】

其中的“2665”就是滴滴出行app需要的验证码。

短信例2:验证码:236820,切勿转发。12306用户正在申请修改密码服务。如非本人操作,请忽略本短信。【铁路客服】

其中的“236820”就是铁路12306app需要的验证码。

短信例3:【g.cn】yourgoogleverificationcodeis989345

其中的“989345”就是google服务需要的验证码。

103:该输入法应用读取该短信中的验证码,其中,该终端不允许该输入法应用和该短信应用以外的应用读取该终端中的短信。

为了保证用户的信息安全,终端只允许输入法应用和短信应用读取短信。一个终端,绝大多数情况下都会有输入法应用和短信应用。输入法应用用于输入信息,比如打字或手写,或者语音输入。短信应用用于显示终端上的短信。无论是android系统、ios系统或windowsphone系统,默认都安装有输入法应用和短信应用。

如果用户安装了第三方输入法应用或第三方短信应用,并且信任该第三方输入法应用或第三方短信应用,也可以允许第三方开发者开发的输入法应用或短信应用读取终端中的短信。比如,允许搜狗输入法读取终端中的短信。该允许应用读取短信的权限,可以是系统默认赋予某个应用读取短信权限,也可以是弹出提示,让用户选择是否赋予某应用读取短信的权限。比如,用户安装了第三方输入法搜狗输入法,搜狗输入法请求读取短信权限,系统弹出提示,让用户选择是否赋予搜狗输入法读取短信权限。或者,用户安装了第三方输入法搜狗输入法,不管搜狗输入法是否申请读取短信权限,系统检测到用户安装了输入法应用,均弹出提示,让用户选择是否赋予新安装的输入法读取短信权限。短信应用请求读取短信权限的实现方式与之类似。

在一个实施例中,该输入法应用读取该短信中的验证码之后,该方法还包括:将读取到的该验证码填入验证码输入区域。

图1a中的“付款校验码”就是微信的验证码输入区域。该输入区域可以是一个输入框。为了方便用户,终端可以通过语义分析,直接提取短信中的验证码,并自动将提取到的验证码填入验证码输入区域,可以省去用户需要先记下验证码再手动输入验证码的麻烦,提升用户体验。

在又一个实施例中,该输入法应用读取该短信中的验证码之后,该方法还包括:将读取到的该验证码显示在该输入法应用在该终端上的显示区域。如图2a或图2b所示,输入法为百度输入法,待获取验证码的应用为微信应用。微信向服务器发送获取验证码的请求,之后终端接收服务器发送的包含验证码的短信,百度输入法读取短信中的验证码,并将验证码(2460)显示在百度输入法在终端的用户界面(userinterface,简称ui)的显示区域。如图2a所示,验证码(2460)可以显示在输入法的显示区域;如图2b所示,也可以显示在输入法在ui界面的扩展区域。

用户对验证码2460操作,基于用户的操作,系统自动将2460填充到验证码输入区域,即图2a中所示的“填写验证码”区域。用户对显示在输入法区域的验证码进行操作的方式包括:单击,双击,长按,重按,轻按,悬浮等。此外,这里的操作也可以用语音来替换,并不一定是直接点击输入法键盘上的按键,或是采用眼球追踪来实现,即用眼睛注视按钮,终端检测到用户的眼球运动,自动将验证码填入验证码法输入区域。在一个实施例中,在验证码的周边弹出提示框“点击填充验证码”或类似提示语句,方便用户操作。

这样可以省去用户打开短信应用查看验证码的麻烦。之后,用户按照显示在输入法应用区域的验证码,将验证码填入验证码输入框。这种先将验证码显示在输入法应用区域,用户再手动输入验证码的方案,相比于自动填入验证码的方案,可以保证验证码输入的准确性。

在又一个实施例中,该输入法应用读取该短信中的验证码之后,该方法还包括:

根据读取到的该验证码中包括的字符串的字符顺序,将该字符串中的字符逐个显示在该输入法应用的键盘上。

其中,参照短信例1至例3,该字符串可以是数字串,数字串的位数可以因应用的不同而不同。该字符串也可以是字母串,比如验证码可以是“nynb”,也可以是数字和字母混合的字符串,比如验证码可以是“594nb”。

在一个实施例中,将该字符串中的字符以动画的形式在输入法键盘上逐个显示。该动画形式包括更改输入法键盘区域对应字符的大小、形状、色彩、边框、底纹等。

下面以验证码为数字串2460为例进行说明,如图3a至图3d所示:

该动画形式可以为在输入法键盘上,为与验证码对应的字符增加圆形边框作为提示。如图3a所示,验证码的第一个字符为数字2,则在输入法键盘上数字2处,为数字2增加一个圆形边框。其他几个数字的动画方式也类似。为了增加用户体验,还可以在数字2的周边增加一个“字符顺序提示符”。比如,数字2是验证码2460的第一个字符,则在更改键盘上数字2的形状时,在数字2的周边增加一个角标①,提示用户这是需要输入的验证码的第一个字符;用户输入完毕,数字2恢复原状,角标①也不再显示,如图3b所示。

同样的,如图3b所示,验证码的第一个字符是数字4,那么数字2恢复原状、角标①也不再显示之后,为输入法键盘上的数字4增加圆形框,并在数字4的周边显示提示角标②,提示提示用户这是需要输入的验证码的第二个字符。用户输入完毕,数字4恢复原状,角标②也不再显示,如图3c所示。

对于验证码的第三个字符6和第四个字符0,其提示方式与上述方案类似。

这种提示验证码输入的方式,更加直观,增加用户体验。

在又一个实施例中,在预设时间内,该短信应用接收该服务器发送的包含验证码的短信的个数至少为2;确定在该预设时间内接收到的所有包含验证码的短信;确定该所有包含验证码的短信中包含应用标识的短信,其中,该应用标识用于标识该待获取验证码的应用;该输入法应用读取包含该应用标识的短信中的验证码。

以在手机上的铁路12306app客户端进行支付为例,在预设时间内,接收该服务器发送的包含验证码的短信的个数至少为2,在该方法包括以下步骤:

201:确定在该预设时间内接收到的所有包含验证码的短信。

该预设时间可以是2分钟,比如两分钟内,收到了两条短信,一条是铁路12306发送的,一条是google发送的。短信的内容如上述“短信例2”和“短信例3”。

202:确定该所有包含验证码的短信中包含应用标识的短信,其中,该应用标识用于标识该待获取验证码的应用。

铁路12306应用发送的包含验证码的短信,一般包括一个应用标识“【铁路客服】”,该应用标识用于标识该短信是有铁路12306的服务器发送的。“【铁路客服】”者“铁路客服”,均可以是铁路12306应用的应用标识。应用标识也可以是一串字符,比如alipay、wechat。

203:该输入法应用读取包含该应用标识的短信中的验证码。

输入法应用读取短信例2中的验证码23680。

在又一个实施例中,若确定该所有包含验证码的短信中包含应用标识的短信个数至少为2,确定包含应用标识的短信中接收时间最晚的短信;该输入法应用读取该接收时间最晚的短信中的验证码。

以在手机上的铁路12306app客户端进行支付为例,若确定该所有包含验证码的短信中包含应用标识的短信个数至少为2,该方法包括以下步骤:

301:同步骤201。

302:确定该所有包含验证码的短信中包含应用标识的短信个数至少为2,确定包含应用标识的短信中接收时间最晚的短信,其中,该应用标识用于标识该待获取验证码的应用。

比如两分钟内,收到了三条短信,一条是google发送的,短信内容为短信例3;一条是铁路12306发送的,短信内容为短信例2,接收时间为“2015-10-0917:21:23”;一条铁路12306发送的,短信内容为:

短信例4:验证码:223366,切勿转发。12306用户正在申请修改密码服务。如非本人操作,请忽略本短信。【铁路客服】

短信例4的接收时间为“2015-10-0917:22:42”。

那么短信例4的接收时间更晚,因此确定短信例4是铁路12306app需要的验证码短信。

303:该输入法应用读取该接收时间最晚的短信中的验证码。

输入法读取短信例4中的验证码223366。

本发明实施例提供的验证码获取方法,因为只赋予输入法应用和短信应用读取终端中短信的权限,可以防止用户短信信息泄露,保障短信中验证码信息的安全。

实施例二

实施例二提供了一种验证码获取方法,该方法包括以下步骤:

401:待获取验证码的应用向服务器发送获取验证码请求,其中,该待获取验证码的应用运行在操作系统上。

该待获取验证码的应用运行在操作系统上。比如,该应用可以是微信、支付宝(alipay)等。操作系统可以是android操作系统、ios操作系统和windowsphone操作系统。

402:基于接收到的所述服务器发送的包含验证码的短信,该操作系统读取该短信中的验证码,并将读取到的该验证码发送到该操作系统的剪切板上。

短信可能的形式同步骤102的描述。

以android系统为例,android系统的剪切板(clipboard)由类clipboardmanager管理。clipboardmanager代表了系统的剪贴板,通过getsystemservice(clipboard_service)获取。调用方式为android.content.clipboardmanager(sinceapilevel11)。

ios系统也有剪切板。

403:所述操作系统接收粘贴指令,将该剪切板上的验证码粘贴至验证码输入区域。

该粘贴指令可以是用户点击或长按输入框触发的粘贴指令,也可以是操作系统检测到剪切板上有验证码,自动触发粘贴指令。

通过这种方式,无需考虑是否赋予其他应用程序读取短信的权限,操作系统直接将验证码读取到剪切板上,既可以方便用户输入验证码,也可以保障用户短信隐私不被泄露。

实施例三

实施例三提供了一种获取验证码的装置,该装置用于执行上述实施例一和实施例二描述的方法。

在其中一个实施例中,该获取验证码装置安装的应用包括待获取验证码的应用、输入法应用和短信应用;该装置还包括:

发送单元,用于向服务器发送获取验证码请求;

接收单元,用于接收该服务器发送的包含验证码的短信;

读取单元,用于读取该短信中的验证码,其中,该装置不允许该输入法应用和该短信应用以外的应用读取该装置中的短信。

在又一实施例中,该装置还包括填入单元,用于将读取到的该验证码填入验证码输入区域。

在再一实施例中,该装置还包括第一显示单元,用于将读取到的该验证码显示在该输入法应用在该装置上的显示区域。

在又一实施例中,该装置还包括第二显示单元,用于根据读取到的该验证码中包括的字符串的字符顺序,将该字符串中的字符逐个显示在该输入法应用的键盘上。

在再一实施例中,该接收单元具体用于在预设时间内,接收该服务器发送的包含验证码的短信的个数至少为2;

该装置还包括:

第一确定单元,用于确定在该预设时间内接收到的所有包含验证码的短信;

第二确定单元,用于确定该所有包含验证码的短信中包含应用标识的短信,其中,该应用标识用于标识该待获取验证码的应用;

该读取单元,具体用于读取包含该应用标识的短信中的验证码。

在又一实施例中,该第二确定单元,具体用于若确定该所有包含验证码的短信中包含应用标识的短信个数至少为2,确定包含应用标识的短信中接收时间最晚的短信;

该读取单元,具体用于读取该接收时间最晚的短信中的验证码。

通过本发明实施例提供的装置,能够防止用户短信信息泄露,保障短信中验证码信息的安全。

实施例四

实施例四提供了一种终端,该终端用于执行上述实施例一描述的方法。

在其中一个实施例中,该终端,包括处理器、存储器和收发器;

该存储器用于存储应用,该应用安装在该终端上,该存储器存储的应用包括待获取验证码的应用、输入法应用和短信应用,该短信应用用于显示该终端中的短信;

该收发器用于向服务器发送获取验证码请求;

该收发器还用于接收该服务器发送的包含验证码的短信;

该处理器用于读取该短信中的验证码,其中,该终端不允许该输入法应用和该短信应用以外的应用读取该终端中的短信。

在又一实施例中,该处理器还用于将读取到的该验证码填入验证码输入区域。

在再一实施例中,该处理器还用于将读取到的该验证码显示在该输入法应用在该终端上的显示区域。

在又一实施例中,该处理器还用于根据读取到的该验证码中包括的字符串的字符顺序,将该字符串中的字符逐个显示在该输入法应用的键盘上。

在再一实施例中,该收发器具体用于在预设时间内,接收该服务器发送的包含验证码的短信的个数至少为2;

该处理器还用于确定在该预设时间内接收到的所有包含验证码的短信;确定该所有包含验证码的短信中包含应用标识的短信,其中,该应用标识用于标识该待获取验证码的应用;读取包含该应用标识的短信中的验证码。

在又一实施例中,该处理器具体还用于若确定该所有包含验证码的短信中包含应用标识的短信个数至少为2,确定包含应用标识的短信中接收时间最晚的短信;读取该接收时间最晚的短信中的验证码。

通过本发明实施例提供的终端,能够能够防止用户短信信息泄露,保障短信中验证码信息的安全。

本发明实施例还提供了一种终端,该终端用于执行上述实施例二描述的方法。

该终端包括处理器、存储器和收发器;

该存储器用于存储待获取验证码的应用;

该收发器用于向服务器发送获取验证码请求;

该收发器还用于接收该服务器发送的包含验证码的短信;

该处理器用于读取该短信中的验证码,并将读取到的该验证码发送到该操作系统的剪切板上;

该处理器还用于根据粘贴指令,将该剪切板上的验证码粘贴至验证码输入区域。

本发明实施例提供的终端,该方案无需考虑是否赋予其他应用程序读取短信的权限,处理器直接将验证码读取到剪切板上,既可以方便用户输入验证码,也可以保障用户短信隐私不被泄露。

实施例五

实施例五提供了一种存储一个或多个程序的计算机可读存储介质,该一个或多个程序包括指令,该指令当被包括显示器和多个应用的便携式电子设备执行时使该便携式电子设备执行根据上述实施例一和/或实施例二描述的方法,其中,该显示器用于显示该便携式电子设备上运行的应用。

最后应说明的是:以上实施例仅用以示例性说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明及本发明带来的有益效果进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明权利要求的范围。

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