CN101540675A - 一种智能密钥设备与应用软件的通讯方法和系统 - Google Patents

一种智能密钥设备与应用软件的通讯方法和系统 Download PDF

Info

Publication number
CN101540675A
CN101540675A CN200810247458A CN200810247458A CN101540675A CN 101540675 A CN101540675 A CN 101540675A CN 200810247458 A CN200810247458 A CN 200810247458A CN 200810247458 A CN200810247458 A CN 200810247458A CN 101540675 A CN101540675 A CN 101540675A
Authority
CN
China
Prior art keywords
key
application software
intelligent cipher
session
encrypted
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN200810247458A
Other languages
English (en)
Other versions
CN101540675B (zh
Inventor
陆舟
于华章
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Feitian Technologies Co Ltd
Original Assignee
Beijing Feitian Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Feitian Technologies Co Ltd filed Critical Beijing Feitian Technologies Co Ltd
Priority to CN2008102474581A priority Critical patent/CN101540675B/zh
Publication of CN101540675A publication Critical patent/CN101540675A/zh
Application granted granted Critical
Publication of CN101540675B publication Critical patent/CN101540675B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

本发明公开了一种智能密钥设备与应用软件的通讯方法和系统,属于数据通讯领域。所述方法包括:智能密钥设备与应用软件建立连接;智能密钥设备与应用软件建立单独会话并且约定过程密钥;应用软件使用所述过程密钥对通讯数据进行加密,并将单独会话的会话号和已加密的通讯数据发送给智能密钥设备;智能密钥设备根据所述单独会话的会话号,使用与所述会话号相对应的过程密钥对所述已加密的通讯数据进行解密,得到明文通讯数据。所述系统包括主机和智能密钥设备。通过在智能密钥设备和应用软件之间建立单独会话并使用双方共同约定的密钥对通讯数据进行加密后再进行传输,解决了目前软件和智能密钥设备之间明文传输或者使用静态密钥进行传输的问题。

Description

一种智能密钥设备与应用软件的通讯方法和系统
技术领域
本发明涉及数据通讯领域,特别涉及一种智能密钥设备与应用软件的通讯方法和系统。
背景技术
智能密钥设备可以包括智能卡、USBKey等。智能密钥装置是一种带有处理器和存储器的小型硬件装置,主要用于身份认证、软件保护等领域。它通过计算机的数据通讯接口与计算机连接,并具有密钥生成功能,可安全存储密钥,预置加密算法。智能密钥装置与密钥相关的运算完全在装置内部运行,且智能密钥装置具有抗攻击的特性,安全性极高。USB Key是一种USB接口的智能密钥装置,它内置单片机或智能卡芯片,可以存储用户的密钥或数字证书。
其中,智能卡(SmartCard)也可以称为IC(Integrate Circuit,集成电路)卡,是一种带有微处理器和存储器等微型集成电路芯片的卡片。智能卡根据装载芯片类型的不同可以分为存储式卡片、微处理卡片等,根据信息通信方式的不同,可以分为接触式卡片、非接触式卡片和双界面卡片,根据用途不同,可以分为金融卡、加油卡、社保卡、SAM卡等。智能卡具有标准规格,因此需要遵循一套标准,如ISO7816或者ISO14443。其中,ISO7816是接触式读写器的标准,ISO14443是非接触式读写器的标准。ISO14443制定了专门用于非接触式卡的通讯协议规范的标准,定义非接触方式的收发与识别。USB Key是一种USB接口的智能密钥装置,它内置单片机或智能卡芯片,可以存储用户的密钥或数字证书。
现有技术中,智能密钥设备与应用软件之间的通讯方法一般为以下三种中的一种:
1、通讯数据为明文,或者明文+MAC(Message Authentication Code,消息鉴别码),只是对于敏感数据如PIN码和密钥的安装使用密文,或者密文+MAC;
2、通讯数据为明文,或者明文+MAC,对于密钥的安装使用密文,或者密文+MAC,同时取消PIN码,使用外部认证方式进行PIN码的验证或对PIN码进行一系列杂乱、散列或加密;
3、通讯数据为密文,进行通讯时,首先从智能卡中获取加密所用的过程密钥,获取到的内容是使用非对称密钥的加密密钥进行加密后的密文,应用软件使用自身拥有的非对称密钥的解密密钥进行解密得到过程密钥。以后的通讯数据使用过程密钥进行加密。为了进一步保证安全,往往智能卡每次上电都更换过程密钥。
在实现本发明的过程中,发明人发现现有技术至少存在以下缺点:
1、第1种方式加密密钥必然要放到应用软件中,攻击者可以静态或动态分析应用软件找到该密钥对PIN码、密钥及应用进行攻击;
2、第2种方式虽然保护了在认证的过程中攻击者无法拿到认证密钥,但是对于密钥安装和更新仍然存在和第1种情况相类似的隐患,并且同时对于其他通讯数据不进行保护;
3、第3种方式过程密钥的解密密钥存在于软件代码中,静态或动态分析到解密密钥或者编写一个应用合法通讯去获取过程密钥都是可以破解通讯数据的。
发明内容
为了保证智能密钥设备与应用软件之间的通讯安全,本发明实施例提供了一种智能密钥设备与应用软件的通讯方法和系统。所述技术方案如下:
一种智能密钥设备与应用软件的通讯方法,所述方法包括:
智能密钥设备与应用软件建立连接;
所述智能密钥设备与所述应用软件之间建立单独会话并且约定过程密钥,所述单独会话的会话号与所述过程密钥相对应;
所述应用软件使用所述过程密钥对通讯数据进行加密,并向所述智能密钥设备发送指令,所述指令包括所述单独会话的会话号和已加密的通讯数据;
所述智能密钥设备根据所述单独会话的会话号,使用与所述会话号相对应的过程密钥对所述已加密的通讯数据进行解密,得到明文通讯数据;
所述智能密钥设备根据所述明文通讯数据执行操作,得到响应数据;
使用所述过程密钥对所述响应数据进行加密,并将已加密的响应数据发送给所述应用软件;
所述应用软件接收到所述已加密的响应数据,使用所述过程密钥对接收到的所述已加密的响应数据进行解密,得到所述响应数据。
所述智能密钥设备与所述应用软件之间建立单独会话并且约定过程密钥,具体包括:
所述智能密钥设备接收所述应用软件发送的建立单独对话的指令,根据所述指令选择会话号,并将所述会话号发送给所述应用软件;
所述应用软件按照与所述智能密钥设备预先约定的方式生成与所述会话号对应的过程密钥,并使用预先保存的公钥对所述过程密钥进行加密;
所述应用软件将所述已加密的过程密钥和所述会话号发送给所述智能密钥设备;
所述智能密钥设备使用预先保存的私钥对所述已加密的过程密钥进行解密。
所述智能密钥设备与所述应用软件之间建立单独会话并且约定过程密钥,具体包括:
所述应用软件按照与所述智能密钥设备预先约定的方式生成过程密钥,并使用预先保存的公钥对所述过程密钥进行加密;
所述智能密钥设备接收所述应用软件发送的建立单独会话的指令和已加密的过程密钥,根据所述建立单独会话的指令选择与所述过程密钥相对应的会话号;
所述智能密钥设备使用预先保存的私钥对所述已加密的过程密钥进行解密,并保存所述过程密钥与所述会话号的对应关系;
所述智能密钥设备将所述会话号发送给所述应用软件。
所述智能密钥设备与所述应用软件之间建立单独会话并且约定过程密钥,具体包括:
所述应用软件按照预先约定的方法计算第一约定参数,将所述第一约定参数、获取过程密钥和建立单独会话的指令发送给所述智能密钥设备;
所述智能密钥设备按照所述预先约定的方法计算第二约定参数;
根据所述建立单独会话的指令选择会话号,并根据所述会话号选择过程密钥;
根据接收到的所述第一约定参数计算第一密钥;
使用所述第一密钥对所述过程密钥进行加密;
将所述第二约定参数、已加密的过程密钥和所述会话号发送给所述应用软件;
所述应用软件根据接收到的所述第二约定参数计算第二密钥;
使用所述第二密钥对所述已加密的过程密钥进行解密,得到所述过程密钥。
所述智能密钥设备根据所述单独会话的会话号,使用所述过程密钥对所述已加密的通讯数据进行解密,得到明文通讯数据,具体包括:
所述智能密钥设备根据所述单独会话的会话号,通过查询自身保存的所述过程密钥与所述会话号的对应关系,得到所述会话号对应的所述过程密钥,使用所述过程密钥对所述已加密的通讯数据进行解密,得到明文通讯数据。
所述方法还包括:
所述应用软件向所述智能密钥设备发送结束会话指令,所述结束会话指令经过所述过程密钥加密;
相应地,所述智能密钥设备接收到所述结束会话指令,使用所述过程密钥对所述结束会话指令进行解密,并销毁所述过程密钥。
一种智能密钥设备与应用软件的通讯系统,所述系统包括:主机和智能密钥设备;
所述主机包括:
接口模块,用于所述主机与所述智能密钥设备建立连接;
约定模块,用于所述主机中的应用软件与所述智能密钥设备之间建立单独会话并且约定过程密钥,所述单独会话的会话号与所述过程密钥相对应;
加密模块,用于所述主机中的应用软件使用所述过程密钥对通讯数据进行加密;
发送模块,用于所述主机中的应用软件向所述智能密钥设备发送指令,所述指令包括所述单独会话的会话号和已加密的通讯数据;
接收模块,用于接收所述智能密钥设备发送的已加密的响应数据;
解密模块,用于所述主机中的应用软件使用所述过程密钥对所述已加密的响应数据进行解密,得到所述响应数据。
所述智能密钥设备包括:
接口模块,用于所述智能密钥设备与所述主机建立连接;
约定模块,用于所述智能密钥设备与所述主机中的应用软件之间建立单独会话并且约定过程密钥,所述单独会话的会话号与所述过程密钥相对应;
解密模块,用于所述智能密钥设备根据所述单独会话的会话号,使用所述过程密钥对所述已加密的通讯数据进行解密,得到明文通讯数据;
操作模块,用于所述智能密钥设备根据所述明文通讯数据执行操作,得到响应数据;
加密模块,用于所述智能密钥设备使用所述过程密钥对由所述响应数据进行加密;
接收模块,用于所述智能密钥设备接收所述主机中的应用软件发送的指令,所述指令包括所述单独会话的会话号和已加密的通讯数据;
发送模块,用于将已加密的响应数据发送给所述应用软件。
所述主机中的约定模块具体包括:
第一接收单元,用于接收智能密钥设备发送的会话号;
密钥生成单元,用于按照与所述智能密钥设备预先约定的方式生成过程密钥;
第一加密单元,用于使用预先保存的公钥对所述过程密钥进行加密;
第一发送单元,用于将所述已加密的过程密钥和所述会话号发送给所述智能密钥设备。
所述智能密钥设备中的约定模块具体包括:
第二接收单元,用于接收所述主机中的应用软件发送的建立单独对话的指令;
第二选择单元,用于根据所述接收单元接收到的所述指令选择会话号;
第二发送单元,用于将所述选择单元选择的会话号发送给所述主机中的应用软件;
所述第二接收单元还用于接收所述主机中的应用软件发送的已加密的过程密钥和所述会话号;
第二解密单元,用于使用预先保存的私钥对所述已加密的过程密钥进行解密;
保存单元,用于保存所述过程密钥与所述会话号的对应关系。
所述主机中的约定模块具体包括:
第三计算单元,用于按照预先约定的方法计算第一约定参数;
第三发送单元,用于将所述第一约定参数、获取过程密钥和建立单独会话的指令发送给所述智能密钥设备;
第三接收单元,用于接收所述智能密钥设备发送的第二约定参数、已加密的过程密钥和所述会话号;
所述第三计算单元还用于根据接收到的所述第二约定参数计算第二密钥;
第三解密单元,用于使用所述第二密钥对所述已加密的过程密钥进行解密,得到所述过程密钥。
所述智能密钥设备中的约定模块具体包括:
第四接收单元,用于接收所述主机中的应用软件发送的所述第一约定参数、获取过程密钥和建立单独会话的指令;
第四计算单元,用于按照所述预先约定的方法计算第二约定参数;
第四选择单元,用于根据所述建立单独会话的指令选择会话号,并根据所述会话号选择过程密钥;
所述第四计算单元还用于根据接收到的所述第一约定参数计算第一密钥;
第四加密单元,使用所述第一密钥对所述过程密钥进行加密;
第四发送单元,用于将所述第二约定参数、已加密的过程密钥和所述会话号发送给所述主机中的应用软件。
所述智能密钥设备中的解密模块具体用于:
根据所述单独会话的会话号,通过查询自身保存的所述过程密钥与所述会话号的对应关系,得到所述会话号对应的所述过程密钥,使用所述过程密钥对所述已加密的通讯数据进行解密,得到明文通讯数据。
所述主机的约定模块还用于:向所述智能密钥设备发送结束会话指令,所述结束会话指令经过所述过程密钥加密;
相应地,所述智能密钥设备还用于接收所述结束会话指令,使用所述过程密钥对所述结束会话指令进行解密,并销毁所述过程密钥。
本发明实施例提供的技术方案带来的有益效果是:
通过在智能密钥设备和应用软件之间建立单独会话并使用双方共同约定的密钥对通讯数据进行加密后再进行传输,解决了目前软件和智能密钥设备之间明文传输或者使用静态密钥的问题,使通讯数据不再有被破解的危险,并且,由于每次会话的过程密钥不同,即使攻击者模拟合法应用软件也只是获得其自身通讯所使用的会话号对应的过程密钥,无法得到其他会话的密钥。
附图说明
图1是本发明实施例1中提供的智能密钥设备与应用软件的通讯方法流程图;
图2是本发明实施例2中提供的智能密钥设备与应用软件的通讯方法流程图;
图3是本发明实施例3中提供的智能密钥设备与应用软件的通讯方法流程图;
图4是本发明实施例4中提供的智能密钥设备与应用软件的通讯系统的一种结构示意图;
图5是发明实施例4中提供的智能密钥设备与应用软件的通讯系统的另一种结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例1
在本实施例中,以智能密钥设备为智能卡进行说明,其中公钥保存在应用软件中,私钥保存在智能卡中,公钥和私钥是预先生成的,其中私钥是在智能卡进行初始化时通过秘密途径保存在智能卡中的,公钥是直接内置在应用软件中的;或者,公钥和私钥是根据需要在智能卡中生成的,私钥直接保存在智能卡中,公钥在应用软件和智能卡约定过程密钥之前由应用软件从智能卡中获得。
参见图1,本实施例提供了一种智能卡与应用软件的通讯方法,该方法包括:
101:应用软件通过调用函数SCardConnect()与智能卡建立连接;
102:应用软件按照与智能卡预先约定的要求随机生成一个过程密钥Skey1,并用自身保存的公钥对过程密钥Skey1进行加密;
其中,预先约定的要求可以指应用软件与智能卡之间预先约定过程密钥的长度。
在本实施例中,应用软件自身保存的公钥是1024位的RSA算法的公钥。
103:应用软件通过调用函数SCardTransmit()将操作指令发送给智能卡,并且该操作指令是一个APDU(Application Protocol Data Unit,应用协议数据单元)指令,其格式为:APDU指令头+APDU指令参数+APDU指令数据;
在本实施例中,上述APDU操作指令包含有建立单独会话的指令和对过程密钥Skey1进行加密后的数据,该APDU操作指令可以表示为:
80FC 00 00 80BB F82F 09 06 82 CE 9C 23 38 AC 2B 9D A8 71 F7 36 8D 07EE D4 10 43 A4 40 D6 B6 F0 74 54 F5 1F B8 DF BA AF 03 5C 02 AB 61 EA 48 CEEB 6F CD 48 76 ED 52 0D 60 E1 EC 46 19 71 9D 8A 5B 8B 80 7F AF B8 E0 A3 DFC7 37 72 3E E6 B4 B7 D9 3A 25 84 EE 6A 64 9D 06 09 53 74 88 34 B2 45 45 98 394E E0 AA B1 2D 7B 61 A5 1F 52 7A 9A 41 F6 C1 68 7F E2 53 72 98 CA 2A 8F 5946 F8 E5 FD 09 1D BD CB。
104:智能卡接收到包含有建立单独会话的指令和对过程密钥Skey1加密后的数据的指令,并使用自身保存的私钥对接收到的对过程密钥Skey1进行加密后的数据进行解密,并保存解密得到的过程密钥Skey1;
105:智能卡为与应用软件的本次会话选择会话号Session ID1,并将该会话号Session ID1发送给应用软件,并在智能卡中维护该会话号Session ID1和过程密钥Skey1之间的对应关系;
其中,可以建立会话号与过程密钥之间的对应关系表,以方便查询。
106:本实施例步骤103中调用的函数SCardTransmit()返回一个APDU响应数据,返回的响应数据中包含会话号SessionID1,并且应用软件将上述会话号SessionID1进行保存;
其中,上述APDU响应数据可以表示为:01 9000,01为会话号,90 00表示该APDU成功执行。
107:在通讯过程中,应用软件向智能卡发送加密后的数据;
其中,加密后的数据包括使用过程密钥Skey1进行加密后的通讯数据和应用软件与智能卡之间的会话号Session ID1;
108:智能卡接收到应用软件发送的加密后的数据,根据接收到的会话号Session ID1查找与该会话号Session ID1对应的过程密钥Skey1;
109:智能卡使用查找得到的过程密钥Skey1对接收到的加密后的数据中的密文通讯数据进行解密,得到明文通讯数据;
110:智能卡根据解密得到的明文通讯数据执行相应的操作,并将操作完成后得到的响应数据使用过程密钥Skey1进行加密,再发给应用软件;
111:应用软件使用过程密钥Skey1对接收到的加密后的响应数据进行解密,得到明文响应数据;
112:不再进行通讯时,应用软件向智能卡发送使用过程密钥Skey1加密后的结束会话指令;
113:智能卡接收到结束会话指令,并用过程密钥Skey1进行解密,然后智能卡销毁所维护的该会话号Session ID1对应的过程密钥Skey1;
在智能卡以后的通讯过程中,该会话号Session ID1还可以继续为另一个会话所使用。
本发明实施例通过在智能卡和应用软件之间建立单独会话并使用双方共同约定的密钥对通讯数据进行加密后再进行传输,解决了目前软件和智能卡之间明文传输或者使用静态密钥进行传输的问题,使通讯密文数据不再有被破解的危险,并且,由于每次会话的过程密钥不同,即使攻击者模拟合法应用软件也只是获得其自身通讯所使用的会话号对应的过程密钥,无法得到其他会话的密钥。
实施例2
在本实施例中,以智能密钥设备为智能卡进行说明,智能卡和应用软件在进行初始化时,公钥就被保存在应用软件中,私钥被保存在智能卡中。参见图2,本发明实施例提供了一种智能卡与应用软件的通讯方法,该方法与实施例1中提供的方法不同之处在于,应用软件与智能卡之间首先建立单独会话后,再进行密钥的约定。该方法包括:
201:应用软件通过调用函数SCardConnect()与智能卡建立连接;
202:应用软件通过调用函数SCardTransmit()向智能卡发送一个操作指令,并且该操作指令是一个APDU指令,其格式为:APDU指令头+APDU指令参数+APDU指令数据;
在本实施例中,上述APDU操作指令为建立单独会话的指令,该APDU操作指令可以表示为:80 EE 00 00。
203:智能卡接收应用软件发送的操作指令,选择本次会话要使用的会话号Session ID2,并将该会话号Session ID2发送给应用软件;
204:本实施例步骤202中调用的函数SCardTransmit()返回一个APDU响应数据,返回的响应数据中包含有会话号Session ID2,并且应用软件将上述会话号Session ID2进行保存,然后应用软件按照预先与智能卡约定的要求随机生成一个过程密钥SKey2;
在本实施例步骤204中,上述APDU响应数据可以表示为:01 90 00,其中01为会话号,90 00表示该APDU成功执行;
其中,预先约定的要求可以指应用软件与智能卡之间预先约定过程密钥的长度。
205:应用软件将生成的过程密钥SKey2用自身保存的公钥进行加密,并通过调用函数SCardTransmit()将操作指令发送给智能卡,并且该操作指令是一个APDU指令,其格式为:APDU指令头+APDU指令参数+APDU指令数据;
在本实施例中,在本实施例中,应用软件自身保存的公钥是1024位的RSA算法的公钥;
并且上述APDU操作指令中包含有对过程密钥SKey2进行加密后的数据和会话号Session ID2,上述APDU操作指令可以表示为:
80 EE 01 01 80 5F 60 2F 0A 26 7F 53 5E 23 9A 06 09 09 1D BD CB 09 53 5374 71 F7 36 8D 07 EE D4 10 43 A4 40 A5 34 B2 45 45 98 2D 7B 1F 527A 9A F5 1FB841 F6 C1 68 7F 02 42 6B 45 7C BC 23 B4 48 76 ED 52 0D 3C 60 39 4E E0 AAB1 E1 EC 46 19 71 9D 8A 5B 8B 80 7F 0D 3C 60 E1 DF C7 37 72 3A 25 84 EE 6A64 3E E6 B4 B7 D9 9D 06 74 88 61 E2 53 72 98 CA A5 1F 527A 9A 41 F6 C1 687F 2A 8F 59 46 F8 E5 FD
206:智能卡用自身保存的私钥对接收到的对过程密钥SKey2进行加密后的数据进行解密,保存解密得到的过程密钥SKey2,并且智能卡维护会话号SessionID2和过程密钥SKey2的对应关系;
其中,会话号与过程密钥之间的对应关系可以使用对应关系表,方便查询。
207:本地实施例步骤205中调用的函数SCardTransmit()返回一个APDU响应数据;
在本实施例步骤207中,上述APDU响应数据可以表示为:90 00,90 00表示该APDU成功执行;
208:在通讯过程中,应用软件向智能卡发送加密后的数据;
其中,加密后的数据包括使用过程密钥SKey2进行加密后的通讯数据和应用软件与智能卡之间的会话号Session ID2;
209:智能卡接收到应用软件发送的加密后的数据,根据接收到的会话号Session ID2查找与该会话号Session ID2对应的过程密钥SKey2;
210:智能卡使用查找得到的过程密钥SKey2对接收到的加密后的数据中的密文通讯数据进行解密,得到明文通讯数据;
211:智能卡根据解密得到的明文通讯数据执行相应的操作,并对操作完成后得到的响应数据使用过程密钥Skey2进行加密,再发送给应用软件;
212:应用软件再用过程密钥Skey2对接收到的加密后的响应数据进行解密,得到明文响应数据;
213:不再进行通讯时,应用软件向智能卡发送使用过程密钥SKey2加密后的结束会话指令;
214:智能卡接收加密后的结束会话指令,并用过程密钥SKey2进行解密,然后智能卡销毁所维护的该会话号Session ID2对应的过程密钥SKey2。
在智能卡以后的通讯过程中,该会话号Session ID2还可以继续为另一个会话所使用。
本发明实施例通过在智能卡和应用软件之间建立单独会话并使用双方共同约定的密钥对通讯数据进行加密后再进行传输,解决了目前软件和智能卡之间明文传输或者使用静态密钥进行传输的问题,使通讯密文数据不再有被破解的危险,并且,由于每次会话的过程密钥不同,即使攻击者模拟合法应用软件也只是获得其自身通讯所使用的会话号对应的过程密钥,无法得到其他会话的密钥。
实施例3
参见图3,本发明实施例提供了一种智能密钥设备与应用软件之间的通讯方法,以智能密钥设备为USB Key为例,该方法与实施例1、实施例2之间的区别在于,本实施例的过程密钥的保护密钥是应用软件和USB Key通过安全约定的方法得到的。该方法包括:
301:应用软件通过调用函数CreateFile()与USB Key建立连接,并且双方进行约定,双方都保存数A和数B;
其中,数A和数B都是整数,其中数A是一个质数,并且数B、数B的平方、数B的三次方、......、数B的(A-1)次方分别对数A取余后的结果都是不相同的。
在本实施例中,数A可以为11,数B可以为2。
302:应用软件生成一个随机数数C,并根据该随机数数C计算数D;
其中,应用软件生成的随机数数C是一个小于数A的整数;
根据随机数数C计算数D的方法可以为:先计算数B的C次方,再将数B的C次方对数A取余,得到的结果即为数D;
在本实施例中,数C可以为3,数D为3。
303:应用软件通过调用函数SetFeature()向USB Key发送一个APDU操作指令,并且该操作指令是一个APDU指令,其格式为:APDU指令头+APDU指令参数+APDU指令数据;
在本实施例中,上述APDU操作指令包含有获取过程密钥和建立单独会话的指令以及数D,该APDU操作指令可以表示为:
80 EF 00 00 01 03。
304:USB Key接收应用软件发送的获取过程密钥和建立单独会话指令,并保存数D;
305:USB Key生成一个随机数数E,并根据该随机数数E计算数F;
其中,USB Key生成的随机数数E是一个小于数A的整数;
根据随机数数E计算数F的方法可以为:先计算数B的E次方,再将数B的E次方对数A取余,得到的结果即为数F;
在本实施例中,数E可以为4,数F为5。
306:USB Key为与应用软件的本次会话选择会话号Session ID3,根据该会话号Session ID3随机生成一个过程密钥SKey3,并且USB Key维护会话号Session ID3和过程密钥SKey3的对照关系;
其中,为每个会话产生的过程密钥是根据该会话的会话号产生的,可以是随机的,也可以是从同一个数据派生出来的;
会话号与过程密钥之间的对照关系,可以通过对照关系表进行维护。
307:USB Key根据数A、数D和数E计算密钥K1,并用该密钥K1对过程密钥SKey3进行加密,得到密文Ms;
其中,根据数A、数D和数E计算密钥K1的方法为:先计算数D的E次方,再将数D的E次方对数A取余,得到的结果即为密钥K1。
在本实施例中,根据数A、数D和数E计算得出的密钥K1为4;
308:USB Key将数F、密文Ms和会话号Session ID3发送给应用软件;
309:应用软件通过调用函数GetFeature()接收USB Key返回的APDU指令数据,并且应用软件对上述数据进行保存,再根据数A、数C和数F计算密钥K2;
在本实施例步骤309中,上述APDU数据中包含有数F、密文Ms和会话号Session ID3,该APDU指令可以表示为:
01 05 01 01 01 04 90 00;
其中,根据数A、数C和数F计算密钥K2的具体方法为:先计算数F的C次方,再将数F的C次方对数A取余,得到的结果即为密钥K2;
在本实施例中,根据数A、数C和数F计算得出的密钥K2为4。
在本实施例中,根据307中计算密钥K1的方法和309中计算密钥K2的方法可以知道密钥K1与密钥K2是相等的。
310:应用软件使用密钥K2对密文Ms进行解密,得到过程密钥SKey3;
311:在通讯过程中,应用软件向USB Key发送包含有会话号Session ID3和使用过程密钥SKey3加密后的通讯数据;
312:USB Key接收到上述密文通讯数据,并根据会话号Session ID3从对照关系中查找与该会话号Session ID3对应的过程密钥SKey3;
313:USB Key用查找得到的过程密钥SKey3对接收到的加密后的通讯数据进行解密,得到明文通讯数据;
314:USB Key根据解密得到的明文通讯数据执行相应的操作,并将操作完成后得到的响应数据使用过程密钥Skey3进行加密,再发给应用软件;
315:应用软件再用过程密钥Skey3对接收到的加密后的响应数据进行解密,得到明文响应数据;
316:不再进行通讯时,应用软件向USB Key发送使用过程密钥SKey3加密后的结束会话指令;
317:USB Key接收到该指令并用查找得到的过程密钥SKey3对该指令进行解密,然后USB Key销毁所维护的该会话号Session ID3对应的过程密钥SKey3,同时该会话号Session ID3可以继续作为下一个通讯过程使用。
本发明实施例通过在USB Key和应用软件之间建立单独会话并使用相同的算法进行密钥的约定,解决了目前软件和USB Key之间明文传输或者使用静态密钥的问题,使通讯数据不再有被破解的危险,并且,由于每次会话的过程密钥不同,即使攻击者模拟合法应用软件也只是获得其自身通讯所使用的会话号对应的过程密钥,无法得到其他会话的密钥。
实施例四
参见图4,本发明实施例提供了一种智能密钥设备与应用软件的通讯系统,包括:主机401和智能密钥设备402;
主机401包括:
接口模块401A,用于主机401中的应用软件与智能密钥设备402建立连接;
约定模块401B,用于主机401中的应用软件与智能密钥设备402之间建立单独会话并且约定过程密钥,单独会话的会话号与约定过程密钥对应;
加密模块401C,用于主机401中的应用软件使用过程密钥对通讯数据进行加密;
发送模块401D,用于主机401中的应用软件向智能密钥设备402发送指令,该指令包括单独会话的会话号和已加密的通讯数据;
接收模块401E,用于接收智能密钥设备402发送的已加密的响应数据;
解密模块401F,用于主机401中的应用软件使用过程密钥对已加密的响应数据进行解密,得到响应数据。
智能密钥设备402包括:
接口模块402A,用于智能密钥设备402与主机401中的应用软件建立连接;
约定模块402B,用于智能密钥设备402与主机401的应用软件之间建立单独会话并且约定过程密钥,单独会话的会话号与约定过程密钥相对应;
解密模块402C,用于智能密钥设备402根据单独会话的会话号,使用过程密钥对已加密的通讯数据进行解密,得到明文通讯数据;
操作模块402D,用于智能密钥设备402根据明文通讯数据执行操作,得到响应数据;
接收模块402E,用于接收主机401中的应用软件发送的指令,上述指令包括单独会话的会话号和已加密的通讯数据;
加密模块402F,用于智能密钥设备402使用过程密钥对由响应数据进行加密;
发送模块402G,用于将已加密的响应数据发送给主机401中的应用软件。
其中,一种实施方式下,主机401中的约定模块401B具体包括:
第一接收单元401B1,用于接收智能密钥设备402发送的会话号;
密钥生成单元401B2,用于按照与智能密钥设备402预先约定的方式生成过程密钥;
第一加密单元401B3,用于使用预先保存的公钥对过程密钥进行加密;
第一发送单元401B4,用于将已加密的过程密钥和会话号发送给智能密钥设备402。
智能密钥设备402中的约定模块402B具体包括:
第二接收单元402B1,用于接收主机401中的应用软件发送的建立单独对话的指令;
第二选择单元402B2,用于根据接收单元402B1接收到的指令选择会话号;
第二发送单元402B3,用于将会话号发送给主机401中的应用软件;
第二接收单元402B1还用于接收主机401中的应用软件发送的已加密的过程密钥和会话号;
第二解密单元402B4,用于使用预先保存的私钥对已加密的过程密钥进行解密;
保存单元402B5,用于保存过程密钥与会话号的对应关系。
参见图5,另一种实施方式下,主机401中的约定模块401B具体包括:
第三计算单元401B1,用于按照预先约定的方法计算第一约定参数;
第三发送单元401B2,用于将第一约定参数、获取过程密钥和建立单独会话的指令发送给智能密钥设备402;
第三接收单元401B3,用于接收智能卡402发送的第二约定参数、已加密的过程密钥和会话号;
第三计算单元401B1还用于根据接收到的第二约定参数计算第二密钥;
第三解密单元401B4,用于使用第二密钥对已加密的过程密钥进行解密,得到过程密钥。
智能密钥设备402中的约定模块402B具体包括:
第四接收单元402B1,用于接收主机401中的应用软件发送的第一约定参数、获取过程密钥和建立单独会话的指令;
第四计算单元402B2,用于按照预先约定的方法计算第二约定参数;
第四选择单元402B3,用于根据建立单独会话的指令选择会话号,并根据会话号选择过程密钥;
第四计算单元402B1还用于根据接收到的第一约定参数计算第一密钥;
第四加密单元402B4,使用第一密钥对过程密钥进行加密;
第四发送单元402B5,用于将第二约定参数、已加密的过程密钥和会话号发送给主机401中的应用软件。
解密模块402C具体用于:
根据单独会话的会话号,通过查询自身保存的过程密钥与会话号的对应关系,得到会话号对应的过程密钥,使用过程密钥对已加密的通讯数据进行解密,得到明文通讯数据。
主机401的约定模块401B还用于:向智能密钥设备402发送结束会话指令,该结束会话指令经过过程密钥加密;
相应地,智能密钥设备402还用于接收结束会话指令,使用过程密钥对结束会话指令进行解密,并销毁过程密钥。
本发明实施例通过在智能密钥设备和主机中的应用软件之间建立单独会话并使用相同的算法进行密钥的约定,解决了目前软件和智能密钥设备之间明文传输或者使用静态密钥的问题,使通讯数据不再有被破解的危险,并且,由于每次会话的过程密钥不同,即使攻击者模拟合法应用软件也只是获得其自身通讯所使用的会话号对应的过程密钥,无法得到其他会话的密钥。
以上对本发明所提供的一种智能密钥设备和应用软件之间进行密文通讯的方法与系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本发明的限制,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (13)

1、一种智能密钥设备与应用软件的通讯方法,其特征在于,所述方法包括:
智能密钥设备与应用软件建立连接;
所述智能密钥设备与所述应用软件之间建立单独会话并且约定过程密钥,所述单独会话的会话号与所述过程密钥相对应;
所述应用软件使用所述过程密钥对通讯数据进行加密,并向所述智能密钥设备发送指令,所述指令包括所述单独会话的会话号和已加密的通讯数据;
所述智能密钥设备根据所述单独会话的会话号,使用与所述会话号相对应的过程密钥对所述已加密的通讯数据进行解密,得到明文通讯数据;
所述智能密钥设备根据所述明文通讯数据执行相应操作,构造相应的响应数据;
所述智能密钥设备使用所述过程密钥对所述响应数据进行加密,并将已加密的响应数据发送给所述应用软件;
所述应用软件接收到所述已加密的响应数据,使用所述过程密钥对接收到的所述已加密的响应数据进行解密,得到所述响应数据。
2、如权利要求1所述的智能密钥设备与应用软件的通讯方法,其特征在于,所述智能密钥设备与所述应用软件之间建立单独会话并且约定过程密钥,具体包括:
所述智能密钥设备接收所述应用软件发送的建立单独对话的指令,根据所述指令选择会话号,并将所述会话号发送给所述应用软件;
所述应用软件按照与所述智能密钥设备预先约定的方式生成与所述会话号对应的过程密钥,并使用预先保存的公钥对所述过程密钥进行加密;
所述应用软件将所述已加密的过程密钥和所述会话号发送给所述智能密钥设备;
所述智能密钥设备使用预先保存的私钥对所述已加密的过程密钥进行解密,并保存所述过程密钥与所述会话号的对应关系。
3、如权利要求1所述的智能密钥设备与应用软件的通讯方法,其特征在于,所述智能密钥设备与所述应用软件之间建立单独会话并且约定过程密钥,具体包括:
所述应用软件按照与所述智能密钥设备预先约定的方式生成过程密钥,并使用预先保存的公钥对所述过程密钥进行加密;
所述智能密钥设备接收所述应用软件发送的建立单独会话的指令和已加密的过程密钥,根据所述建立单独会话的指令选择与所述过程密钥相对应的会话号;
所述智能密钥设备使用预先保存的私钥对所述已加密的过程密钥进行解密;
所述智能密钥设备将所述会话号发送给所述应用软件。
4、如权利要求1所述的智能密钥设备与应用软件的通讯方法,其特征在于,所述智能密钥设备与所述应用软件之间建立单独会话并且约定过程密钥,具体包括:
所述应用软件按照预先约定的方法计算第一约定参数,将所述第一约定参数、获取过程密钥和建立单独会话的指令发送给所述智能密钥设备;
所述智能密钥设备按照所述预先约定的方法计算第二约定参数;
根据所述建立单独会话的指令选择会话号,并根据所述会话号选择过程密钥;
根据接收到的所述第一约定参数计算第一密钥;
使用所述第一密钥对所述过程密钥进行加密;
将所述第二约定参数、已加密的过程密钥和所述会话号发送给所述应用软件;
所述应用软件根据接收到的所述第二约定参数计算第二密钥;
使用所述第二密钥对所述已加密的过程密钥进行解密,得到所述过程密钥。
5、如权利要求2至4中任一权利要求所述的智能密钥设备与应用软件的通讯方法,其特征在于,所述智能密钥设备根据所述单独会话的会话号,使用所述过程密钥对所述已加密的通讯数据进行解密,得到明文通讯数据,具体包括:
所述智能密钥设备根据所述单独会话的会话号,通过查询自身保存的所述过程密钥与所述会话号的对应关系,得到所述会话号对应的所述过程密钥,使用所述过程密钥对所述已加密的通讯数据进行解密,得到明文通讯数据。
6、如权利要求1所述的智能密钥设备与应用软件的通讯方法,其特征在于,所述方法还包括:
所述应用软件向所述智能密钥设备发送结束会话指令,所述结束会话指令经过所述过程密钥加密;
相应地,所述智能密钥设备接收到所述结束会话指令,使用所述过程密钥对所述结束会话指令进行解密,并销毁所述过程密钥。
7、一种智能密钥设备与应用软件的通讯系统,其特征在于,所述系统包括:主机和智能密钥设备;
所述主机包括:
接口模块,用于所述主机与所述智能密钥设备建立连接;
约定模块,用于所述主机中的应用软件与所述智能密钥设备之间建立单独会话并且约定过程密钥,所述单独会话的会话号与所述过程密钥相对应;
加密模块,用于所述主机中的应用软件使用所述过程密钥对通讯数据进行加密;
发送模块,用于所述主机中的应用软件向所述智能密钥设备发送指令,所述指令包括所述单独会话的会话号和已加密的通讯数据;
接收模块,用于接收所述智能密钥设备发送的已加密的响应数据;
解密模块,用于所述主机中的应用软件使用所述过程密钥对所述已加密的响应数据进行解密,得到所述响应数据;
所述智能密钥设备包括:
接口模块,用于所述智能密钥设备与所述主机建立连接;
约定模块,用于所述智能密钥设备与所述主机中的应用软件之间建立单独会话并且约定过程密钥,所述单独会话的会话号与所述过程密钥相对应;
解密模块,用于所述智能密钥设备根据所述单独会话的会话号,使用所述过程密钥对所述已加密的通讯数据进行解密,得到明文通讯数据;
操作模块,用于所述智能密钥设备根据所述明文通讯数据执行操作,得到响应数据;
接收模块,用于所述智能密钥设备接收所述主机中的应用软件发送的指令,所述指令包括所述单独会话的会话号和已加密的通讯数据;
加密模块,用于所述智能密钥设备使用所述过程密钥对所述响应数据进行加密;
发送模块,用于将已加密的响应数据发送给所述应用软件。
8、如权利要求7所述的智能密钥设备与应用软件的通讯系统,其特征在于,所述主机中的约定模块具体包括:
第一接收单元,用于接收智能密钥设备发送的会话号;
密钥生成单元,用于按照与所述智能密钥设备预先约定的方式生成过程密钥;
第一加密单元,用于使用预先保存的公钥对所述过程密钥进行加密;
第一发送单元,用于将所述已加密的过程密钥和所述会话号发送给所述智能密钥设备。
9、如权利要求8所述的智能密钥设备与应用软件的通讯系统,其特征在于,所述智能密钥设备中的约定模块具体包括:
第二接收单元,用于接收所述主机中的应用软件发送的建立单独对话的指令;
第二选择单元,用于根据所述接收单元接收到的所述指令选择会话号;
第二发送单元,用于将所述选择单元选择的会话号发送给所述主机中的应用软件;
所述第二接收单元还用于接收所述主机中的应用软件发送的已加密的过程密钥和所述会话号;
第二解密单元,用于使用预先保存的私钥对所述已加密的过程密钥进行解密;
保存单元,用于保存所述过程密钥与所述会话号的对应关系。
10、如权利要求7所述的智能密钥设备与应用软件的通讯系统,其特征在于,所述主机中的约定模块具体包括:
第三计算单元,用于按照预先约定的方法计算第一约定参数;
第三发送单元,用于将所述第一约定参数、获取过程密钥和建立单独会话的指令发送给所述智能密钥设备;
第三接收单元,用于接收所述智能密钥设备发送的第二约定参数、已加密的过程密钥和所述会话号;
所述第三计算单元还用于根据接收到的所述第二约定参数计算第二密钥;
第三解密单元,用于使用所述第二密钥对所述已加密的过程密钥进行解密,得到所述过程密钥。
11、如权利要求10所述的智能密钥设备与应用软件的通讯系统,其特征在于,所述智能密钥设备中的约定模块具体包括:
第四接收单元,用于接收所述主机中的应用软件发送的所述第一约定参数、获取过程密钥和建立单独会话的指令;
第四计算单元,用于按照所述预先约定的方法计算第二约定参数;
第四选择单元,用于根据所述建立单独会话的指令选择会话号,并根据所述会话号选择过程密钥;
所述第四计算单元还用于根据接收到的所述第一约定参数计算第一密钥;
第四加密单元,使用所述第一密钥对所述过程密钥进行加密;
第四发送单元,用于将所述第二约定参数、已加密的过程密钥和所述会话号发送给所述主机中的应用软件。
12、如权利要求7至11中任一权利要求所述的智能密钥设备与应用软件的通讯系统,其特征在于,所述智能密钥设备中的解密模块具体用于:
根据所述单独会话的会话号,通过查询自身保存的所述过程密钥与所述会话号的对应关系,得到所述会话号对应的所述过程密钥,使用所述过程密钥对所述已加密的通讯数据进行解密,得到明文通讯数据。
13、如权利要求7所述的智能密钥设备与应用软件的通讯系统,其特征在于,所述主机的约定模块还用于:向所述智能密钥设备发送结束会话指令,所述结束会话指令经过所述过程密钥加密;
相应地,所述智能密钥设备还用于接收所述结束会话指令,使用所述过程密钥对所述结束会话指令进行解密,并销毁所述过程密钥。
CN2008102474581A 2008-12-31 2008-12-31 一种智能密钥设备与应用软件的通讯方法和系统 Active CN101540675B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2008102474581A CN101540675B (zh) 2008-12-31 2008-12-31 一种智能密钥设备与应用软件的通讯方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2008102474581A CN101540675B (zh) 2008-12-31 2008-12-31 一种智能密钥设备与应用软件的通讯方法和系统

Publications (2)

Publication Number Publication Date
CN101540675A true CN101540675A (zh) 2009-09-23
CN101540675B CN101540675B (zh) 2010-12-29

Family

ID=41123680

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008102474581A Active CN101540675B (zh) 2008-12-31 2008-12-31 一种智能密钥设备与应用软件的通讯方法和系统

Country Status (1)

Country Link
CN (1) CN101540675B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102592100A (zh) * 2011-12-21 2012-07-18 北京握奇数据系统有限公司 实现应用操作安全认证方法及其设备
CN104253694A (zh) * 2014-09-27 2014-12-31 杭州电子科技大学 一种用于网络数据传输的保密方法
CN105610582A (zh) * 2015-12-28 2016-05-25 天津市通卡公用网络系统有限公司 单片机与远程服务器加密通讯方法
CN107690030A (zh) * 2017-08-31 2018-02-13 恒宝股份有限公司 一种解锁和锁定移动智能设备的方法及蓝牙智能卡
CN109618313A (zh) * 2017-09-30 2019-04-12 厦门歌乐电子企业有限公司 一种车载蓝牙设备及其连接方法、系统
CN109660341A (zh) * 2018-12-14 2019-04-19 飞天诚信科技股份有限公司 一种在应用通信中保护数据安全的实现方法及系统
CN111222119A (zh) * 2019-12-27 2020-06-02 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) 转储分析终端及机车运行数据的安全转储分析方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100576856C (zh) * 2005-11-11 2009-12-30 深圳市颂雅科技有限公司 适合于多种通信网络的移动电话密码机及保密通信方法
CN101005361B (zh) * 2007-01-22 2010-11-03 北京飞天诚信科技有限公司 一种服务器端软件保护方法及系统
CN101056166B (zh) * 2007-05-28 2010-04-21 北京飞天诚信科技有限公司 一种提高数据传输安全性的方法

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102592100A (zh) * 2011-12-21 2012-07-18 北京握奇数据系统有限公司 实现应用操作安全认证方法及其设备
CN102592100B (zh) * 2011-12-21 2015-02-18 北京握奇数据系统有限公司 实现应用操作安全认证方法及其设备
CN104253694A (zh) * 2014-09-27 2014-12-31 杭州电子科技大学 一种用于网络数据传输的保密方法
CN105610582A (zh) * 2015-12-28 2016-05-25 天津市通卡公用网络系统有限公司 单片机与远程服务器加密通讯方法
CN105610582B (zh) * 2015-12-28 2018-10-26 天津通卡智能网络科技股份有限公司 单片机与远程服务器加密通讯方法
CN107690030A (zh) * 2017-08-31 2018-02-13 恒宝股份有限公司 一种解锁和锁定移动智能设备的方法及蓝牙智能卡
CN109618313A (zh) * 2017-09-30 2019-04-12 厦门歌乐电子企业有限公司 一种车载蓝牙设备及其连接方法、系统
CN109618313B (zh) * 2017-09-30 2023-06-23 厦门歌乐电子企业有限公司 一种车载蓝牙设备及其连接方法、系统
CN109660341A (zh) * 2018-12-14 2019-04-19 飞天诚信科技股份有限公司 一种在应用通信中保护数据安全的实现方法及系统
CN109660341B (zh) * 2018-12-14 2021-03-16 飞天诚信科技股份有限公司 一种在应用通信中保护数据安全的实现方法及系统
CN111222119A (zh) * 2019-12-27 2020-06-02 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) 转储分析终端及机车运行数据的安全转储分析方法

