一种数据读写方法及装置与流程

文档序号:15230334发布日期:2018-08-21 19:20阅读:185来源:国知局

本发明涉及通信技术领域,具体涉及一种数据读写方法及装置。



背景技术:

随着nfc(nearfieldcommunication,近距离无线通讯)技术的发展,nfc技术的应用日益广泛。nfc技术的应用通常是将具有nfc功能的设备模拟成一张非接触卡(即芯片卡),如门禁卡、银行卡等。芯片卡主要应用于商场、交通等场景下的非接触移动支付应用中,用户只要将芯片卡靠近读卡器,并输入密码确认交易或者直接接收交易即可。此种方式下,芯片卡通过非接触读卡器的rf(radiofrequency,射频)域来供电,即便是nfc设备没电也可以工作。nfc识读设备(即读卡器)从具备tag(标签)功能的芯片卡中采集数据,然后将数据传送到应用处理系统进行处理。基于nfc技术的典型应用包括本地支付、门禁控制、电子票应用等。

现有技术仅使用基于软件的数学加密方法,由于有兼容性的需求,一般使用较为通用的加密方法和密钥,导致一般人员使用通用设备即可完成对卡片基本信息的读取。若芯片卡存储的信息包括保密信息或敏感信息,则很容易造成信息泄露,存在安全隐患。

因此,亟需一种数据读写方案以解决上述问题。



技术实现要素:

本发明针对现有技术中存在的上述不足,提供一种数据读写方法及装置,用以解决现有的数据读写方案存在的安全性差的问题。

本发明为解决上述技术问题,采用如下技术方案:

本发明提供一种数据读写方法,应用于包括多个存储单元的存储装置,所述方法包括:

向服务器获取存储单元的排序;

将待存储数据拆分为预设数量的数据块;

按照所述存储单元的排序,将所述各数据块分别存储在各存储单元内;其中,所述存储单元的数量与所述数据块的数量相同,且每个存储单元内存储一个数据块。

进一步的,所述数据读写方法还包括:

接收数据读取装置发送的数据读取请求,并获取其中携带的数据读取排序;

判断所述数据读取排序与从所述服务器获取到的存储单元的排序是否相同,若相同,则获取各存储单元内存储的数据块,并将所述各数据块发送给所述数据读取装置。

优选的,所述各存储单元分别对应不同的通信频率;

所述将所述数据块发送给所述各数据读取装置,具体包括:

各存储单元通过各自的通信频率,将本存储单元内存储的数据块发送给所述数据读取装置。

进一步的,所述数据读写方法还包括:

若所述数据读取排序与从所述服务器获取到的存储单元的排序不同,则删除或锁死至少部分存储单元内存储的数据块。

本发明还提供一种数据读写方法,所述方法包括:

向服务器获取数据读取排序;

向数据存储装置发送数据读取请求,所述数据读取请求中携带有所述数据读取排序,以使所述数据存储装置判断所述数据读取请求的合法性;

接收存储装置发送的数据块,并根据所述数据读取排序,排列并组合所述数据块,所述数据块是所述数据存储装置在判断出所述数据读取请求合法后发送的。

本发明还提供一种数据存储装置,所述数据存储装置包括:包括:第一获取模块、拆分模块、写入模块和多个存储单元;

所述第一获取模块用于,向服务器获取存储单元的排序;

所述拆分模块用于,将待存储数据拆分为预设数量的数据块;

所述写入模块用于,按照所述存储单元的排序,将所述各数据块分别存储在各存储单元内;其中,所述存储单元的数量与所述数据块的数量相同,且每个存储单元内存储一个数据块。

进一步的,所述数据存储装置还包括第一接收模块、处理模块和第一发送模块,

所述第一接收模块用于,接收数据读取装置发送的数据读取请求;

