Avatar billede antialize Nybegynder
12. oktober 2003 - 16:28 Der er 8 kommentarer

Ukendt checksum's algoritme

Hej jeg har et problem som jeg bare ikke kan løse:

Hver af følgende linier er dataen fra en netværkspakke fra starcraft broodwar.  Byte 2-3 skal læses som little edian og indikere som tydeligt ses lægnden af pakken
1: 15 E0 0C 00 FC 00 FC 00 02 00 01 01         
2: 25 CA 0C 00 01 00 01 00 01 00 00 01
3: 36 B4 0C 00 04 00 04 00 00 00 00 01
4: 36 B6 0C 00 02 00 02 00 01 00 01 01
5: 3F AC 0C 00 01 01 01 01 02 00 01 01             
6: 46 A0 0C 00 06 00 06 00 00 00 00 01
7: 46 A2 0C 00 04 00 04 00 01 00 01 01             
8: 4D 99 0C 00 06 00 03 00 00 04 00 00
9: 5D 85 0C 00 08 00 05 00 00 04 00 00
10: 5F 82 0C 00 08 00 08 00 00 00 01 01
11: 62 80 0C 00 07 00 05 00 00 05 00 00
12: 64 7F 0C 00 04 00 07 00 00 04 01 00   
13: 69 7A 0C 00 03 00 07 00 00 05 01 00
14: 79 66 0C 00 05 00 09 00 00 05 01 00
15: E7 D9 0C 00 16 01 16 01 02 00 01 01
16: D8 EC 0C 00 14 01 14 01 02 00 00 02
17: 2F C5 0D 00 FA 00 FB 00 02 00 00 00 05

Ved undersøgelse af mange pakker har jeg draget den konklution at byte 3-4 er iden på pakken, og at byte 1-2 må være en checksum.

Mit problem er bare at jeg ikke kan regne checksum algoritmen ud.

Så hvis der er nogle der kan hjæple vil jeg blive monster glad..
Avatar billede soreno Praktikant
12. oktober 2003 - 16:46 #1
Har du slet ingen dokumentation af protokollen ?
Avatar billede erikjacobsen Ekspert
12. oktober 2003 - 16:48 #2
Er det alle data i pakkerne?

Det kunne være en simpel + mellem alla 16 bits data i pakken, som
derefter inverteres (1->0 og 0->1 bitvis). Modtageren lægger så
blot alle 16 bits data samme (ínkl CRC) og får FF FF er så svaret
hvis der ikke er fejl.

Men der er bare et gæt...
Avatar billede antialize Nybegynder
12. oktober 2003 - 17:37 #3
Ja det er alt daten i pakkerne.. hvis i har brug for flere pakker kan jeg sagtens poste dem.. Det ser ikke ud at summen af 16-bits data mod 2^16 skal være FF FF.. eller f.eks. alle 16-bits data xored med hinanden...

Jeg har ingen anelse om hvilken protokol det er.. det er jo noget Blizzard selv har klyttet sammen
Avatar billede erikjacobsen Ekspert
12. oktober 2003 - 17:42 #4
Nej, det kan ikke være den jeg gættede på, hvis pakkerne ikke er større. Det
kan lidt hovedregning klare .... jeg fik bare tanken da det er "små" tal
(16 bit, little endian), og checksummen er "stor".

Ingen hjælp fra vores ven, google ?
Avatar billede arne_v Ekspert
12. oktober 2003 - 17:57 #5
Hvi sikke du kan finde noget info kan det godt blive ret svært at finde
den algoritme.

Mulighederne er nærmest uendelige.

Jeg har testet de mest åbenlyse:

+1 byte
xor 1 byte
+2 bytes
xor 2 byte
standard CRC-16

uden held.
Avatar billede antialize Nybegynder
12. oktober 2003 - 17:58 #6
Nej desværre... det ser heller ikke ud til at være den samme de bruge på battle.net...  det er sq en svær nød at knække...
Avatar billede antialize Nybegynder
12. oktober 2003 - 18:06 #7
Hvis der er nogle der gerne vil hjælpe har jeg alle pakkerne liggende som Packetyzer fil..
ICQ: 155437447
AIM: AntializeZ
MSN: Antialize@hotmail.com
Avatar billede antialize Nybegynder
12. oktober 2003 - 18:37 #8
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester