密码存储方法及装置与流程

文档序号:16198313发布日期:2018-12-08 06:21阅读:299来源:国知局
密码存储方法及装置与流程

本发明涉及密码安全技术领域,尤其涉及一种密码存储方法及装置。

背景技术

随着互联网的发展,社交应用越来越多,如视频应用、购物应用、音乐应用等。用户可以针对不同的社交应用设置不同的密码,当用户的密码较多时,为了避免忘记密码,用户往往会产生对密码进行存储的需求,以便在需要时进行查询。

目前,相关技术一般采用中心化服务器存储用户的密码,大量用户的密码集中存储到密码管理服务提供方的中心化服务器上。这种中心化存储方式存在密码易被攻击、窃取等风险。



技术实现要素:

本发明实施例提供了一种密码存储方法及装置,可以解决相关技术密码易被攻击、窃取的问题。所述技术方案如下:

一方面,提供了一种密码存储方法,所述方法包括:

使用对称加密算法的对称密钥,对密码进行加密,得到第一密文;

使用非对称加密算法的公钥,对所述对称密钥进行加密,得到第二密文;

对所述第一密文和所述第二密文进行组装,得到第三密文;

将所述第三密文发送到区块链系统中进行存储。

一方面,提供了一种密码存储装置,所述装置包括:

加密模块,用于使用对称加密算法的对称密钥,对密码进行加密,得到第一密文;

所述加密模块还用于使用非对称加密算法的公钥,对所述对称密钥进行加密,得到第二密文;

组装模块,用于对所述第一密文和所述第二密文进行组装,得到第三密文;

发送模块,用于将所述第三密文发送到区块链系统中进行存储。

一方面,提供了一种终端,所述终端包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、至少一段程序、代码集或指令集由所述处理器加载并执行以实现上述密码存储方法所执行的操作。

一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现如上述密码存储方法所执行的操作。

本发明实施例提供的技术方案带来的有益效果至少包括:

通过使用对称加密算法的对称密钥对密码进行加密,再使用非对称加密算法加密对称密钥,然后将密文发送到区块链系统中进行存储。上述加密方式提高了密码的保密性,且由于区块链系统是一种去中心化的分布式存储系统,可以避免相关技术中采用中心化存储方式存储密码时易被攻击、窃取的风险。

附图说明

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

图1是本发明实施例提供的一种密码存储方法的实施环境示意图;

图2是本发明实施例提供的一种密码存储方法的流程图;

图3是本发明实施例提供的一种对密码混淆加密的示意图;

图4是本发明实施例提供的一种将密文发布到区块链的示意图;

图5是本发明实施例提供的一种查询密码的示意图;

图6是本发明实施例提供的一种密码存储装置的结构示意图;

图7是本发明实施例提供的一种密码存储装置的结构示意图;

图8是本发明实施例提供的一种终端800的结构示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。

图1是本发明实施例提供的一种密码存储方法的实施环境示意图,参见图1,该实施环境中可以包括多个终端101和多个节点设备102。

其中,终端101为发起密文存储的用户设备,如智能手机、平板电脑、pc(personalcomputer,个人计算机)等。多个节点设备102可以组成区块链系统,各个节点设备101分别为该区块链系统中的节点。区块链系统中的每个节点可以配置有一条相同的区块链,区块链可以是现有公有链(比如比特币、以太坊等)、组织联盟链或私有链。该区块链中包括多个区块,每个区块中可以存储密文。终端101和节点设备102之间可以通过网络进行通信,用户可以通过终端101来访问任一节点设备102。

图2是本发明实施例提供的一种密码存储方法的流程图。该方法可以应用于图1所示的实施环境中,参见图2,该方法包括:

201、终端在密码前增加随机字符串后,在最前端增加第一字符,得到混淆密码,该第一字符用于标记该随机字符串的长度。

其中,该随机字符串可以包含一个或多个字符,该字符可以是可见字符,也可以是不可见字符。第一字符可以是一个字符,也可以是多个字符,第一字符可以按照一定规则来约定随机字符串的长度。

