一种充电卡管理系统以及方法与流程

文档序号:11145521阅读:1265来源:国知局
一种充电卡管理系统以及方法与制造工艺

本发明涉及电力技术领域,尤其涉及一种充电卡管理系统以及方法。



背景技术:

目前市面上使用的充电卡,主要为M1卡和CPU卡,由于M1卡成本较低,使用量也是最多的,但也是最不安全的,很容易被破解,复制克隆充电卡,而且充电卡容易被管理人员盗用。而CPU卡虽然安全性很高但是成本也很高,市面使用率不高。



技术实现要素:

本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种安全性高且成本低的充电卡管理系统以及方法。

本发明解决其技术问题所采用的技术方案是:构造一种充电卡管理系统,包括:

发卡系统,用于向充电卡内写入随机码,将唯一标识该充电卡的序列号和随机码/加密验证码上传至后台服务器存储;

充电桩,用于识别充电卡,读取充电卡的随机码和序列号上传至后台服务器进行验证,并在验证通过时开启充电模式;

后台服务器,用于对发卡系统和充电桩进行管理,基于存储的序列号和加密验证码对充电桩上传的随机码和序列号进行验证;

其中,所述加密验证码基于序列号和发卡时的随机码通过消息摘要算法计算得到;且由发卡系统计算后上传至后台服务器,或者由发卡系统将随机码和序列号发往后台服务器后由后台服务器自行计算得到。

在本发明所述的充电卡管理系统中,后台服务器包括:

加密验证码提取模块,基于充电桩上传的随机码从数据库中搜索对应的加密验证码;

加密验证码生成模块,将充电桩上传的随机码和序列号基于消息摘要算法计算得到当前充电卡的加密验证码;

加密验证码验证模块,比较计算得到的加密验证码和数据库中搜索得到的加密验证码,如果两者一致则验证通过,如果两者不一致,则验证不通过。

在本发明所述的充电卡管理系统中,所述充电卡内存储有序列号和发卡系统写入的:随机码、随机数、第一校验码、第二校验码,所述第一校验码由序列号和随机数按位异或得到,所述第二校验码由第一校验码和随机数进行循环冗余校验运算得到。

在本发明所述的充电卡管理系统中,所述充电桩包括:

信息读取模块,用于读取充电卡的随机码、序列号、随机数、第一校验码、第二校验码;

合法性验证模块,用于将读取的序列号和随机数进行异或运算后与读取的第一校验码进行比较,如果不一致,则判断充电卡不合法;如果一致,则将读取到的第一校验码和随机数进行循环冗余校验运算后与读取的第二校验码进行比较,如果不一致,则判断充电卡不合法,如果一致,则判断充电卡合法;

请求验证模块,用于在判断充电卡合法后,将读取的随机码、序列号发往后台服务器进行验证,以及获取验证结果;

结果响应模块,用于在验证通过时开启充电模式,在充电卡不合法或者验证不通过时报警或者不作处理。

在本发明所述的充电卡管理系统中,所述充电桩还包括:

备份模块,用于在联网时从后台服务器下载存储的充电卡的序列号和加密验证码;

离线加密验证码验证模块,用于在离线时基于存储的加密验证码,对读取的随机码和序列号进行验证。

在本发明所述的充电卡管理系统中,所述充电卡还存储有发卡时写入的密钥,所述信息读取模块还读取有充电卡的密钥;

所述充电桩还包括密钥验证模块,用于将读取的密钥和充电桩自身的密码进行匹配,如果不匹配,则报警或不做处理;如果匹配,才触发合法性验证模块进行合法性验证。

本发明还公开了一种充电卡管理方法,包括:

发卡系统向充电卡内写入随机码,将唯一标识该充电卡的序列号和随机码/加密验证码上传至后台服务器存储;

充电桩对充电卡进行识别,读取充电卡的随机码和序列号上传至后台服务器进行验证;

后台服务器对充电桩进行管理,基于存储的序列号和加密验证码对充电桩上传的随机码和序列号进行验证;

后台服务器将验证结果返回给充电桩,充电桩在验证结果为通过时开启充电模式;

其中,所述加密验证码基于序列号和发卡时的随机码通过消息摘要算法计算得到;且由发卡系统计算后上传至后台服务器,或者,由发卡系统将随机码和序列号发往后台服务器后由后台服务器自行计算得到。

在本发明所述的充电卡管理方法中,所述的对充电桩上传的随机码和序列号进行验证包括:

基于充电桩上传的随机码从数据库中搜索对应的加密验证码;

将充电桩上传的随机码和序列号基于消息摘要算法计算得到当前充电卡的加密验证码;

比较计算得到的加密验证码和数据库中搜索得到的加密验证码,如果两者一致则验证通过,如果两者不一致,则验证不通过。

在本发明所述的充电卡管理方法中,所述发卡系统在发卡时还向充电卡内写入有:随机数、第一校验码、第二校验码,所述第一校验码由序列号和随机数按位异或得到,所述第二校验码由第一校验码和随机数进行循环冗余校验运算得到。

在本发明所述的充电卡管理方法中,所述的对充电卡进行识别包括:

读取充电卡的随机码、序列号、随机数、第一校验码、第二校验码;

将读取的序列号和随机数进行异或运算后与读取的第一校验码进行比较,如果不一致,则判断充电卡不合法;如果一致,则将读取到的第一校验码和随机数进行循环冗余校验运算后与读取的第二校验码进行比较,如果不一致,则判断充电卡不合法,如果一致,则判断充电卡合法;

如果判断充电卡合法,则将读取的随机码、序列号发往后台服务器进行验证,获取验证结果。

实施本发明的充电卡管理系统以及方法,具有以下有益效果:本发明在发卡时向充电卡内写入随机码,后台服务器存储了基于序列号和发卡时的随机码通过消息摘要算法计算得到加密验证码,基于此加密验证码对充电桩上传的随机码和序列号进行验证,基于此验证方法,安全性高,不容易被破解盗取,防止篡改充电卡数据,防止管理人员盗用充电卡,且充电卡为普通的充电卡即可,成本低。

附图说明

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

图1是本发明的充电卡管理系统的较佳实施例的结构示意图;

图2是本发明的充电卡管理方法的较佳实施例的结构示意图。

具体实施方式

本发明通过发卡系统向充电卡内写入随机码,将唯一标识该充电卡的序列号和随机码/加密验证码上传至后台服务器存储;充电桩在识别充电卡后,读取充电卡的随机码和序列号上传至后台服务器进行验证,并在验证通过时开启充电模式;后台服务器可以对充电桩进行管理,基于存储的序列号和加密验证码对充电桩上传的随机码和序列号进行验证;其中,所述加密验证码基于序列号和发卡时的随机码通过消息摘要算法计算得到;且由发卡系统计算后上传至后台服务器,或者,由发卡系统将随机码和序列号发往后台服务器后由后台服务器自行计算得到。基于此验证方法,安全性高,不容易被破解盗取,防止篡改充电卡数据,防止管理人员盗用充电卡,且充电卡为普通的充电卡即可,成本低。

为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案进行详细的说明,应当理解本发明实施例以及实施例中的具体特征是对本申请技术方案的详细的说明,而不是对本申请技术方案的限定,在不冲突的情况下,本发明实施例以及实施例中的技术特征可以相互组合。

参考图1是本发明的较佳实施例的结构示意图。较佳实施例中,充电卡管理系统包括:发卡系统、充电桩、后台服务器。

发卡系统:

从原始厂家购买的空白卡,一般写入有唯一标识该充电卡的序列号,序列号不可更改,空白卡需要经过发卡操作之后,才能成为用于充电的充电卡。发卡系统一般包括一个安装有发卡软件的且与后台服务器通信连接的发卡终端、与发卡终端连接的发卡器,发卡终端包括但不限于电脑、平板等。发卡软件通过操作发卡器,对空白卡写入有随机码、随机数、第一校验码、第二校验码、密钥等,并将序列号和随机码上传至后台服务器,再由后台服务器将序列号和随机码通过消息摘要算法计算得到加密验证码,后台服务器将序列号和计算得到的加密验证码保存以用于后续读卡时的验证操作;或者,发卡系统将该充电卡的序列号和随机码通过消息摘要算法计算得到加密验证码,再将该充电卡的序列号和计算得到的加密验证码上传至后台服务器的数据库存储。加密验证码入库保存成功,也代表该卡发行成功,即为合法的充电卡。电动车主购买该卡后,便可前往充电桩上刷卡充电。

