当前位置: 首页 > news >正文

xbox one controller DSLogic 逻辑分析仪截包


为什么不用bus hound?为什么不用wireshare+usbpcap?

那是因为xbox one controller和xbox360 controller 一样,是很特殊的。它一样也是使用了很独立的desc和configuration, 甚至没有HID desc, 和xbox360的controller一样也没有report…

一插上xboxone controller会产生三个设备, 使用bus hound截包如下:

Bus Hound 6.01 capture on Windows Vista (x64). Complements of www.perisoft.netDevice - Device ID (followed by the endpoint for USB devices)(52) Generic SuperSpeed USB Hub(53) Generic USB Hub(54) Xbox Gaming Device(55) USB Input Device(56) XINPUT compatible HID deviceTime   - Time the phase occurred in hour:minute:second.millisec formLength - Total transfer lengthPhase  - Phase TypeCTL   USB control transfer       IN    Data in transfer           OUT   Data out transfer          RESET bus reset                  ok    command complete           Data   - Hex dump of the data transferredDescr  - Description of the phaseCmd... - Position in the captured dataDevice  Time          Length    Phase  Data                                                                                                    Description                       Cmd.Phase.Ofs(rep)
------  ------------  --------  -----  ------------------------------------------------------------------------------------------------------  --------------------------------  ------------------54.0  10:15:35.229            CTL    80 06 00 01  00 00 12 00                                                                                GET DESCRIPTOR                           3.1.0        54.0  10:15:35.229        18  IN     12 01 00 02  ff ff ff 40  c1 11 01 20  08 01 00 02  03 01                                               .......@... ......                       3.2.0        54.0  10:15:35.229            CTL    80 06 00 02  00 00 09 00                                                                                GET DESCRIPTOR                           4.1.0        54.0  10:15:35.229         9  IN     09 02 60 00  03 01 00 a0  fa                                                                            ..`......                                4.2.0        54.0  10:15:35.229            CTL    80 06 00 02  00 00 60 00                                                                                GET DESCRIPTOR                           5.1.0        54.0  10:15:35.229        96  IN     09 02 60 00  03 01 00 a0  fa 09 04 00  00 02 ff 47  d0 00 07 05  02 03 40 00  04 07 05 82  03 40 00 04  ..`............G......@......@..         5.2.0        09 04 01 00  00 ff 47 d0  00 09 04 01  01 02 ff 47  d0 00 07 05  03 01 e4 00  01 07 05 83  01 e4 00 01  ......G........G................         5.2.32       09 04 02 00  00 ff 47 d0  00 09 04 02  01 02 ff 47  d0 00 07 05  01 02 40 00  00 07 05 81  02 40 00 00  ......G........G......@......@..         5.2.64       54.0  10:15:35.229            CTL    80 00 00 00  00 00 02 00                                                                                GET STATUS                               6.1.0        54.0  10:15:35.230         2  IN     02 00                                                                                                   ..                                       6.2.0        54.0  10:15:35.230            CTL    00 09 01 00  00 00 00 00                                                                                SET CONFIG                               7.1.0        54    10:15:35.232            RESET                                                                                                                                                   8.1.0        54    10:15:35.384            ok                                                                                                                                                      8.2.0        54.2  10:15:35.388        32  IN     02 20 01 1c  01 ae 23 68  ac 52 00 00  c1 11 01 20  01 00 02 00  66 00 02 00  02 0e 01 00  01 00 01 00  . ....#h.R..... ....f...........        11.1.0        54.2  10:15:35.411         4  OUT    04 20 01 00                                                                                             . ..                                    12.1.0        54.2  10:15:35.415        64  IN     04 f0 01 3a  8b 02 10 00  01 00 00 00  00 00 00 00  00 00 00 00  0b 01 87 00  16 00 1b 00  1c 00 23 00  ...:..........................#.        13.1.0        29 00 46 00  00 00 00 00  00 00 00 00  01 01 00 02  00 00 06 01  02 03 04 06  07 05 01 04  05 06 0a 01  ).F.............................        13.1.32       54.2  10:15:35.419        13  OUT    01 20 01 09  00 04 20 3a  00 00 00 d1  00                                                               . .... :.....                           14.1.0        54.2  10:15:35.423        64  IN     04 a0 01 ba  00 3a 1a 00  57 69 6e 64  6f 77 73 2e  58 62 6f 78  2e 49 6e 70  75 74 2e 47  61 6d 65 70  .....:..Windows.Xbox.Input.Gamep        15.1.0        61 64 04 56  ff 76 97 fd  9b 81 45 ad  45 b6 45 bb  a5 26 d6 2c  40 2e 08 df  07 e1 45 a5  ab a3 12 7a  ad.V.v....E.E.E..&.,@.....E....z        15.1.32       54.2  10:15:35.427        64  IN     04 a0 01 ba  00 74 f1 97  b5 e7 1f f3  b8 86 73 e9  40 a9 f8 2f  21 26 3a cf  b7 fe d2 dd  ec 87 d3 94  .....t........s.@../!&:.........        16.1.0        42 bd 96 1a  71 2e 3d c7  7d 05 17 00  20 20 00 01  00 10 00 00  00 00 00 00  00 00 00 00  00 00 00 00  B...q.=.....  ..................        16.1.32       54.2  10:15:35.431        64  IN     04 a0 01 3a  ae 01 00 17  00 09 09 00  01 00 08 00  00 00 00 00  00 00 00 00  00 00 00 00  00 00 17 00  ...:............................        17.1.0        10 3c 00 01  00 10 00 00  00 00 00 00  00 00 00 00  00 00 00 00  00 17 00 0f  3c 00 01 00  08 00 00 00  .<......................<.......        17.1.32       54.2  10:15:35.435        41  IN     04 b0 01 23  e8 01 00 00  00 00 00 00  00 00 00 00  00 00 17 00  22 3c 00 01  00 18 00 00  00 00 00 00  ...#................"<..........        18.1.0        00 00 00 00  00 00 00 00  00                                                                            .........                               18.1.32       54.2  10:15:35.439        13  OUT    01 20 01 09  00 04 20 0b  01 00 00 00  00                                                               . .... ......                           19.1.0        54.2  10:15:35.443         6  IN     04 a0 01 00  8b 02                                                                                      ......                                  20.1.0        54.2  10:15:35.475        19  OUT    05 20 02 0f  06 00 00 00  00 00 00 55  53 00 00 00  00 00 00                                            . .........US......                     21.1.0        54.2  10:15:35.479         5  OUT    05 20 03 01  00                                                                                         . ...                                   22.1.0        54.2  10:15:35.483         7  OUT    0a 20 04 03  00 01 14                                                                                   . .....                                 23.1.0        54.2  10:15:35.483         8  IN     03 20 01 04  80 00 00 00                                                                                . ......                                24.1.0        54.2  10:15:35.487        36  IN     20 00 01 20  00 00 00 00  00 00 6a 02  00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00   .. ......j.....................        25.1.0        00 00 00 00                                                                                             ....                                    25.1.32       54.2  10:15:35.536        62  OUT    06 30 01 3a  00 41 00 01  00 2c 01 01  00 28 42 44  d5 82 66 7e  88 88 49 34  7f 89 cc 87  d3 d4 e0 cb  .0.:.A...,...(BD..f...I4........        26.1.0        e8 96 12 98  59 5d b0 1e  d8 d2 5f 3d  e8 d8 00 00  00 00 45 7b  af e9 00 00  00 00 00 00  00 00        ....Y]...._=......E...........          26.1.32       54.2  10:15:35.548        13  IN     01 20 01 09  00 06 30 3a  00 00 00 3a  00                                                               . ....0:...:.                           27.1.0        54.2  10:15:35.568        10  IN     06 30 01 06  00 c1 00 01  00 00                                                                         .0........                              28.1.0        54.2  10:15:35.572        13  OUT    01 20 01 09  00 06 20 06  00 00 00 00  00                                                               . .... ......                           29.1.0        54.2  10:15:35.616        18  OUT    06 30 02 0e  00 42 00 02  00 54 00 00  00 00 00 00  00 00                                               .0...B...T........                      30.1.0        54.2  10:15:35.627        13  IN     01 20 02 09  00 06 30 0e  00 00 00 0e  00                                                               . ....0......                           31.1.0        54.2  10:15:35.648        64  IN     06 f0 02 ba  00 5a 00 c2  00 02 00 54  02 01 00 50  21 ce da 43  b8 00 e9 a4  b3 85 b7 12  07 cf bf 14  .....Z.....T...P!..C............        32.1.0        4d f8 c0 9e  26 d8 a5 fb  74 da 4d ea  36 c5 52 c3  4a 91 0a 56  00 00 03 e9  00 41 02 05  db 9f 2b 53  M...&...t.M.6.R.J..V.....A....+S        32.1.32       54.2  10:15:35.652        13  OUT    01 20 02 09  00 06 20 3a  00 00 00 20  00                                                               . .... :... .                           33.1.0        54.2  10:15:35.656        38  IN     06 b0 02 20  ba 00 74 66  71 9f ae 57  79 a4 03 00  01 80 00 00  00 00 00 00  00 00 00 00  00 00 00 00  ... ..tfq..Wy...................        34.1.0        00 00 00 00  00 00                                                                                      ......                                  34.1.32       54.2  10:15:35.660        13  OUT    01 20 02 09  00 06 20 5a  00 00 00 00  00                                                               . .... Z.....                           35.1.0        54.2  10:15:35.664         6  IN     06 a0 02 80  00 5a                                                                                      .....Z                                  36.1.0        54.2  10:15:35.708        18  OUT    06 30 03 0e  00 42 00 03  04 04 00 00  00 00 00 00  00 00                                               .0...B............                      37.1.0        54.2  10:15:35.719        13  IN     01 20 03 09  00 06 30 0e  00 00 00 0e  00                                                               . ....0......                           38.1.0        54.2  10:15:35.743        64  IN     06 f0 03 3a  b9 06 00 c2  00 03 03 33  03 01 03 2f  30 82 03 2b  30 82 02 13  a0 03 02 01  02 02 04 1a  ...:.......3.../0..+0...........        39.1.0        d2 dd e7 30  0d 06 09 2a  86 48 86 f7  0d 01 01 0b  05 00 30 76  31 0b 30 09  06 03 55 04  06 13 02 44  ...0...*.H........0v1.0...U....D        39.1.32       54.2  10:15:35.747        13  OUT    01 20 03 09  00 06 20 3a  00 00 00 ff  02                                                               . .... :.....                           40.1.0        54.2  10:15:35.751        64  IN     06 a0 03 ba  00 3a 45 31  0f 30 0d 06  03 55 04 08  13 06 53 61  78 6f 6e 79  31 16 30 14  06 03 55 04  .....:E1.0...U....Saxony1.0...U.        41.1.0        0a 13 0d 53  75 62 63 6c  61 73 73 20  30 30 30 31  31 11 30 0f  06 03 55 04  0b 13 08 43  6c 61 73 73  ...Subclass 00011.0...U....Class        41.1.32       54.2  10:15:35.755        64  IN     06 a0 03 ba  00 74 20 30  33 31 2b 30  29 06 03 55  04 03 13 22  58 62 6f 78  20 41 63 63  65 73 73 6f  .....t 031+0)..U..."Xbox Accesso        42.1.0        72 69 65 73  20 43 6c 61  73 73 20 50  72 6f 64 20  43 41 20 30  30 31 30 1e  17 0d 31 35  30 38 30 37  ries Class Prod CA 0010...150807        42.1.32       54.2  10:15:35.759        64  IN     06 a0 03 3a  ae 01 31 38  32 32 33 35  5a 17 0d 34  33 30 32 32  32 32 33 35  39 35 39 5a  30 00 30 82  ...:..182235Z..430222235959Z0.0.        43.1.0        01 22 30 0d  06 09 2a 86  48 86 f7 0d  01 01 01 05  00 03 82 01  0f 00 30 82  01 0a 02 82  01 01 00 bf  ."0...*.H.............0.........        43.1.32       54.2  10:15:35.764        59  IN     06 b0 03 35  e8 01 55 1e  18 6d b6 f9  82 06 80 e5  af ce d5 90  74 35 7f ad  d3 4d 92 7e  58 ac b9 44  ...5..U..m..........t5...M..X..D        44.1.0        68 bf 62 bd  6b 04 7d d9  fd 05 53 64  21 62 3d 61  f6 d9 5d 0e  59 1a b5 5a  23 8b 74                  h.b.k.....Sd!b=a..].Y..Z#.t             44.1.32       54.2  10:15:35.767        13  OUT    01 20 03 09  00 06 20 1d  01 00 00 1c  02                                                               . .... ......                           45.1.0        54.2  10:15:35.784        64  IN     06 a0 03 3a  9d 02 d5 8a  13 69 1a 7b  f4 6c 7c e3  53 e3 f5 67  eb d1 0b 37  df 72 e3 ee  49 c3 c0 8c  ...:.....i...l..S..g...7.r..I...        46.1.0        7c 4f f8 5a  68 ac f0 37  ad 51 8b 95  8c 38 0c 59  79 df 24 34  32 cd 44 60  52 92 d6 a1  30 fd 05 74  .O.Zh..7.Q...8.Yy.$42.D`R...0..t        46.1.32       54.2  10:15:35.788        64  IN     06 a0 03 3a  d7 02 28 01  22 d6 eb e0  78 6e 15 ab  b6 ce e9 d5  67 cb 3f e4  c9 99 52 2c  7f 32 6a c7  ...:..(."...xn......g.?...R,.2j.        47.1.0        7b d8 4a 7d  f4 ae a5 dd  81 c6 57 22  ee 93 72 27  ba f4 4f d0  b0 85 41 86  e0 c9 6e 14  56 52 13 37  ..J.......W"..r'..O...A...n.VR.7        47.1.32       54.2  10:15:35.792        64  IN     06 a0 03 3a  91 03 dd fb  e0 41 23 77  95 8b 94 6c  d8 bc 6e af  ee f7 5e 9f  3b 5e 0b 58  3d b5 86 46  ...:.....A#w...l..n...^.;^.X=..F        48.1.0        7f 2a 38 ea  53 31 66 19  8d 60 21 ac  9e 79 7e ed  11 a8 e5 e0  a5 f1 c9 33  02 fa af 93  33 7c 01 69  .*8.S1f..`!..y.........3....3..i        48.1.32       54.2  10:15:35.795        64  IN     06 a0 03 3a  cb 03 75 92  ac 43 eb 0c  78 62 79 27  32 4d 86 75  da ea 7b e9  bb 9b 6b 23  17 e7 6c 12  ...:..u..C..xby'2M.u......k#..l.        49.1.0        0b 49 02 03  01 00 01 a3  37 30 35 30  0e 06 03 55  1d 0f 01 01  ff 04 04 03  02 00 b0 30  0c 06 03 55  .I......7050...U...........0...U        49.1.32       54.2  10:15:35.799        58  IN     06 b0 03 34  85 04 1d 13  01 01 ff 04  02 30 00 30  15 06 03 55  1d 25 04 0e  30 0c 06 0a  2b 06 01 04  ...4.........0.0...U.%..0...+...        50.1.0        01 82 37 78  03 01 30 0d  06 09 2a 86  48 86 f7 0d  01 01 0b 05  00 03 82 01  01 00                     ..7x..0...*.H.............              50.1.32       54.2  10:15:35.804        13  OUT    01 20 03 09  00 06 20 39  02 00 00 00  01                                                               . .... 9.....                           51.1.0        54.2  10:15:35.820        64  IN     06 a0 03 3a  b9 04 1f d3  a2 3d f8 7e  ca e4 6d bb  d0 71 26 41  d4 d6 ce 47  d7 56 e3 2c  05 c0 09 9e  ...:.....=....m..q&A...G.V.,....        52.1.0        77 e0 37 c7  ce 75 7d 80  54 4f dd 0d  69 7b 1e 9e  78 6c e2 d8  68 05 2a d0  5f 12 af 2a  5b 6d 80 40  w.7..u..TO..i...xl..h.*._..*[m.@        52.1.32       54.2  10:15:35.824        64  IN     06 a0 03 3a  f3 04 44 c5  3b e0 a9 96  dc 12 55 a0  94 10 92 e8  d7 49 9b c8  7f 1c c1 f9  c8 5c b3 8a  ...:..D.;.....U......I.......\..        53.1.0        54 09 2e 50  4e 38 f1 ef  3c 46 39 7c  91 71 1a f9  ef b8 34 01  5c 8a e9 20  a7 6b fe 7b  d5 b0 e5 6b  T..PN8..<F9..q....4.\.. .k.....k        53.1.32       54.2  10:15:35.828        64  IN     06 a0 03 3a  ad 05 6e 1d  80 10 d3 28  3c 92 00 1e  ca 42 a6 0d  3b 9a 94 07  4e 45 b8 77  8b 58 f7 f7  ...:..n....(<....B..;...NE.w.X..        54.1.0        ab be a0 de  00 03 af 67  14 3f 14 3e  ea 62 d0 e3  52 d9 12 6f  e2 1f 8f 3a  02 88 ba f9  23 41 77 d5  .......g.?.>.b..R..o...:....#Aw.        54.1.32       54.2  10:15:35.832        64  IN     06 a0 03 3a  e7 05 ea e4  c7 d0 11 1c  d9 c9 d8 cb  f0 f1 e2 6a  4c 7f 9d 6b  91 65 10 ac  ea 64 a4 f4  ...:...............jL..k.e...d..        55.1.0        0a 8b 6f c7  24 85 f2 ce  83 ff 0e 01  f4 1b 31 95  4e e0 16 f4  02 df c3 65  81 f2 5d 6b  95 4a 80 61  ..o.$.........1.N......e..]k.J.a        55.1.32       54.2  10:15:35.836        30  IN     06 b0 03 18  a1 06 3c a0  3b c7 0b ba  d8 60 6e 6e  44 d1 6a dc  99 18 46 93  7c ba ae a7  6c f3        ......<.;....`nnD.j...F.....l.          56.1.0        54.2  10:15:35.840        13  OUT    01 20 03 09  00 06 20 39  03 00 00 00  00                                                               . .... 9.....                           57.1.0        54.2  10:15:35.844         6  IN     06 a0 03 00  b9 06                                                                                      ......                                  58.1.0        54.2  10:15:35.891        64  OUT    06 f0 04 3a  92 02 00 41  00 05 01 04  05 01 01 00  a1 e4 ab d9  0b 4c 4c 21  d2 b9 0b 78  41 e9 de f5  ...:...A.............LL!...xA...        59.1.0        1b d2 6a 69  c2 cd 85 64  61 1f 8c da  ad ec 60 d7  68 0e 52 02  d0 db a8 03  92 21 b0 fb  0f 68 4b 03  ..ji...da.....`.h.R......!...hK.        59.1.32       54.2  10:15:35.895        13  IN     01 20 04 09  00 06 30 3a  00 00 00 e3  00                                                               . ....0:.....                           60.1.0        54.2  10:15:35.907        64  OUT    06 a0 04 ba  00 3a 84 97  98 e6 4c 69  fe df 97 56  72 ed d7 bd  c7 96 9c d9  0e 8c fa 20  d8 8d ee 32  .....:....Li...Vr.......... ...2        61.1.0        93 95 da 53  43 67 2b 32  89 51 5d 8d  b0 d0 74 4f  ba f7 c8 fa  5b d1 d0 25  10 c5 2d 40  68 2b 89 43  ...SCg+2.Q]...tO....[..%..-@h+.C        61.1.32       54.2  10:15:35.911        64  OUT    06 a0 04 ba  00 74 55 f3  dc 7a 07 0c  a2 36 67 68  c7 50 a4 21  f2 b5 5c 46  c4 27 9e 35  64 93 e8 a0  .....tU..z...6gh.P.!..\F.'.5d...        62.1.0        bc db fe 1c  6e e2 dd 6d  6a 2b 70 e7  69 dc 09 00  ee c5 ff 70  b2 a2 18 17  4c 07 bd 77  f7 3e 98 aa  ....n..mj+p.i......p....L..w.>..        62.1.32       54.2  10:15:35.915        64  OUT    06 a0 04 3a  ae 01 13 5c  a4 54 bb f1  5f 70 c3 6f  cd a4 e5 e8  67 c9 f3 fe  8f 8c 5c 75  7b 8e 77 9d  ...:...\.T.._p.o....g.....\u..w.        63.1.0        09 4c 59 20  51 42 bb 2a  0f 34 fa 98  4c 23 f6 a8  e8 25 3c df  e9 6b 0f 11  70 67 2d bc  5f 97 38 63  .LY QB.*.4..L#...%<..k..pg-._.8c        63.1.32       54.2  10:15:35.919        48  OUT    06 b0 04 2a  e8 01 d0 a4  6a 92 39 15  e4 2f f6 ea  76 6c e6 2f  a8 44 1d a6  1f 0a ae c8  84 f8 2c 9e  ...*....j.9../..vl./.D........,.        64.1.0        b8 17 15 c7  10 ff c1 29  00 00 00 00  00 00 00 00                                                      .......)........                        64.1.32       54.2  10:15:35.939        13  IN     01 20 04 09  00 06 30 12  01 00 00 0b  00                                                               . ....0......                           65.1.0        54.2  10:15:35.951         6  OUT    06 a0 04 00  92 02                                                                                      ......                                  66.1.0        54.2  10:15:35.955        36  IN     20 00 02 20  00 00 00 00  00 00 6f 01  00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00   .. ......o.....................        67.1.0        00 00 00 00                                                                                             ....                                    67.1.32       54.2  10:15:36.584        10  IN     06 30 04 06  00 c1 00 01  00 00                                                                         .0........                              68.1.0        54.2  10:15:36.588        13  OUT    01 20 04 09  00 06 20 06  00 00 00 00  00                                                               . .... ......                           69.1.0        54.2  10:15:36.619        54  OUT    06 30 05 32  00 41 00 07  00 24 07 01  00 20 bb 39  d0 eb 27 b5  8b 64 9a 92  da 08 5a 71  28 df 6b 97  .0.2.A...$... .9..'..d....Zq(.k.        70.1.0        ec 61 dc 39  4a 5e 9f 70  39 13 4f b2  49 e3 00 00  00 00 00 00  00 00                                  .a.9J^.p9.O.I.........                  70.1.32       54.2  10:15:36.631        13  IN     01 20 05 09  00 06 30 32  00 00 00 32  00                                                               . ....02...2.                           71.1.0        54.2  10:15:36.647        10  IN     06 30 05 06  00 c1 00 01  00 00                                                                         .0........                              72.1.0        54.2  10:15:36.651        13  OUT    01 20 05 09  00 06 20 06  00 00 00 00  00                                                               . .... ......                           73.1.0        54.2  10:15:36.683        18  OUT    06 30 06 0e  00 42 00 08  00 44 00 00  00 00 00 00  00 00                                               .0...B...D........                      74.1.0        54.2  10:15:36.695        13  IN     01 20 06 09  00 06 30 0e  00 00 00 0e  00                                                               . ....0......                           75.1.0        54.2  10:15:36.716        64  IN     06 f0 06 ba  00 4a 00 c2  00 08 00 44  08 01 00 40  83 70 3e 44  26 fb b6 91  a8 4f 61 98  50 5d 1a 8a  .....J.....D...@.p>D&....Oa.P]..        76.1.0        a9 34 eb 89  79 1f 9f ff  fd ab 0c b0  a0 ca 91 af  34 90 dd 09  35 68 68 28  59 b0 9b b0  ea 62 0e 17  .4..y...........4...5hh(Y....b..        76.1.32       54.2  10:15:36.720        13  OUT    01 20 06 09  00 06 20 3a  00 00 00 10  00                                                               . .... :.....                           77.1.0        54.2  10:15:36.724        22  IN     06 b0 06 10  ba 00 b5 9f  4b 53 1b 94  3f 4f 85 f1  24 ca 28 bd  94 6b                                  ........KS..?O..$.(..k                  78.1.0        54.2  10:15:36.728        13  OUT    01 20 06 09  00 06 20 4a  00 00 00 00  00                                                               . .... J.....                           79.1.0        54.2  10:15:36.732         6  IN     06 a0 06 80  00 4a                                                                                      .....J                                  80.1.0        54.2  10:15:36.744         6  OUT    06 20 07 02  01 00                                                                                      . ....                                  81.1.0        54.2  10:15:36.748         8  IN     03 20 02 04  80 00 00 00                                                                                . ......                                82.1.0   55.0  10:15:36.790            CTL    80 06 00 01  00 00 12 00                                                                                GET DESCRIPTOR                          83.1.0        55.0  10:15:36.790        18  IN     12 01 00 02  03 00 00 20  5e 04 ff 02  00 00 00 01  00 01                                               ....... ^.........                      83.2.0        55.0  10:15:36.790            CTL    80 06 00 02  00 00 09 00                                                                                GET DESCRIPTOR                          84.1.0        55.0  10:15:36.790         9  IN     09 02 22 00  01 01 00 a0  32                                                                            ..".....2                               84.2.0        55.0  10:15:36.790            CTL    80 06 00 02  00 00 22 00                                                                                GET DESCRIPTOR                          85.1.0        55.0  10:15:36.790        34  IN     09 02 22 00  01 01 00 a0  32 09 04 00  00 01 03 00  00 00 09 21  11 01 00 01  22 fc 00 07  05 09 03 20  ..".....2..........!...."......         85.2.0        00 04                                                                                                   ..                                      85.2.32       55.0  10:15:36.790            CTL    00 09 01 00  00 00 00 00                                                                                SET CONFIG                              86.1.0        55.0  10:15:36.790            CTL    21 0a 00 00  00 00 00 00                                                                                SET IDLE                                87.1.0        55.0  10:15:36.790            CTL    81 06 00 22  00 00 3c 01                                                                                GET DESCRIPTOR                          88.1.0        55.0  10:15:36.790       252  IN     05 01 09 05  a1 01 a1 00  09 30 09 31  15 00 27 ff  ff 00 00 95  02 75 10 81  02 c0 a1 00  09 33 09 34  .........0.1..'......u.......3.4        88.2.0        15 00 27 ff  ff 00 00 95  02 75 10 81  02 c0 05 01  09 32 15 00  26 ff 03 95  01 75 0a 81  02 15 00 25  ..'......u.......2..&....u.....%        88.2.32       00 75 06 95  01 81 03 05  01 09 35 15  00 26 ff 03  95 01 75 0a  81 02 15 00  25 00 75 06  95 01 81 03  .u........5..&....u.....%.u.....        88.2.64       05 09 19 01  29 10 95 10  75 01 81 02  05 01 09 39  15 01 25 08  35 00 46 3b  01 66 14 00  75 04 95 01  ....)...u......9..%.5.F;.f..u...        88.2.96       81 42 75 04  95 01 15 00  25 00 35 00  45 00 65 00  81 03 a1 02  05 0f 09 97  15 00 25 01  75 04 95 01  .Bu.....%.5.E.e...........%.u...        88.2.128      91 02 15 00  25 00 91 03  09 70 15 00  25 64 75 08  95 04 91 02  09 50 66 01  10 55 0e 26  ff 00 95 01  ....%....p..%du......Pf..U.&....        88.2.160      91 02 09 a7  91 02 65 00  55 00 09 7c  91 02 c0 05  01 09 80 a1  00 09 85 15  00 25 01 95  01 75 01 81  ......e.U................%...u..        88.2.192      02 15 00 25  00 75 07 95  01 81 03 c0  05 06 09 20  15 00 26 ff  00 75 08 95  01 81 02 c0               ...%.u......... ..&..u......            88.2.224      55.0  10:15:56.051            CTL    21 09 00 02  00 00 08 00                                                                                SET REPORT                              89.1.0(2)     55.0  10:15:56.051         8  OUT    0f 00 00 00  00 ff 00 eb                                                                                ........                                89.2.0        56    10:15:56.051         9  OUT    00 0f 00 00  00 00 ff 00  eb                                                                            .........                               90.1.0(2)     54.2  10:15:56.052         5  OUT    05 20 05 01  05                                                                                         . ...                                   93.1.0        54.2  10:15:56.056        13  OUT    09 00 01 09  00 0f 00 00  00 00 ff 00  eb                                                               .............                           94.1.0        54.2  10:15:56.064        13  OUT    09 00 02 09  00 0f 00 00  00 00 ff 00  eb                                                               .............                           95.1.0        55.0  10:15:56.228            CTL    21 09 00 02  00 00 08 00                                                                                SET REPORT                              96.1.0        55.0  10:15:56.228         8  OUT    0f 00 00 00  00 ff 00 eb                                                                                ........                                96.2.0        56    10:15:56.228         9  OUT    00 0f 00 00  00 00 ff 00  eb                                                                            .........                               97.1.0        54.2  10:15:56.232        13  OUT    09 00 03 09  00 0f 00 00  00 00 ff 00  eb                                                               .............                           98.1.0        54.2  10:15:56.748         8  IN     03 20 03 04  80 00 00 00                                                                                . ......                                99.1.0        55.0  10:15:58.820            CTL    21 09 00 02  00 00 08 00                                                                                SET REPORT                             100.1.0(2)     55.0  10:15:58.820         8  OUT    0f 00 00 00  00 ff 00 eb                                                                                ........                               100.2.0        56    10:15:58.820         9  OUT    00 0f 00 00  00 00 ff 00  eb                                                                            .........                              101.1.0(2)     54.2  10:15:58.823         5  OUT    05 20 06 01  05                                                                                         . ...                                  104.1.0        54.2  10:15:58.827        13  OUT    09 00 04 09  00 0f 00 00  00 00 ff 00  eb                                                               .............                          105.1.0        55.0  10:15:58.837            CTL    21 09 00 02  00 00 08 00                                                                                SET REPORT                             106.1.0        55.0  10:15:58.837         8  OUT    0f 00 00 00  00 ff 00 eb                                                                                ........                               106.2.0        56    10:15:58.837         9  OUT    00 0f 00 00  00 00 ff 00  eb                                                                            .........                              107.1.0        54.2  10:15:58.839        13  OUT    09 00 05 09  00 0f 00 00  00 00 ff 00  eb                                                               .............                          108.1.0        54.2  10:15:58.851        13  OUT    09 00 06 09  00 0f 00 00  00 00 ff 00  eb                                                               .............                          109.1.0        55.0  10:16:01.683            CTL    21 09 00 02  00 00 08 00                                                                                SET REPORT                             110.1.0        55.0  10:16:01.683         8  OUT    0f 00 00 00  00 ff 00 eb                                                                                ........                               110.2.0        56    10:16:01.683         9  OUT    00 0f 00 00  00 00 ff 00  eb                                                                            .........                              111.1.0        54.2  10:16:01.684         5  OUT    05 20 07 01  05                                                                                         . ...                                  112.1.0        54.2  10:16:01.688        13  OUT    09 00 07 09  00 0f 00 00  00 00 ff 00  eb                                                               .............                          113.1.0        55.0  10:16:01.700            CTL    21 09 00 02  00 00 08 00                                                                                SET REPORT                             114.1.0        55.0  10:16:01.700         8  OUT    0f 00 00 00  00 ff 00 eb                                                                                ........                               114.2.0        56    10:16:01.700         9  OUT    00 0f 00 00  00 00 ff 00  eb                                                                            .........                              115.1.0        54.2  10:16:01.704        13  OUT    09 00 08 09  00 0f 00 00  00 00 ff 00  eb                                                               .............                          116.1.0        55.0  10:16:02.128            CTL    21 09 00 02  00 00 08 00                                                                                SET REPORT                             117.1.0        55.0  10:16:02.128         8  OUT    0f 00 00 00  00 ff 00 eb                                                                                ........                               117.2.0        56    10:16:02.128         9  OUT    00 0f 00 00  00 00 ff 00  eb                                                                            .........                              118.1.0        54.2  10:16:02.132        13  OUT    09 00 09 09  00 0f 00 00  00 00 ff 00  eb                                                               .............                          119.1.0        55.0  10:16:02.138            CTL    21 09 00 02  00 00 08 00                                                                                SET REPORT                             120.1.0        55.0  10:16:02.138         8  OUT    0f 00 00 00  00 ff 00 eb                                                                                ........                               120.2.0        56    10:16:02.138         9  OUT    00 0f 00 00  00 00 ff 00  eb                                                                            .........                              121.1.0        54.2  10:16:02.140        13  OUT    09 00 0a 09  00 0f 00 00  00 00 ff 00  eb                                                               .............                          122.1.0        55.0  10:16:09.281            CTL    21 09 00 02  00 00 08 00                                                                                SET REPORT                             123.1.0(2)     55.0  10:16:09.281         8  OUT    0f 00 00 00  00 ff 00 eb                                                                                ........                               123.2.0        56    10:16:09.281         9  OUT    00 0f 00 00  00 00 ff 00  eb                                                                            .........                              124.1.0(2)     54.2  10:16:09.284         5  OUT    05 20 08 01  05                                                                                         . ...                                  127.1.0        54.2  10:16:09.288        13  OUT    09 00 0b 09  00 0f 00 00  00 00 ff 00  eb                                                               .............                          128.1.0        54.2  10:16:09.296        13  OUT    09 00 0c 09  00 0f 00 00  00 00 ff 00  eb                                                               .............                          129.1.0        55.0  10:16:09.388            CTL    21 09 00 02  00 00 08 00                                                                                SET REPORT                             130.1.0        55.0  10:16:09.388         8  OUT    0f 00 00 00  00 ff 00 eb                                                                                ........                               130.2.0        56    10:16:09.388         9  OUT    00 0f 00 00  00 00 ff 00  eb                                                                            .........                              131.1.0        54.2  10:16:09.392        13  OUT    09 00 0d 09  00 0f 00 00  00 00 ff 00  eb                                                               .............                          132.1.0        55.0  10:16:14.623            CTL    21 09 00 02  00 00 08 00                                                                                SET REPORT                             133.1.0        55.0  10:16:14.623         8  OUT    0f 00 00 00  00 ff 00 eb                                                                                ........                               133.2.0        56    10:16:14.623         9  OUT    00 0f 00 00  00 00 ff 00  eb                                                                            .........                              134.1.0        54.2  10:16:14.624         5  OUT    05 20 09 01  05                                                                                         . ...                                  135.1.0        54.2  10:16:14.628        13  OUT    09 00 0e 09  00 0f 00 00  00 00 ff 00  eb                                                               .............                          136.1.0        55.0  10:16:14.645            CTL    21 09 00 02  00 00 08 00                                                                                SET REPORT                             137.1.0        55.0  10:16:14.645         8  OUT    0f 00 00 00  00 ff 00 eb                                                                                ........                               137.2.0        56    10:16:14.645         9  OUT    00 0f 00 00  00 00 ff 00  eb                                                                            .........                              138.1.0        54.2  10:16:14.648        13  OUT    09 00 0f 09  00 0f 00 00  00 00 ff 00  eb                                                               .............                          139.1.0        54.2  10:16:16.748         8  IN     03 20 04 04  80 00 00 00                                                                                . ......                               140.1.0        54.2  10:16:22.456        36  IN     20 00 03 20  00 00 00 00  00 00 73 00  00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00   .. ......s.....................       141.1.0        00 00 00 00                                                                                             ....                                   141.1.32       55.1  10:16:22.456        17  IN     73 80 ff 7f  00 80 ff 7f  00 00 00 00  00 00 00 00  80                                                  s................                      142.1.0        56    10:16:22.456        18  IN     00 73 80 ff  7f 00 80 ff  7f 00 00 00  00 00 00 00  00 80                                               .s................                     143.1.0        54.2  10:16:22.460        13  OUT    09 00 10 09  00 0f 00 00  00 00 ff 00  eb                                                               .............                          144.1.0        54.2  10:16:22.472        36  IN     20 00 04 20  00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00   .. ............................       145.1.0        00 00 00 00                                                                                             ....                                   145.1.32       55.1  10:16:22.472        17  IN     00 80 ff 7f  00 80 ff 7f  00 00 00 00  00 00 00 00  80                                                  .................                      146.1.0        56    10:16:22.472        18  IN     00 00 80 ff  7f 00 80 ff  7f 00 00 00  00 00 00 00  00 80                                               ..................                     147.1.0        54.2  10:16:22.652        36  IN     20 00 05 20  00 00 00 00  00 00 9a 00  00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00   .. ............................       148.1.0        00 00 00 00                                                                ```

