信息存储方法及装置与流程

文档序号:11930590阅读:253来源:国知局
信息存储方法及装置与流程

本发明涉及信息技术领域,特别涉及一种信息存储方法及装置。



背景技术:

随着信息技术的发展,区块链技术作为一项全新的技术得到大力的发展。区块链可以看作是一种去中心化的共享数据库,区块链由按照时间顺序连接起来的区块组成,每个区块均存储有与前一个区块相关联的哈希值,使得区块链中区块之间存在不可逆转的强关联性。并且,每个区块所存储的与交易过程相关的共享数据,均是通过密码学方式进行身份验证后存储的,保证了交易以及数据的安全性。因此,区块链技术逐渐被应用到金融等领域。

采用区块链技术存储共享数据的系统可以称为数据共享系统,数据共享系统中包括多个节点,各个节点均存储有数据共享系统的全部共享数据,可以看作是彼此的备份。在区块链技术中,采用账户地址和私钥作为在区块链上进行数据共享的身份标识信息,取代了传统应用中的用户名和密码。其中,一个账户地址对应一定余额,在将一个账户地址的一定数额转移至另一个账户地址的过程中,需采用私钥对原始交易数据进行签名,该原始交易数据包括转出数额和转入账户地址,将该原始交易数据及其签名广播到数据共享系统中的其他节点。当规定数目的节点对共享数据中的签名进行校验成功后,确定用户拥有对转出账户地址中余额的转移权,再将该转出数额转移至转入账户地址中,从而完成本次交易。

在实现本发明的过程中,发明人发现相关技术至少存在以下问题:

整个交易过程中私钥是非常重要的,拥有了私钥便拥有了对账户地址对应余额的转移权。而在实际应用中,一个用户可以拥有多组账户地址和私钥,而区块链技术中账户地址和私钥都是没有规律的字符串,为了方便记忆,用户一般对将账户地址和私钥记录到备忘录中,该备忘录可以为电子文档,或者纸质文档。如果备忘录丢失或者被他人窃取,很容易导致账户地址和私钥的泄漏,从而导致用户财产的损失。因此,在数据共享系统中,如何保证用户所拥有的账户地址和私钥的安全性,从而保证用户财产的安全性是亟需解决的问题。



技术实现要素:

为了解决现有技术的问题,本发明实施例提供了一种信息存储方法及装置。所述技术方案如下:

第一方面,提供了一种信息存储方法,应用于终端,所述方法包括:

获取第一加密密码和待存储的身份标识信息,所述身份标识信息包括用于在数据共享系统中生成存储于区块的共享数据时所采用的账户地址及其对应的私钥;

基于所述第一加密密码,对所述私钥进行加密,得到待存储密文;

存储所述账户地址,并对应于所述账户地址,分片存储所述待存储密文。

第二方面,提供了一种信息存储方法,应用于服务器,所述方法包括:

当接收到终端发送的信息存储请求时,根据第一用户标识对用户进行身份验证,所述信息存储请求携带所述第一用户标识、账户地址和待存储密文;

如果身份验证成功,根据预设配置信息,生成服务端序列化因子;

根据所述服务端序列化因子和所述待存储密文,获取所述待存储密文的多个密文片段;

对应所述第一用户标识存储所述账户地址,对应所述账户地址将所述多个密文片段分别存储至不同的密文数据库。

第三方面,提供了一种信息存储装置,所述装置包括:

第一获取模块,用于获取第一加密密码和待存储的身份标识信息,所述身份标识信息包括用于在数据共享系统中生成存储于区块的共享数据时所采用的账户地址及其对应的私钥;

第一加密模块,用于基于所述第一加密密码,对所述私钥进行加密,得到待存储密文;

第一存储模块,用于存储所述账户地址,并对应于所述账户地址,分片存储所述待存储密文。

第四方面,提供了一种信息存储装置,所述装置包括:

验证模块,用于当接收到终端发送的信息存储请求时,根据第一用户标识对用户进行身份验证,所述信息存储请求携带所述第一用户标识、账户地址和待存储密文;

生成模块,用于如果身份验证成功,根据预设配置信息,生成服务端序列化因子;

第一获取模块,用于根据所述服务端序列化因子和所述待存储密文,获取所述待存储密文的多个密文片段;

存储模块,用于对应所述第一用户标识存储所述账户地址,对应所述账户地址将所述多个密文片段分别存储至不同的密文数据库。

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

终端采用加密密码对私钥进行加密,使得其他用户在不知道加密密码的前提下无法对密文解密得到私钥,并且在加密后,将待存储密文进行分片存储,使得待存储密文被其他用户窃取之后,即使其他用户窃取得到用户的加密密码也无法还原出待存储密文,提高了用于对数据共享系统中的共享数据进行标识的身份标识信息的安全性。

附图说明

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

图1A是本发明实施例提供的一种数据共享系统的系统示意图;

图1B是本发明实施例提供的一种用于进行信息存储的系统架构图;

图1C是本发明实施例提供的一种用于进行信息存储的系统架构图;

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

图2B是本发明实施例提供的一种信息存储的数据流图;

图2C是本发明实施例提供的一种密文获取的流程图;

图2D是本发明实施例提供的一种加密密码修改的流程图;

图2E是本发明实施例提供的一种分片存储的原理示意图;

图2F是本发明实施例提供的一种分片存储的原理示意图;

图3是本发明实施例提供的一种信息存储装置的框图;

图4是本发明实施例提供的一种信息存储装置的框图;

图5是本发明实施例提供的一种终端的结构示意图;

图6是本发明实施例提供的一种信息存储装置的框图。

具体实施方式

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