所述处理模块还用于,获取所述数据读取请求中携带的数据读取排序,判断所述数据读取排序与从所述服务器获取到的存储单元的排序是否相同,当二者相同时,获取各存储单元内存储的数据块,并指示所述第一发送模块将所述各数据块发送给所述数据读取装置。

优选的,所述各第一发送模块与所述各存储单元一一对应,且分别对应不同的通信频率;

所述第一发送模块具体用于,将本存储单元内存储的数据块发送给所述数据读取装置。

进一步的,所述处理模块还用于,当判断出所述数据读取请求中携带的数据读取排序与从所述服务器获取到的存储单元的排序不同时,删除或锁死至少部分存储单元内存储的数据块。

本发明还提供一种数据读取装置,所述数据读取装置包括:包括:第二获取模块、第二发送模块、第二接收模块和读取模块;

所述第二获取模块用于,向服务器获取数据读取排序;

所述第二发送模块用于,向数据存储装置发送数据读取请求,所述数据读取请求中携带有所述数据读取排序,以使所述数据存储装置判断所述数据读取请求的合法性;

所述第二接收模块用于,接收存储装置发送的数据块,所述数据块是所述数据存储装置在判断出所述数据读取请求合法后发送的;

所述读取模块用于,根据所述数据读取排序,排列并组合所述数据块。

本发明通过向服务器获取存储单元的排序,将待存储数据拆分为与存储单元数量相同的数据块,并按照存储单元的排序,将各数据块分别存储在各存储单元内,每个存储单元内存储一个数据块;在每次数据存储之前,均向服务器获取存储单元的排序,服务器下发的存储单元的排序可以不同,即使数据存储装置和数据读取装置使用同一频率进行通信,不知道本次数据存储采用的存储单元的排序,数据读取装置也无法获得数据存储装置内有效的数据信息,从而提升数据存储的安全性和可靠性。

附图说明

图1为本发明实施例提供的数据读写方法的流程图之一;

图2为本发明实施例提供的数据读写方法的流程图之二;

图3为本发明实施例提供的数据读写方法的流程图之三;

图4为本发明实施例提供的数据存储装置的结构示意图;

图5为本发明实施例提供的数据读取装置的结构示意图。

具体实施方式

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

本发明提供一种数据读写方法,所述方法应用于包括数据存储装置、数据读取装置和服务器的系统中,其中,数据存储装置可以为非接触式芯片卡,包括多个存储单元,各存储单元位于该芯片卡的不同区域内。数据读取装置可以为读卡器,服务器用于对数据存储装置和数据读取装置的安全性进行管理。

本发明的数据读写方法包括数据存储流程和数据读取流程,以下结合图1,对数据存储流程进行详细说明,如图1所示,该流程包括以下步骤:

步骤101,向服务器获取存储单元的排序。

具体的,在每次进行数据存储之前,数据存储装置向服务器获取本次数据存储所需的存储单元的排序。存储单元的排序为数据存储装置的各存储单元的排列顺序,该排序即为各部分待存储数据在数据存储装置上的存储顺序。

数据存储装置可以向服务器发起获取请求,服务器基于该获取请求向数据存储装置下发存储单元的排序;或者,服务器根据预设规则向数据存储装置下发存储单元的排序,该预设规则可以是周期下发,也可以是针对数据存储装置的同一批次、同一厂商下发存储单元的排序,或随机产生并下发存储单元的排序。

步骤102,将待存储数据拆分为预设数量的数据块。

具体的,数据存储装置将待存储数据拆分为与存储单元的数量相同的数据块。

步骤103,按照存储单元的排序,将各数据块分别存储在各存储单元内。

具体的,数据存储装置按照存储单元的排序,将拆分后的数据块分别存储在各个存储单元内,其中,每个存储单元内存储一个数据块,这样,整个待存储数据即被存储在数据存储装置中。相应的,按照存储单元的排序将各个存储单元内存储的数据块进行组合,即可得到完整的待存储数据。需要说明的是,为了实现数据的有效读取,数据读取装置需要事先获取本次数据存储时所依据的存储单元的排序。

