一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

复制加密门禁卡的方法及系统、存储介质与流程

2022-12-20 22:31:47 来源:中国专利 TAG:


1.本发明涉及移动通信技术领域,尤其是涉及一种复制加密门禁卡的方法及系统、存储介质。


背景技术:

2.逻辑加密卡又称mifare one卡(m1卡),以扇区为单位对数据进行管理,每个扇区分为4个数据块,每个数据块占16字节,每个扇区的第0-2块用于存放数据,第3块为密钥控制字节块,用于存放扇区密钥keya和keyb。根据iso14443标准,mifare扇区支持读、写等命令操作,但操作前需使用密钥keya、keyb进行auth验证(身份验证),通过后才可进行操作。
3.目前门禁卡产品大多数都使用mifare one技术,市场占有率非常大,而兴起的手机开门业务如果想要广泛应用,首先要实现的就是实现对这些门禁卡的模拟复制,替代掉实体门禁卡,才能让用户使用手机进行开门。当前,支持nfc(near field communication,近场通信)功能的手机已能够实现对非加密的门禁卡进行复制,然而,当遇到扇区密钥非默认值、扇区数据被加密的门禁卡时,大多数则提示“暂不支持此类门禁卡的复制”,给手机用户带来不便,无法使用手机进行替代门禁卡进行开门。


技术实现要素:

4.本发明旨在至少解决现有技术中存在的技术问题之一。为此,本发明提出了一种复制加密门禁卡的方法及系统、存储介质,能够实现对加密门禁卡的复制。
5.一方面,根据本发明实施例的复制加密门禁卡的方法,包括以下步骤:
6.获取实体门禁卡的第一标识;
7.获取社区的第二标识,并将所述第一标识和所述第二标识发送至tsm平台,以使所述tsm平台根据所述第二标识选择对应的社区云平台,并将所述第一标识发送至所述社区云平台,并接收所述社区云平台根据所述第一标识所获取的扇区密钥;
8.接收所述tsm平台发送的所述扇区密钥,并根据所述扇区密钥读取所述实体门禁卡的扇区数据;
9.根据所述扇区数据生成数据写入命令,并将所述数据写入命令发送至sim卡,以使所述sim卡获取所述扇区数据,实现对所述实体门禁卡的复制。
10.根据本发明的一些实施例,所述数据写入命令包括扇区块号、扇区访问密钥及所述扇区数据。
11.根据本发明的一些实施例,所述sim卡包括卡操作系统、mifare应用及mifare逻辑加密区;所述根据所述扇区数据生成数据写入命令,并将所述数据写入命令发送至sim卡,以使所述sim卡获取所述扇区数据,实现对所述实体门禁卡的复制,具体包括:
12.通过sim卡访问通道与所述mifare应用进行通信;
13.向所述mifare应用发送获取随机数命令,并接收所述mifare应用根据所述获取随机数命令所返回的随机数;
14.根据所述随机数及所述扇区数据,生成所述数据写入命令,并将所述数据写入命令发送至所述mifare应用;
15.所述mifare应用对所述数据写入命令进行校验后,获得所述扇区块号、所述扇区访问密钥和所述扇区数据;
16.所述mifare应用将所述扇区块号、所述扇区访问密钥和所述扇区数据发送至所述卡操作系统;
17.所述卡操作系统对所述扇区访问密钥进行校验后,根据所述扇区块号将所述扇区数据写入所述mifare逻辑加密区,实现对所述实体门禁卡的复制。
18.根据本发明的一些实施例,所述获取实体门禁卡的第一标识,具体包括:
19.通过nfc技术读取所述实体门禁卡,以获取所述实体门禁卡的所述第一标识,所述第一标识为所述实体门禁卡的uid。
20.根据本发明的一些实施例,所述接收所述tsm平台发送的所述扇区密钥,并根据所述扇区密钥读取所述实体门禁卡的扇区数据,具体包括:
21.接收所述tsm平台发送的所述扇区密钥;
22.根据所述扇区密钥对所述实体门禁卡进行身份验证;
23.在验证成功后,执行读操作,获取所述实体门禁卡的扇区数据。
24.根据本发明的一些实施例,所述tsm平台与所述社区云平台之间采用点对点安全加密通信技术进行通信。
25.根据本发明的一些实施例,还包括以下步骤:
26.与门禁终端建立通信;
27.所述sim卡接收所述门禁终端发送的身份验证命令,并在验证通过后,读取所述扇区数据;
28.所述sim卡将所述扇区数据发送至门禁终端,以使所述门禁终端根据所述扇区数据执行开门操作。
29.另一方面,根据本发明实施例的复制加密门禁卡的系统,包括:
30.实体门禁卡;
31.移动终端,用于获取所述实体门禁卡的第一标识,以及获取社区的第二标识,并将所述第一标识和所述第二标识发送至tsm平台;
32.tsm平台,用于根据所述第二标识选择对应的社区云平台,并将所述第一标识发送至所述社区云平台;
33.社区云平台,用于根据所述第一标识获取扇区密钥,并将所述扇区密钥发送至所述tsm平台;所述tsm平台还用于将所述扇区密钥发送至所述移动终端;所述移动终端还用于根据所述扇区密钥读取所述实体门禁卡的扇区数据,并根据所述扇区数据生成数据写入命令,将所述数据写入命令发送至sim卡;
34.sim卡,用于根据所述数据写入命令获取所述扇区数据,实现对所述实体门禁卡的复制。
35.根据本发明的一些实施例,还包括门禁终端,所述门禁终端用于向所述sim卡发送身份验证命令,并在验证通过后,获取所述sim卡所发送的所述扇区数据,并根据所述扇区数据执行开门操作。
36.另一方面,根据本发明实施例的存储介质,所述存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行上述的复制加密门禁卡的方法。
37.本发明提出的复制加密门禁卡的方法及系统、存储介质,至少具有以下有益效果:移动终端读取到实体门禁卡的第一标识后,将该第一标识与用户选择的社区的第二标识一起发送给tsm平台,tsm平台根据社区的第二标识选择相应的社区云平台,并向该社区云平台发送第一标识,社区云平台根据第一标识找到对应的实体门禁卡的扇区密钥后,通过tsm平台返回给移动终端,移动终端根据扇区密钥读取实体门禁卡的扇区数据,并将扇区数据写入sim卡,实现对实体门禁卡的复制,从而解决了复制加密门禁卡的技术难题,使得用户能够通过移动终端进行开门,方便用户的操作。
38.本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
39.本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
40.图1为本发明实施例的复制加密门禁卡的系统架构示意图;
41.图2为本发明实施例的sim卡的结构示意图;
42.图3为本发明实施例的复制加密门禁卡的方法的步骤流程图;
43.图4为本发明实施例的读取实体门禁卡的扇区数据的流程示意图;
44.图5为本发明实施例的写入实体门禁卡的扇区数据的流程示意图;
45.图6为本发明实施例的通过移动终端打开门禁的流程示意图;
46.附图标记:
47.实体门禁卡100、移动终端200、sim卡300、tsm平台400、社区云平台500、门禁终端600。
具体实施方式
48.本部分将详细描述本发明的具体实施例,本发明之较佳实施例在附图中示出,附图的作用在于用图形补充说明书文字部分的描述,使人能够直观地、形象地理解本发明的每个技术特征和整体技术方案,但其不能理解为对本发明保护范围的限制。
49.本发明的描述中,除非另有明确的限定,设置、安装、连接等词语应做广义理解,所属技术领域技术人员可以结合技术方案的具体内容合理确定上述词语在本发明中的具体含义。
50.术语解释:
51.mifare:恩智浦半导体公司(nxp semiconductors)拥有的一系列非接触式智能卡和近傍型卡技术的注册商标,mifare包括一系列依循iso/iec 14443-a规格,利用无线射频识别(频率为13.56mhz)的多种非接触式智能卡专有解决方案;
52.nfc:near field communication,近场通信;
53.sim:subscriber identity module,用户身份识别模块;
54.cos:card operation system,卡操作系统;
55.api:application programming interface,应用程序接口;
56.applet:小应用程序,形式包括但不限于java应用或native应用;
57.java card:该技术主要是让智慧卡或与智慧卡相近的装置上,以具有安全防护性的方式来执行小型的java applet,此技术也被广泛运用在sim卡、提款卡上;
58.java applet:用java语言编写的小应用程序;
59.native card:本机卡;
60.native applet:本机小应用程序;
61.uid:user identification,用户身份证明;
62.tsm:trusted service manager,可信服务管理平台;
63.apdu:applicationprotocoldataunit,应用协议数据单元;
64.android os:android operating system,安卓操作系统。
65.目前门禁卡产品大多数都使用mifare one技术,市场占有率非常大,而兴起的手机开门业务如果想要广泛应用,首先要实现的就是实现对这些门禁卡的模拟复制,替代掉实体门禁卡,才能让用户使用手机进行开门。当前,支持nfc功能的手机已能够实现对非加密的门禁卡进行复制,然而,当遇到扇区密钥非默认值、扇区数据被加密的门禁卡时,大多数则提示“暂不支持此类门禁卡的复制”,给手机用户带来不便,无法使用手机进行替代门禁卡进行开门。
66.为了解决上述的技术问题,本发明提出了一种复制加密门禁卡的方法和系统,该方法运用了手机操作系统的nfc读卡技术、sim卡访问技术、逻辑加密卡读写技术以及sim卡多应用扩展能力,搭建了一个可复制加密门禁卡到sim卡的系统,从而实现了对加密门禁卡的复制,使得用户能够通过手机进行开门,方便用户的操作。
67.如图1所示,根据本发明实施例的复制加密门禁卡的系统,包括实体门禁卡100、移动终端200(含客户端)、sim卡300、tsm平台400和社区云平台500。
68.其中,sim卡300设置于移动终端200上,移动终端200支持通过nfc技术读取实体门禁卡100,并支持通过sim卡访问技术访问sim卡300。移动终端200负责与tsm平台400通信,获取mifare认证数据;与实体门禁卡100进行nfc通信,读取实体门禁卡100的全扇区数据;与sim卡300通信,将实体门禁卡100的全扇区数据写入sim卡300。
69.tsm平台400作为“一卡多应用”技术的空中发卡多应用管理平台,负责与移动终端200进行通信,响应移动终端200的业务请求。社区云平台500是门禁业务的服务平台,负责提供门禁卡与门禁系统之间的安全授权管理。tsm平台与社区云平台之间采用点对点安全加密通信技术进行数据保护。
70.如图2所示,sim卡300包括卡操作系统(card operation system,cos)、mifare应用(applet)和mifare逻辑加密区。cos提供访问mifare逻辑加密区的api,mifare应用与移动终端200进行apdu指令交互,并采用cos提供的api将实体门禁卡100的全扇区数据写入mifare逻辑加密区。mifare应用存在于嵌入式平台的sim卡300中,sim卡300的架构支持多应用扩展,因此mifare应用可针对复制门禁卡的场景进行定制;根据嵌入式平台是java card或native card的不同,应用可分为applet应用或native应用。applet应用可通过tsm平台400下载到sim卡300中,native应用则需要预置在sim卡300中。mifare应用实现两层安全机制,一是与移动终端200的交互需保证报文及扇区数据的安全,可采取国密、国际对称
算法,如sm4、3des、aes等;二是对mifare扇区的安全访问,需实现mifare密钥key a、key b的安全存储以及mifare访问密钥的运算,安全数据与密钥存储于应用安全eeprom中,对外不可直接获取。
71.基于上述的复制加密门禁卡的系统,本发明实施例提出了一种复制加密门禁卡的方法,如图3所示,该方法包括以下步骤:
72.步骤s100:获取实体门禁卡100的第一标识;
73.步骤s200:获取社区的第二标识,并将第一标识和第二标识发送至tsm平台400,以使tsm平台400根据第二标识选择对应的社区云平台500,并将第一标识发送至社区云平台500,并接收社区云平台500根据第一标识所获取的扇区密钥;
74.步骤s300:接收tsm平台400发送的扇区密钥,并根据扇区密钥读取实体门禁卡100的扇区数据;
75.步骤s400:根据扇区数据生成数据写入命令,并将数据写入命令发送至sim卡300,以使sim卡300获取扇区数据,实现对实体门禁卡100的复制。
76.如图4所示,上述的步骤s100,具体包括:通过nfc技术读取实体门禁卡100,以获取实体门禁卡100的第一标识,第一标识为实体门禁卡100的uid。更具体地,移动终端200利用android os的nfc读卡器模式,读取实体门禁卡100,从而获取实体门禁卡100的唯一码uid。
77.如图4所示,上述的步骤s200,具体为:移动终端200根据用户的选择,获取相应的社区的id(即第二标识),并将uid和社区id一起发送给tsm平台400;tsm平台400根据社区id选择相应的社区云平台500,并向该社区云平台500发送uid,社区云平台500根据uid查找到相应的实体门禁卡100的安全授权信息(即扇区密钥),并返回扇区密钥给tsm平台400。
78.上述的步骤s300,具体包括以下几个步骤:
79.步骤s301:接收tsm平台400发送的扇区密钥;
80.步骤s302:根据扇区密钥对实体门禁卡100进行身份验证;
81.步骤s303:在验证成功后,执行读操作,获取实体门禁卡100的扇区数据。
82.如图4所示,tsm平台400下发扇区密钥给移动终端200,移动终端200利用该扇区密钥对实体门禁卡100进行身份验证后,执行读操作,获取实体门禁卡100的全部扇区数据。
83.在读取实体门禁卡100的扇区数据后,还需要将扇区数据写入sim卡300,才能完成对实体门禁卡100的复制。上述的步骤s400,具体还包括以下几个步骤:
84.步骤s401:通过sim卡访问通道与mifare应用进行通信;
85.步骤s402:向mifare应用发送获取随机数命令,并接收mifare应用根据获取随机数命令所返回的随机数;
86.步骤s403:根据随机数及扇区数据,生成数据写入命令,并将数据写入命令发送至mifare应用;
87.步骤s404:mifare应用对数据写入命令进行校验后,获得扇区块号、扇区访问密钥和扇区数据;
88.步骤s405:mifare应用将扇区块号、扇区访问密钥和扇区数据发送至卡操作系统;
89.步骤s406:卡操作系统对扇区访问密钥进行校验后,根据扇区块号将扇区数据写入mifare逻辑加密区,实现对实体门禁卡100的复制。
90.更具体地,如图5所示,移动终端200打开sim卡访问通道,可使用open mobile、
oma、或telephonymanager等android类库(如果是ios系统,则可通过蓝牙技术替代),与mifare应用建立通道;移动终端200选择mifare应用,并发送获取随机数命令;mifare应用返回随机数给移动终端200,该随机数参与对后续命令报文的安全保护,安全保护可采用国密或国际对称算法,运用报文mac和敏感数据加密技术对命令报文和扇区数据进行数据加密保护;移动终端200利用随机数生成会话密钥、拼装数据块写命令,并发送数据写入命令给mifare应用,数据写入命令的报文的其中一种示例如表1:
91.说明长度(字节)有效数据长度1block号11访问密钥1(password)8写入数据块的数据16
……
block号n1访问密钥n(password)8写入数据块的数据16填充数据8000

92.表1
93.可以看到,数据写入命令应包含扇区block号(即扇区块号)、扇区访问密钥(password)和扇区数据,扇区访问密钥的生成应遵循iso14443协议中的相关规定,这些敏感数据受安全保护的算法密钥加密保护。
94.mifare应用利用安全机制完成命令报文的安全校验,并得到要写入的mifare扇区数据、扇区访问密钥和扇区块号;mifare应用调用sim卡300提供的访问mifare的api,把mifare扇区数据、扇区访问密钥和扇区块号一起传递给卡操作系统;卡操作系统校验扇区访问密钥的有效性,校验通过后,把全部mifare扇区数据写入至mifare逻辑加密区,实现对实体门禁卡100的复制。
95.在本发明的一些实施例中,复制加密门禁卡的方法,还包括利用移动终端200打开门禁的步骤,该步骤具体包括:
96.步骤s500:与门禁终端600建立通信;
97.步骤s600:sim卡300接收门禁终端600发送的身份验证命令,并在验证通过后,读取扇区数据;
98.步骤s700:sim卡300将扇区数据发送至门禁终端600,以使门禁终端600根据扇区数据执行开门操作。
99.具体地,如图6所示,移动终端200非接近场,与门禁终端600建立iso14443协议的通讯;门禁终端600发送身份验证命令给sim卡300,校验通过后,读取mifare扇区数据;sim卡300返回扇区数据给门禁终端600,门禁读头判断扇区数据是否满足开门条件,如满足,则驱动门禁控制器进行开门操作,实现通过移动终端200进行开门。
100.根据本发明实施例的复制加密门禁卡的方法,实现了对加密门禁卡的复制,提升了用户使用手机开门的用户体验,该方法利用手机操作系统的nfc读卡技术、sim卡访问技术,逻辑加密卡读写技术以及sim卡多应用扩展能力,来实现复制加密门禁卡的扇区数据,
并写入到sim卡mifare扇区中,并具备安全保护机制。
101.另一方面,在本发明的一些实施例中,还提出了一种复制加密门禁卡的系统,该系统包括实体门禁卡100、移动终端200、sim卡300、tsm平台400和社区云平台500,该系统可以用于实现上述的复制加密门禁卡的方法的步骤s100至步骤s400,从而实现对加密门禁卡的复制。
102.在本发明的一些实施例中,复制加密门禁卡的系统还包括门禁终端600,该系统可用于实现上述的复制加密门禁卡的方法的步骤s100至步骤s700,从而实现对加密门禁卡的复制,并可利用移动终端200进行开门。
103.另一方面,在本发明的一些实施例中,还提出了一种存储介质,该存储介质存储有计算机可执行指令,该计算机可执行指令用于使计算机执行上述的复制加密门禁卡的方法。
104.尽管本文描述了具体实施方案,但是本领域中的普通技术人员将认识到,许多其它修改或另选的实施方案同样处于本公开的范围内。例如,结合特定设备或组件描述的功能和/或处理能力中的任一项可以由任何其它设备或部件来执行。另外,虽然已根据本公开的实施方案描述了各种示例性具体实施和架构,但是本领域中的普通技术人员将认识到,对本文所述的示例性具体实施和架构的许多其它修改也处于本公开的范围内。
105.上文参考根据示例性实施方案所述的系统、方法、系统和/或计算机程序产品的框图和流程图描述了本公开的某些方面。应当理解,框图和流程图中的一个或多个块以及框图和流程图中的块的组合可分别通过执行计算机可执行程序指令来实现。同样,根据一些实施方案,框图和流程图中的一些块可能无需按示出的顺序执行,或者可以无需全部执行。另外,超出框图和流程图中的块所示的那些部件和/或操作以外的附加部件和/或操作可存在于某些实施方案中。
106.因此,框图和流程图中的块支持用于执行指定功能的装置的组合、用于执行指定功能的元件或步骤的组合以及用于执行指定功能的程序指令装置。还应当理解,框图和流程图中的每个块以及框图和流程图中的块的组合可以由执行特定功能、元件或步骤的专用硬件计算机系统或者专用硬件和计算机指令的组合来实现。
107.本文所述的程序模块、应用程序等可包括一个或多个软件组件,包括例如软件对象、方法、数据结构等。每个此类软件组件可包括计算机可执行指令,所述计算机可执行指令响应于执行而使本文所述的功能的至少一部分(例如,本文所述的例示性方法的一种或多种操作)被执行。
108.软件组件可以用各种编程语言中的任一种来编码。一种例示性编程语言可以为低级编程语言,诸如与特定硬件体系结构和/或操作系统平台相关联的汇编语言。包括汇编语言指令的软件组件可能需要在由硬件架构和/或平台执行之前由汇编程序转换为可执行的机器代码。另一种示例性编程语言可以为更高级的编程语言,其可以跨多种架构移植。包括更高级编程语言的软件组件在执行之前可能需要由解释器或编译器转换为中间表示。编程语言的其它示例包括但不限于宏语言、外壳或命令语言、作业控制语言、脚本语言、数据库查询或搜索语言、或报告编写语言。在一个或多个示例性实施方案中,包含上述编程语言示例中的一者的指令的软件组件可直接由操作系统或其它软件组件执行,而无需首先转换成另一种形式。
109.软件组件可存储为文件或其它数据存储构造。具有相似类型或相关功能的软件组件可一起存储在诸如特定的目录、文件夹或库中。软件组件可为静态的(例如,预设的或固定的)或动态的(例如,在执行时创建或修改的)。
110.上面结合附图对本发明实施例作了详细说明,但是本发明不限于上述实施例,在所属技术领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献