在对本发明进行详细的解释说明之前,先对本实施例涉及的数据共享系统进行介绍,如图1A所示,数据共享系统100包括多个节点101,每个节点101是数据共享系统中的计算机设备,该计算机设备可以看作是客户端,也可以看作是服务器,用于存储有数据共享系统中的全部共享数据。数据共享系统采用区块链技术进行数据共享,是一个去中心化的系统,也即是,数据共享系统中没有中心节点的概念,各个节点在系统中的地位是平等的,每个节点均存储有相同的区块链,区块链包括多个区块,每个区块存储有不同的数据,区块链上的全部区块存储的数据组成了数据共享系统的全部共享数据。由于每个节点均存储有数据共享系统的全部共享数据,使得数据共享系统中只要存在节点正常工作,整个系统便可以正常运行。

其中,基于区块链的数据共享系统采用账户地址和私钥作为数据共享的身份标识信息。数据共享即为在不同账户地址之间进行数据交换,在数据交换过程中生成共享数据,该共享数据存储在数据共享系统中各个节点的区块中。其中,一次数据交换生成的共享数据都是在确定数据交换成功之后,再存储到区块中的。

其中,数据共享系统可为交易系统,比如金融交易系统等。当数据共享系统为交易系统时,不同账户地址之间交换的数据即为账户地址对应的交易转账数额,相应的,各节点存储的共享数据即为交易的账本数据。下面以交易系统为例对共享数据的生成过程进行介绍:例如,将转账数额从账户地址A转移到账户地址B。在交易过程中,需要采用与账户地址A对应的私钥,对原始交易数据进行签名,该原始交易数据包括转账数额和转入账户地址。之后,将该原始交易数据及其签名广播到数据共享系统中的其他节点。其他节点根据公钥对该签名进行校验,当规定数目的节点对共享数据中的签名均校验成功时,确定用户拥有对转出账户地址中余额的转移权,再将该转账数额转移至转入账户地址中,从而完成本次交易。

其中,对签名进行校验的过程是一个零知识证明的过程,在零知识证明过程中证明者向验证者证明并使其相信自己知道或拥有某个账户地址的转移权,但证明过程中不能向验证者泄露关于被证明消息的信息,也即是,转出方不会向校验节点发送私钥信息,而是通过私钥签名和公钥来使其他节点进行身份的校验。数据共享系统中一个节点可以通过本地存储的节点标识列表,向其他节点发送信息。节点的节点标识可以为IP(Internet Protocol,网络之间互联的协议)地址或者其他任一种能够标识该节点的信息,本实施例对此不作限定。

在实际应用中,一个用户可以拥有多组账户地址和私钥,区块链中可以通过一定算法由私钥得出公钥,再由公钥得到与私钥对应的账户地址。因此,作为数据共享系统中的身份验证信息,私钥是非常重要的,私钥的丢失会直接导致用户财产的损失。因此,为了保证用户在数据共享系统中拥有的账户地址和私钥,本实施例提供了一种信息存储方法,来提高账户地址和私钥存储的安全性,具体过程参见图2A所提供的信息存储方法。

图1B和图1C是本实施例提供的一种用于信息存储的系统架构图,该系统可以对数据共享系统中的账户地址和私钥进行安全存储。图1B和图1C分别从逻辑层面和设备部署层面分别介绍了信息存储的系统架构。其中,根据访问安全策略的不同,该系统所涉及的网络类型可以包括公网、域外网和域内网。

公网中包括用户的终端设备110,公网中的终端设备110可以任意访问互联网,彼此之间也可以互相访问。

域外网作为域内网设备与公网设备进行交互的桥梁,其中设置用于连接域内和公网的网关设备116。实际应用时可以将网关设备116划分至多个网关设备组,不同网关设备组均与负载均衡设备118连接,负载均衡设备118用于根据系统负载对终端设备110的信息存储相关请求进行分流,由不同网关设备组将请求分别转发至不同的服务器进行处理。

域内网中设置有用于提供信息存储服务的至少一个服务器112,以及用于存储信息的至少一个存储节点,每个存储节点包括一个密文数据库114。其中,不同信息存储服务可以由不同服务器设备提供,也可以由一个服务器设备中的不同服务节点提供,本实施例对此不作限定。不同信息存储服务可以对应不同的存储节点,每个信息存储服务用于将信息存储在相应存储节点的密文数据库中。

图1B中仅以信息存储服务来表示系统逻辑架构,其中,信息存储服务与密文数据库之间采用配置的数据库访问接口进行数据存储。

图1C中展示了服务器设备部署方式,其中,不同网关组对应不同的服务器组,每个服务器组对应多个存储节点。该种部署方式为多点部署。在存储过程中,将需要存储的数据采用异构序列化因子进行分片存储,比如,将待存储数据划分为多个数据段,对多个数据段采用异构序列化因子进行序列化后,分别存储至不同的存储节点。对于一条完整的数据,在分片存储之后,不同存储节点的密文数据库存储有该数据的数据片段,当该服务器组对应的所有存储节点均存储成功时,才确定该数据存储成功。

其中,分片得到的不同数据片段中可以包含相同的信息,但是不完全相同。服务器可以根据部分数据库存储的数据片段,还原出一条完整的数据。当一个密文数据库故障时,可以通过其他密文数据库还原出该故障密文数据库存储的内容,从而在设备故障时实现密文数据库的数据同步。

其中,终端设备110和服务器112之间通过预设的信息存储接口进行数据交互,终端设备以及服务器设备上均实现了该信息存储接口的逻辑功能。