通过上述步骤101-103可以看出,本发明通过向服务器获取存储单元的排序,将待存储数据拆分为与存储单元数量相同的数据块,并按照存储单元的排序,将各数据块分别存储在各存储单元内,每个存储单元内存储一个数据块;在每次数据存储之前,均向服务器获取存储单元的排序,服务器下发的存储单元的排序可以不同,即使数据存储装置和数据读取装置使用同一的频率进行通信,不知道本次数据存储采用的存储单元的排序,数据读取装置也无法获得数据存储装置内有效的数据信息,从而提升数据存储的安全性和可靠性。

由于存储单元内的数据块可以反复读写,可以实现对同一批次的芯片卡使用不同的排序进行存储,或在芯片卡每次交易后重新设置排序。

以下结合图2,对数据读取流程进行详细说明。如图2所示,该流程包括以下步骤:

步骤201,接收数据读取装置发送的数据读取请求,并获取其中携带的数据读取排序。

具体的,数据存储装置接收数据读取装置发送的数据读取请求,获取数据读取请求中携带的数据读取排序,所述数据读取排序是数据读取装置向服务器获取的。

步骤202,判断数据读取请求中携带的数据读取排序与从服务器获取到的存储单元的排序是否相同,若相同,则执行步骤203,否则,执行步骤204。

具体的,若数据存储装置判断出数据读取排序与存储单元的排序相同,说明数据读取请求合法,则允许数据读取装置读取所存储的数据,即数据存储装置获取各存储单元内存储的数据块,并将各数据块发送给数据读取装置(即执行步骤203)。若数据存储装置判断出数据读取排序与存储单元的排序不同,说明数据读取请求不合法,则不允许数据读取装置读取所存储的数据(即执行步骤204)。

步骤203,获取各存储单元内存储的数据块,并将各数据块发送给数据读取装置。

具体的,数据存储装置的各存储单元分别对应不同的通信频率,也就是说,数据存储装置具有相同数量的存储单元和通信频率,且各个存储单元、通信频率和拆分得到的数据块分别一一对应。具体的,数据存储装置包括多个第一发送模块,第一发送模块为发射天线,各第一发送模块与各存储单元一一对应,且分别对应不同的通信频率。

所述将各数据块发送给数据读取装置,具体包括:各存储单元分别通过各自的通信频率,将本存储单元内存储的数据块发送给数据读取装置。

由于各个存储单元对应的通信频率不同,这样,各个存储单元内存储的数据块可以同步发送,相互之间不会产生影响,相应的,数据读取装置可以同步接收各个数据块,从而提高数据读取速度。

由于本发明的数据存储装置与数据读取装置需要配合使用,即需要使用专用的数据读取装置。但是,为了保证数据存储装置仍然能够与现有的数据读取装置配合使用,提高系统兼容性,优选的,数据存储装置中的一个通信频率可以为现在广泛使用的13.56mhz±7khz,相应的,对应该通信频率的存储单元可以用来存储数据存储装置的设备信息(例如卡号等),这样,该数据存储装置存储有完成交易所需的最少信息(即卡号),以使其具有对现有交易终端(即数据读取装置)非接触支付功能的向下兼容能力。

步骤204,删除或锁死至少部分存储单元内存储的数据块。

具体的,若数据存储装置判断出数据读取排序与存储单元的排序不同,则删除或锁死至少部分存储单元内存储的数据块,即拒绝读取或擦除部分数据,防止在数据请求为非法的情况下,数据读取装置通过先获取数据存储装置上各个存储单元内存储的数据,再进行暴力破解的可能,从而进一步提高安全性和可靠性。

需要说明的是,在判断出数据读取排序与存储单元的排序不同的情况下,数据存储装置也可以不删除或锁死至少部分存储单元内存储的数据块,而是对数据读取装置的数据读取请求不予应答。