本发明实施例中,终端上可以安装有指定应用,该指定应用可以作为密码管理工具,对用户的密码进行管理。用户可以在终端的指定应用上输入需要存储的密码,当获取到输入的密码时,终端可以在该密码前增加一定长度的随机字符串,如1-16位长度或其他长度的随机字符串。为了便于辨别原始的密码,终端可以在最前端使用第一字符来标记随机字符串的长度,最终得到混淆密码。

通过采用随机字符串对原始密码进行混淆处理,不同的原始密码可能采用不同的字符串进行加密,增加了原始密码的复杂度,提高了安全级别。

202、终端使用对称加密算法的对称密钥,对混淆密码进行加密,得到第一密文。

其中,对称加密算法拥有一个对称密钥,该对称密钥既用于加密,也用于解密。

本发明实施例中,终端可以随机生成一个对称密钥,并使用该随机生成的对称密钥以及对称加密算法,对步骤201中生成的混淆密码进行加密,为了便于描述,将加密得到的密文称为第一密文。

可选地,终端可以对随机生成的对称密钥设定一定的复杂度规则,如要求随机生成的密钥里必须有字母、或必须是字母、数字和符号的组合等。通过设定复杂度规则,可以增强对称密钥的随机范围和随机度。

需要说明的是,上述步骤201至步骤202是终端使用对称加密算法的对称密钥,对密码进行加密,得到第一密文的一种可能实现方式。通过先对原始密码进行混淆处理,再进一步对密码进行加密,不仅提高了原始密码的复杂度,还提高了原始密码的安全级别。

203、终端使用非对称加密算法的公钥,对该对称密钥进行加密,得到第二密文。

其中,非对称加密算法拥有一对密钥,分别是公钥和私钥。私钥可以存放于用户使用的终端,公钥可以公开给其他设备,如区块链系统中的任一节点设备。使用公钥加密得到的密文,只能通过拥有该私钥的一方进行解密。

本发明实施例中,终端可以生成一对密钥,将私钥存储在本地,公钥向外公开。终端可以使用公钥和非对称加密算法,对步骤202中随机生成的对称密钥进行加密,为了便于描述,将加密得到的密文称为第二密文。通过利用非对称加密算法中的公钥对密码进行加密,得到第二密文,由于解密所需的私钥存放于用户使用的终端,使得只有拥有该终端的用户,才可以实现对第二密文的解密,得到对原始密码进行加密的对称密钥,提高了解密的安全性。

204、终端对第一密文和第二密文进行组装,得到第三密文。

本发明实施例中,考虑到用户的密码可以很多,不同的密码可以有不同的用途,属于不同的类别。例如,有的密码是用户在使用购物应用时的登录密码,有的密码是用户在使用视频应用时的登录密码,有的密码是用户在消费时的支付密码,为了便于区分这些密码,用户可以针对不同的密码设置不同的备注信息。

相应地,在一种可能实现方式中,终端获取第三密文的过程包括:对该第一密文、该第二密文以及备注信息进行组装,得到该第三密文,该备注信息用于指示该密码的用途或类别。通过将备注信息与第一密文和第二密文组装在一起,可以便于区分不同用途或类别的原始密码。

具体地,终端至少可以通过以下两种方式来获取第三密文:

第一种方式,使用特定字符,在该第一密文、该第二密文以及该备注信息之间进行分隔后,拼接得到该第三密文。

该方式是在拼接之前使用特定字符进行分隔,例如,第一密文、第二密文和备注信息的拼接顺序为第二密文、第一密文、备注信息,则终端可以在第二密文和第一密文之间用特定字符进行分隔,在第一密文和备注信息之间用特定字符进行分隔,将使用特定字符分隔后的第二密文、第一密文、备注信息拼接成第三密码。当然,上述拼接过程仅是一个示例,第一密文、第二密文和备注信息还可以有其他拼接顺序,本发明实施例对此不做限定。