其中,充电卡包括多个存储扇区,每个扇区包括多个具有固定字节的数据块,较佳实施例中,序列号、随机数、第一校验码、第二校验码、密钥写入在第一个存储扇区,随机码较长,可以写到其他的任意一个合适的存储扇区。例如,序列号和厂商代码放在第一个存储扇区的第一个数据块,第一校验码、随机数、第二校验码放在第一个存储扇区的第二个数据块,密钥放在第一个存储扇区的第四个数据块,随机码放在第n个扇区。

其中,所述第一校验码由序列号和随机数按位异或得到,所述第二校验码由第一校验码和随机数进行循环冗余校验运算得到。消息摘要算法可以采用但不限于MD5算法,循环冗余校验可以采用但不限于CRC16校验。

充电桩:

充电桩主要用于识别充电卡,读取充电卡的数据,对充电卡进行合法性验证,并在合法性验证通过后将读取的充电卡的随机码和序列号上传至后台服务器进行验证,并在验证通过时开启充电模式;本实施例中,所述充电桩包括:

信息读取模块,例如读卡器,用于读取充电卡的随机码、序列号、随机数、第一校验码、第二校验码、密钥;

密钥验证模块,用于将读取的密钥和充电桩自身的密码进行匹配,如果不匹配,则报警或不做处理;如果匹配则触发合法性验证模块进行合法性验证。

合法性验证模块,用于将读取的序列号和随机数进行异或运算后与读取的第一校验码进行比较,如果不一致,则判断充电卡不合法;如果一致,则将读取到的第一校验码和随机数进行循环冗余校验运算后与读取的第二校验码进行比较,如果不一致,则判断充电卡不合法,如果一致,则判断充电卡合法;

请求验证模块,用于在判断充电卡合法后,将读取的随机码、序列号发往后台服务器进行验证,以及获取验证结果;请求验证模块的通信技术包括但不限于光纤通信、微波通信、485通信、GPRS通信等。

结果响应模块,用于在验证通过时开启充电模式,在充电卡不合法或者验证不通过时报警或者不作处理。报警方式包括但不限于显示屏文字提示、蜂鸣报警、语音报警、灯光闪烁报警等。

如果充电桩与后台服务器断网了,则可以拒绝充电,也可以通过增加备份模块和离线加密验证码验证模块在充电桩本地进行验证。其中,备份模块在联网时从后台服务器下载存储的充电卡的序列号和加密验证码,然后在对充电卡进行验证时,请求验证模块无法工作,则可以启动离线加密验证码验证模块,在离线时基于存储的加密验证码,对读取的随机码和序列号进行验证,具体的验证过程参考下述的后台服务器对随机码和序列号进行验证的过程。

后台服务器:

主要用于对充电桩和发卡系统进行管理,负责对发卡时的数据管理,以及读卡时基于存储的序列号和加密验证码对充电桩上传的随机码和序列号进行验证;其中,所述加密验证码由发卡系统计算后上传至后台服务器,或者,由发卡系统将随机码和序列号发往后台服务器后由后台服务器基于该随机码和序列号通过消息摘要自行计算得到。由于后台服务器管理所有充电卡的信息,管理人员可以查看已发行充电卡信息,统计相关充电信息,从而达到了智能安全信息化的管理需求。本实施例中,后台服务器具体包括:

加密验证码提取模块,基于充电桩上传的随机码从数据库中搜索对应的加密验证码;

加密验证码生成模块,将充电桩上传的随机码和序列号基于消息摘要算法计算得到当前充电卡的加密验证码;

加密验证码验证模块,比较计算得到的加密验证码和数据库中搜索得到的加密验证码,如果两者一致则验证通过,如果两者不一致,则验证不通过。

常用的充电卡为M1卡,下面以M1卡为例详细说明本发明。

M1卡的扇区0的块0一般都是存储卡片标识信息,目前市面使用最广的M1卡,其中序列号占用4字节,其是卡片的唯一标识。如下表,块0低四字节存储序列号,块1、块2是数据块,可以用于存储用户自定义数据,块3即为控制块存储了密钥A、密钥B,密钥A、密钥B即为用户设置的密码,知道密钥A,密钥B,便破解了该块的卡片数据,给用户数据带来破坏,给个人或运营机构带来财产损失等严重问题。

表1M1的第1个扇区的结构示意表

