法律状态公告日
法律状态信息
法律状态
2022-12-09
专利权的转移 IPC(主分类):G06F16/903 专利号:ZL2016103501415 登记生效日:20221128 变更事项:专利权人 变更前权利人:重庆通畅无忧信息技术有限公司 变更后权利人:重庆耐德能源装备集成有限公司 变更事项:地址 变更前权利人:401121 重庆市北部新区黄山大道杨柳路6号 变更后权利人:401121 重庆市两江新区龙兴镇堡云路5号
专利申请权、专利权的转移
2020-02-07
授权
授权
2016-11-09
实质审查的生效 IPC(主分类):G06F17/30 申请日:20160524
实质审查的生效
2016-10-12
公开
公开
技术领域
本发明涉及用户卡管理领域,特别涉及一种用户卡黑名单存储、查询方法。
背景技术
加气站、加油站等(以下以加气站为例)为了方便管理用户加气卡(以下称用户卡),针对挂失卡、异常卡等建立了黑名单机制,即上述用户卡到任何加气站加气,都将被自动判别为黑名单不准加气。为保证加气机在脱机时(与控制中心失去连接)也能正常识别黑名单,对于这一功能要求,目前控制系统软件的传统方法是:站控中心即控制中心把该卡卡号列入黑名单表,再将黑名单表下发至所有加气机,加气机将新增加的黑名单保存到该加气机本地存储器,以便脱机时本地查询黑名单。
在这里,就涉及到加气机对黑名单的存储和查询;由于1张卡的卡号是10个字节(1字节=8位),故存储1个卡号所需存储空间为10*8=80位,浪费存储空间;查询某张卡是否是黑名单时,加气机将卡号和存储器内有序黑名单表进行一一对比查找(折半查找),查询消耗时间长。
发明内容
本发明的目的是针对现有技术存在的不足,提供一种用户卡黑名单存储、查询方法,其可以大大节省存储空间,提升终端黑名单容量,加快黑名单检索速度。
本发明的目的是采用下述方案实现的:一种用户卡黑名单存储、查询方法,包括如下步骤:
1)为每张用户卡分配一个唯一对应的索引号,每张用户卡中存储各自对应的索引号;
2)在终端机的存储器所提供的地址空间中,设定一个索引号对应一个存储器偏移位地址空间;
3)终端机接收控制中心发来的索引号以及索引号对应的黑名单状态,根据索引号检索索引号对应的存储器偏移位地址空间,并按照索引号对应的黑名单状态在索引号对应的存储器偏移位地址空间存储设定的标志,生成黑名单表;如果索引号对应的某卡不是黑名单,则该卡的索引号对应的存储器偏移位地址空间存储第一标志,如果索引号对应的某卡是黑名单,则该卡的索引号对应的存储器偏移位地址空间存储第二标志;
4)终端机查询某张卡是否是黑名单时,首先,终端机读取该卡的索引号,根据索引号检索索引号对应的存储器偏移位地址空间,判断该索引号对应的存储器偏移位地址空间存储的标志是第一标志还是第二标志;如果是第一标志,则该卡不是黑名单,如果是第二标志,则该卡是黑名单。
另一种用户卡黑名单存储、查询方法,包括如下步骤:
1)为每张用户卡分配一个唯一对应的索引号,每张用户卡中存储各自对应的索引号;
2)在控制中心生成黑名单表:设定一个索引号对应一个存储器偏移位地址空间,在索引号对应的存储器偏移位地址空间存储设定的标志,生成黑名单表;如果索引号对应的某卡不是黑名单,则该卡的索引号对应的存储器偏移位地址空间存储第一标志,如果索引号对应的某卡是黑名单,则该卡的索引号对应的存储器偏移位地址空间存储第二标志;
3)控制中心将步骤2)生成的黑名单表下发给终端机,终端机接收控制中心下发的黑名单表,并存储。
4)终端机查询某张卡是否是黑名单时,首先,终端机读取该卡的索引号,根据索引号检索索引号对应的存储器偏移位地址空间,判断该索引号对应的存储器偏移位地址空间存储的标志是第一标志还是第二标志;如果是第一标志,则该卡不是黑名单,如果是第二标志,则该卡是黑名单。
黑名单表为一个按照索引号从小到大对应存储器偏移位地址空间存储设定标志的有序表。
第一标志为0,第二标志为1。
索引号对应的存储器偏移位地址空间的检索公式为:Addr.Byte = StartAddr + INDEX/8;Addr.Bit = INDEX%8;其中,Addr.Byte为字节地址,Addr.Bit为字节内位偏移地址,StartAddr为黑名单表在存储器起始地址,INDEX为索引号。
步骤1)中所述索引号从0开始,发卡机构每发一张卡,索引号就增加1,使每张卡都将一一对应从0到发卡数范围内的唯一一个索引号。
所述终端机为加气机或加油机。
本发明具有的优点是:
(1) 因为本发明一个索引号对应存储单元的一个位,且一一对应。在每个位存储设定的标志(0或1),如果索引号对应的某卡不是黑名单,则该卡的索引号对应的位存储第一标志如0,如果索引号对应的某卡是黑名单,则该卡的索引号对应的位存储第二标志如1,采用上述方法,使得本发明减少黑名单的存储空间,提升终端黑名单容量。比如,以200K字节作为黑名单存储空间大小为例,传统方法存储黑名单个数NumOld=200,000/10=20,00个;本发明方法存储黑名单个数NumNew=200,000*8=1,600,000个;意味着,同样的存储空间下,本发明方法存储的黑名单个数是传统方法的80倍。
(2)本发明减少检索时间,加快黑名单检索速度,传统方法中,黑名单表为一个按照卡号从小到大排列的有序表,一般采用折半查找,时间复杂度为O(logn);本发明方法查询黑名单时,直接根据卡索引号(INDEX)按照上述计算公式得出,时间复杂度仅为O(1)。
附图说明
图1为本发明实施例一的方法流程图;
图2为本发明的黑名单表的示意图。
具体实施方式
实施例一
参见图1,一种用户卡黑名单存储、查询方法,包括如下步骤:
1)为每张用户卡分配一个唯一对应的索引号,每张用户卡中存储各自对应的索引号。本实施例在用户卡卡信息上建立4个字节字段作为卡ID索引号(INDEX),索引号从0开始,发卡机构每发一张卡,索引号就增加1,使每张卡都将一一对应从0到发卡数范围内的唯一一个索引号。
2)在终端机的存储器所提供的地址空间中,设定一个索引号对应一个存储器偏移位地址空间。本方法用于加气站时,所述终端机为加气机。控制中心为加气站站控中心。本方法用于加油站时,终端机为加油机。控制中心为加油站站控中心。
3)终端机接收控制中心发来的索引号以及索引号对应的黑名单状态,根据索引号检索索引号对应的存储器偏移位地址空间,并按照索引号对应的黑名单状态在索引号对应的存储器偏移位地址空间存储设定的标志,生成黑名单表。本发明的终端机上黑名单表不再是存储卡号。黑名单表为一个按照索引号从小到大的有序表,其索引号对应的存储器偏移位地址空间存储设定标志。如果索引号对应的某卡不是黑名单,则该卡的索引号对应的存储器偏移位地址空间存储第一标志,如果索引号对应的某卡是黑名单,则该卡的索引号对应的存储器偏移位地址空间存储第二标志;第一标志为0,第二标志为1。
4)终端机查询某张卡是否是黑名单时,首先,终端机读取该卡的索引号,根据索引号检索索引号对应的存储器偏移位地址空间,判断该索引号对应的存储器偏移位地址空间存储的标志是第一标志还是第二标志;如果是第一标志,则该卡不是黑名单,如果是第二标志,则该卡是黑名单。
索引号对应的存储器偏移位地址空间的检索公式为:Addr.Byte = StartAddr + INDEX/8;Addr.Bit = INDEX%8;其中,Addr.Byte为字节地址,Addr.Bit为字节内位偏移地址,StartAddr为黑名单表在存储器起始地址,INDEX为索引号。例如:如图2所示,黑名单表起始地址为100,黑名单卡索引号为12(其他卡都不是黑名单),则该卡黑名单在加气机检索地址:字节地址=100+12/8=101;字节内位偏移地址=12%8=4。
实施例二
一种用户卡黑名单存储、查询方法,包括如下步骤:
1)为每张用户卡分配一个唯一对应的索引号,每张用户卡中存储各自对应的索引号。本实施例在用户卡卡信息上建立4个字节字段作为卡ID索引号(INDEX),索引号从0开始,发卡机构每发一张卡,索引号就增加1,使每张卡都将一一对应从0到发卡数范围内的唯一一个索引号。
2)在控制中心生成黑名单表:设定一个索引号对应一个存储器偏移位地址空间,在索引号对应的存储器偏移位地址空间存储设定的标志,生成黑名单表;如果索引号对应的某卡不是黑名单,则该卡的索引号对应的存储器偏移位地址空间存储第一标志,如果索引号对应的某卡是黑名单,则该卡的索引号对应的存储器偏移位地址空间存储第二标志。本发明的终端机上黑名单表不再是存储卡号。黑名单表为一个按照索引号从小到大对应存储器偏移位地址空间存储设定标志的有序表。
3)控制中心将步骤2)生成的黑名单表下发给终端机,终端机接收控制中心下发的黑名单表,并存储。所述终端机为加气机或加油机。
4)终端机查询某张卡是否是黑名单时,首先,终端机读取该卡的索引号,根据索引号检索索引号对应的存储器偏移位地址空间,判断该索引号对应的存储器偏移位地址空间存储的标志是第一标志还是第二标志;如果是第一标志,则该卡不是黑名单,如果是第二标志,则该卡是黑名单。第一标志为0,第二标志为1。
索引号对应的存储器偏移位地址空间的检索公式为:Addr.Byte = StartAddr + INDEX/8;Addr.Bit = INDEX%8;其中,Addr.Byte为字节地址,Addr.Bit为字节内位偏移地址,StartAddr为黑名单表在存储器起始地址,INDEX为索引号。例如:如图2所示,黑名单表起始地址为100,黑名单卡索引号为12(其他卡都不是黑名单),则该卡黑名单在加气机检索地址:字节地址=100+12/8=101;字节内位偏移地址=12%8=4。
实施例二与实施例一区别在于黑名单表的生成位置不同,实施例一的黑名单表是在终端机上生成的,实施例二的黑名单表是在控制中心上生成的。
本发明和传统方法对比:
存储量对比:以200K字节作为黑名单存储空间大小为例,传统方法存储黑名单个数NumOld=200,000/10=20,000个;本发明方法存储黑名单个数NumNew=200,000*8=1,600,000个;意味着,同样的存储空间下,本发明方法存储的黑名单个数是传统方法的80倍。
查询时间复杂度:传统方法中,黑名单表为一个按照卡号从小到大排列的有序表,一般采用折半查找,时间复杂度为O(logn);本发明方法查询黑名单时,直接根据卡索引号(INDEX)按照上述计算公式得出,时间复杂度仅为O(1)。
以上所述仅为本发明的优选实施例,并不用于限制本发明,本发明的方法不仅仅适用于加气、加油用户卡领域,也可以用于其他领域的用户卡黑名单的存储、查询,如水卡、电卡等。显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
机译: 用于移动通信网络中的移动无线终端的智能卡,即用户识别模块卡,具有包括用于存储用于移动无线用户的各个配置数据的存储区的存储器。
机译: 通过公用黑名单和个人白名单管理和验证用户黑名单的方法和系统
机译: 包括预付卡和递延卡的卡黑名单的发送方法及其系统