第二种方式,将该第一密文、该第二密文以及该备注信息进行拼接后,在最前端和最后端分别增加第二字符和第三字符,该第二字符用于标记该第一密文、该第二密文以及该备注信息中拼接顺序最靠前的信息的长度,该第三字符用于标记拼接顺序最靠后的信息的长度。

与第一字符同理,第二字符和第三字符可以是一个字符,也可以是多个字符,第二字符和第三字符也可以按照一定规则来约定不同信息的长度。

该方式是先进行拼接,再在前后分别标记对应部分的长度,该方式是一种前后长度加前后顺序的组装方式。例如,第一密文、第二密文和备注信息的拼接顺序为第二密文、第一密文、备注信息,则终端可以将第二密文、第一密文、备注信息拼接在一起后,在第二密文前增加第二字符,用于标记第二密文的长度,在备注信息后增加第三字符,用于标记备注信息的长度。

参见图3,提供了一种对密码混淆加密的示意图,如图3所示,密码的原始内容表示为原始内容src,在密码的原始内容前增加随机字符串,并在最前端标记随机字符串的长度,步骤202中随机生成的对称密钥表示为对称密钥b,对称步骤202中生成的第一密文表示为对称加密密文o1,步骤203中非对称加密算法的公钥表示为非对称公钥c,步骤203中生成的第二密文表示为非对称加密密文o2,步骤204中生成的第三密文表示为o2-o1-xxxx。

上述步骤201至步骤204是终端对用户的原始密码进行混淆加密的过程,在获取到密文后,终端可以将密文发送到区块链系统中进行存储,也即是,将密文发布到区块链的区块中进行存储。

205、终端使用非对称加密算法的私钥,对第三密文进行签名后,向区块链系统中的节点设备发送上链信息,该上链信息携带签名后的第三密文。

其中,节点设备可以为区块链系统中的矿工节点,该上链信息用于指示将该第三密文发布到该区块链系统中进行分布式存储。

本发明实施例中,终端可以使用步骤203中公钥所对应的私钥,签名待存储的第三密文,进一步地,终端可以在上链信息中携带签名后的第三密文并发送给区块链系统中的任一节点设备。由于公钥对外公开,这样其他设备在接收到签名后的第三密文后,可以使用已知的公钥对第三密文进行签名验证。

需要说明的是,该步骤205是将该第三密文发送到区块链系统中进行存储的一种可能实现方式。通过发送上链信息,使得区块链系统的任一节点设备在接收到该上链信息时,可以将终端生成的第三密文发布到区块链中,实现密文在区块链系统的分布式存储。

206、当接收到上链信息时,节点设备对第三密文进行签名验证后,将第三密文打包成区块并添加到区块链中。

本发明实施例中,当区块链系统的任一节点设备接收到终端发送的上链信息时,可以从该上链信息中提取出签名后的第三密文,并使用公钥对其进行签名验证,如果验证通过,则可以确认该上链信息由拥有私钥的终端发送。此时,节点设备可以将第三密文打包成区块,并同步给该区块链系统中的各个节点设备进行验证,验证通过后,该区块可以被添加到区块链中。

参见图4,提供了一种将密文发布到区块链的示意图,如图4所示,终端可以使用非对称加密算法的密钥对中的私钥签名要发布的密文内容,区块链系统中的任一矿工节点在接收到上链信息时,可以进行签名验证,打包成区块,并将区块同步给其他矿工节点进行验证。

需要说明的是,上述步骤205和步骤206仅是将第三密文发送到区块链系统中进行存储的一个示例,在一种可能实现方式中,终端还可以将该第三密文拆分成多段密文;将该多段密文分别发送到该区块链系统中进行存储。每段密文发送到该区块链系统中进行存储的方式与步骤205和步骤206同理,这样,每段密文可能会被分别打包成不同的区块。通过将密文拆分成多段后存储到区块链系统中,可以增加密文存储的复杂度,进一步降低被攻击、窃取的风险。