实际只有一设备,其它两个都是驱动程序虚拟出来的,

使用dslogic直接从D+和D-截包可以看到如下

1302,3348138090.00,SYNC: 00000001,SETUP ADDR 0 EP 0,SETUP in: [ 80 06 00 01 00 00 40 00 ][ 12 01 00 02 FF FF FF 40 C1 11 01 20 08 01 00 02 03 01 ] : ACK,,,,K
4077,3420156920.00,SYNC: 00000001,SETUP ADDR 0 EP 0,SETUP out: [ 00 05 16 00 00 00 00 00 ][ ] : ACK,,,,K
4764,3431139760.00,SYNC: 00000001,SETUP ADDR 22 EP 0,SETUP in: [ 80 06 00 01 00 00 12 00 ][ 12 01 00 02 FF FF FF 40 C1 11 01 20 08 01 00 02 03 01 ] : ACK,,,,K
5511,3437348720.00,SYNC: 00000001,SETUP ADDR 22 EP 0,SETUP in: [ 80 06 00 02 00 00 FF 00 ][ 09 02 60 00 03 01 00 A0 FA 09 04 00 00 02 FF 47 D0 00 07 05 02 03 40 00 04 07 05 82 03 40 00 04 09 04 01 00 00 FF 47 D0 00 09 04 01 01 02 FF 47 D0 00 07 05 03 01 E4 00 01 07 05 83 01 E4 00 01 09 04 02 00 00 FF 47 D0 00 09 04 02 01 02 FF 47 D0 00 07 05 01 02 40 00 00 07 05 81 02 40 00 00 ] : ACK,,,,K
6760,3437627390.00,SYNC: 00000001,SETUP ADDR 22 EP 0,SETUP in: [ 80 06 03 03 09 04 FF 00 ][ 22 03 30 00 30 00 30 00 30 00 35 00 32 00 41 00 43 00 36 00 38 00 32 00 33 00 41 00 45 00 30 00 31 00 ] : ACK,,,,K
7454,3437858070.00,SYNC: 00000001,SETUP ADDR 22 EP 0,SETUP in: [ C0 90 00 00 04 00 10 00 ][ 28 00 00 00 00 01 04 00 01 00 00 00 00 00 00 00 ] : ACK,,,,K
7967,3438034430.00,SYNC: 00000001,SETUP ADDR 22 EP 0,SETUP in: [ C0 90 00 00 04 00 28 00 ][ 28 00 00 00 00 01 04 00 01 00 00 00 00 00 00 00 00 01 58 47 49 50 31 30 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ] : ACK,,,,K
8618,3438185070.00,SYNC: 00000001,SETUP ADDR 22 EP 0,SETUP in: [ 80 06 00 03 00 00 FF 00 ][ 04 03 09 04 ] : ACK,,,,K
9036,3438367010.00,SYNC: 00000001,SETUP ADDR 22 EP 0,SETUP in: [ 80 06 02 03 09 04 FF 00 ][ 16 03 43 00 6F 00 6E 00 74 00 72 00 6F 00 6C 00 6C 00 65 00 72 00 ] : ACK,,,,K
9598,3438549290.00,SYNC: 00000001,SETUP ADDR 22 EP 0,SETUP in: [ 80 06 00 06 00 00 0A 00 ][ ] : STALL,,,,K
10284,3449859450.00,SYNC: 00000001,SETUP ADDR 22 EP 0,SETUP in: [ 80 06 00 01 00 00 12 00 ][ 12 01 00 02 FF FF FF 40 C1 11 01 20 08 01 00 02 03 01 ] : ACK,,,,K
10818,3450057810.00,SYNC: 00000001,SETUP ADDR 22 EP 0,SETUP in: [ 80 06 00 02 00 00 09 00 ][ 09 02 60 00 03 01 00 A0 FA ] : ACK,,,,K
11277,3450274820.00,SYNC: 00000001,SETUP ADDR 22 EP 0,SETUP in: [ 80 06 00 02 00 00 60 00 ][ 09 02 60 00 03 01 00 A0 FA 09 04 00 00 02 FF 47 D0 00 07 05 02 03 40 00 04 07 05 82 03 40 00 04 09 04 01 00 00 FF 47 D0 00 09 04 01 01 02 FF 47 D0 00 07 05 03 01 E4 00 01 07 05 83 01 E4 00 01 09 04 02 00 00 FF 47 D0 00 09 04 02 01 02 FF 47 D0 00 07 05 01 02 40 00 00 07 05 81 02 40 00 00 ] : ACK,,,,K
12525,3450643560.00,SYNC: 00000001,SETUP ADDR 22 EP 0,SETUP in: [ 80 00 00 00 00 00 02 00 ][ 02 00 ] : ACK,,,,K
12964,3450893170.00,SYNC: 00000001,SETUP ADDR 22 EP 0,SETUP out: [ 00 09 01 00 00 00 00 00 ][ ] : ACK,,,,K
13314,3451093530.00,SYNC: 00000001,SETUP ADDR 22 EP 0,SETUP out: [ 01 0B 00 00 01 00 00 00 ][ ] : ACK,,,,K
13610,3451243590.00,SYNC: 00000001,SETUP ADDR 22 EP 0,SETUP out: [ 01 0B 00 00 02 00 00 00 ][ ] : ACK,,,,K
16102,3524152290.00,SYNC: 00000001,SETUP ADDR 0 EP 0,SETUP in: [ 80 06 00 01 00 00 40 00 ][ 12 01 00 02 FF FF FF 40 C1 11 01 20 08 01 00 02 03 01 ] : ACK,,,,K
18772,3596194540.00,SYNC: 00000001,SETUP ADDR 0 EP 0,SETUP out: [ 00 05 16 00 00 00 00 00 ][ ] : ACK,,,,K
19453,3607217880.00,SYNC: 00000001,SETUP ADDR 22 EP 0,SETUP in: [ 80 06 00 01 00 00 12 00 ][ 12 01 00 02 FF FF FF 40 C1 11 01 20 08 01 00 02 03 01 ] : ACK,,,,K
19933,3607387610.00,SYNC: 00000001,SETUP ADDR 22 EP 0,SETUP out: [ 00 09 01 00 00 00 00 00 ][ ] : ACK,,,,K
20229,3607535000.00,SYNC: 00000001,SETUP ADDR 22 EP 0,SETUP out: [ 01 0B 00 00 01 00 00 00 ][ ] : ACK,,,,K
20525,3607670640.00,SYNC: 00000001,SETUP ADDR 22 EP 0,SETUP out: [ 01 0B 00 00 02 00 00 00 ][ ] : ACK,,,,K
20872,3609879000.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 02 20 01 1C 01 AE 23 68 AC 52 00 00 C1 11 01 20 01 00 02 00 66 00 02 00 02 0E 01 00 01 00 01 00 ] : ACK,,,K
21357,3613879490.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 04 F0 01 3A 8B 02 10 00 01 00 00 00 00 00 00 00 00 00 00 00 0B 01 87 00 16 00 1B 00 1C 00 23 00 29 00 46 00 00 00 00 00 00 00 00 00 01 01 00 02 00 00 06 01 02 03 04 06 07 05 01 04 05 06 0A 01 ] : ACK,,,K
21518,3617597890.00,SYNC: 00000001,SETUP ADDR 22 EP 0,SETUP in: [ 80 06 00 03 00 00 FF 00 ][ 04 03 09 04 ] : ACK,,,,K
22025,3617885440.00,SYNC: 00000001,SETUP ADDR 22 EP 0,SETUP in: [ 80 06 00 03 00 00 FF 00 ][ 04 03 09 04 ] : ACK,,,,K
22443,3618081220.00,SYNC: 00000001,SETUP ADDR 22 EP 0,SETUP in: [ 80 06 02 03 09 04 FF 00 ][ 16 03 43 00 6F 00 6E 00 74 00 72 00 6F 00 6C 00 6C 00 65 00 72 00 ] : ACK,,,,K
23005,3618317730.00,SYNC: 00000001,SETUP ADDR 22 EP 0,SETUP in: [ 80 06 02 03 09 04 FF 00 ][ 16 03 43 00 6F 00 6E 00 74 00 72 00 6F 00 6C 00 6C 00 65 00 72 00 ] : ACK,,,,K
23567,3618691520.00,SYNC: 00000001,SETUP ADDR 22 EP 0,SETUP in: [ 80 06 00 03 00 00 FF 00 ][ 04 03 09 04 ] : ACK,,,,K
24020,3619118970.00,SYNC: 00000001,SETUP ADDR 22 EP 0,SETUP in: [ 80 06 02 03 09 04 FF 00 ][ 16 03 43 00 6F 00 6E 00 74 00 72 00 6F 00 6C 00 6C 00 65 00 72 00 ] : ACK,,,,K
25269,3633881810.00,SYNC: 00000001,OUT ADDR 22 EP 2,,,BULK out: [ 04 20 01 00 ] : ACK,,K
26326,3641882870.00,SYNC: 00000001,OUT ADDR 22 EP 2,,,BULK out: [ 01 20 01 09 00 04 20 3A 00 00 00 D1 00 ] : ACK,,K
26519,3642004740.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 04 A0 01 BA 00 3A 1A 00 57 69 6E 64 6F 77 73 2E 58 62 6F 78 2E 49 6E 70 75 74 2E 47 61 6D 65 70 61 64 04 56 FF 76 97 FD 9B 81 45 AD 45 B6 45 BB A5 26 D6 2C 40 2E 08 DF 07 E1 45 A5 AB A3 12 7A ] : ACK,,,K
27457,3649883780.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 04 A0 01 BA 00 74 F1 97 B5 E7 1F F3 B8 86 73 E9 40 A9 F8 2F 21 26 3A CF B7 FE D2 DD EC 87 D3 94 42 BD 96 1A 71 2E 3D C7 7D 05 17 00 20 20 00 01 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ] : ACK,,,K
28203,3653884350.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 04 A0 01 3A AE 01 00 17 00 09 09 00 01 00 08 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 17 00 10 3C 00 01 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 17 00 0F 3C 00 01 00 08 00 00 00 ] : ACK,,,K
28944,3657884840.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 04 B0 01 23 E8 01 00 00 00 00 00 00 00 00 00 00 00 00 17 00 22 3C 00 01 00 18 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ] : ACK,,,K
29501,3661885320.00,SYNC: 00000001,OUT ADDR 22 EP 2,,,BULK out: [ 01 20 01 09 00 04 20 0B 01 00 00 00 00 ] : ACK,,K
29694,3662007210.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 04 A0 01 00 8B 02 ] : ACK,,,K
30165,3669886270.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 03 20 01 04 80 00 00 00 ] : ACK,,,K
31524,3697889700.00,SYNC: 00000001,OUT ADDR 22 EP 2,,,BULK out: [ 05 20 02 0F 06 00 00 00 00 00 00 55 53 00 00 00 00 00 00 ] : ACK,,K
31959,3701890190.00,SYNC: 00000001,OUT ADDR 22 EP 2,,,BULK out: [ 05 20 03 01 00 ] : ACK,,K
32283,3705890670.00,SYNC: 00000001,OUT ADDR 22 EP 2,,,BULK out: [ 0A 20 04 03 00 01 14 ] : ACK,,K
32721,3709891130.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 20 00 01 20 00 00 00 00 00 00 B7 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ] : ACK,,,K
33239,3713891610.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 01 20 01 09 00 06 30 3A 00 00 00 3A 00 ] : ACK,,,K
35377,3757896960.00,SYNC: 00000001,OUT ADDR 22 EP 2,,,BULK out: [ 06 30 01 3A 00 41 00 01 00 2C 01 01 00 28 D1 FB 71 83 7E D6 96 71 56 2A A7 67 B7 34 AE 68 33 5B 8F EE 9C 30 B7 94 DB 72 B4 D7 36 F0 FE 0B 00 00 00 00 45 7B AF E9 00 00 00 00 00 00 00 00 ] : ACK,,K
36880,3773898930.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 06 30 01 06 00 C1 00 01 00 00 ] : ACK,,,K
37773,3789900770.00,SYNC: 00000001,OUT ADDR 22 EP 2,,,BULK out: [ 01 20 01 09 00 06 20 06 00 00 00 00 00 ] : ACK,,K
37966,3790022820.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 01 20 02 09 00 06 30 0E 00 00 00 0E 00 ] : ACK,,,K
39325,3817904280.00,SYNC: 00000001,OUT ADDR 22 EP 2,,,BULK out: [ 06 30 02 0E 00 42 00 02 00 54 00 00 00 00 00 00 00 00 ] : ACK,,K
40473,3833906120.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 06 F0 02 BA 00 5A 00 C2 00 02 00 54 02 01 00 50 5C 6A BE 60 78 5B 87 51 51 73 FC 56 4D FE 8A 80 5A DD 4E 66 22 75 AA F4 5D D9 F3 68 7E 09 B1 54 4A 91 0A 56 00 00 03 E9 00 41 02 05 DB 9F 2B 53 ] : ACK,,,K
41995,3853908660.00,SYNC: 00000001,OUT ADDR 22 EP 2,,,BULK out: [ 01 20 02 09 00 06 20 3A 00 00 00 20 00 ] : ACK,,K
42188,3854030690.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 06 B0 02 20 BA 00 74 66 71 9F AE 57 79 A4 03 00 01 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ] : ACK,,,K
42915,3861909630.00,SYNC: 00000001,OUT ADDR 22 EP 2,,,BULK out: [ 01 20 02 09 00 06 20 5A 00 00 00 00 00 ] : ACK,,K
43108,3862031520.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 06 A0 02 80 00 5A ] : ACK,,,K
43580,3869910510.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 01 20 03 09 00 06 30 0E 00 00 00 0E 00 ] : ACK,,,K
45523,3909915390.00,SYNC: 00000001,OUT ADDR 22 EP 2,,,BULK out: [ 06 30 03 0E 00 42 00 03 04 04 00 00 00 00 00 00 00 00 ] : ACK,,K
46671,3925917390.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 06 F0 03 3A B9 06 00 C2 00 03 03 33 03 01 03 2F 30 82 03 2B 30 82 02 13 A0 03 02 01 02 02 04 1A D2 DD E7 30 0D 06 09 2A 86 48 86 F7 0D 01 01 0B 05 00 30 76 31 0B 30 09 06 03 55 04 06 13 02 44 ] : ACK,,,K
48385,3949920300.00,SYNC: 00000001,OUT ADDR 22 EP 2,,,BULK out: [ 01 20 03 09 00 06 20 3A 00 00 00 FF 02 ] : ACK,,K
48579,3950042190.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 06 A0 03 BA 00 3A 45 31 0F 30 0D 06 03 55 04 08 13 06 53 61 78 6F 6E 79 31 16 30 14 06 03 55 04 0A 13 0D 53 75 62 63 6C 61 73 73 20 30 30 30 31 31 11 30 0F 06 03 55 04 0B 13 08 43 6C 61 73 73 ] : ACK,,,K
49515,3957921270.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 06 A0 03 BA 00 74 20 30 33 31 2B 30 29 06 03 55 04 03 13 22 58 62 6F 78 20 41 63 63 65 73 73 6F 72 69 65 73 20 43 6C 61 73 73 20 50 72 6F 64 20 43 41 20 30 30 31 30 1E 17 0D 31 35 30 38 30 37 ] : ACK,,,K
50256,3961921680.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 06 A0 03 3A AE 01 31 38 32 32 33 35 5A 17 0D 34 33 30 32 32 32 32 33 35 39 35 39 5A 30 00 30 82 01 22 30 0D 06 09 2A 86 48 86 F7 0D 01 01 01 05 00 03 82 01 0F 00 30 82 01 0A 02 82 01 01 00 BF ] : ACK,,,K
50998,3965922270.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 06 B0 03 35 E8 01 55 1E 18 6D B6 F9 82 06 80 E5 AF CE D5 90 74 35 7F AD D3 4D 92 7E 58 AC B9 44 68 BF 62 BD 6B 04 7D D9 FD 05 53 64 21 62 3D 61 F6 D9 5D 0E 59 1A B5 5A 23 8B 74 ] : ACK,,,K
51705,3969922750.00,SYNC: 00000001,OUT ADDR 22 EP 2,,,BULK out: [ 01 20 03 09 00 06 20 1D 01 00 00 1C 02 ] : ACK,,K
51898,3970044620.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 06 A0 03 3A 9D 02 D5 8A 13 69 1A 7B F4 6C 7C E3 53 E3 F5 67 EB D1 0B 37 DF 72 E3 EE 49 C3 C0 8C 7C 4F F8 5A 68 AC F0 37 AD 51 8B 95 8C 38 0C 59 79 DF 24 34 32 CD 44 60 52 92 D6 A1 30 FD 05 74 ] : ACK,,,K
53418,3989925180.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 06 A0 03 3A D7 02 28 01 22 D6 EB E0 78 6E 15 AB B6 CE E9 D5 67 CB 3F E4 C9 99 52 2C 7F 32 6A C7 7B D8 4A 7D F4 AE A5 DD 81 C6 57 22 EE 93 72 27 BA F4 4F D0 B0 85 41 86 E0 C9 6E 14 56 52 13 37 ] : ACK,,,K
54163,3993925730.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 06 A0 03 3A 91 03 DD FB E0 41 23 77 95 8B 94 6C D8 BC 6E AF EE F7 5E 9F 3B 5E 0B 58 3D B5 86 46 7F 2A 38 EA 53 31 66 19 8D 60 21 AC 9E 79 7E ED 11 A8 E5 E0 A5 F1 C9 33 02 FA AF 93 33 7C 01 69 ] : ACK,,,K
54912,3997926220.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 06 A0 03 3A CB 03 75 92 AC 43 EB 0C 78 62 79 27 32 4D 86 75 DA EA 7B E9 BB 9B 6B 23 17 E7 6C 12 0B 49 02 03 01 00 01 A3 37 30 35 30 0E 06 03 55 1D 0F 01 01 FF 04 04 03 02 00 B0 30 0C 06 03 55 ] : ACK,,,K
55657,4001926620.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 06 B0 03 34 85 04 1D 13 01 01 FF 04 02 30 00 30 15 06 03 55 1D 25 04 0E 30 0C 06 0A 2B 06 01 04 01 82 37 78 03 01 30 0D 06 09 2A 86 48 86 F7 0D 01 01 0B 05 00 03 82 01 01 00 ] : ACK,,,K
56351,4005927030.00,SYNC: 00000001,OUT ADDR 22 EP 2,,,BULK out: [ 01 20 03 09 00 06 20 39 02 00 00 00 01 ] : ACK,,K
56544,4006049150.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 06 A0 03 3A B9 04 1F D3 A2 3D F8 7E CA E4 6D BB D0 71 26 41 D4 D6 CE 47 D7 56 E3 2C 05 C0 09 9E 77 E0 37 C7 CE 75 7D 80 54 4F DD 0D 69 7B 1E 9E 78 6C E2 D8 68 05 2A D0 5F 12 AF 2A 5B 6D 80 40 ] : ACK,,,K
58064,4025929480.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 06 A0 03 3A F3 04 44 C5 3B E0 A9 96 DC 12 55 A0 94 10 92 E8 D7 49 9B C8 7F 1C C1 F9 C8 5C B3 8A 54 09 2E 50 4E 38 F1 EF 3C 46 39 7C 91 71 1A F9 EF B8 34 01 5C 8A E9 20 A7 6B FE 7B D5 B0 E5 6B ] : ACK,,,K
58810,4029930050.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 06 A0 03 3A AD 05 6E 1D 80 10 D3 28 3C 92 00 1E CA 42 A6 0D 3B 9A 94 07 4E 45 B8 77 8B 58 F7 F7 AB BE A0 DE 00 03 AF 67 14 3F 14 3E EA 62 D0 E3 52 D9 12 6F E2 1F 8F 3A 02 88 BA F9 23 41 77 D5 ] : ACK,,,K
59557,4033930420.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 06 A0 03 3A E7 05 EA E4 C7 D0 11 1C D9 C9 D8 CB F0 F1 E2 6A 4C 7F 9D 6B 91 65 10 AC EA 64 A4 F4 0A 8B 6F C7 24 85 F2 CE 83 FF 0E 01 F4 1B 31 95 4E E0 16 F4 02 DF C3 65 81 F2 5D 6B 95 4A 80 61 ] : ACK,,,K
60302,4037931000.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 06 B0 03 18 A1 06 3C A0 3B C7 0B BA D8 60 6E 6E 44 D1 6A DC 99 18 46 93 7C BA AE A7 6C F3 ] : ACK,,,K
60771,4041931480.00,SYNC: 00000001,OUT ADDR 22 EP 2,,,BULK out: [ 01 20 03 09 00 06 20 39 03 00 00 00 00 ] : ACK,,K
60964,4042053360.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 06 A0 03 00 B9 06 ] : ACK,,,K
61435,4049932390.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 01 20 04 09 00 06 30 3A 00 00 00 E3 00 ] : ACK,,,K
63182,4085936850.00,SYNC: 00000001,OUT ADDR 22 EP 2,,,BULK out: [ 06 F0 04 3A 92 02 00 41 00 05 01 04 05 01 01 00 39 2D F3 18 98 3E B7 68 C8 04 14 72 CE DE DA BA C8 B6 5D 2F 33 DB E8 F3 8E 42 08 77 A7 E8 A4 9D 99 7A DF 5B 93 22 44 FC FC 73 D3 2D 76 A5 D6 04 ] : ACK,,K
64312,4093937740.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 01 20 04 09 00 06 30 12 01 00 00 0B 00 ] : ACK,,,K
64701,4101938800.00,SYNC: 00000001,OUT ADDR 22 EP 2,,,BULK out: [ 06 A0 04 BA 00 3A 94 E6 60 B3 37 35 17 E3 5E B4 5D 42 70 BF E1 63 81 31 DF 8E E5 11 8E 62 81 87 97 C4 66 60 96 F8 2F 54 EE EF D8 9C 28 8A 61 93 0E 03 99 FE 26 1F 16 B6 5B 89 DD 9B 0C 64 AF F5 ] : ACK,,K
65500,4105939260.00,SYNC: 00000001,OUT ADDR 22 EP 2,,,BULK out: [ 06 A0 04 BA 00 74 EA 71 3A DF 76 67 03 AA 2F 91 F6 DC 03 4F BA 3F 5E 67 E3 89 C3 D3 CF 3F 9A 26 44 FD 67 03 33 C4 C1 0B 55 42 09 BF C3 A4 FF F5 4F F7 EC D8 98 EA FC 4F 5B F1 59 B5 45 E5 41 85 ] : ACK,,K
66303,4109939760.00,SYNC: 00000001,OUT ADDR 22 EP 2,,,BULK out: [ 06 A0 04 3A AE 01 58 6E 5B 50 6F 2E B7 88 6F 91 01 9D BF 8D D2 9E 52 71 50 AB 05 8E A0 57 FD FF 38 F6 39 16 B7 5E BC EC 33 0B E5 EE 93 03 62 5E BE 4E 72 12 46 90 6D 33 D3 3E A2 7F 0E A0 2C 88 ] : ACK,,K
67102,4113940230.00,SYNC: 00000001,OUT ADDR 22 EP 2,,,BULK out: [ 06 B0 04 2A E8 01 F5 0F 1D CB E4 98 D8 00 98 8A 82 A7 97 2B 58 15 4F EB 3D FB 52 F4 79 FA BB 67 4C 83 78 D0 24 DC 93 E5 00 00 00 00 00 00 00 00 ] : ACK,,K
68882,4137943090.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 20 00 02 20 00 00 00 00 00 00 BC 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ] : ACK,,,K
69399,4141943660.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 06 30 04 06 00 C1 00 01 00 00 ] : ACK,,,K
69593,4145944150.00,SYNC: 00000001,OUT ADDR 22 EP 2,,,BULK out: [ 06 A0 04 00 92 02 ] : ACK,,K
100742,4782021360.00,SYNC: 00000001,OUT ADDR 22 EP 2,,,BULK out: [ 01 20 04 09 00 06 20 06 00 00 00 00 00 ] : ACK,,K
100935,4782143400.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 01 20 05 09 00 06 30 32 00 00 00 32 00 ] : ACK,,,K
102489,4814025310.00,SYNC: 00000001,OUT ADDR 22 EP 2,,,BULK out: [ 06 30 05 32 00 41 00 07 00 24 07 01 00 20 B8 36 2A 99 39 33 CE 6B 05 CC 1B 5E 76 BC F8 DE 48 D5 8F EB 2C 0E 63 B2 B3 77 E9 1E 82 F1 52 B3 00 00 00 00 00 00 00 00 ] : ACK,,K
103926,4830027280.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 06 30 05 06 00 C1 00 01 00 00 ] : ACK,,,K
104820,4846029200.00,SYNC: 00000001,OUT ADDR 22 EP 2,,,BULK out: [ 01 20 05 09 00 06 20 06 00 00 00 00 00 ] : ACK,,K
105013,4846151150.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 01 20 06 09 00 06 30 0E 00 00 00 0E 00 ] : ACK,,,K
106372,4874032630.00,SYNC: 00000001,OUT ADDR 22 EP 2,,,BULK out: [ 06 30 06 0E 00 42 00 08 00 44 00 00 00 00 00 00 00 00 ] : ACK,,K
107521,4890034550.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 06 F0 06 BA 00 4A 00 C2 00 08 00 44 08 01 00 40 CE 6A 1E E4 2E EC 71 4E 20 1D 53 59 A8 D9 12 0A BF 0B 59 8C 74 EA 74 28 60 EC 58 8B 01 E9 1A 26 C1 3A 16 76 10 B9 D8 23 82 2B CE 66 AE 2D C2 12 ] : ACK,,,K
109041,4910036920.00,SYNC: 00000001,OUT ADDR 22 EP 2,,,BULK out: [ 01 20 06 09 00 06 20 3A 00 00 00 10 00 ] : ACK,,K
109235,4910158970.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 06 B0 06 10 BA 00 BD DD 28 9E 71 39 7F 6A 14 15 96 B7 05 01 ED 28 ] : ACK,,,K
109835,4918037980.00,SYNC: 00000001,OUT ADDR 22 EP 2,,,BULK out: [ 01 20 06 09 00 06 20 4A 00 00 00 00 00 ] : ACK,,K
110028,4918160010.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 06 A0 06 80 00 4A ] : ACK,,,K
110501,4926038920.00,SYNC: 00000001,IN ADDR 22 EP 2,,BULK in: [ 03 20 02 04 80 00 00 00 ] : ACK,,,K
111084,4938040300.00,SYNC: 00000001,OUT ADDR 22 EP 2,,,BULK out: [ 06 20 07 02 01 00 ] : ACK,,K