需要说明的是,终端设备与网关之间、以及网关与服务器之间均采用加密传输方式进行数据交互,以保证数据传输的安全性。其中,网关与服务器之间进行交互时,彼此之间需要进行身份验证,例如,网关中可以预先配置能够进行数据交互的服务器标识,如服务器的IP地址等,当网关需要向服务器转发数据或者将服务器的数据转发至终端设备时,需要确定涉及服务器的服务器标识包含在配置的服务器标识中才进行数据转发,否则不进行数据转发。另外,服务器也可以配置能够进行数据交互的网关的网关标识,当确定接收到的数据来自能够进行数据交互的网关时,才进行数据接收,否则不进行数据接收。

图2A是本发明实施例提供的一种信息存储方法的流程图,参见图2A,本发明实施例提供的方法流程包括:

201、终端获取第一加密密码和待存储的身份标识信息,身份标识信息包括用于在数据共享系统中生成存储于区块的共享数据时所采用的账户地址及其对应的私钥。

终端可以安装提供信息存储功能的应用,用户可以通过该应用进行信息存储,比如将拥有的多个账户地址以及每个账户地址对应的私钥进行存储。当用户首次使用该应用时,需要设定用于加密私钥的加密密码。

其中,该应用可以为终端非系统应用;也可以为终端的系统应用。当然,该存储功能也可以为一个应用内多项功能中的一项功能,例如,该存储功能是交易相关应用提供的账户信息存储功能等。当用户需要使用该存储功能时,终端可以显示身份标识信息的输入界面,用户可以在该身份标识信息的输入界面中,输入加密密码以及需要存储的账户地址及其对应的私钥,以使终端获取到需要存储的身份标识信息。

在本实施例中,为了保证用户的加密密码的安全性,本实施例中服务器端不对用户的加密密码进行任何形式的存储,并且终端也不会与服务器之间进行加密密码的交互。此外,终端也不会存储加密密码的明文,用户可以通过设置的密保问题和答案来对加密密码进行加密后存储在终端本地,使得在用户忘记加密密码时,可以通过预先设置的密保问题来找回加密密码。例如,当用户首次使用终端提供的存储功能时,在设定加密密码之前或之后,通过终端提供的密保问题设置功能,进行密保问题的设置,该过程可以为:终端根据用户的密保问题设置操作,获取至少一组密保问题和答案;终端根据至少一组密保问题和答案,对加密密码进行加密,得到密码密文;终端存储密码密文,以便用户能够根据至少一组密保问题和答案找回加密密码。

其中,终端可以预先设置至少一个密保问题,由用户根据该至少一个密保问题设置相应的答案,当然,密保问题也可以由用户手动设置。当终端获取到用户设置的至少一组密保问题和答案后,可以采用该至少一组密保问题和答案中的一组或多组的组合,采用预设的加密算法来对用户设定的加密密码进行加密。该预设的加密算法可以为对称或非对称加密算法,本实施例对此不作限定。

需要说明的是,为了保证加密密码的安全性,本实施例中在终端采用至少一组密保问题和答案对加密密码进行加密存储后,终端删除对加密密码以及密保问题答案的缓存信息,使得终端不存储任何加密密码以及密保问题答案的明文信息,从而使得即使用户设备被盗之后,其他用户在不知道密保问题答案的前提下,无法获取用户的加密密码。

需要说明的是,当用户拥有多组账户地址和私钥时,可以通过终端一次性存储多组账户地址和私钥,也可以一次存储一组账户地址和私钥,本实施例对此不作限定。

202、终端基于第一加密密码,对私钥进行加密,得到待存储密文。

终端基于第一加密密码,对私钥进行加密,得到待存储密文的过程可以为:根据第一加密密码和第一预设加密算法对私钥进行加密,得到私钥密文;根据第二预设加密算法,获取私钥的签名信息;将私钥密文和私钥的签名信息作为待存储密文。

其中,第一预设加密算法可以为3DES(Triple Data Encryption Algorithm,三重数据加密算法)、AES(Advanced Encryption Standard,高级加密标准)、RSA(RSA Algorithm,RSA加密算法)等对称与非对称加密算法。终端可以预先设置一个或多个加密算法,用户可以根据需要选取其中的一种加密算法进行加密。需要说明的是,由于账户地址可以由私钥根据一定算法推到出来,因此,终端可以不必对账户地址加密。

其中,第二预设加密算法可以为HMAC-SHA256等哈希算法,该第二预设加密算法用于对私钥进行签名和验证。

其中,在得到私钥密文和私钥的签名信息后,可以将私钥的签名信息放在私钥密文之后,得到该待存储密文。

203、终端向服务器发送信息存储请求,信息存储请求携带用户标识、账户地址和待存储密文。

终端可以与服务器之间建立安全连接,比如,建立基于HTTPS(Hyper Text Transfer Protocol over Secure Socket Layer,安全超文本传输协议)或TLS(Transport Layer Security,安全传输层协议)的连接等,以确保数据传输的安全。

其中,用户标识可以为用户在使用终端的存储功能时采用第三方账户授权登录的授权信息,该第三方账户可以为对用户信息保密性能较好的应用账户,该应用账户可以为即时通讯应用账户、电子商务类应用等。例如,用户在使用该存储功能时,需要授权第三方账户登录,第三方账户服务器在确认授权后,可以根据该第三方账户生成授权序列号,该授权序列号即为第三方账户的授权信息,该授权序列号可以唯一标识该第三方账户。第三方账户服务器可以将该授权序列号发送至终端,以使得提供信息存储服务的服务器可以根据接收到的用户标识,通过第三方账户服务器验证该用户标识的正确性。

需要说明的是,为了保证同一用户标识对应密文的加密方式的一致性,终端在向服务器发送信息存储请求之前,还需要对用户输入的第一加密密码进行验证,如果通过验证确定该第一加密密码即为用户设定的加密密码,再执行该步骤203,当然,该验证的过程还可以在步骤201之后、步骤202之前执行,本实施例对此不作限定。

其中,可以采用如下两种密码验证方式该对第一加密密码进行验证:

第一种密码验证方式、终端通过向服务器请求加密的密文来进行密码验证。

该种方式的密码验证过程可以为:终端向服务器发送密码验证请求,该密码验证请求中携带用户标识;服务器根据接收到的用户标识,从与该用户标识对应的至少一个密文中任意获取一个密文返回给终端;终端采用用户输入的第一加密密码对该接收到的密文进行解密,如果解密成功,则确定该第一加密密码为用户设定的加密密码,否则,确定该第一加密密码不是用户设定的加密密码,拒绝终端向服务器进行信息存储。

需要说明的是,服务器除了可以向终端返回一个密文,由终端进行密码验证之外,还可以根据用户标识向终端返回一个密文片段,由终端进行密码验证,本实施例对此不作限定。

第二种密码验证方式、终端通过密保问题和答案进行密码验证。

该种方式的密码验证过程为:终端可以显示密码验证界面,该密码验证界面中显示至少一个密保问题,用户需要对应该至少一个密保问题输入相应的答案,终端根据至少一个密保问题以及用户输入的答案,对存储的密码密文进行解密,如果解密成功,则确定获取的第一加密密码为用户设定的加密密码,继续执行向服务器进行信息存储的步骤;如果解密失败,则确定获取的第一加密密码不是用户设定的加密密码,终端拒绝执行向服务器进行信息存储的过程。

需要说明的是,该第二种密码验证方式可以应用在终端第一次向服务器上传与用户标识对应的账户地址和密文时,也即,服务器还没有存储与该用户标识对应的账户地址和密文时,终端还可以采用密保问题和答案来进行密码验证。其中,终端确定服务器端没有存储该用户标识对应的账户地址和密文的过程可以为:终端向服务器发送密码验证请求,该密码验证请求携带用户标识;如果服务器根据接收到的用户标识,确定没有存储与该用户标识对应的账户地址和密文,向终端返回未存储消息;终端接收到该未存储消息后,执行该第二种密码验证的过程。

204、服务器当接收到终端发送的信息存储请求时,根据信息存储请求中携带的第一用户标识对用户进行身份验证。

本实施例中,将提供信息存储服务的服务器简称为服务器,而涉及的第三方账户对应的服务器称为第三方账户服务器。

其中,服务器根据第一用户标识对用户进行身份验证的过程可以为:服务器根据第一用户标识信息向第三方账户服务器发送身份验证请求,如果第三方账户服务器记录有该第一用户标识,也即是,第三账户服务器确认该第一用户标识对应的用户在使用终端的存储功能时授权了第三方账户登录,则第三方账户服务器返回验证成功消息,否则返回验证失败消息。当服务器接收到第三方服务器的验证成功消息后,确定用户的身份验证成功;当服务器接收到第三方服务器的验证失败消息后,确定用户的身份验证失败,将该验证失败消息发送至终端,以终止终端本次的信息存储过程。

为了进一步保证账户地址对应密文的安全性,在对终端的身份验证成功后,服务器可以将获取的待存储密文进行分片存储,该过程包括步骤205至步骤207。

205、如果身份验证成功,服务器根据预设配置信息,生成服务端序列化因子。

本实施例中,服务器可以配置多个存储节点,不同存储节点可以部署在相同的计算机设备上,也可以部署在相同的计算机设备上,相应的本实施例所指的服务器可以为一个包括一个计算机设备也可以包括多个计算机设备。服务器可以对每个存储节点预先设置配置信息,使得每个存储节点均具有预设配置信息。其中,预设配置信息可以包括存储节点的节点标识、存储能力信息等可以配置的信息。

其中,服务器可以根据每个存储节点的预设配置信息,生成每个存储节点各自对应的服务端序列化因子。预设配置信息不同的存储节点,对应的服务端序列化因子也不相同。此时该步骤205所指示的服务端异构序列化因子可以看作是不同存储节点对应的异构序列化因子的统称。其中,每个存储节点可以看作是一个密文数据库,每个存储节点对应的预设配置信息可以相同也可以不同,本实施例对此不作限定。

206、服务器根据服务端序列化因子和待存储密文,获取待存储密文的多个密文片段。

服务器获取到待存储密文后,可以根据预设分片算法,将该待存储密文划分为多个数据段;服务器根据多个存储节点对应的服务端序列化因子,分别对该多个数据段进行序列化,得到该待存储密文的多个密文片段。

其中,对一个数据段进行序列化是指采用预设序列化算法和服务端序列化以因子,将该数据段所包含的字符与一些随机字符进行随机组合,得到相应的密文片段。

其中,该多个数据段所包含的数据为该待存储密文所包含数据的子集,不同的数据段可以包含相同的数据,且不同的数据段不完全相同,以使得服务器能够根据该多个数据段中的部分数据段便能够还原得到该待存储密文。其中,该多个数据段的数目可以由服务器根据实际存储需求设定或修改,例如,当实际应用中希望通过两个存储节点便能够进行数据还原时,该多个数据段的数目至少为3个,相应地,服务器需要部署3个存储节点。

通过采用异构序列化因子,获取待存储密文的多个密文片段,可以将待存储密文在分片存储的基础上,每一个密文片段内部还进行了序列化加密存储,更进一步地提高了信息存储的安全性。

207、服务器对应所述第一用户标识存储该账户地址,并对应该账户地址将多个密文片段分别存储至不同的密文数据库。

服务器会将用户标识和账户地址对应存储,并且可以记录每个密文片段的存储位置,将账户地址与每个密文片段的存储位置对应起来,使得根据用户标识和账户地址便可以唯一确定一个密文,也即是,将用户标识和账户地址作为密文的索引。其中,将多个密文片段分别存储至不同的密文数据库是指,将该多个密文片段分别存储至不同的存储节点,在每个存储节点均确定存储成功之后,服务器才确定该多个密文片段存储成功,此时,可以向终端返回存储成功的消息。

上述步骤203至207为存储账户地址,并对应于账户地址,分片存储待存储密文的过程,该过程中终端将用户标识、需要存储的账户地址和待存储密文发送至服务器,由服务器对应用户标识存储账户地址,并对应账户地址分片存储待存储密文的过程。通过将待存储密文进行分片,并分别序列化后存储至不同的密文数据库,使得即使密文数据库的信息被其他用户窃取,其他用户也不能还原出完整的密文,更不可能得到密文对应的私钥,提高了信息存储的安全性。为了更加清楚的说明上述步骤201至步骤207的过程,图2B示出了该过程对应的数据流图,其中异构序列化是指采用服务端异构序列化因子对密文进行序列化。通过将账户地址和密文存储在服务器端,使得合法用户可以通过任何设备来访问服务器端存储的账户地址和密文,在提高了安全存储的同时实现了信息的云端存储。

在另一种实施方式中,终端还可以将存储账户地址和待存储密文存储在本地,将信息基于终端设备存储,使得存储的信息与网络隔绝,其他用户无法通过网络途径窃取终端本地存储的信息,提高了信息存储的安全性。相应的,本实施例的信息存储方法在步骤202之后,还可以过程包括下述步骤a1至步骤a3:

步骤a1:终端根据本地终端的设备标识信息,生成客户端序列化因子。

终端可以在用户选择了将账户地址和待存储密文进行本地存储后,执行该步骤a1;当然终端也可以在获取到账户地址和待存储密文后,默认执行该步骤a1,以将账户地址和待存储密文存储在终端本地,其中,将账户地址和待存储密文存储至本地和存储至服务器的过程可以同时执行,也可以分别执行,本实施例对此不作限定。

步骤a2:终端根据客户端序列化因子和待存储密文,获取待存储密文的多个密文片段。

终端可以根据预设分片算法,将该待存储密文划分为多个数据段;终端根据该客户端序列化因子分别对该多个数据段进行序列化,得到该待存储密文的多个密文片段。

步骤a3:将多个密文片段分别存储至不同的本地密文数据库,建立账户地址与多个密文片段之间的对应关系。

终端可以记录每个密文片段的存储位置,将账户地址与每个密文片段的存储位置对应起来,其中,不同的密文片段可以存储至终端的不同磁盘分区,或者存储在同一个磁盘分区的不同位置,以使得存储的多个密文片段是无序的,从而在加密密码进行加密的基础上,进一步保证信息存储的安全性。

需要说明的是,在终端存储账户地址和密文时,用户可以指定相应的存储目录和文件名。由于不同终端设备的设备标识信息不同,不同终端对应的客户端序列化因子不同,因此,即使某个终端存储的信息被其他用户窃取,其他用户也不能使用其他终端获取该信息的具体内容,而且,终端本地不会存储该客户端序列化因子,该客户端序列化因子是终端获取待存储密文的多个密文过程中的中间产生数据,终端不会存储该客户端序列化因子,即使在上述获取多个密文片段的过程中缓存了该客户端序列化因子,终端在获取到待存储密文的多个密文片段后,也会清除该缓存的客户端序列化因子,以确保其他用户不会获取到该客户端序列化因子,从而保证本地信息存储的安全性。

需要说明的是,终端在执行步骤a1至步骤a3之前,也可以采用与上述两种密码验证方式同理的方式进行密码验证。与上述两种方式不同点在于,针对上述第一种密码验证方式,终端从本地密文数据库中任意获取一个密文。针对上述第二种密码验证方式、终端在确定本地没有存储账户地址和对应密文后,执行上述第二种密码验证方式的过程,针对同理的密码验证过程,在此不再赘述。

在本实施例中,用户在将账户地址及其对应的密文存储至密文数据库之后,当需要在数据共享系统中进行数据交换时,终端可以从密文数据库中获取需要进行数据交换的账户地址对应的密文,并对密文进行解密后,得到账户地址对应的私钥,从而终端可以使用该私钥对交换数据进行签名,以进行后续的数据交换过程。其中,终端获取账户地址对应的密文的过程可以包括下述步骤b1至步骤b,为了更加清楚的说明该流程,图2C示出了终端从服务器获取密文的流程。

步骤b1:终端在检测到信息获取操作时,获取用户输入的第二加密密码和目标账户地址。

步骤b2:终端在验证第二加密密码与用户设定的加密密码一致后,获取与目标账户地址对应的密文。

其中,终端验证该第二加密密码与用户设定的加密密码是否一致的过程,与上述两种密码验证过程同理,在此不再赘述。

其中,终端可以通过如下两种方式获取与目标账户地址对应密文:

第一种方式、终端从本地密文数据库中获取与该目标账户地址对应的密文。

当终端本地存储有账户地址和对应的密文时,终端可以根据该目标账户地址,从密文数据库中获取与该目标账户地址对应的密文。需要说明的是,对于有些账户地址和密文,可能没有存储在终端,而是存储在服务器端,因此,终端可以在查询本地密文数据库中不存在与该目标账户地址对应的密文时,再通过下述第二种方式从服务器获取与该目标账户地址对应的密文。

第二种方式、终端从服务器获取与该目标账户地址对应的密文。