可以理解的是,为了便于后续找到该多段密文,终端每将一段密文发送到区块链系统中进行存储后,可以获取该密文在区块链系统中的存储地址,该存储地址可以用于指示该密文存储在区块链的哪个区块的第几条记录,在将下一段密文发送到区块链系统中进行存储时,可以同时将上一段密文的存储地址一起发送到区块链系统中进行存储。例如,如果将第三密文拆分成第一段密文和第二段密文,则终端将第一段密文发送到区块链系统中进行存储后,可以获取第一段密文在区块链系统中的存储地址,然后将第一段密文的存储地址和第二段密文一起发送到区块链系统中进行存储。

需要说明的是,上述步骤205至步骤206是将该第三密文发送到区块链系统中进行存储的一种可能实现方式。由于区块链系统是一种去中心化的分布式存储系统,可以避免相关技术中采用中心化存储方式存储密码时易被攻击、窃取的风险。

207、终端向区块链系统中的节点设备发送密文查询请求。

本发明实施例中,终端将用户的密码存储到区块链系统中后,如果用户想要查看密码,则可以在终端上进行操作,触发终端向区块链系统中的任一节点发送密文查询请求,该密文查询请求中可以携带用户的公钥。

208、当接收到密文查询请求时,节点设备将第三密文发送给终端。

本发明实施例中,节点设备可以从接收到的密文查询请求中提取用户的公钥,查询该公钥对应的密文,如果用户的密码有多个,则该公钥对应的密文可能有多个,节点设备可以将所有的密文全部返回给终端。

当然,终端还可以指定要查询的密文,如步骤207中终端发送的密文查询请求中还可以携带密码的用途或类别,这样,节点设备在查找到所有密文后,可以仅根据密文的备注信息,向终端返回指定的密文。

需要说明的是,针对步骤206中终端可以将第三密文拆分成多段密文后,分别发送到区块链系统中进行存储,该情况下,终端可以查询到该多段密文,则终端可以根据拆分第三密文的规则,对该多段密文进行组装,得到第三密文。

209、当接收到第三密文时,终端对第三密文进行分割,得到第一密文和第二密文。

针对步骤204中对第一密文和第二密文进行组装,得到第三密文,终端在查询到第三密文后,可以根据步骤204中的组装方式,对第三密文进行分割,得到第一密文和第二密文。

当然,针对步骤204中第三密文可以由第一密文、第二密文和备注信息组装得到,相应地,终端可以对第三密文进行分割,得到第一密文、第二密文和备注信息。例如,如果终端是采用步骤204中第一种方式获取到第三密文,且获取第三密文时的拼接顺序为第二密文、第一密文、备注信息,则在该步骤208中,终端可以将第一个特定字符之前的内容获取为第二密文,将第一个特定字符和第二个特定字符之间的内容获取为第一密文,将第二个特定字符之后的内容获取为备注信息。

如果终端是采用步骤204中的第二种方式获取到第三密文,且获取第三密文时的拼接顺序为第二密文、第一密文、备注信息,则在该步骤208中,终端可以根据最前端的第二字符,确定第二密文的长度,从而根据该长度提取出该第二密文,然后再根据最后端的第三字符,确定备注信息的长度,从而根据该长度提取出备注信息,最后剩下的则是第一密文。

上述两种分割方式仅是一个示例,如果获取第三密文时的拼接顺序为其他顺序,则终端可以采用其他方式分割第三密文。

210、终端使用非对称加密算法的私钥,对第二密文进行解密,得到对称密钥。

针对步骤203中终端使用公钥加密对称密钥,得到第二密文,在该步骤210中,终端可以使用私钥,对第二密文进行解密,得到对称密钥。

211、终端使用对称密钥,对第一密文进行解密,得到混淆密码。

针对步骤202中终端使用对称密钥对混淆密码进行加密,得到第一密文,在该步骤211中,终端可以使用对称密钥进行解密,得到混淆密码。

212、终端从混淆密码中去除第一字符和随机字符串,得到密码。

针对步骤201中终端在原始密码前增加随机字符串和第一字符,得到混淆密码,在该步骤212中,终端去除该第一字符和该随机字符串,得到原始密码。