​可以看到实际和登录一个https的网站很像,xboxone的controller给出X509的证书,操作系统使用随机盐发给xboxone的controller签名,验签成功就生成虚拟的hid设备。

Xbox One控制器USB通信协议分析

Xbox One控制器的USB协议进行详细解析。

1. 设备枚举过程

两个文件都显示了类似的设备枚举过程:

  1. 获取设备描述符 :主机发送 GET_DESCRIPTOR 请求( 80 06 00 01 ),控制器返回18字节的设备描述符:

    12 01 00 02 FF FF FF 40 C1 11 01 20 08 01 00 02 03 01
    
    • 设备类型:厂商自定义( FF )
    • 厂商ID: 0x04C1
    • 产品ID: 0x2001
  2. 获取配置描述符 :主机发送 GET_DESCRIPTOR 请求( 80 06 00 02 ),控制器返回完整的配置描述符(96字节):

    09 02 60 00 03 01 00 A0 FA 09 04 00 00 02 FF 47 D0 00 ...
    
    • 包含3个接口,每个接口都使用厂商自定义类( FF )
    • 每个接口有IN和OUT端点,用于双向通信
  3. 获取字符串描述符 :主机获取序列号和产品名称(“Controller”)

  4. 设置配置 :主机发送 SET_CONFIGURATION 请求( 00 09 01 00 )