在该种方式中终端获取与该目标账户地址对应密文的过程可以为:终端向服务器发送密文获取请求,该密文获取请求中包括该目标账户地址;当服务器接收到密文获取请求时,根据目标账户地址,获取与目标账户地址对应的至少两个密文片段;服务器根据服务端序列化因子,对该至少两个密文片段进行反序列化,得到与目标账户地址对应的密文,并将该密文发送至终端。其中,为了提高服务器获取与目标账户地址对应密文的效率,该密文获取请求中还可以携带用户标识,以使得服务器可以在该用户标识对应账户地址和密文范围内进行查询。需要说明的是,服务器还可以在接收到密文获取请求时,利用用户标识进行身份验证,身份验证成功后在执行获取与目标账户地址对应的至少两个密文片段,否则返回身份验证失败,终止该密文获取的流程。其中,该身份验证的过程与步骤204中身份验证的过程同理,在此不再赘述。

其中,服务器根据服务端序列化因子,对该至少两个密文片段进行反序列化,得到该目标账户地址对应的密文的过程可以为:服务器根据目标地址对应的多个密文片段的存储位置,从多个存储节点中的至少两个存储节点中获取该至少两个密文片段;对于该至少两个存储节点中的每个存储节点,根据该存储节点的配置信息,生成该存储节点的服务端序列化因子,并根据该服务端序列化因子对该存储节点对应的密文片段进行反序列化。将该至少两个密文片段进行均进行反序列化之后,得到与该目标账户对应的密文。

步骤b3:终端根据第二加密密码和第一预设加密算法,对密文包括的私钥密文进行解密,得到解密信息。

步骤b4:终端根据第二预设加密算法,获取解密信息的签名信息。

步骤b5:如果解密信息的签名信息与密文包括的签名信息相同,终端确定解密信息为与目标账户地址对应的私钥。

在本实施例中,用户还可以对加密密码进行修改,当服务器存储有用户的账户地址及其对应的密文时,该过程可以包括下述步骤c1至步骤c7,为了更加清楚的说明该流程,图2D示出了终端与服务器交互修改密码的流程。

步骤c1:当终端检测到加密密码的修改操作时,获取用户输入的原加密密码和新加密密码。

步骤c2:如果该原加密密码与用户设定的加密密码一致,终端获取采用该原加密密码进行加密的至少一个密文。

其中,终端可以验证该原加密密码与用户设定的密码是否一致,验证过程与上述两种密码验证方式同理,在此不再赘述。

其中,终端可以通过如下两种方式获取采用该原加密密码进行加密的至少一个密文,该至少一个密文为采用该原加密密码进行加密的所有密文:

第一种方式、终端从服务器获取该至少一个密文。

该种方式中终端获取该至少一个密文的过程可以为:终端向服务器发送密码修改请求,该密码修改请求中携带用户标识;当服务器接收到终端发送的密码修改请求时,根据密码修改请求中携带的第二用户标识,获取与第二用户标识对应的至少一个密文,该与第二用户标识对应的至少一个密文即为采用该原加密密码进行加密的至少一个密文;服务器将该至少一个密文发送至终端。

需要说明的是,服务器获取与第二用户标识对应的至少一个密文的过程中,对每个账户地址对应的多个密文片段进行反序列化后,得到每个账户地址对应的密文,该反序列化的过程与步骤b2中终端从服务器获取与该目标账户地址对应的密文时,服务器对密文片段进行反序列化的过程同理,在此不做赘述。

需要说明的是,服务器还可以在接收到密文获取请求时,可以利用第二用户标识进行用户身份验证,身份验证成功后在执行获取与第二用户标识对应的至少一个密文的步骤,否则返回身份验证失败,终止该加密密码修改的流程。其中,该用户身份验证的过程与步骤204中身份验证的过程同理,在此不再赘述。

第二种方式、从终端本地获取该至少一个密文。

终端可以从本地密文数据库获取存储的至少一个账户地址及其对应的至少一个密文。其中,对于每个账户地址对应的密文,终端根据本地的设备标识信息,生成客户端序列化因子,利用该客户端序列化因子,对该账户地址对应的多个密文片段进行反序列化,得到该账户地址对应的密文。

步骤c5:终端采用原加密密码对至少一个密文中每个密文进行解密,得到该至少一个密文对应的至少一个私钥。

对于每个密文,终端对其的解密过程与上述步骤b3至b5同理,在此不再赘述。

步骤c6:终端采用新加密密码对至少一个私钥中的每个私钥进行重新加密,得到至少一个新密文,根据该至少一个密文对应的至少一个账户地址,存储该至少一个新密文。

其中,对于每个私钥,终端对其的加密过程与步骤202同理,在此不做赘述。

其中,可以采用如下两种方式存储该至少一个新密文。

第一种方式、终端将该至少一个新密文发送至服务器,由服务器进行存储。

该种方式中,服务器可以根据第二用户标识,将该第二用户标识对应的至少一个密文更新为该至少一个新密文。例如,在步骤c2中,服务器向终端发送的至少一个密文可以具有一定的顺序,该顺序用于标识该至少一个密文对应的至少一个账户地址的顺序。终端也按照相同的顺序返回与该至少一个密文对应的至少一个新密文,使得服务器可以根据该顺序对应该至少一个账户地址,分片存储该至少一个新密文。

第二种方式、终端将该至少一个新密文存储在本地。

在步骤c2中,终端获取的至少一个密文可以具有一定的顺序,该顺序用于标识该至少一个密文对应的至少一个账户地址的顺序。基于该顺序,终端可以对应该至少一个账户地址,分片存储该至少一个新密文,该分片存储的过程与步骤a1至步骤a3同理,在此不再赘述。

此外,用户还可以对存储的账户地址和密文进行删除或修改等操作。本实施例中终端还提供了信息存储的日志查询功能,例如,终端可以记录用户使用该信息存储功能的日志,比如信息存储日志、信息读取日志、信息删除日志、密码修改日志等。记录的日志中包括终端的IP地址以及用户行为信息,该用户行为信息可以为信息存储、信息读取、信息删除、密码修改等相关信息。

