CN102289607A - Usb装置验证***及方法 - Google Patents

Usb装置验证***及方法 Download PDF

Info

Publication number
CN102289607A
CN102289607A CN2010102020213A CN201010202021A CN102289607A CN 102289607 A CN102289607 A CN 102289607A CN 2010102020213 A CN2010102020213 A CN 2010102020213A CN 201010202021 A CN201010202021 A CN 201010202021A CN 102289607 A CN102289607 A CN 102289607A
Authority
CN
China
Prior art keywords
usb device
attribute information
usb
module
deciphering
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.)
Pending
Application number
CN2010102020213A
Other languages
English (en)
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.)
Hongfujin Precision Industry Shenzhen Co Ltd
Hon Hai Precision Industry Co Ltd
Original Assignee
Hongfujin Precision Industry Shenzhen Co Ltd
Hon Hai Precision Industry 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 Hongfujin Precision Industry Shenzhen Co Ltd, Hon Hai Precision Industry Co Ltd filed Critical Hongfujin Precision Industry Shenzhen Co Ltd
Priority to CN2010102020213A priority Critical patent/CN102289607A/zh
Publication of CN102289607A publication Critical patent/CN102289607A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

一种USB装置验证方法,该方法包括以下步骤:当USB装置注册到操作***时,在操作***的内核层中开启USB装置的驱动文件以取得该USB装置的使用权,并锁定该USB装置;通过计算机内存储的随机函数,生成一个随机数;通过计算机内存储的加密函数,对随机数进行加密得到一把金钥;生成一个读取命令,发送给USB装置,以读取该USB装置上的属性信息;接收从USB装置上发送过来的属性信息的密码文件,利用所述金钥对所述USB装置传送过来的密码文件进行解密;当所述解密的属性信息与计算机存储的属性信息进行一致时,判定该USB装置通过验证。利用本方法可以对USB装置进行验证。本发明还提供一种USB装置验证***。

Description

USB装置验证***及方法
技术领域
本发明涉及一种验证***及方法,尤其涉及一种USB装置验证***及方法。
背景技术
USB(Universal Serial Bus:通用串行总线)装置运用越来越广泛,例如,USB保护锁、数字硬盘音乐播放器(例如,MP3、MP4等)、存储卡等。
通常,为了保护计算机,用户在使用USB装置时,计算机会对USB装置进行验证,以确认与计算机相连的USB装置是否有与该计算机进行数据交互的权限,例如,USB保护锁连接到计算机,该计算机验证该USB保护锁是否是正版的。目前,对USB装置进行验证都在操作***的客户模式(user-mode)下进行,此种方法由于操作***的关系,黑客可轻易取得其内存数据与拦截验证流程以供分析,使验证的准确性降低。
发明内容
鉴于以上内容,有必要提供一种USB装置验证***,其在操作***的内核层对USB装置进行验证,并利用加解密算法,对计算机与USB装置之间进行通信的数据进行加密,提高了验证的精确度。
鉴于以上内容,还有必要提供一种USB装置验证方法,其在操作***的内核层对USB装置进行验证,并利用加解密算法,对计算机与USB装置之间进行通信的数据进行加密,提高了验证的精确度。
一种USB装置验证***,运行于计算机中,该***包括:开启模块,用于当USB装置注册到操作***时,在操作***的内核层中开启USB装置的驱动文件以取得该USB装置的使用权,并锁定该USB装置;生成模块,用于通过计算机内存储的随机函数,生成一个随机数;加密模块,用于通过计算机内存储的加密函数,对随机数进行加密得到一把金钥;发送模块,用于生成一个读取命令,发送给USB装置,以读取该USB装置上的属性信息;解密模块,用于接收从USB装置上发送过来的属性信息的密码文件,利用所述金钥对所述USB装置传送过来的密码文件进行解密;解锁模块,用于当所述解密的属性信息与计算机内存储的属性信息一致时判定该USB装置通过验证。
一种USB装置验证方法,该方法包括以下步骤:当USB装置注册到操作***时,在操作***的内核层中开启USB装置的驱动文件以取得该USB装置的使用权,并锁定该USB装置;通过计算机内存储的随机函数,生成一个随机数;通过计算机内存储的加密函数,对随机数进行加密得到一把金钥;生成一个读取命令,发送给USB装置,以读取该USB装置上的属性信息;接收从USB装置上发送过来的属性信息的密码文件,利用所述金钥对所述USB装置传送过来的密码文件进行解密;当所述解密的属性信息与计算机存储的属性信息进行一致时,判定该USB装置通过验证。
相较于现有技术,所述的USB装置验证***及方法,其在操作***的内核层对USB装置进行验证,并利用加解密算法,对计算机与USB装置之间进行通信的数据进行加密,提高了验证的精确度。
附图说明
图1是本发明USB装置验证***的运行环境图。
图2是本发明USB装置验证***较佳实施例的功能模块图。
图3是本发明USB装置验证方法较佳实施例的流程图。
主要元件符号说明
  USB装置   10
  计算机   20
  USB装置验证***   200
  开启模块   201
  生成模块  202
  加密模块  203
  发送模块  204
  解密模块  205
  判断模块  206
  解锁模块  207
具体实施方式
如图1所示,是本发明USB装置验证***的运行环境图。该运行环境图包括USB装置10及计算机20。其中,所述USB装置10与计算机20相连接,该USB装置10可以是USB保护锁、数字硬盘音乐播放器(例如,MP3、MP4等)、存储卡或其它通过USB与计算机20连接的可存储装置。在本较佳实施例中,所述的USB装置10为USB保护锁。
所述计算机20包括USB装置验证***200,该***200用于验证与计算机20连接的USB装置10。当USB装置10与计算机20连接时,计算机20中的操作***(如,Windows 7、Windows Vista及WindowsXP)通过AddDevice()函数判断该USB装置10是否注册到操作***的注册表中,若USB装置10注册到操作***的注册表中,则启动USB装置验证***200以对该USB装置10进行验证。具体内容会在图2中做详细描述。所述计算机20可以是个人计算机、网络消息发送服务器,还可以是任意其它适用的计算机。此外,该计算机20上还存储有加密函数。所述加密函数用于生成金钥,该金钥用于将USB装置10传送过来的加密数据(例如,文件)进行解码。在本较佳实施例中,所述的加密函数为Hashing及MD5。
如图2所示,是本发明USB装置验证***200较佳实施例的功能模块图。该USB装置验证***200包括开启模块201、生成模块202、加密模块203、发送模块204、解密模块205、判断模块206及解锁模块207。本发明所称的模块是完成一特定功能的计算机程序段,比程序更适合于描述软件在计算机中的执行过程,因此在本发明以下对软件描述中都以模块描述。
所述开启模块201用于当USB装置10注册到操作***时,在操作***的内核层中开启USB装置10的驱动文件以取得该USB装置10的使用权,并锁定该USB装置10。具体而言,锁定USB装置10的目的在于对USB装置10进行验证期间,不允许其它装置、设备及***对该USB装置10进行操作。所述操作***的内核层位于整个操作***的最底层,负责***的基本运作,在这一层中的所有行为都由操作***内置的指令来实现,所有外界因素都不会对这一层的行为造成影响。
所述生成模块202用于通过计算机20内存储的随机函数,生成一个随机数。随机函数产生随机数的目的在于让破解者无法预期该随机数,在本较佳实施例中,所述的随机函数为Win32CryptoAPI(<wincrypt.h>)。具体而言,所述随机函数根据计算机20中CPU的TICK值、日期及时间,可生成一个随机数。
所述加密模块203用于通过计算机20内存储的加密函数,对随机数进行加密得到一把金钥。在本较佳实施例中,所述加密模块203通过所述的Hashing及MD5对所述随机数进行加密,从而得到该金钥。
所述发送模块204用于生成一个读取命令,发送给USB装置10,以读取该USB装置10上的属性信息。在本较佳实施例中,所述属性信息包括USB装置10的版本号、序列号、类型、型号、出厂日期及制造商名称等信息。USB装置10在接到读取命令时,执行该读取命令,并将读取的属性信息通过高级加密标准(Advanced Encryption Standard,AES)算法或数据加密算法(Data Encryption Algorithm,DEA)加密成密码文件,之后将该密码文件传送给计算机20。
所述解密模块205用于接收从USB装置10上发送过来的属性信息的密码文件,利用所述金钥对所述USB装置10传送过来的密码文件进行解密。
所述判断模块206用于判断所述解密的属性信息是否合格。判断模块206判断所述解密的属性信息与是否合格的方式是:将所述解密的属性信息与计算机20存储的属性信息进行进行对比,若一致,则验证所述解密的属性信息合格,若不一致,则验证所述解密的属性信息不合格。
所述解锁模块207用于当所述解密的属性信息合格时,判定该USB装置10通过验证,对该USB装置的解锁,并将上述解密的属性信息写入到该USB装置的驱动文件中。在解锁之后,其它设备、装置或***可以直接读取该USB装置10中的数据。
如图3所示,是本发明USB装置验证方法较佳实施例的流程图。
步骤S10,当USB装置10注册到操作***时,开启模块201在操作***的内核层中开启USB装置10的驱动文件以取得该USB装置10的使用权,并锁定该USB装置10。锁定USB装置10的目的在于对USB装置10进行验证期间,不允许其它装置、设备及***对该USB装置10进行操作。
步骤S11,生成模块202通过计算机20内存储的随机函数,生成一个随机数。通过一个随机函数产生随机数的目的在于让破解者无法预期该随机数,在本较佳实施例中,所述的随机函数为Win32CryptoAPI(<wincrypt.h>)。具体而言,所述随机函数根据计算机20中CPU的TICK值、日期及时间,可生成一个随机数。
步骤S12,加密模块203通过计算机20内存储的加密函数,对随机数进行加密得到一把金钥。在本较佳实施例中,所述加密模块203通过所述的Hashing及MD5对所述随机数进行加密,从而得到该金钥。
步骤S13,发送模块204生成一个读取命令,发送给USB装置10,以读取该USB装置10上的属性信息。在本较佳实施例中,所述属性信息包括USB装置10的版本号、序列号、类型、型号、出厂日期及制造商名称等信息。USB装置10在接到读取命令时,执行该读取命令,并将读取的属性信息通过高级加密标准(Advanced Encryption Standard,AES)算法或数据加密算法(Data Encryption Algorithm,DEA)加密成密码文件,之后将该密码文件传送给计算机20。
步骤S14,解密模块205接收从USB装置10上发送过来的属性信息的密码文件,利用所述金钥对所述USB装置10传送过来的密码文件进行解密。
步骤S15,判断模块206判断所述解密的属性信息是否合格。判断模块206判断所述解密的属性信息与是否合格的方式是:将所述解密的属性信息与计算机20存储的属性信息进行进行对比,若一致,则验证所述解密的属性信息合格,若不一致,则验证所述解密的属性信息不合格。当所述解密的属性信息合格时,进入步骤S16。当所述解密的属性信息不合格,直接结束流程。
步骤S16,解锁模块207判定该USB装置10通过验证,对该USB装置的解锁,并将上述解密的属性信息写入到该USB装置的驱动文件中。在解锁之后,其它设备、装置或***可以直接读取该USB装置10中的数据。
另外,所述验证方法可以被广泛应用于桌上型电脑和笔记本电脑中的各类USB装置的验证,并且兼容不同的操作***,如Windows 7、Windows Vista及Windows XP。
最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照以上较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。

Claims (10)

1.一种USB装置验证***,运行于计算机中,其特征在于,该***包括:
开启模块,用于当USB装置注册到操作***时,在操作***的内核层中开启USB装置的驱动文件以取得该USB装置的使用权,并锁定该USB装置;
生成模块,用于通过计算机内存储的随机函数,生成一个随机数;
加密模块,用于通过计算机内存储的加密函数,对随机数进行加密得到一把金钥;
发送模块,用于生成一个读取命令,发送给USB装置,以读取该USB装置上的属性信息;
解密模块,用于接收从USB装置上传送过来的属性信息的密码文件,利用所述金钥对所述USB装置传送过来的密码文件进行解密;及
解锁模块,用于当所述解密的属性信息与计算机内存储的属性信息一致时判定该USB装置通过验证。
2.如权利要求1所述的USB装置验证***,其特征在于,所述加密函数为Hashing及MD5。
3.如权利要求1所述的USB装置验证***,其特征在于,所述属性信息包括USB装置的版本号、序列号、类型、型号、出厂日期及制造商名称。
4.如权利要求1所述的USB装置验证***,其特征在于,所述USB装置包括USB保护锁、数字硬盘音乐播放器及存储卡。
5.如权利要求1所述的USB装置验证***,其特征在于,所述解锁模块还用于在该USB装置通过验证后将上述解密的属性信息写入到该USB装置的驱动文件中,对该USB装置进行解锁。
6.一种USB装置验证方法,其特征在于,该方法包括以下步骤:
当USB装置注册到操作***时,在操作***的内核层中开启USB装置的驱动文件以取得该USB装置的使用权,并锁定该USB装置;
通过计算机内存储的随机函数,生成一个随机数;
通过计算机内存储的加密函数,对随机数进行加密得到一把金钥;
生成一个读取命令,发送给USB装置,以读取该USB装置上的属性信息;
接收从USB装置上传送过来的属性信息的密码文件,利用所述金钥对所述USB装置传送过来的密码文件进行解密;及
当所述解密的属性信息与计算机存储的属性信息进行一致时,判定该USB装置通过验证。
7.如权利要求6所述的USB装置验证方法,其特征在于,所述加密函数为Hashing及MD5。
8.如权利要求6所述的USB装置验证方法,其特征在于,所述属性信息包括USB装置的版本号、序列号、类型、型号、出厂日期及制造商名称。
9.如权利要求6所述的USB装置验证方法,其特征在于,所述USB装置包括USB保护锁、数字硬盘音乐播放器及存储卡。
10.如权利要求6所述的USB装置验证方法,其特征在于,在验证该USB装置通过验证后,该方法还包括步骤:
将上述解密的属性信息写入到该USB装置的驱动文件中,解开该USB装置。
CN2010102020213A 2010-06-17 2010-06-17 Usb装置验证***及方法 Pending CN102289607A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2010102020213A CN102289607A (zh) 2010-06-17 2010-06-17 Usb装置验证***及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2010102020213A CN102289607A (zh) 2010-06-17 2010-06-17 Usb装置验证***及方法

Publications (1)

Publication Number Publication Date
CN102289607A true CN102289607A (zh) 2011-12-21

Family

ID=45336028

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010102020213A Pending CN102289607A (zh) 2010-06-17 2010-06-17 Usb装置验证***及方法

Country Status (1)

Country Link
CN (1) CN102289607A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104331647A (zh) * 2014-10-22 2015-02-04 成都西可科技有限公司 一种基于密码的usb访问控制方法
CN106331337A (zh) * 2016-08-22 2017-01-11 北京小米移动软件有限公司 终端外设的启动方法及装置
CN108830070A (zh) * 2014-02-28 2018-11-16 Ncr公司 无人参与且安全的设备授权
CN111291356A (zh) * 2020-03-03 2020-06-16 Oppo广东移动通信有限公司 安全风险控制方法及相关产品
CN111709005A (zh) * 2020-04-28 2020-09-25 广州朗国电子科技有限公司 一体机教育白板的解锁方法、装置、存储介质及一体机
CN112052201A (zh) * 2020-09-27 2020-12-08 中孚安全技术有限公司 一种基于Linux内核层实现的USB设备管控方法与***

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1834977A (zh) * 2006-03-23 2006-09-20 李岳 一种基于usb设备的认证保护方法
CN101030176A (zh) * 2007-04-06 2007-09-05 北京理工大学 一种基于双usb密钥设备的usb接口锁
CN101102574A (zh) * 2007-08-14 2008-01-09 华为技术有限公司 终端验证方法和装置
US20080244734A1 (en) * 2007-03-30 2008-10-02 Sony Corporation Information processing apparatus and method, program, and information processing system
CN101662469A (zh) * 2009-09-25 2010-03-03 浙江维尔生物识别技术股份有限公司 基于USBKey网上银行交易信息认证的方法和***

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1834977A (zh) * 2006-03-23 2006-09-20 李岳 一种基于usb设备的认证保护方法
US20080244734A1 (en) * 2007-03-30 2008-10-02 Sony Corporation Information processing apparatus and method, program, and information processing system
CN101030176A (zh) * 2007-04-06 2007-09-05 北京理工大学 一种基于双usb密钥设备的usb接口锁
CN101102574A (zh) * 2007-08-14 2008-01-09 华为技术有限公司 终端验证方法和装置
CN101662469A (zh) * 2009-09-25 2010-03-03 浙江维尔生物识别技术股份有限公司 基于USBKey网上银行交易信息认证的方法和***

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108830070A (zh) * 2014-02-28 2018-11-16 Ncr公司 无人参与且安全的设备授权
CN104331647A (zh) * 2014-10-22 2015-02-04 成都西可科技有限公司 一种基于密码的usb访问控制方法
CN106331337A (zh) * 2016-08-22 2017-01-11 北京小米移动软件有限公司 终端外设的启动方法及装置
CN106331337B (zh) * 2016-08-22 2019-11-08 北京小米移动软件有限公司 终端外设的启动方法及装置
CN111291356A (zh) * 2020-03-03 2020-06-16 Oppo广东移动通信有限公司 安全风险控制方法及相关产品
CN111291356B (zh) * 2020-03-03 2023-01-24 Oppo广东移动通信有限公司 安全风险控制方法及相关产品
CN111709005A (zh) * 2020-04-28 2020-09-25 广州朗国电子科技有限公司 一体机教育白板的解锁方法、装置、存储介质及一体机
CN112052201A (zh) * 2020-09-27 2020-12-08 中孚安全技术有限公司 一种基于Linux内核层实现的USB设备管控方法与***