在一种可能实现方式中,终端从混淆密码中去除该第一字符和该随机字符串的过程包括:根据该混淆密码最前端的第一字符,确定随机字符串的长度;根据该随机字符串的长度,从该混淆密码中去除该第一字符和该随机字符串,得到该密码。

上述步骤211至步骤212是终端使用对称密钥,对该第一密文进行解密,得到该密码的一种可能实现方式。参见图5,提供了一种查询密码的示意图,如图5所示,区块链的任一节点在接收到查询请求时,可以查找指定公钥地址的密文记录,根据备注信息返回指定的密文,终端在获取到密文后,将密文分割为对称加密密文o1、非对称加密密文o2以及备注信息,进而使用非对称公钥c解密o2获得对称密钥b,再使用对称密钥b解密o1后,根据随机字符串的长度,去除随机字符串获得密码原文。

需要说明的是,上述步骤207至步骤212是可选步骤。该可选步骤可以仅在用户需要查询密码的情况下执行。通过提供用户进行密码查询的方式,使得用户可以在需要查询密码时,及时安全地查询到所需的密码。

上述技术方案中终端上安装的指定应用可以作为一款没有中心化机构,安全可靠的密码保护工具或密码保护类工具,使得用户敢于使用其管理自己的密码,因为该方案能确保用户的密码不被泄漏、不会丢失、永远可以查询到,且不受任何单一的服务器等硬件故障影响。

密码信息是用户的高敏感数据,涉及到用户的隐私安全和财产安全。上述技术方案解决了相关技术中心化存储密码时易被攻击、泄漏、停服等导致安全性差、保密性差、可靠性差的问题。

例如,相关技术中大量用户的密码集中存储到密码管理服务提供方的中心化服务器上,因目标单一存在易被攻击、窃取等风险,密码存储的安全性差。而本发明实施例提供的技术方案基于区块链技术,使用对称加密+非对称加密保护密码信息,把密文提交到去中心化的分布式节点上,不必担心被攻击和数据泄漏,使得密码存储更加安全。

相关技术保存用户的密码时多为明文或对称加密后存储,该类方法因为明文或对称密钥的管理问题存在保密性不足的风险,使得密码的保密性差。而本发明实施例提供的技术方案通过对原始密码增加随机字符串作混淆,再使用对称加密算法加密随机字符串和密码信息,使用用户的非对称加密公钥加密对称密钥,实现了更高的保密性。

相关技术由企业或中心化组织提供服务,存在因为网络、服务器以及组织本身的不稳定因素而影响服务的稳定性,使得密码存储的可靠性差。而本发明实施例提供的技术方案基于区块链技术,没有中心化的服务器,可以做到可匿名、数据高度保密、数据不可篡改且永久有效,使得密码存储更加可靠。

本发明实施例提供的方法,通过使用对称加密算法的对称密钥对密码进行加密,再使用非对称加密算法加密对称密钥,然后将密文发送到区块链系统中进行存储。上述加密方式提高了密码的保密性,且由于区块链系统是一种去中心化的分布式存储系统,可以避免相关技术中采用中心化存储方式存储密码时易被攻击、窃取的风险。

图6是本发明实施例提供的一种密码存储装置的结构示意图。参照图6,该装置包括:

加密模块601,用于使用对称加密算法的对称密钥,对密码进行加密,得到第一密文;

该加密模块601还用于使用非对称加密算法的公钥,对该对称密钥进行加密,得到第二密文;

组装模块602,用于对该第一密文和该第二密文进行组装,得到第三密文;

存储模块603,用于将该第三密文发送到区块链系统中进行存储。

在一种可能实现方式中,该加密模块601用于:

在该密码前增加随机字符串后,在最前端增加第一字符,得到混淆密码,该第一字符用于标记该随机字符串的长度;

使用该对称密钥,对该混淆密码进行加密,得到该第一密文。

在一种可能实现方式中,该加密模块601用于对该第一密文、该第二密文以及备注信息进行组装,得到该第三密文,该备注信息用于指示该密码的用途或类别。

在一种可能实现方式中,该组装模块602用于:

使用特定字符,在该第一密文、该第二密文以及该备注信息之间进行分隔后,拼接得到该第三密文;或,

将该第一密文、该第二密文以及该备注信息进行拼接后,在最前端和最后端分别增加第二字符和第三字符,得到该第三密文,该第二字符用于标记该第一密文、该第二密文以及该备注信息中拼接顺序最靠前的信息的长度,该第三字符用于标记拼接顺序最靠后的信息的长度。

在一种可能实现方式中,该存储模块603用于:

使用该非对称加密算法的私钥,对该第三密文进行签名后,

向该区块链系统中的节点设备发送上链信息,该上链信息携带签名后的该第三密文,该节点设备用于对该第三密文进行签名验证后,将该第三密文打包成区块并添加到区块链中。

在一种可能实现方式中,该装置还包括:

发送模块604,用于向该区块链系统中的节点设备发送密文查询请求;

分割模块605,用于当接收到该第三密文时,对该第三密文进行分割,得到该第一密文和该第二密文;

解密模块606,用于使用该非对称加密算法的私钥,对该第二密文进行解密,得到该对称密钥;

该解密模块606还用于使用该对称密钥,对该第一密文进行解密,得到该密码。

本发明实施例中,通过使用对称加密算法的对称密钥对密码进行加密,再使用非对称加密算法加密对称密钥,然后将密文发送到区块链系统中进行存储。上述加密方式提高了密码的保密性,且由于区块链系统是一种去中心化的分布式存储系统,可以避免相关技术中采用中心化存储方式存储密码时易被攻击、窃取的风险。

需要说明的是:上述实施例提供的密码存储装置在密码存储时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的密码存储装置与密码存储方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。