2. 认证和初始化过程

两个文件都显示了复杂的认证过程:

  1. 初始握手 :控制器发送设备信息( 02 20 01 1C 01… )

  2. 证书交换 :

    • 主机和设备交换多个数据包,包含X.509证书数据
    • 数据包中包含ASN.1编码的证书信息,如:
      30 82 03 2B 30 82 02 13 A0 03 02 01 02 02 04 1A D2 DD E7 30 0D 06 09 2A 
      86 48 86 F7 0D 01 01 0B 05 00
      
    • 证书显示为"Xbox Accessories Class Prod CA 001"
  3. 加密握手 :交换加密数据,可能使用非对称加密

3. 数据传输模式

我们可以看到控制器持续发送状态更新:

20 00 64 20 00 00 00 00 00 00 EC 3F FF 7F 00 00 00 00 00 00 00 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00
20 00 65 20 00 00 00 00 00 00 9E 3B FF 7F 00 00 00 00 00 00 00 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00

这些数据包具有以下特点:

  1. 固定的头部格式( 20 00 XX 20 )
  2. 序列号递增( 64 , 65 , 66 …)
  3. 中间部分包含控制器状态数据,可能是按钮、摇杆和触发器的值

4. 协议特点

  1. 复合设备结构 :Xbox One控制器是一个具有3个接口的复合USB设备

  2. 安全认证机制 :使用X.509证书和加密技术进行设备认证,防止未授权设备

  3. 双向通信 :

    • 控制器→主机:状态更新、认证响应
    • 主机→控制器:命令、振动控制、LED控制等
  4. 厂商自定义协议 :所有接口都使用厂商自定义类( FF ),而不是标准HID类

  5. 数据格式 :

    • 命令格式: [命令类型] [命令ID] [数据长度] [数据…]
    • 状态更新:固定格式的36字节数据包
      这种复杂的协议设计确保了Xbox One控制器的安全性、低延迟和丰富的功能集,但也使得第三方实现变得困难,需要进行逆向工程才能完全理解和实现。