为了更加清楚的说明本实例中采用异构序列化的方式对密文进行分片存储的过程进行解释说明,图2E示出了采用异构序列化因子对密文进行序列化和反序列化的示意图,该异构序列化因子可以为服务端异构序列化因子也可以为客户端异构序列化因子。该图中密文包括多字符,图中每个方格代表一个字符。该密文A被存储为三个密文片段,分别为密文片段A、密文片段B和密文片段C,密文片段中采用斜线填充的方格为序列化过程中填充的冗余字符。图2F中示出了服务器或终端将密文对应的密文片段存储至不同密文数据库的示意图,其中,以将密文片段A存储至密文数据库A、将密文片段B存储至密文数据库B。将密文片段C存储至密文数据库C为例示出。当然,在存储后,还可以从密文数据库中读取相应的密文片段。

本实施例提供的方法,终端采用加密密码对私钥进行加密,使得其他用户在不知道加密密码的前提下无法对密文解密得到私钥,并且在加密后,将待存储密文进行分片存储,使得待存储密文被其他用户窃取之后,即使其他用户窃取得到用户的加密密码也无法还原出待存储密文,提高了用于对数据共享系统中的共享数据进行标识的身份标识信息的安全性。

图3是本发明实施例提供的一种信息存储装置的框图。参照图3,该装置包括第一获取模块301,第一加密模块302和第一存储模块303。

其中,第一获取模块301与第一加密模块302连接,用于获取第一加密密码和待存储的身份标识信息,该身份标识信息包括用于在数据共享系统中生成存储于区块的共享数据时所采用的账户地址及其对应的私钥;第一加密模块302与第一存储模块303连接,用于基于该第一加密密码,对该私钥进行加密,得到待存储密文;第一存储模块303,用于存储该账户地址,并对应于该账户地址,分片存储该待存储密文。

在一种可能的实现方式中,该第一存储模块用于向服务器发送信息存储请求,该信息存储请求携带用户标识、该账户地址和该待存储密文,由该服务器对应该用户标识和该账户地址,分片存储该待存储密文。

在一种可能的实现方式中,该第一存储模块用于根据本地终端的设备标识信息,生成客户端序列化因子;根据该客户端序列化因子和待存储密文进行分片,获取该待存储密文的多个密文片段;将该多个密文片段分别存储至不同的本地密文数据库,建立该账户地址与该多个密文片段之间的对应关系。

在一种可能的实现方式中,该第一加密模块用于根据该第一加密密码和第一预设加密算法对该私钥进行加密,得到私钥密文;根据第二预设加密算法,获取该私钥的签名信息;将该私钥密文和该私钥的签名信息作为该待存储密文。

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

第二获取模块,用于当检测到信息获取操作时,获取用户输入的第二加密密码和目标账户地址;

第三获取模块,用于如果该第二加密密码与用户设定的加密密码一致,获取与该目标账户地址对应的密文;

第一解密模块,用于根据该第二加密密码和该第一预设加密算法,对该密文包括的私钥密文进行解密,得到解密信息;

第四获取模块,用于根据该第二预设加密算法,获取该解密信息的签名信息;

确定模块,用于如果该解密信息的签名信息与该密文包括的签名信息相同,确定该解密信息为与该目标账户地址对应的私钥。

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

第五获取模块,用于根据用户的密保问题设置操作,获取至少一组密保问题和答案;

第二加密模块,用于根据该至少一组密保问题和答案,对该加密密码进行加密,得到密码密文;

第二存储模块,用于存储该密码密文,以便该用户能够根据该至少一组密保问题和答案找回该加密密码。

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

第六获取模块,用于当检测到加密密码的修改操作时,获取用户输入的原加密密码和新加密密码;

第七获取模块,用于如果该原加密密码与用户设定的加密密码一致,获取采用该原加密密码进行加密的至少一个密文;

第二解密模块,用于采用该原加密密码对该至少一个密文中每个密文进行解密,得到该至少一个密文对应的至少一个私钥;

所述第一加密模块,还用于采用该新加密密码对该至少一个私钥中的每个私钥进行重新加密,得到该至少一个私钥对应的至少一个新密文;

发送模块,用于将该至少一个新密文发送至该服务器,由该服务器将该用户标识对应的该至少一个密文替换为该至少一个新密文。

本公开实施例提供的装置,采用加密密码对私钥进行加密,使得其他用户在不知道加密密码的前提下无法对密文解密得到私钥,并且在加密后,将待存储密文进行分片存储,使得待存储密文被其他用户窃取之后,即使其他用户窃取得到用户的加密密码也无法还原出待存储密文,提高了用于对数据共享系统中的共享数据进行标识的身份标识信息的安全性。

图4是本发明实施例提供的一种信息存储装置的框图。参照图3,该装置包括验证模块401、生成模块402、第一获取模块403和存储模块404。

其中,验证模块401与生成模块402连接,用于当接收到终端发送的信息存储请求时,根据第一用户标识对用户进行身份验证,该信息存储请求携带该第一用户标识、账户地址和待存储密文;生成模块402与第一获取模块403连接,用于如果身份验证成功,根据预设配置信息,生成服务端序列化因子;第一获取模块403与存储模块404连接,用于根据该服务端序列化因子和该待存储密文,获取该待存储密文的多个密文片段;存储模块404,用于对应该第一用户标识存储该账户地址,对应该账户地址将该多个密文片段分别存储至不同的密文数据库。

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

第二获取模块,用于当接收到该终端发送的密文获取请求时,根据目标账户地址,获取与该目标账户地址对应的多个密文片段,该密文获取请求中携带该目标账户地址;

反序列化模块,用于根据该服务端序列化因子,对该多个密文片段进行反序列化,得到与该目标账户地址对应的密文;

