
这次,咱们将运用一个示波器来剖析电信号,看看USB键盘是怎么作业的。首要,衔接USB键盘之前的示波器显现两条信号线,“D+(黄色)”和“D-(绿色)”。

当将戴尔USB键盘刺进示波器时,D+坚持相对较低,但D-移动到更高的方位。

低D+和高D-标明USB键盘在“低速”下处于闲暇状况。

换句话说,这种信号改动标明USB键盘已衔接到设备,而且衔接处于低速状况。

当测验衔接另一个USB键盘时,这似乎是“高速(最大传输速度为480Mbps)”,D+移动到高方位,D-移动到低方位。

按下一个键不会改动示波器波形,因为USB键盘通讯能够从PC端开端。但这一次,将它衔接到一根独特的电缆上,以便示波器能够反射来自USB键盘的信号。

然后在示波器上发生信号。

缩放时看起来像这样。

将缩放后的波形记载为屏幕截图,以详细剖析波形

在Photoshop中兼并。

当把它打印在纸上时,它看起来像这样。

大多数部件的波形向相反方向移动,例如“D+高,D-低”或“D+低,D-高”,但在某些当地“D+低,D-也低”。有一个部分在状况中。

这是一个称为单端零(SE0)的条件。

当SE0显现在波形中时,它看起来像这样。

听说SE0继续2位的现实标明“数据包完结”

能够看到此波形包括三个首要数据包。

此外,D+为低且D-为高的状况称为“J状况”,D+为高且D-为低的状况称为“K状况”

假如为每个位输入J状况和K状况,则如下所示。

J状况在数据包完结后继续一段时间,K状况是数据包的起点。起先,它总是以形式“KJKJKJKK”最初,但因为这显现了信号的同步部分,称为“同步数据包”,因而实践数据包括在后续部分中。

数据包中的数据由重复的“0”和“1”标明,但此波形并不意味着“K”或“J”对应于“0”或“1”。在此波形中,“与前一个状况不同=0”和“与前一个状况相同=1”,而且榜首个“KJKJKJ”周围的“K”KK“是”1”。'.您能够将0和1分配给下一个“J”作为“0”,将下一个“K”指定为“0”,将下一个“K”指定为“1”,依此类推。

当手动解密数据包时,发现榜首个数据包标明设备ID输入指令“IN”,USB键盘设备ID“24”和承认指令。

下一个数据包看起来像这样很长一段时间。它是一个数据输入指令“DATA0”,8位数据“00”“00”“00”“00”“00”“00”“00”“00”“00”“00”和一个承认指令。

最终一个数据包是要发送的数据的承认数据包。

这儿重要的是第二个数据包“00”“00”“00”“00”“00”“00”“00”“00”“00”“00”,这意味着“没有密钥”。没有按它。'

现在,将USB键盘衔接到更杂乱的示波器,并在按下某个键时检查数据包。

衔接并调整后,手动解码的数据包现在直接显现在示波器上。未按下键时的数据包仍然是'00''00''00''00''00''00''00''00''00''00'10100''00''00''00''00''00''00''00''00''00''00''00''00''00''00''00''00''00'0

当您按“Windows键”,“Shift键”,“Ctrl键”等时,榜首个位将更改为对应于每个键的值。例如,“Ctrl键”显现为“01”,“Alt键”显现为“04”。

当一起按下多个键时,将显现与每个键对应的值的总和,而且能够确认一起按下哪个键。这一次,因为一起按下了“Ctrl键”和“Alt键”,因而显现“05”,即“01”和“04”的总和。

最初的第二位不用于任何事情,而且一直处于“00”状况,其他键(如“A”和“B”)显现为其他6位的组合。

当按下多个键时,6位中的每一个都选用不同的值,而且能够辨认出最多6个键“一起按下”。Eater标明,这种输入键的辨认才能因USB键盘的功能而异,因而依据目标的不同,能够经过一起按更多键来辨认。

本文暂无评论 - 欢迎您