Similar Documents

Publication Publication Date Title
CN102138300B (zh) 消息认证码预计算在安全存储器中的应用
CN102156843B (zh) 数据加密方法与***以及数据解密方法
CN1234081C (zh) 利用bios通过身份认证实现安全访问硬盘的方法
CN102118512A (zh) 一种手机应用程序防破解方法及***
CN101968834A (zh) 电子产品的防抄板加密方法和装置
CN108363929B (zh) 一种存储设备信息消除报告生成和防篡改***及方法
CN101369889A (zh) 一种对文档进行电子签名的***和方法
CN102289607A (zh) Usb装置验证***及方法
CN101650693A (zh) 一种移动硬盘的安全控制方法及安全移动硬盘
CN103684786A (zh) 数字证书的存储与硬件载体绑定的方法及***
CN116633555A (zh) 一种用于终端设备数据采集交互的方法及***
CN109145639A (zh) 文件加密方法、解密方法及装置
CN116522358A (zh) 数据加密方法、装置、计算设备及存储介质
US8745375B2 (en) Handling of the usage of software in a disconnected computing environment
CN105512520B (zh) 一种反克隆的车载***及其工作方法
CN104077243A (zh) Sata硬盘设备加密方法及***
CN110008724B (zh) 固态硬盘控制器安全加载方法、装置及存储介质
CN114816549B (zh) 一种保护bootloader及其环境变量的方法及***
CN103377327A (zh) Php程序保护方法及***
CN100464341C (zh) 基于可信计算技术的数字内容使用痕迹的产生与管理方法
CN106650329A (zh) 一种数据导出设备的个体授权方法
CN109858217B (zh) 电子档案真实性验证方法及***
CN107070648A (zh) 一种密钥保护方法及pki***
CN102087689B (zh) 一种软件重用模块的保护方法及装置
CN102236754B (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
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20111221