# lsusb -v
Bus 001 Device 003: ID 0801:0001 MagTek Mini Swipe Reader (Keyboard Emulation)
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 1.10
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x0801 MagTek
idProduct 0x0001 Mini Swipe Reader (Keyboard Emulation)
bcdDevice 1.00
iManufacturer 1 (error)
iProduct 2 (error)
iSerial 3 (error)
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 34
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
(Bus Powered)
MaxPower 100mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 3 Human Interface Device
bInterfaceSubClass 1 Boot Interface Subclass
bInterfaceProtocol 1 Keyboard
iInterface 0
HID Device Descriptor:
bLength 9
bDescriptorType 33
bcdHID 1.01
bCountryCode 0 Not supported
bNumDescriptors 1
bDescriptorType 34 Report
wDescriptorLength 76
Report Descriptors:
** UNAVAILABLE **
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0008 1x 8 bytes
bInterval 1
Device Status: 0x0000
(Bus Powered)
这是USB键盘仿真设备,因此,当您刷卡时,磁道1上的数据和2在屏幕上键入您当时打开的任何程序。
我正在尝试了解USB反向工程,因此我试图了解此设备如何将数据发送到我的计算机。电脑。刷卡并在屏幕上查看数据后,我尝试在USB请求中找到该数据,这些请求在计算机和设备之间来回传输。为此,我使用usbmon:
# cat /sys/kernel/debug/usb/usbmon/1u
我已经阅读了
usbmon
的输出,并且还尝试使用vusb-analyzer查看数据,但我找不到期望在数据流中看到的任何数据。以下是屏幕上的输出示例以及滑动旧的(不活动)ID后来自
usbmon
的输出的示例奥克兰大学的名片。屏幕输出:
%000127138,6361380000058657,SINGH,?;6361380000058657=123456789012?+000127138?
Usbmon输出:
ffff88008954e900 3348888805 C Ii:1:003:1 0:1 8 = 02002200 00000000
ffff88008954e900 3348888878 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348889671 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348889709 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348890693 C Ii:1:003:1 0:1 8 = 00002700 00000000
ffff88008954e900 3348890719 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348892689 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348892712 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348893689 C Ii:1:003:1 0:1 8 = 00002700 00000000
ffff88008954e900 3348893714 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348894689 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348894714 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348895688 C Ii:1:003:1 0:1 8 = 00002700 00000000
ffff88008954e900 3348895713 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348896662 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348896686 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348897689 C Ii:1:003:1 0:1 8 = 00001e00 00000000
ffff88008954e900 3348897714 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348898690 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348898715 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348899686 C Ii:1:003:1 0:1 8 = 00001f00 00000000
ffff88008954e900 3348899709 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348900687 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348900710 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348901692 C Ii:1:003:1 0:1 8 = 00002400 00000000
ffff88008954e900 3348901716 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348902689 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348902710 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348903689 C Ii:1:003:1 0:1 8 = 00001e00 00000000
ffff88008954e900 3348903711 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348904691 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348904713 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348905692 C Ii:1:003:1 0:1 8 = 00002000 00000000
ffff88008954e900 3348905719 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348906665 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348906697 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348907696 C Ii:1:003:1 0:1 8 = 00002500 00000000
ffff88008954e900 3348907726 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348908687 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348908716 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348909688 C Ii:1:003:1 0:1 8 = 00003600 00000000
ffff88008954e900 3348909717 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348910688 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348910717 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348911688 C Ii:1:003:1 0:1 8 = 00002300 00000000
ffff88008954e900 3348911717 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348912687 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348912705 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348913687 C Ii:1:003:1 0:1 8 = 00002000 00000000
ffff88008954e900 3348913706 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348914688 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348914706 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348915686 C Ii:1:003:1 0:1 8 = 00002300 00000000
ffff88008954e900 3348915705 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348916688 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348916715 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348917691 C Ii:1:003:1 0:1 8 = 00001e00 00000000
ffff88008954e900 3348917718 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348918691 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348918717 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348919690 C Ii:1:003:1 0:1 8 = 00002000 00000000
ffff88008954e900 3348919717 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348920694 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348920718 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348921693 C Ii:1:003:1 0:1 8 = 00002500 00000000
ffff88008954e900 3348921716 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348922663 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348922679 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348923692 C Ii:1:003:1 0:1 8 = 00002700 00000000
ffff88008954e900 3348923721 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348924659 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348924678 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348925660 C Ii:1:003:1 0:1 8 = 00002700 00000000
ffff88008954e900 3348925675 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348926659 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348926674 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348927662 C Ii:1:003:1 0:1 8 = 00002700 00000000
ffff88008954e900 3348927680 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348928675 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348928701 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348929688 C Ii:1:003:1 0:1 8 = 00002700 00000000
ffff88008954e900 3348929714 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348930687 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348930713 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348931688 C Ii:1:003:1 0:1 8 = 00002700 00000000
ffff88008954e900 3348931715 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348932689 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348932720 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348933677 C Ii:1:003:1 0:1 8 = 00002200 00000000
ffff88008954e900 3348933690 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348934676 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348934687 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348935680 C Ii:1:003:1 0:1 8 = 00002500 00000000
ffff88008954e900 3348935692 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348936664 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348936675 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348937663 C Ii:1:003:1 0:1 8 = 00002300 00000000
ffff88008954e900 3348937674 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348938664 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348938676 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348939664 C Ii:1:003:1 0:1 8 = 00002200 00000000
ffff88008954e900 3348939674 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348940661 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348940671 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348941660 C Ii:1:003:1 0:1 8 = 00002400 00000000
ffff88008954e900 3348941670 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348942661 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348942670 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348943673 C Ii:1:003:1 0:1 8 = 00003600 00000000
ffff88008954e900 3348943685 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348944676 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348944700 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348945675 C Ii:1:003:1 0:1 8 = 02001600 00000000
ffff88008954e900 3348945687 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348946661 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348946672 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348947661 C Ii:1:003:1 0:1 8 = 02000c00 00000000
ffff88008954e900 3348947673 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348948661 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348948672 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348949664 C Ii:1:003:1 0:1 8 = 02001100 00000000
ffff88008954e900 3348949677 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348950665 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348950676 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348951666 C Ii:1:003:1 0:1 8 = 02000a00 00000000
ffff88008954e900 3348951677 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348952666 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348952677 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348953666 C Ii:1:003:1 0:1 8 = 02000b00 00000000
ffff88008954e900 3348953678 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348954665 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348954677 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348956665 C Ii:1:003:1 0:1 8 = 00003600 00000000
ffff88008954e900 3348956680 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348957680 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348957696 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348958677 C Ii:1:003:1 0:1 8 = 02003800 00000000
ffff88008954e900 3348958692 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348959663 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348959678 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348960663 C Ii:1:003:1 0:1 8 = 00003300 00000000
ffff88008954e900 3348960674 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348961669 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348961699 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348962670 C Ii:1:003:1 0:1 8 = 00002300 00000000
ffff88008954e900 3348962697 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348963663 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348963678 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348964664 C Ii:1:003:1 0:1 8 = 00002000 00000000
ffff88008954e900 3348964676 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348965667 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348965678 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348966667 C Ii:1:003:1 0:1 8 = 00002300 00000000
ffff88008954e900 3348966678 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348967671 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348967681 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348968674 C Ii:1:003:1 0:1 8 = 00001e00 00000000
ffff88008954e900 3348968703 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348969673 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348969701 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348970670 C Ii:1:003:1 0:1 8 = 00002000 00000000
ffff88008954e900 3348970697 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348971672 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348971698 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348972676 C Ii:1:003:1 0:1 8 = 00002500 00000000
ffff88008954e900 3348972705 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348973678 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348973688 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348974668 C Ii:1:003:1 0:1 8 = 00002700 00000000
ffff88008954e900 3348974694 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348975669 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348975695 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348976667 C Ii:1:003:1 0:1 8 = 00002700 00000000
ffff88008954e900 3348976695 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348977670 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348977700 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348978669 C Ii:1:003:1 0:1 8 = 00002700 00000000
ffff88008954e900 3348978695 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348979670 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348979699 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348980669 C Ii:1:003:1 0:1 8 = 00002700 00000000
ffff88008954e900 3348980694 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348981674 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348981702 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348982678 C Ii:1:003:1 0:1 8 = 00002700 00000000
ffff88008954e900 3348982704 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348983687 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348983714 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348984682 C Ii:1:003:1 0:1 8 = 00002200 00000000
ffff88008954e900 3348984709 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348985675 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348985702 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348986679 C Ii:1:003:1 0:1 8 = 00002500 00000000
ffff88008954e900 3348986707 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348987682 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348987712 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348988685 C Ii:1:003:1 0:1 8 = 00002300 00000000
ffff88008954e900 3348988714 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348989679 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348989707 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348990678 C Ii:1:003:1 0:1 8 = 00002200 00000000
ffff88008954e900 3348990706 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348991686 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348991715 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348992686 C Ii:1:003:1 0:1 8 = 00002400 00000000
ffff88008954e900 3348992714 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348993681 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348993690 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348994667 C Ii:1:003:1 0:1 8 = 00002e00 00000000
ffff88008954e900 3348994692 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348995668 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348995684 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348996668 C Ii:1:003:1 0:1 8 = 00001e00 00000000
ffff88008954e900 3348996682 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348997670 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348997684 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348998713 C Ii:1:003:1 0:1 8 = 00001f00 00000000
ffff88008954e900 3348998750 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3348999678 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3348999709 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349000690 C Ii:1:003:1 0:1 8 = 00002000 00000000
ffff88008954e900 3349000721 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349001690 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3349001721 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349002689 C Ii:1:003:1 0:1 8 = 00002100 00000000
ffff88008954e900 3349002720 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349003692 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3349003724 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349004687 C Ii:1:003:1 0:1 8 = 00002200 00000000
ffff88008954e900 3349004717 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349005688 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3349005718 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349006687 C Ii:1:003:1 0:1 8 = 00002300 00000000
ffff88008954e900 3349006717 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349007675 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3349007701 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349008687 C Ii:1:003:1 0:1 8 = 00002400 00000000
ffff88008954e900 3349008715 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349009682 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3349009712 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349010681 C Ii:1:003:1 0:1 8 = 00002500 00000000
ffff88008954e900 3349010711 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349011681 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3349011710 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349012690 C Ii:1:003:1 0:1 8 = 00002600 00000000
ffff88008954e900 3349012719 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349013673 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3349013682 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349014697 C Ii:1:003:1 0:1 8 = 00002700 00000000
ffff88008954e900 3349014727 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349015678 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3349015706 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349016692 C Ii:1:003:1 0:1 8 = 00001e00 00000000
ffff88008954e900 3349016721 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349017699 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3349017727 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349018679 C Ii:1:003:1 0:1 8 = 00001f00 00000000
ffff88008954e900 3349018706 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349020676 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3349020703 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349021688 C Ii:1:003:1 0:1 8 = 02003800 00000000
ffff88008954e900 3349021720 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349022673 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3349022683 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349023676 C Ii:1:003:1 0:1 8 = 02002e00 00000000
ffff88008954e900 3349023706 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349024670 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3349024680 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349025670 C Ii:1:003:1 0:1 8 = 00002700 00000000
ffff88008954e900 3349025680 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349026671 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3349026679 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349027670 C Ii:1:003:1 0:1 8 = 00002700 00000000
ffff88008954e900 3349027678 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349028677 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3349028705 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349029681 C Ii:1:003:1 0:1 8 = 00002700 00000000
ffff88008954e900 3349029707 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349030680 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3349030706 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349031693 C Ii:1:003:1 0:1 8 = 00001e00 00000000
ffff88008954e900 3349031721 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349032680 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3349032707 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349033685 C Ii:1:003:1 0:1 8 = 00001f00 00000000
ffff88008954e900 3349033713 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349034681 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3349034707 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349035679 C Ii:1:003:1 0:1 8 = 00002400 00000000
ffff88008954e900 3349035706 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349036676 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3349036703 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349037690 C Ii:1:003:1 0:1 8 = 00001e00 00000000
ffff88008954e900 3349037718 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349038677 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3349038703 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349039691 C Ii:1:003:1 0:1 8 = 00002000 00000000
ffff88008954e900 3349039719 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349040677 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3349040704 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349041692 C Ii:1:003:1 0:1 8 = 00002500 00000000
ffff88008954e900 3349041720 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349042677 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3349042704 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349043690 C Ii:1:003:1 0:1 8 = 02003800 00000000
ffff88008954e900 3349043721 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349044684 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3349044698 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349045681 C Ii:1:003:1 0:1 8 = 00005800 00000000
ffff88008954e900 3349045710 S Ii:1:003:1 -115:1 8 <
ffff88008954e900 3349046682 C Ii:1:003:1 0:1 8 = 00000000 00000000
ffff88008954e900 3349046709 S Ii:1:003:1 -115:1 8 <
您可以看到,字符“ SINGH”(我的姓氏)出现在屏幕输出中,但是我无法在数据中的任何位置找到这些ASCII值。
编辑:
由于Igor的回答,我得到了报告描述符,但是我不确定如何使用它们:
Report Descriptor: (length is 76)
Item(Global): Usage Page, data= [ 0x01 ] 1
Generic Desktop Controls
Item(Local ): Usage, data= [ 0x06 ] 6
Keyboard
Item(Main ): Collection, data= [ 0x01 ] 1
Application
Item(Global): Usage Page, data= [ 0x07 ] 7
Keyboard
Item(Local ): Usage Minimum, data= [ 0xe0 ] 224
Control Left
Item(Local ): Usage Maximum, data= [ 0xe7 ] 231
GUI Right
Item(Global): Logical Minimum, data= [ 0x00 ] 0
Item(Global): Logical Maximum, data= [ 0x01 ] 1
Item(Global): Report Size, data= [ 0x01 ] 1
Item(Global): Report Count, data= [ 0x08 ] 8
Item(Main ): Input, data= [ 0x02 ] 2
Data Variable Absolute No_Wrap Linear
Preferred_State No_Null_Position Non_Volatile Bitfield
Item(Global): Report Count, data= [ 0x01 ] 1
Item(Global): Report Size, data= [ 0x08 ] 8
Item(Main ): Input, data= [ 0x03 ] 3
Constant Variable Absolute No_Wrap Linear
Preferred_State No_Null_Position Non_Volatile Bitfield
Item(Global): Report Count, data= [ 0x05 ] 5
Item(Global): Report Size, data= [ 0x01 ] 1
Item(Global): Usage Page, data= [ 0x08 ] 8
LEDs
Item(Local ): Usage Minimum, data= [ 0x01 ] 1
NumLock
Item(Local ): Usage Maximum, data= [ 0x05 ] 5
Kana
Item(Main ): Output, data= [ 0x02 ] 2
Data Variable Absolute No_Wrap Linear
Preferred_State No_Null_Position Non_Volatile Bitfield
Item(Global): Report Count, data= [ 0x01 ] 1
Item(Global): Report Size, data= [ 0x03 ] 3
Item(Main ): Output, data= [ 0x03 ] 3
Constant Variable Absolute No_Wrap Linear
Preferred_State No_Null_Position Non_Volatile Bitfield
Item(Global): Report Count, data= [ 0x06 ] 6
Item(Global): Report Size, data= [ 0x08 ] 8
Item(Global): Logical Minimum, data= [ 0x00 ] 0
Item(Global): Logical Maximum, data= [ 0x66 ] 102
Item(Global): Usage Page, data= [ 0x07 ] 7
Keyboard
Item(Local ): Usage Minimum, data= [ 0x00 ] 0
No Event
Item(Local ): Usage Maximum, data= [ 0x66 ] 102
Power (not a key)
Item(Main ): Input, data= [ 0x00 ] 0
Data Array Absolute No_Wrap Linear
Preferred_State No_Null_Position Non_Volatile Bitfield
Item(Global): Logical Maximum, data= [ 0xff 0x00 ] 255
Item(Global): Usage Page, data= [ 0x00 0xff ] 65280
(null)
Item(Local ): Usage, data= [ 0x20 ] 32
(null)
Item(Global): Report Count, data= [ 0x18 ] 24
Item(Main ): Feature, data= [ 0x02 0x01 ] 258
Data Variable Absolute No_Wrap Linear
Preferred_State No_Null_Position Non_Volatile Buffered Bytes
Item(Main ): End Collection, data=none
#1 楼
由于它使用HID类,因此您可能应该从USB.org检查USB HID规范。相关部分似乎是第8节“报告协议”:8.1报告类型报告包含一个或多个项目的数据。数据传输以报告的形式通过Interrupt In管道从设备发送到主机。还可以请求(轮询)报告,并通过控制管道发送报告,或通过可选的
中断输出管道发送报告。报告包含属于特定报告ID的所有项目的状态(输入,输出或功能)。
软件应用程序负责根据报告描述符从报告中提取单个
项目。
Ii
在usbmon日志中请参阅“中断输入”。 ,因此这些是设备的“报告”。看起来数据包中变化的字节(例如22、27、1e,1f)对应于键盘键。似乎要弄清楚映射,您需要解析“报告描述符”,如果您首先分离默认驱动程序,则可以通过lsusb
完成。
评论
因此,我可以通过分离usbhid驱动程序来获取报告描述符。我已经用这些描述符更新了我的问题。如何使用这些来解析usbmon数据?
–gsingh2011
2013年12月21日在0:39
我想到了。我需要了解lsusb输出的所有描述都在您链接到的HID文档中(在第6.2.2节附近)。在usbmon输出中,每个请求看到8个字节的数据。第一个字节告诉您设置了哪些修饰键。下一个字节被保留。以下字节告诉您按下了哪些键。但是数字并不对应于键码,而是可以在此处的键盘部分找到的使用ID:usb.org/developers/devclass_docs/Hut1_12v2.pdf。如果您可以使用某些信息来更新您的答案,那将是很好的。
–gsingh2011
2013年12月22日下午16:30