如上表1,块0低四字节存储序列号,目前最新设计卡片已有占用7字节的,其同样都是卡片的唯一标识。块1第0-3字节作为第一校验码存储空间;第4-7字节存储有一个开卡时写入的随机数;第8-9字节存储开卡时对0~7字节运算的第二校验码(CRC16校验值)。第一校验码是0扇区块0的3-0字节的序列号与块1的7-4字节的随机数从高位到低位按位异或,得到的4字节从高到低写入块1的第3-0字节。

随机码在卡片的其他某一个扇区,如下表2,假设为扇区n,在发卡时,每次向该扇区n,块0、块1、块2写入48字节随机码,则该扇区的随机码基本上每张卡片都是不一样的。

表2M1的第n个扇区的结构示意表(存储随机码)

发卡时,发卡系统将生成的随机码和该卡片的序列号,进行MD5加密运算生成唯一的加密验证码发往后台服务器存储;或者将将生成的随机码和该卡片的序列号直接发往台服务器,后台服务器将接收的随机码和序列号进行MD5加密运算生成唯一的加密验证码并存储。

每次读卡时都把0扇区块0的3-0字节与块1的7-4字节按位异或并与块1的第3-0字节比较,如果相等,则进行进一步的CRC16校验运算。不等,则不是所发行的卡,异卡。然后,需要对0扇区块1的8(0~7)个字节,进行CRC16校验运算。CRC16的校验值是存储在8-9字节,第9字节存储CRC16高字节,第8字节存储CRC16低字节。读卡时,需要对0扇区块1的8(0~7)个字节,进行CRC16校验运算,若运算值与存储的8-9字节的CRC16校验值相同,则是合法的卡。否则是不合法的卡。在校验合法后,充电桩将0扇区块0的3-0字节的序列号和n扇区的块0-块3的随机码一起发往后台服务器进行验证。

参考图2,本发明还公开了一种充电卡管理方法,包括:

S100、发卡系统向充电卡内写入随机码,将唯一标识该充电卡的序列号和随机码/加密验证码上传至后台服务器存储;

S200、充电桩对充电卡进行识别,读取充电卡的随机码和序列号上传至后台服务器进行验证;

S300、后台服务器对充电桩进行管理,基于存储的序列号和加密验证码对充电桩上传的随机码和序列号进行验证;

S400、后台服务器将验证结果返回给充电桩,充电桩在验证结果为通过时开启充电模式;

其中,所述加密验证码基于序列号和发卡时的随机码通过消息摘要算法计算得到;且由发卡系统计算后上传至后台服务器,或者,由发卡系统将随机码和序列号发往后台服务器后由后台服务器自行计算得到。

其中,步骤S300中所述的对充电桩上传的随机码和序列号进行验证包括:

S310、基于充电桩上传的随机码从数据库中搜索对应的加密验证码;

S320、将充电桩上传的随机码和序列号基于消息摘要算法计算得到当前充电卡的加密验证码;

S330、比较计算得到的加密验证码和数据库中搜索得到的加密验证码,如果两者一致则验证通过,如果两者不一致,则验证不通过。

其中,步骤S100中,所述发卡系统在发卡时还向充电卡内写入有:随机数、第一校验码、第二校验码,所述第一校验码由序列号和随机数按位异或得到,所述第二校验码由第一校验码和随机数进行循环冗余校验运算得到。

步骤S200中所述的对充电卡进行识别包括:

S210、读取充电卡的随机码、序列号、随机数、第一校验码、第二校验码、密钥;

S220、将读取的密钥和充电桩自身的密码进行匹配,如果不匹配,则报警或不做处理;如果匹配,则进行合法性验证:将读取的序列号和随机数进行异或运算后与读取的第一校验码进行比较,如果不一致,则判断充电卡不合法;如果一致,则将读取到的第一校验码和随机数进行循环冗余校验运算后与读取的第二校验码进行比较,如果不一致,则判断充电卡不合法,如果一致,则判断充电卡合法;

S220、如果判断充电卡合法,则将读取的随机码、序列号发往后台服务器进行验证,获取验证结果。

综上所述,实施本发明的充电卡管理系统以及方法,具有以下有益效果:本发明在发卡时向充电卡内写入随机码,后台服务器存储了基于序列号和发卡时的随机码通过消息摘要算法计算得到加密验证码,基于此加密验证码对充电桩上传的随机码和序列号进行验证,基于此验证方法,安全性高,不容易被破解盗取,防止篡改充电卡数据,防止管理人员盗用充电卡,且充电卡为普通的充电卡即可,成本低。

上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。

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