Also Published As

Publication number Publication date
CN101540675B (zh) 2010-12-29

Similar Documents

Publication Publication Date Title
CN110995642B (zh) 使用预共享密钥提供安全连接
EP0223122B1 (en) Secure component authentication system
CN101540675B (zh) 一种智能密钥设备与应用软件的通讯方法和系统
CN100559393C (zh) Rfid标签及其阅读器、读取系统及安全认证方法
CN102571702B (zh) 物联网中的密钥生成方法、系统和设备
CN107959686B (zh) 一种物联网安全认证系统及认证方法
CN101159551B (zh) 多功能信息安全设备及其使用方法
CN103124269A (zh) 云环境下基于动态口令与生物特征的双向身份认证方法
CN101483654A (zh) 实现认证及数据安全传输的方法及系统
US20220094545A1 (en) Low power encryption in motion
CN101789068B (zh) 读卡器安全认证装置及方法
CN101488111A (zh) 一种身份认证方法和系统
CN107465665A (zh) 一种基于指纹识别技术的文件加解密方法
CN109981275A (zh) 数据传输方法、装置、系统、设备以及存储介质
CN101789863B (zh) 数据信息安全传输方法
CN105281910A (zh) 带ca数字证书作为入网身份识别的物联网锁及其入网身份识别方法
CN101944216A (zh) 双因子在线交易安全认证方法及系统
CN102082669A (zh) 一种安全认证方法及装置
CN117081736A (zh) 密钥分发方法、密钥分发装置、通信方法及通信装置
KR102219086B1 (ko) 드론(Unnamed Aerial vehicle)시스템을 위한 HMAC기반의 송신원 인증 및 비밀키 공유 방법 및 시스템
US20230289424A1 (en) Security Chip-Based Security Authentication Method and System, Security Chip, and Readable Storage Medium
CN109756451B (zh) 一种信息交互方法及装置
CN103973455B (zh) 一种信息交互方法
EP2993856B1 (en) Establishment of communication connection between mobile device and secure element
CN1848725B (zh) 保护第一设备和第二设备之间通信链接的方法和相应设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C56 Change in the name or address of the patentee

Owner name: FEITIAN CHENGXIN TECHNOLOGY CO., LTD.

Free format text: FORMER NAME: BEIJING FEITIAN CHENGXIN SCIENCE + TECHNOLOGY CO. LTD.

CP03 Change of name, title or address

Address after: 100085 Beijing city Haidian District Xueqing Road No. 9 Ebizal building B block 17 layer

Patentee after: Feitian Technologies Co.,Ltd.

Address before: 100083, Haidian District, Xueyuan Road, No. 40 research, 7 floor, 5 floor, Beijing

Patentee before: FEITIAN TECHNOLOGIES Co.,Ltd.

CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 17th floor, building B, Huizhi building, No.9, Xueqing Road, Haidian District, Beijing 100085

Patentee after: Feitian Technologies Co.,Ltd.

Country or region after: China

Address before: 100085 17th floor, block B, Huizhi building, No.9 Xueqing Road, Haidian District, Beijing

Patentee before: Feitian Technologies Co.,Ltd.

Country or region before: China