1.本发明涉及读卡技术领域,更具体地说,涉及一种自定义读写设备的读写卡方法、自定义读写设备和系统。
背景技术:2.非接触读卡设备在当前安防场景中已经成为标配的特征识别方式,随着安防行业对安防设备的安全级别要求逐步提升,通过rfid无线读写方式的加密要求越来越高,从刚开始的通过读取id方式作为个人特征的方法,到使用文件加密的卡片系统并应用复杂的加密算法,进行特征数据交互的方法。这些方法均具有一定的局限性,采用读取id号方式或者使用简单加密或者固定加密的方法,通过标准读写卡流程来完成读写卡结果输出,这些方法可靠性低、安全性差。
技术实现要素:3.本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种自定义读写设备的读写卡方法、自定义读写设备和系统。
4.本发明解决其技术问题所采用的技术方案是:构造一种自定义读写设备的读写卡方法,包括:
5.获取配置文件;
6.对所述配置文件进行解析,获得密钥计算参数和读卡参数;
7.根据所述密钥计算参数和所述读卡参数执行读卡流程,并输出读卡结果。
8.其中,所述获取配置文件包括:
9.获取读写卡的类型信息;
10.根据所述读写卡的类型信息确定所述读写卡的类型;
11.若所述读写卡的类型为第一类型读写卡,则采用第一配置流程生成所述配置文件;
12.若所述读写卡的类型为第二类型读写卡,则采用第二配置流程生成所述配置文件。
13.其中,所述第一类型读写卡包括:扇区结构卡;
14.所述若所述读写卡的类型为第一类型读写卡,则采用第一配置流程生成所述配置文件包括:
15.获取所述扇区结构卡的扇区号和块号参数;
16.获取所述扇区结构卡的认证密钥或者密钥算法参数;
17.获取数据起止字节参数;
18.根据所述扇区号和块号参数、所述认证密钥或者密钥算法参数、以及所述数据起止字节参数,生成所述配置文件。
19.其中,所述第二类型读写卡包括:文件结构卡;
20.所述若所述读写卡的类型为第二类型读写卡,则采用第二配置流程生成所述配置文件包括:
21.获取种子密钥和分散因子参数;
22.获取读卡步骤参数;
23.获取读卡指令和校验数据参数;
24.根据所述种子密钥和分散因子参数、所述读卡步骤参数、以及所述读卡指令和校验数据参数,生成所述配置文件。
25.其中,所述获取配置文件还包括:
26.下载所述配置文件。
27.其中,所述根据所述密钥计算参数和读卡参数执行读卡流程,并输出读卡结果之前包括:
28.判断是否读取到读写卡;
29.若是,执行所述根据所述密钥计算参数和读卡参数执行读卡流程,并输出读卡结果的步骤。
30.其中,所述根据所述密钥计算参数和读卡参数执行读卡流程,并输出读卡结果包括:
31.根据所述密钥计算参数进行密钥计算,获得密钥运算结果;
32.根据所述密钥运算结果和所述读卡参数获取读卡命令表;
33.根据所述读卡命令表发送读卡指令并获取返回值;
34.根据所述返回值获得所述读写卡的数据;
35.输出所述读写卡的数据;所述读写卡的数据为所述读卡结果。
36.其中,所述根据所述密钥计算参数进行密钥计算,获得密钥运算结果包括:
37.根据所述密钥计算参数判断是否为统一密钥;
38.若是统一密钥,则输出密钥值;
39.若不是统一密钥,则判断是否为标准3des加密;
40.若不是标准3des加密,则进入密钥自定义生成流程,并输出密钥值;
41.若是标准3des加密,则判断是否进行密钥分散;
42.若不进行密钥分散,则根据加密方法生成密钥,并输出密钥值;
43.若进行密钥分散,则判断分散因子是否包含卡号;
44.若没有包含卡号,则以固定方式生成密钥,并输出密钥值;
45.若包含卡号,则根据一级分散方法计算密钥,并输出密钥值;
46.所述密钥值为密钥运算结果。
47.其中,所述密钥自定义生成流程包括:
48.获取所述密钥计算参数;
49.根据所述密钥计算参数确定运算符等级;
50.根据所述运算符等级进行数据运算;
51.根据数据运算结果输出密钥。
52.其中,所述加密方法包括:
53.以种子密钥加密所述密钥计算参数中的计算数据,生成密钥。
54.其中,所述以固定方式生成密钥,并输出密钥值包括:
55.以固定分散因子生成密钥,并输出密钥值。
56.本发明还提供一种自定义读写设备,包括:
57.配置参数解析模块,用于获取配置文件,并对所述配置文件进行解析,获得密钥计算参数和读卡参数;
58.密钥算法计算模块,用于根据所述密钥计算参数进行密钥计算,并输出密钥运算结果;
59.读卡流程执行模块,用于根据所述密钥运算结果和所述读卡参数进行读卡,并输出读卡结果。
60.本发明还提供一种自定义读写系统,包括:以上所述的自定义读写设备和配置文件生成模块;
61.所述配置文件生成模块用于接收用户输入的读写卡的类型信息及配置信息,根据所述读写卡的类型信息和配置信息生成配置文件,并将所述配置文件下载至所述自定义读写设备中。
62.其中,还包括:与所述自定义读写设备通信的终端;
63.所述终端接收所述自定义读写设备输出的读卡结果并显示。
64.实施本发明的自定义读写设备的读写卡方法、自定义读写设备和系统,具有以下有益效果:包括:获取配置文件;对配置文件进行解析,获得密钥计算参数和读卡参数;根据密钥计算参数和读卡参数执行读卡流程,并输出读卡结果。本发明可根据配置文件自定义加密方式和读写卡流程,用户无需关注加密计算实现方法和读写卡方式,使用过程中可根据密钥计算参数自定义加密方法和读写卡方式,保证读卡过程中的安全性、唯一性和可靠性。
附图说明
65.下面将结合附图及实施例对本发明作进一步说明,附图中:
66.图1是本发明实施例提供的一种自定义读写设备的结构示意图;
67.图2是本发明实施例提供的一种自定义读写系统的结构示意图;
68.图3是本发明实施例提供的自定义读写设备的读写卡方法的流程示意图;
69.图4是本发明实施例提供的配置文件生成的流程示意图;
70.图5是本发明实施例提供的读卡流程示意图;
71.图6是本发明实施例提供的密钥计算流程示意图;
72.图7是本发明实施例提供的密钥自定义生成流程示意图。
具体实施方式
73.为了对本发明的技术特征、目的和效果有更加清楚的理解,现对照附图详细说明本发明的具体实施方式。
74.参考图1,图1为本发明提供的自定义读写设备100的结构示意图。
75.如图1所示,该自定义读写设备100包括:
76.配置参数解析模块101,该配置参数解析模块101用于获取配置文件,并对配置文
件进行解析,获得密钥计算参数和读卡参数。
77.密钥算法计算模块102,该密钥算法计算模块102用于根据密钥计算参数进行密钥计算,并输出密钥运算结果。
78.读卡流程执行模块103,该读卡流程执行模块103用于根据密钥运算结果和读卡参数进行读卡,并输出读卡结果。
79.进一步地,如图2所示,本发明还提供一种自定义读写系统。
80.其中,该自定义读写系统包括:本发明实施例公开的自定义读写设备100、以及配置文件生成模块200。
81.配置文件生成模块200用于接收用户输入的读写卡的类型信息及配置信息,根据读写卡的类型信息和配置信息生成配置文件,并将配置文件下载至自定义读写设备100中。可选的,该配置文件即为读写卡的配置参数表。
82.具体的,配置文件生成模块200将所生成的配置文件下载至自定义读写设备100中后,自定义读写设备100中的配置参数解析模块101即对配置文件进行解析,获得自定义参数(即密钥计算参数和读卡参数),并将自定义参数存在自定义读写设备100中,在读卡时,即可由密钥算法计算模块102根据密钥计算参数对加密方式和读写卡的密钥进行解析,获得密钥运算结果,并由读卡流程执行模块103根据配置参数获得读卡命令表,再根据读卡命令表向读写卡依次发送读卡指令并确定返回值,根据返回值输出读卡结果。
83.可选的,配置文件生成模块200包括:参数配置模块201和生成配置文件模块202。其中,参数配置模块201用于接收用户输入的配置信息并进行参数配置,生成配置参数;生成配置文件模块202用于根据参数配置模块201所生成的配置参数生成配置参数表(配置文件)。
84.进一步地,一些实施例中,该自定义读写系统还包括:与自定义读写设备100通信的终端。该终端接收自定义读写设备100输出的读卡结果并显示。可选的,该智能包括但不限于智能终端、后台服务器、管理终端等。
85.参考图3,图3为本发明提供的自定义读写设备的读写卡方法的流程示意图。
86.如图3所示,该自定义读写设备的读写卡方法包括:
87.步骤s301、获取配置文件。
88.一些实施例中,获取配置文件包括:获取读写卡的类型信息;根据读写卡的类型信息确定读写卡的类型;若读写卡的类型为第一类型读写卡,则采用第一配置流程生成配置文件;若读写卡的类型为第二类型读写卡,则采用第二配置流程生成配置文件。
89.一些实施例中,第一类型读写卡包括:扇区结构卡。若读写卡的类型为第一类型读写卡,则采用第一配置流程生成配置文件包括:获取扇区结构卡的扇区号和块号参数;获取扇区结构卡的认证密钥或者密钥算法参数;获取数据起止字节参数;根据扇区号和块号参数、认证密钥或者密钥算法参数、以及数据起止字节参数,生成配置文件。
90.一些实施例中,第二类型读写卡包括:文件结构卡。若读写卡的类型为第二类型读写卡,则采用第二配置流程生成配置文件包括:获取种子密钥和分散因子参数;获取读卡步骤参数;获取读卡指令和校验数据参数;根据种子密钥和分散因子参数、读卡步骤参数、以及读卡指令和校验数据参数,生成配置文件。
91.进一步地,在进行第一配置流程生成配置文件和第二配置流程生成配置文件之前
还包括:获取读写卡的配置信息。
92.可选的,读写卡的配置信息包括:扇区结构卡的扇区号和块号参数、扇区结构卡的认证密钥或者密钥算法参数、数据起止字节参数等;和/或文件结构卡的种子密钥和分散因子参数、读卡步骤参数、读卡指令和校验数据参数等。
93.进一步地,一些实施例中,获取配置文件还包括:下载配置文件。
94.具体的,如图4所示,为本发明实施例提供的配置文件生成的流程示意图。
95.如图4所示,配置文件生成包括:
96.步骤s401、接收用户输入的读写卡的类型信息和配置信息。
97.步骤s402
‑
01、若为扇区结构卡,则获取用户输入的扇区号和块号参数。
98.步骤s403
‑
01、获取用户输入的卡片认证密钥或者密钥算法。
99.步骤s404
‑
01、获取用户输入的数据起止字节参数。
100.步骤s405
‑
01、根据扇区号和块号参数、卡片认证密钥或者密钥算法、数据起止字节参数生成配置文件(配置参数表)。
101.步骤s406
‑
01、下载配置文件至自定义读写设备100。
102.步骤s402
‑
02、若为文件结构卡,则获取用户输入的种子密钥和分散因子。
103.步骤s403
‑
02、获取用户输入的读卡步骤。
104.步骤s404
‑
02、获取用户输入的读卡指令和返回校验数据。
105.步骤s405
‑
02、根据种子密钥和分散因子、读卡步骤、读卡指令和返回校验数据生成配置文件(配置参数表)。
106.步骤s406
‑
02、下载配置文件至自定义读写设备100。
107.步骤s302、对配置文件进行解析,获得密钥计算参数和读卡参数。
108.步骤s303、根据密钥计算参数和读卡参数执行读卡流程,并输出读卡结果。
109.可选的,读卡参数包括读写卡的类型、以及读写卡数据。其中,不同的读写卡,读写卡数据不同。例如,若读写卡的类型为扇区结构卡,则读写卡数据为:扇区号和块号参数、卡片认证密钥或者密钥算法、数据起止字节参数;若读写卡的类型为文件结构卡,则读写卡数据为:种子密钥和分散因子、读卡步骤、读卡指令和返回校验数据。
110.一些实施例中,根据密钥计算参数和读卡参数执行读卡流程,并输出读卡结果之前包括:判断是否读取到读写卡;若是,执行根据密钥计算参数和读卡参数执行读卡流程,并输出读卡结果的步骤。
111.一些实施例中,如图5所示,根据密钥计算参数和读卡参数执行读卡流程,并输出读卡结果包括:
112.步骤s501、根据密钥计算参数进行密钥计算,获得密钥运算结果。
113.步骤s502、根据密钥运算结果和读卡参数获取读卡命令表。
114.步骤s503、根据读卡命令表发送读卡指令并获取返回值。
115.步骤s504、根据返回值获得读写卡的数据。
116.步骤s505、输出读写卡的数据;读写卡的数据为读卡结果。
117.一些实施例中,如图6所示,根据密钥计算参数进行密钥计算,获得密钥运算结果包括:
118.步骤s601、根据密钥计算参数判断是否为统一密钥。
119.步骤s602、若是统一密钥,则输出密钥值。
120.步骤s603、若不是统一密钥,则判断是否为标准3des加密。
121.步骤s604、若不是标准3des加密,则进入密钥自定义生成流程,并输出密钥值。
122.步骤s605、若是标准3des加密,则判断是否进行密钥分散。
123.步骤s606、若不进行密钥分散,则根据加密方法生成密钥,并输出密钥值。可选的,加密方法包括:以种子密钥加密密钥计算参数中的计算数据,生成密钥。
124.步骤s607、若进行密钥分散,则判断分散因子是否包含卡号。
125.步骤s608、若没有包含卡号,则以固定方式生成密钥,并输出密钥值。
126.可选的,以固定方式生成密钥,并输出密钥值包括:以固定分散因子生成密钥,并输出密钥值。
127.步骤s609、若包含卡号,则根据一级分散方法计算密钥,并输出密钥值。其中,根据一级分散方法计算密钥包括:采用一级分散计算密钥,将所获得的卡号导入分散因子对应位置,获得密钥值。
128.本发明实施例中,密钥值即为密钥运算结果。
129.一些实施例中,如图7所示,密钥自定义生成流程包括:
130.步骤s701、获取密钥计算参数。
131.步骤s702、根据密钥计算参数确定运算符等级。
132.步骤s703、根据运算符等级进行数据运算。
133.步骤s704、根据数据运算结果输出密钥。
134.本发明可通过自定义方式配置读写卡流程和加密方式,通过用户指定的密钥计算方法和读写卡流程进行读写卡操作并输出自定义读写卡结果,能快速应用于标准或者第三方卡片的读写卡加密及读写卡操作。
135.另外,本发明还可独立地应用于通用门禁系统中,也能快速集成于其他特征、生物识别门禁系统中作为一种标配读写卡系统,实施本发明可以快速实施加密读写卡应用,可配置为扇区加密型读写卡和/或文件加密型读写卡,可根据不同的使用要求自定义加密方式和读写卡流程,用户无需了解详细的密钥计算方法和读写卡操作,根据配置文件选择自定义参数,既能完成自定义加密读写卡流程并输出结果,保证了读写系统的可配置性、易用性、高安全性和可靠性。
136.以上实施例只为说明本发明的技术构思及特点,其目的在于让熟悉此项技术的人士能够了解本发明的内容并据此实施,并不能限制本发明的保护范围。凡跟本发明权利要求范围所做的均等变化与修饰,均应属于本发明权利要求的涵盖范围。