一种与智能密钥设备通讯的方法及装置的制造方法_5

文档序号:9911517阅读:来源:国知局
、第 二获取模块07、第一封装模块08、第一发送模块09、第一接收模块10和第一解封模块11; [0259]初始化模块01,用于初始化;
[0260]监控模块02,用于当初始化模块01进行初始化后,采用广播或者枚举的方式,监控 是否有智能密钥设备插入;以及当第二判断模块06判定为否后,采用广播或者枚举的方式, 监控是否有智能密钥设备插入;
[0261]第一获取模块03,用于当监控模块02监控到智能密钥设备插入后,获取与智能密 钥设备对应的设备对象;
[0262]第一获取模块03具体用于当监控模块02采用枚举的方式,监控到有智能密钥设备 插入后,调用设备列表函数对智能密钥设备进行枚举,获取与智能密钥设备对应的设备对 象。
[0263]或者第一获取模块03具体用于当监控模块02采用广播的方式,监控到有智能密钥 设备插入后,调用第一打包函数获取与智能密钥设备对应的设备对象。
[0264] 第一判断模块04,用于判断第一获取模块03获取到的设备对象是否具有设备权 限;
[0265] 第一判断模块04具体用于当第一获取模块03,调用设备列表函数对智能密钥设备 进行枚举,获取与智能密钥设备对应的设备对象之后,调用获取设备权限函数获取设备对 象的设备权限标识,根据设备权限标识判断设备对象是否具有设备权限;
[0266] 或者当第一获取模块03调用第一打包函数获取与智能密钥设备对应的设备对象 后,调用第二打包函数获取设备对象的设备权限标识,根据设备权限标识判断设备对象是 否具有设备权限。
[0267] 申请权限模块05,用于当第一判断模块04判定为否后,为设备对象申请设备权限; [0268]申请权限模块05具体用于当第一判断模块04判定为否后,调用申请权限函数为设 备对象申请设备权限。
[0269]第二判断模块06,用于当申请权限模块05为第一获取模块03获取到的设备对象申 请设备权限后,判断设备对象是否具有设备权限;
[0270]第二判断模块06具体用于当申请权限模块05为第一获取模块03通过调用设备列 表函数对智能密钥设备进行枚举,获取到的与智能密钥设备对应的设备对象,申请设备权 限后,调用获取设备权限函数获取设备对象的设备权限标识,根据设备权限标识判断设备 对象是否具有设备权限。
[0271]或者具体用于当申请权限模块05为第一获取模块03通过调用第一打包函数获取 到的与智能密钥设备对应的设备对象,申请设备权限后,调用第二打包函数获取设备对象 的设备权限标识,根据设备权限标识判断设备对象是否具有设备权限。
[0272]第二获取模块07,用于当第一判断模块04判定为是后或当第二判断模块06判定为 是后,获取与设备对象对应的设备连接句柄和设备接口对象,根据设备接口对象获取与设 备对象对应的设备通讯端点。
[0273]第二获取模块07,具体用于当第一判断模块04判定为是后或当第二判断模块06判 定为是后,调用打开设备函数获取与设备对象对应的设备连接句柄;调用获取接口函数获 取与设备对象对应的设备接口对象;调用获取端点函数得到与设备对象对应的设备通讯端 点。
[0274]第一封装模块08,用于当第二获取模块07根据设备接口对象获取与设备对象对应 的设备通讯端点后,生成第一通讯指令,根据设备对象获取USB协议标识,根据USB协议标识 对第一通讯指令进行封装;
[0275] 第一封装模块08包括第一获取单元和第一组织单元;
[0276] 第一获取单元用于生成第一通讯指令,根据第一获取模块03获取到的设备对象获 取USB协议标识;
[0277] 其中,第一通讯指令具体为验PIN指令或取随机数指令或生产密钥对指令或签名 指令;USB协议标识具体为CCID协议标识或HID协议标识或SCSI协议标识。
[0278] 第一组织单元具体用于在第一获取单元生成的第一通讯指令前添加与USB协议标 识对应的USB协议头,得到封装后的第一通讯指令。
[0279]第一发送模块09,用于通过第二获取模块07获取到的设备连接句柄和设备通讯端 点将第一封装模块08封装的第一通讯指令发送给对应的智能密钥设备;
[0280]第一接收模块10,用于通过第二获取模块07获取到的设备连接句柄和设备通讯端 点接收来自智能密钥设备的与封装后的第一通讯指令对应的第一应答;
[0281 ]第一解封模块11,用于根据USB协议标识对第一接收模块10接收到的第一应答进 行解封,得到解封后的第一应答。
[0282] 第一解封模块11具体用于根据第一封装模块08去除第一接收模块10接收到的第 一应答中的与USB协议标识对应的应答头,得到解封后的第一应答。
[0283] 本实施例中,设备通讯端点包括设备输出端点和设备输入端点;相应地:
[0284]第一发送模块09具体用于通过第二获取模块07获取到的设备连接句柄调用数据 传输函数将封装后的第一通讯指令通过第二获取模块07获取到的设备输出端点发送给对 应的智能密钥设备;
[0285] 第一接收模块10具体用于通过第二获取模块07获取到的设备通讯句柄调用数据 传输函数通过设备输入端点接收来自智能密钥设备的与所述封装后的第一通讯指令对应 的第一应答。
[0286] 本实施例中,通讯装置还可以包括第三判断模块;相应地:
[0287] 第三判断模块用于当第一获取模块03获取与智能密钥设备对应的设备对象后,第 一判断模块04判断设备对象是否具有设备权限之前,判断第一获取模块03获取到的设备对 象是否与预设厂商标识对应;
[0288]第一判断模块04具体用于当第三判断模块判定为是后,判断第一获取模块03获取 到的设备对象是否具有设备权限;
[0289] 监控模块02还用于当第三判断模块判定为否后,采用广播或者枚举的方式,监控 是否有智能密钥设备插入。
[0290] 本实施例中,通讯装置还可以包括第四判断模块;相应地:
[0291] 第四判断模块用于当第二获取模块07获取到与设备对象对应的设备连接句柄和 设备接口对象之后,根据设备接口对象获取与设备对象对应的设备通讯端点之前,根据设 备连接句柄使用控制传输端点获取智能密钥设备的设备识别标识,判断设备识别标识是否 是预设识别标识;
[0292]第二获取模块07具体用于当第一判断模块04判定为是后,获取与设备对象对应的 设备连接句柄和设备接口对象;当第四判断模块判定为是后,根据设备接口对象获取与设 备对象对应的设备通讯端点;以及当第二判断模块06判定为是后,获取与设备对象对应的 设备连接句柄和设备接口对象,当第四判断模块判定为是后,根据设备接口对象获取与设 备对象对应的设备通讯端点;
[0293] 监控模块02还用于当第四判断模块判定为否后,采用广播或者枚举的方式,监控 是否有智能密钥设备插入。
[0294] 本实施例中,通讯装置还可以包括第五判断模块和第一销毁模块;相应地:
[0295] 监控模块02还用于当初始化模块01初始化后,采用广播或者枚举的方式,监控是 否有智能密钥设备拔出;
[0296] 第五判断模块用于当监控模块02监控到智能密钥设备拔出后,判断与智能密钥设 备对应的设备对象是否存在对应的设备连接句柄和设备通讯纟而点;
[0297] 第一销毁模块用于当第五判断模块判定为是后,销毁与智能密钥设备对应的设备 对象,及与其分别对应的设备连接句柄和设备通讯端点;以及当第五判断模块判定为否后, 销毁与智能密钥设备对应的设备对象。
[0298] 本实施例中,通讯装置还可以包括保存模块和第三获取模块;相应地:
[0299] 保存模块用于生成设备通讯句柄,将设备通讯句柄与第二获取模块07获取到的设 备连接句柄、设备通讯端点及第一获取模块03获取到的设备对象分别建立对应关系并保 存;
[0300] 第三获取模块用于当第一封装模块08生成第一通讯指令,根据设备对象获取USB 协议标识,根据USB协议标识和第一通讯指令得到第二通讯指令之前,根据设备通讯句柄获 取对应的设备对象、设备连接句柄和设备通讯端点;
[0301] 第一发送模块09具体用于通过第三获取模块获取到的设备连接句柄和设备通讯 端点将第一封装模块08获取到的第二通讯指令发送给对应的智能密钥设备。
[0302]当通讯装置初始化模块01、监控模块02、第一获取模块03、第一判断模块04、申请 权限模块05、第二判断模块06、第二获取模块07、第一封装模块08、第一发送模块09、第一接 收模块10、第一解封模块11、保存模块和第三获取模块时,通讯装置还可以包括第六判断模 块和第二销毁模块;相应地:
[0303]监控模块02还用于当初始化模块01初始化后,采用广播或者枚举的方式,监控是 否有智能密钥设备拔出;
[0304]第六判断模块用于当监控模块02监控到智能密钥设备拔出后,判断与智能密钥设 备对应的设备对象是否存在对应的设备连接句柄和设备通讯纟而点;
[0305]第二销毁模块用于当第六判断模块判定为是后,销毁与智能密钥设备对应的设备 对象,及与其分别对应的设备通讯句柄、设备连接句柄和设备通讯端点;以及当第六判断模 块判定为否后,销毁与智能密钥设备对应的设备对象。
[0306]还需说明的是,尽管现有技术中,已经存在其他接口的智能密钥设备(如蓝牙接口 的智能密钥设备或音频接口的智能密钥设备等)可以和移动终端进行通讯,但是本发明实 施例中提供的利用0TG技术实现的移动终端和USB接口的智能密钥设备的通讯方法及通讯 装置能够在降低成本的同时,实现更快的通讯速度,更加便捷。
[0307]以上所述,仅为本发明较佳的【具体实施方式】,但本发明的保护范围并不局限于此, 任何熟悉本技术领域的技术人员在本发明公开的技术范围内,可轻易想到的变化或替换, 都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围 为准。
【主权项】
1. 一种与智能密钥设备通讯的方法,其特征在于,包括:监控流程和通讯流程; 所述监控流程包括: 步骤si:移动终端初始化; 步骤S2:所述移动终端采用广播或者枚举的方式,监控是否有智能密钥设备插入;当所 述移动终端监控到智能密钥设备插入后,执行步骤s3; 步骤s3:所述移动终端获取与所述智能密钥设备对应的设备对象,判断所述设备对象 是否具有设备权限,如果是,则执行步骤s5;否则,执行步骤s4; 步骤s4:所述移动终端为所述设备对象申请设备权限,判断所述设备对象是否具有设 备权限,如果是,则执行步骤s5,否则,返回步骤s2; 步骤s5 :所述移动终端获取与所述设备对象对应的设备连接句柄和设备接口对象,根 据所述设备接口对象获取与所述设备对象对应的设备通讯端点; 所述通讯流程包括: 步骤rl:所述移动终端生成第一通讯指令,根据所述设备对象获取USB协议标识,根据 所述USB协议标识对所述第一通讯指令进行封装; 步骤r2:所述移动终端通过所述设备连接句柄和所述设备通讯端点将封装后的第一通 讯指令,发送给对应的所述智能密钥设备; 步骤r3:所述移动终端通过所述设备连接句柄和所述设备通讯端点接收来自所述智能 密钥设备的与所述封装后的第一通讯指令对应的第一应答; 步骤r4:所述移动终端根据所述USB协议标识对所述第一应答进行解封,得到解封后的 第一应答,通讯成功。2. 根据权利要求1所述的方法,其特征在于,所述移动终端获取与所述智能密钥设备对 应的设备对象后,所述判断所述设备对象是否具有设备权限之前,还包括:判断所述设备对 象是否与预设厂商标识对应,如果是,则继续;否则,返回步骤s2。3. 根据权利要求1所述的方法,其特征在于,所述移动终端获取到与所述设备对象对应 的设备连接句柄和设备接口对象之后,根据所述设备接口对象获取与所述设备对象对应的 设备通讯端点之前,还包括:所述移动终端根据所述设备连接句柄通过控制传输端点获取 所述智能密钥设备的设备识别标识,判断所述设备识别标识是否是预设识别标识,如果是, 则继续;否则,返回步骤s2。4. 根据权利要求1所述的方法,其特征在于,所述步骤s2中还包括:所述移动终端采用 广播或者枚举的方式,监控是否有智能密钥设备拔出;当所述移动终端监控到智能密钥设 备拔出后,执彳丁步骤ml; 步骤ml:所述移动终端判断与所述智能密钥设备对应的设备对象是否存在对应的设备 连接句柄和设备通讯端点,如果是,则执行步骤m2;否则,执行步骤m3; 步骤m2:所述移动终端销毁与所述智能密钥设备对应的所述设备对象,及与其分别对 应的设备连接句柄和设备通讯端点; 步骤m3:所述移动终端销毁与所述智能密钥设备对应的所述设备对象。5. 根据权利要求1所述的方法,其特征在于,所述步骤s5之后还包括:所述移动终端生 成设备通讯句柄,将所述设备通讯句柄与所述设备连接句柄、所述设备通讯端点及所述设 备对象分别建立对应关系并保存; 所述步骤rl之前还包括:所述移动终端根据所述设备通讯句柄获取对应的所述设备对 象、所述设备连接句柄和所述设备通讯端点。6. 根据权利要求5所述的方法,其特征在于,所述s2中还包括:所
当前第5页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1