图8是本发明实施例提供的一种终端800的结构示意图。该终端800可以是:智能手机、平板电脑、mp3播放器(movingpictureexpertsgroupaudiolayeriii,动态影像专家压缩标准音频层面3)、mp4(movingpictureexpertsgroupaudiolayeriv,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端800还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。

通常,终端800包括有:处理器801和存储器802。

处理器801可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器801可以采用dsp(digitalsignalprocessing,数字信号处理)、fpga(field-programmablegatearray,现场可编程门阵列)、pla(programmablelogicarray,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器801也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称cpu(centralprocessingunit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器801可以在集成有gpu(graphicsprocessingunit,图像处理器),gpu用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器801还可以包括ai(artificialintelligence,人工智能)处理器,该ai处理器用于处理有关机器学习的计算操作。

存储器802可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器802还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器802中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器801所执行以实现本申请中方法实施例提供的密码存储方法。

在一些实施例中,终端800还可选包括有:外围设备接口803和至少一个外围设备。处理器801、存储器802和外围设备接口803之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口803相连。具体地,外围设备包括:射频电路804、显示屏805、摄像头806、音频电路807、定位组件808和电源809中的至少一种。

外围设备接口803可被用于将i/o(input/output,输入/输出)相关的至少一个外围设备连接到处理器801和存储器802。在一些实施例中,处理器801、存储器802和外围设备接口803被集成在同一芯片或电路板上;在一些其他实施例中,处理器801、存储器802和外围设备接口803中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。

射频电路804用于接收和发射rf(radiofrequency,射频)信号,也称电磁信号。射频电路804通过电磁信号与通信网络以及其他通信设备进行通信。射频电路804将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路804包括:天线系统、rf收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路804可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2g、3g、4g及5g)、无线局域网和/或wifi(wirelessfidelity,无线保真)网络。在一些实施例中,射频电路804还可以包括nfc(nearfieldcommunication,近距离无线通信)有关的电路,本申请对此不加以限定。

显示屏805用于显示ui(userinterface,用户界面)。该ui可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏805是触摸显示屏时,显示屏805还具有采集在显示屏805的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器801进行处理。此时,显示屏805还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏805可以为一个,设置终端800的前面板;在另一些实施例中,显示屏805可以为至少两个,分别设置在终端800的不同表面或呈折叠设计;在再一些实施例中,显示屏805可以是柔性显示屏,设置在终端800的弯曲表面上或折叠面上。甚至,显示屏805还可以设置成非矩形的不规则图形,也即异形屏。显示屏805可以采用lcd(liquidcrystaldisplay,液晶显示屏)、oled(organiclight-emittingdiode,有机发光二极管)等材质制备。

摄像头组件806用于采集图像或视频。可选地,摄像头组件806包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及vr(virtualreality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件806还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。

音频电路807可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器801进行处理,或者输入至射频电路804以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端800的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器801或射频电路804的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路807还可以包括耳机插孔。

定位组件808用于定位终端800的当前地理位置,以实现导航或lbs(locationbasedservice,基于位置的服务)。定位组件808可以是基于美国的gps(globalpositioningsystem,全球定位系统)、中国的北斗系统、俄罗斯的格雷纳斯系统或欧盟的伽利略系统的定位组件。

电源809用于为终端800中的各个组件进行供电。电源809可以是交流电、直流电、一次性电池或可充电电池。当电源809包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。

在一些实施例中,终端800还包括有一个或多个传感器810。该一个或多个传感器810包括但不限于:加速度传感器811、陀螺仪传感器812、压力传感器813、指纹传感器814、光学传感器815以及接近传感器816。

加速度传感器811可以检测以终端800建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器811可以用于检测重力加速度在三个坐标轴上的分量。处理器801可以根据加速度传感器811采集的重力加速度信号,控制触摸显示屏805以横向视图或纵向视图进行用户界面的显示。加速度传感器811还可以用于游戏或者用户的运动数据的采集。

陀螺仪传感器812可以检测终端800的机体方向及转动角度,陀螺仪传感器812可以与加速度传感器811协同采集用户对终端800的3d动作。处理器801根据陀螺仪传感器812采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变ui)、拍摄时的图像稳定、游戏控制以及惯性导航。

压力传感器813可以设置在终端800的侧边框和/或触摸显示屏805的下层。当压力传感器813设置在终端800的侧边框时,可以检测用户对终端800的握持信号,由处理器801根据压力传感器813采集的握持信号进行左右手识别或快捷操作。当压力传感器813设置在触摸显示屏805的下层时,由处理器801根据用户对触摸显示屏805的压力操作,实现对ui界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。

指纹传感器814用于采集用户的指纹,由处理器801根据指纹传感器814采集到的指纹识别用户的身份,或者,由指纹传感器814根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器801授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器814可以被设置终端800的正面、背面或侧面。当终端800上设置有物理按键或厂商logo时,指纹传感器814可以与物理按键或厂商logo集成在一起。

光学传感器815用于采集环境光强度。在一个实施例中,处理器801可以根据光学传感器815采集的环境光强度,控制触摸显示屏805的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏805的显示亮度;当环境光强度较低时,调低触摸显示屏805的显示亮度。在另一个实施例中,处理器801还可以根据光学传感器815采集的环境光强度,动态调整摄像头组件806的拍摄参数。

接近传感器816,也称距离传感器,通常设置在终端800的前面板。接近传感器816用于采集用户与终端800的正面之间的距离。在一个实施例中,当接近传感器816检测到用户与终端800的正面之间的距离逐渐变小时,由处理器801控制触摸显示屏805从亮屏状态切换为息屏状态;当接近传感器816检测到用户与终端800的正面之间的距离逐渐变大时,由处理器801控制触摸显示屏805从息屏状态切换为亮屏状态。

本领域技术人员可以理解,图8中示出的结构并不构成对终端800的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。

在示例性实施例中,还提供了一种计算机可读存储介质,例如包括至少一条指令、至少一段程序、代码集或指令集的存储器,上述至少一条指令、至少一段程序、代码集或指令集可由处理器加载并执行以完成上述实施例中的密码存储方法。例如,计算机可读存储介质可以是只读存储器(read-onlymemory,rom)、随机存取存储器(random-accessmemory,ram)、只读光盘(compactdiscread-onlymemory,cd-rom)、磁带、软盘和光数据存储设备等。

本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,该程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

以上仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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