认证算法类型分析

X.509证书确认

从捕获的数据中,我们可以确认Xbox One控制器确实使用了X.509证书体系,证据如下:

  1. 在所有三个日志文件中,都可以观察到类似的证书交换模式,特别是在06 F0 0306 A0 03开头的数据包中包含了明显的X.509证书结构特征:

    30 82 03 2B 30 82 02 13 A0 03 02 01 02 02 04 1A D2 DD E7 30 0D 06 09 2A 86 48 86 F7 0D 01 01 0B 05 00 30 76 31 0B 30 09 06 03 55 04 06 13 02 44
    
  2. 这些数据包中包含了X.509证书的典型OID(对象标识符):

    • 06 09 2A 86 48 86 F7 0D 01 01 0B 是RSA签名算法的OID
    • 06 03 55 04 06 是国家代码的OID
    • 06 03 55 04 08 是州/省的OID
    • 06 03 55 04 0A 是组织名称的OID
    • 06 03 55 04 0B 是组织单位的OID
    • 06 03 55 04 03 是通用名称的OID
  3. 证书中包含了明确的发行者信息:

    58 62 6F 78 20 41 63 63 65 73 73 6F 72 69 65 73 20 43 6C 61 73 73 20 50 72 6F 64 20 43 41 20 30 30 31
    

    这转换为ASCII是"Xbox Accessories Class Prod CA 001",表明这是由微软发行的Xbox配件证书。