本发明还提供一种数据读写方法,如图3所示,所述方法包括以下步骤:

步骤301,向服务器获取数据读取排序。

具体的,在每次进行数据读取之前,数据读取装置向服务器获取本次数据读取所需的数据读取排序。

数据读取装置可以向服务器发起获取请求,服务器基于该获取请求向数据读取装置下发数据读取排序;或者,服务器根据预设规则向数据读取装置下发数据读取排序,该预设规则可以是周期下发,也可以是针对数据读取装置的同一批次、同一厂商下发数据读取排序,或随机产生并下发数据读取排序。正常情况下,服务器向数据读取装置下发的数据读取排序应该与向数据存储装置下发的存储单元的排序相同,以保证数据的正常读取。

步骤302,向数据存储装置发送数据读取请求。

具体的,数据读取装置向数据存储装置发送数据读取请求,该数据读取请求中携带有数据读取排序,以使数据存储装置根据该数据读取排序判断数据读取请求的合法性。

步骤303,接收存储装置发送的各数据块,并根据数据读取排序,排列并组合各数据块。

具体的,若数据存储装置在判断出数据读取请求中携带的数据读取排序与从服务器获取到的存储单元的排序相同,则向数据读取装置发送各数据块,也就是说,数据存储装置在判断出数据读取请求合法后,向数据存储装置发送各数据块。

优选的,数据读取装置也可以包括多个第二接收模块,第二接收模块可以为接收天线,各第二接收模块分别对应不同的通信频率,该通信频率与数据存储装置的各个通信频率相对应。这样,数据存储装置可以利用各接收天线同步接收数据存储装置分别利用各发射天线发送的数据块,从而提高数据读取的效率。

在各个数据块接收完毕之后,数据读取装置根据数据读取排序,排列并组合各数据块,从而得到完整的数据,该数据即为待存储数据,从而实现数据的读取。

基于相同的技术构思,本发明实施例还提供一种数据存储装置,如图4所示,该数据存储装置可以包括:第一获取模块41、拆分模块42、写入模块43和多个存储单元。

第一获取模块41用于,向服务器获取存储单元的排序。

拆分模块42用于,将待存储数据拆分为预设数量的数据块。

写入模块43用于,按照存储单元的排序,将各数据块分别存储在各存储单元内;其中,存储单元的数量与数据块的数量相同,且每个存储单元内存储一个数据块。

进一步的,所述数据存储装置还包括第一接收模块44、处理模块45和第一发送模块46,第一接收模块44用于,接收数据读取装置发送的数据读取请求。

处理模块45还用于,获取数据读取请求中携带的数据读取排序,判断数据读取排序与从服务器获取到的存储单元的排序是否相同,当二者相同时,获取各存储单元内存储的数据块,并指示第一发送模块46将各数据块发送给数据读取装置。

优选的,各第一发送模块46与各存储单元一一对应,且分别对应不同的通信频率。第一发送模块46具体用于,将本存储单元内存储的数据块发送给数据读取装置。

进一步的,处理模块45还用于,当判断出数据读取请求中携带的数据读取排序与从服务器获取到的存储单元的排序不同时,删除或锁死至少部分存储单元内存储的数据块。

基于相同的技术构思,本发明实施例还提供一种数据读取装置,如图5所示,该数据读取装置可以包括:第二获取模块51、第二发送模块52、第二接收模块53和读取模块54。

第二获取模块51用于,向服务器获取数据读取排序。

第二发送模块52用于,向数据存储装置发送数据读取请求,所述数据读取请求中携带有所述数据读取排序,以使数据存储装置判断数据读取请求的合法性。

第二接收模块53用于,接收存储装置发送的数据块,所述数据块是数据存储装置在判断出数据读取请求合法后发送的。

读取模块54用于,根据数据读取排序,排列并组合所述数据块。

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

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