发送模块,用于将该密文发送至该终端,由该终端根据用户输入的加密密码对该密文进行解密,以得到该密文对应的私钥。

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

第三获取模块,用于当接收到该终端发送的密码修改请求时,根据该密码修改请求中携带的第二用户标识,获取与该第二用户标识对应的至少一个密文;

该发送模块还用于将该至少一个密文发送至该终端,由该终端根据用户输入的原加密密码对该至少一个密文进行解密,根据该用户输入的新加密密码对解密后的至少一个私钥进行重新加密,并返回重新加密后的至少一个新密文;

更新模块,用于根据该第二用户标识,将该第二用户标识对应的该至少一个密文更新为该至少一个新密文。

本公开实施例提供的装置,采用加密密码对私钥进行加密,使得其他用户在不知道加密密码的前提下无法对密文解密得到私钥,并且在加密后,将待存储密文进行分片存储,使得待存储密文被其他用户窃取之后,即使其他用户窃取得到用户的加密密码也无法还原出待存储密文,提高了用于对数据共享系统中的共享数据进行标识的身份标识信息的安全性。

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

图5是本发明实施例提供的一种终端的结构示意图,该终端可以用于执行上述各个实施例中信息存储方法。参见图5,该终端500包括:

终端500可以包括RF(Radio Frequency,射频)电路110、包括有一个或一个以上计算机可读存储介质的存储器120、输入单元130、显示单元140、传感器150、音频电路160、WiFi(Wireless Fidelity,无线保真)模块170、包括有一个或者一个以上处理核心的处理器180、以及电源190等部件。本领域技术人员可以理解,图5中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:

RF电路110可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器180处理;另外,将涉及上行的数据发送给基站。通常,RF电路110包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(SIM)卡、收发信机、耦合器、LNA(Low Noise Amplifier,低噪声放大器)、双工器等。此外,RF电路110还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于GSM(Global System of Mobile communication,全球移动通讯系统)、GPRS(General Packet Radio Service,通用分组无线服务)、CDMA(Code Division Multiple Access,码分多址)、WCDMA(Wideband Code Division Multiple Access,宽带码分多址)、LTE(Long Term Evolution,长期演进)、电子邮件、SMS(Short Messaging Service,短消息服务)等。

存储器120可用于存储软件程序以及模块,处理器180通过运行存储在存储器120的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器120可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据终端500的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器120还可以包括存储器控制器,以提供处理器180和输入单元130对存储器120的访问。

输入单元130可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,输入单元130可包括触敏表面131以及其他输入设备132。触敏表面131,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面131上或在触敏表面131附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面131可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器180,并能接收处理器180发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面131。除了触敏表面131,输入单元130还可以包括其他输入设备132。具体地,其他输入设备132可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。

显示单元140可用于显示由用户输入的信息或提供给用户的信息以及终端500的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元140可包括显示面板141,可选的,可以采用LCD(Liquid Crystal Display,液晶显示器)、OLED(Organic Light-Emitting Diode,有机发光二极管)等形式来配置显示面板141。进一步的,触敏表面131可覆盖显示面板141,当触敏表面131检测到在其上或附近的触摸操作后,传送给处理器180以确定触摸事件的类型,随后处理器180根据触摸事件的类型在显示面板141上提供相应的视觉输出。虽然在图5中,触敏表面131与显示面板141是作为两个独立的部件来实现输入和输入功能,但是在某些实施例中,可以将触敏表面131与显示面板141集成而实现输入和输出功能。

终端500还可包括至少一种传感器150,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板141的亮度,接近传感器可在终端500移动到耳边时,关闭显示面板141和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于终端500还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。

音频电路160、扬声器161,传声器162可提供用户与终端500之间的音频接口。音频电路160可将接收到的音频数据转换后的电信号,传输到扬声器161,由扬声器161转换为声音信号输出;另一方面,传声器162将收集的声音信号转换为电信号,由音频电路160接收后转换为音频数据,再将音频数据输出处理器180处理后,经RF电路110以发送给比如另一终端,或者将音频数据输出至存储器120以便进一步处理。音频电路160还可能包括耳塞插孔,以提供外设耳机与终端500的通信。

WiFi属于短距离无线传输技术,终端500通过WiFi模块170可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图5示出了WiFi模块170,但是可以理解的是,其并不属于终端500的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。

处理器180是终端500的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器120内的软件程序和/或模块,以及调用存储在存储器120内的数据,执行终端500的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器180可包括一个或多个处理核心;优选的,处理器180可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器180中。

终端500还包括给各个部件供电的电源190(比如电池),优选的,电源可以通过电源管理系统与处理器180逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源190还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。

尽管未示出,终端500还可以包括摄像头、蓝牙模块等,在此不再赘述。具体在本实施例中,终端的显示单元是触摸屏显示器,终端还包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行。所述一个或者一个以上程序包含可执行指令,终端500被配置为执行指令,以执行上述信息存储方法实施例中终端所执行的方法。

在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器,上述指令可由终端中的处理器执行以完成上述实施例中信息存储方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。

图6是本发明实施例提供的一种信息存储装置的框图。例如,装置600可以被提供为一服务器。参照图6,装置600包括处理组件622,其进一步包括一个或多个处理器,以及由存储器632所代表的存储器资源,用于存储可由处理部件622的执行的指令,例如应用程序。存储器632中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件622被配置为执行指令,以执行上述信息存储方法实施例中服务器所执行的方法。

装置600还可以包括一个电源组件626被配置为执行装置600的电源管理,一个有线或无线网络接口650被配置为将装置600连接到网络,和一个输入输出(I/O)接口658。装置600可以操作基于存储在存储器632的操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。

在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器,上述指令可由服务器中的处理器执行以完成上述实施例中的信息存储方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。

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

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

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