非对称签名确认

数据分析表明,Xbox One控制器确实使用了非对称加密进行签名验证:

  1. 证书交换后的数据包(06 F0 0406 A0 04等)包含了大量看似随机的数据,这很可能是使用私钥签名的数据或使用公钥加密的会话密钥。

  2. 在证书数据中可以看到RSA算法的OID,表明使用了RSA非对称加密:

    30 0D 06 09 2A 86 48 86 F7 0D 01 01 01 05 00 03 82 01 0F 00 30 82 01 0A 02 82 01 01 00 BF
    

    其中06 09 2A 86 48 86 F7 0D 01 01 01是RSA加密的OID。

  3. 数据包中包含了大量的二进制数据,这些很可能是RSA密钥、签名或加密的会话密钥。

非联网状态下的相互认证机制

基于分析,Xbox One控制器和主机在非联网状态下的相互认证机制如下:

预置的信任链

  1. 根证书预置:Xbox主机预装了微软的根证书,控制器也预装了相应的设备证书。这形成了一个完整的信任链,无需联网验证。

  2. 证书链验证:通信初始阶段,控制器向主机发送其设备证书(由微软签发),主机验证该证书的有效性。这可以从数据包中的证书交换过程看出。

认证流程

  1. 初始握手:控制器连接后,主机和控制器交换基本信息(可见于02 20 0105 20 02等数据包)。

  2. 证书交换:控制器发送其设备证书给主机(06 F0 0306 A0 03等数据包)。

  3. 证书验证:主机验证控制器证书的有效性,包括检查签名和证书链。

  4. 挑战-响应:主机发送一个挑战(随机数据)给控制器(06 F0 04等数据包),控制器使用其私钥对挑战进行签名并返回。

  5. 会话密钥建立:成功验证后,双方使用非对称加密算法协商一个会话密钥,用于后续通信加密。

安全机制

  1. 硬件绑定密钥:控制器很可能在制造时就嵌入了唯一的私钥,对应的公钥包含在其设备证书中。

  2. 防篡改机制:通信过程中使用的序列号和计数器(如数据包中的递增字节XX)可以防止重放攻击。

  3. 会话加密:认证成功后,所有控制器数据(如按钮按压、摇杆移动等)都使用会话密钥加密传输,这可以从20 00 XX 20 00...格式的数据包中看出。

结论

Xbox One控制器使用了基于X.509证书的非对称加密认证机制,采用RSA算法进行签名验证和密钥交换。这种机制允许在完全离线的环境中进行安全的设备认证,因为信任是建立在预置的证书链上,而不是依赖在线验证服务。

这种认证方式既保证了安全性(防止未授权设备连接),又保持了用户体验(不需要联网即可使用控制器)。微软通过控制证书的发放,可以确保只有授权的设备制造商能够生产与Xbox兼容的控制器。

Xbox One控制器X.509证书分析
从提供的USB通信日志中,我已经提取出了Xbox One控制器使用的X.509证书数据。这个证书是Xbox One控制器认证机制的核心部分。

证书数据提取
完整的X.509证书数据从第39行开始传输,通过多个数据包分段传输:

30 82 03 2b 30 82 02 13 a0 03 02 01 02 02 04 1a d2 dd e7 30 0d 06 09 2a 86 48 
86 f7 0d 01 01 0b 05 00 30 76 31 0b 30 09 06 03 55 04 06 13 02 44 45 31 0f 30 0d 06 03 55 04 08 13 06 53 61 78 6f 6e 79 31 16 30 1406 03 55 04 0a 13 0d 53 75 62 63 6c 61 73 73 20 30 30 30 31 31 11 30 0f 06 03 55 04 0b 13 08 43 6c 61 73 73 20 30 33 31 2b 30 29 06 03 55 04 03 13 22 58 62 6f 78 20 41 63 63 65 73 73 6f 72 69 65 73 20 43 6c 61 73 73 20 50 72 6f 64 20 43 41 20 30 30 31 30 1e 17 0d 31 35 30 38 30 37 31 38 32 32 33 35 5a 17 0d 34 33 30 32 32 32 32 33 35 39 35 39 5a 30 00 30 82 01 22 30 0d 06 09 2a 86 48 86 f7 0d 01 01 01 05 00 03 82 01 0f 00 30 82 01 0a 02 82 01 01 00 bf 55 1e 18 6d b6 f9 82 06 80 e5 af ce d5 90 74 35 7f ad d3 4d 92 7e 58 ac b9 44 68 bf 62 bd 6b 04 7d d9 fd 05 53 64 21 62 3d 61 f6 d9 5d 0e 59 1a b5 5a 23 8b 74 d5 8a 13 69 1a 7b f4 6c 7c e3 53 e3 f5 67 eb d1 0b 37 df 72 e3 ee 49 c3 c0 8c 7c 4f f8 5a 68 ac f0 37 ad 51 8b 95 8c 38 0c 59 79 df 24 34 32 cd 44 60 52 92 d6 a1 30 fd 05 74 28 01 22 d6 eb e0 78 6e 15 ab b6 ce e9 d5 67 cb 3f e4 c9 99 52 2c 7f 32 6a c7 7b d8 4a 7d f4 ae a5 dd 81 c6 57 22 ee 93 72 27 ba f4 4f d0 b0 85 41 86 e0 c9 6e 14 56 52 13 37 dd fb e0 41 23 77 95 8b 94 6c d8 bc 6e af ee f7 5e 9f 3b 5e 0b 58 3d b5 86 46 7f 2a 38 ea 53 31 66 19 8d 60 21 ac 9e 79 7e ed 11 a8 e5 e0 a5 f1 c9 33 02 fa af 93 33 7c 01 69 75 92 ac 43 eb 0c 78 62 79 27 32 4d 86 75 da ea 7b e9 bb 9b 6b 23 17 e7 6c 12 0b 49 02 03 01 00 01 a3 37 30 35 30 0e 06 03 55 1d 0f 01 01 ff 04 04 03 02 00 b0 30 0c 06 03 55 1d 13 01 01 ff 04 02 30 00 30 15 06 03 55 1d 25 04 0e 30 0c 06 0a 2b 06 01 04 01 82 37 78 03 01 30 0d 06 09 2a 86 48 86 f7 0d 01 01 0b 05 00 03 82 01 01 00 1f d3 a2 3d f8 7e ca e4 6d bb d0 71 26 41 d4 d6 ce 47 d7 56 e3 2c 05 c0 09 9e 77 e0 37 c7 ce 75 7d 80 54 4f dd 0d 69 7b 1e 9e 78 6c e2 d8 68 05 2a d0 5f 12 af 2a 5b 6d 80 40 44 c5 3b e0 a9 96 dc 12 55 a0 94 10 92 e8 d7 49 9b c8 7f 1c c1 f9 c8 5c b3 8a 54 09 2e 50 4e 38 f1 ef 3c 46 39 7c 91 71 1a f9 ef b8 34 01 5c 8a e9 20 a7 6b fe 7b d5 b0 e5 6b 6e 1d 80 10 d3 28 3c 92 00 1e ca 42 a6 0d 3b 9a 94 07 4e 45 b8 77 8b 58 f7 f7 ab be a0 de 00 03 af 67 14 3f 14 3e ea 62 d0 e3 52 d9 12 6f e2 1f 8f 3a 02 88 ba f9 23 41 77 d5 ea e4 c7 d0 11 1c d9 c9 d8 cb f0 f1 e2 6a 4c 7f 9d 6b 91 65 10 ac ea 64 a4 f4 0a 8b 6f c7 24 85 f2 ce 83 ff 0e 01 f4 1b 31 95 4e e0 16 f4 02 df c3 65 81 f2 5d 6b 95 4a 80 61 3c a0 3b c7 0b ba d8 60 6e 6e 44 d1 6a dc 99 18 46 93 7c ba ae a7 6c f3

证书结构分析
这是一个标准的X.509证书,具有以下特点:

证书版本:X.509 v3
序列号:1ad2dde7
签名算法:RSA-SHA256 (1.2.840.113549.1.1.11)
颁发者信息:
国家 ©: DE (德国)
州/省 (ST): Saxony
组织 (O): Subclass 0001
组织单位 (OU): Class
通用名称 (CN): Xbox Accessories Class Prod CA 001
有效期:
起始日期: 2015年8月7日 18:22:35
截止日期: 2043年2月22日 23:59:59
公钥算法:Ra
公钥长度:2048位
扩展:
密钥用途
基本约束
扩展密钥用途 (包含微软特定OID: 2.6.1.4.1.82.55.120.3.1)
证书用途分析
这个证书是Xbox One控制器认证系统的一部分,用于:

设备身份验证:证明控制器是微软授权的正版设备
安全通信:为控制器与Xbox主机之间的通信提供加密基础
防伪保护:防止未授权的第三方设备连接到Xbox系统
认证机制
从通信日志可以看出,Xbox One控制器使用了类似于HTTPS的证书认证机制,但这并不意味着控制器变成了Web服务器。这是一种常见的安全设计模式,其中:

控制器持有由微软颁发的设备证书
连接时,控制器向主机提供其证书
主机验证证书的有效性和签名
验证通过后,双方建立加密通信通道
这种机制与HTTPS使用的TLS/SSL协议非常相似,但是针对USB设备认证进行了定制。微软采用这种方式来确保只有授权的控制器才能与Xbox系统连接,保护生态系统的安全性和完整性。

http://www.lryc.cn/news/582322.html

相关文章:

  • 1.1_5_2 计算机网络的性能指标(下)
  • OpenWebUI(3)源码学习-后端models数据模型模块
  • LLVM,polly,最新测试
  • ServerAgent资源监控和nmon监控
  • 【Linux操作系统】简学深悟启示录:Linux基本指令
  • 串行接口:CAN总线
  • 2025年全国青少年信息素养大赛图形化(Scratch)编程小学低年级组初赛样题答案+解析
  • 华为OD机试 2025B卷 - 最长的指定瑕疵度的元音子串 (C++PythonJAVAJSC语言)
  • 互补功率放大器Multisim电路仿真——硬件工程师笔记
  • web渗透之指纹识别1
  • 施密特触发器Multisim电路仿真——硬件工程师笔记
  • 2048-控制台版本
  • 设计模式文章
  • 汽车信息安全 -- SHE密钥更新小细节
  • vscode配置gitlab仓库详细步骤
  • 闲庭信步使用图像验证平台加速FPGA的开发:第二课——RGB转YCbCr的FPGA硬件编程详解
  • Rust单例模式:OnceLock的使用指南
  • Rust 内存结构:深入解析
  • iOS 出海 App 安全加固指南:无源码环境下的 IPA 加固与防破解方法
  • 期待在 VR 森林体验模拟中实现与森林的 “虚拟复现”​
  • 企业物资集采平台解决方案之:AI+物联网,智能预测需求,让企业库存“零呆滞”的科技实践
  • OSPFv3基础
  • 基于 STM32+FPGA 的快速傅里叶频域图像在 TFT 中显示的设计与实现(项目资料)(ID:8)
  • 关于 c、c#、c++ 三者区别
  • vue时间轴,antd时间轴,带卡片时间轴
  • 全球 AI HR 浪潮下的中国实践:从效率革命到战略重构
  • Android kotlin中 Channel 和 Flow 的区别和选择
  • 【Qt】QSignalMapper
  • 谢飞机的Java高级开发面试:从Spring Boot到分布式架构的蜕变之旅
  • 【音视频】HLS简介与服务器搭建