Skip to main content
added 194 characters in body
Source Link
astralmaster
  • 145
  • 1
  • 1
  • 8

Epilogue

Please see the accepted answer for the exact algorithm. Special thanks to Edward, nrz and Guntram Blohm; solving this would take a lifetime without your help guys!

Epilogue

Please see the accepted answer for the exact algorithm. Special thanks to Edward, nrz and Guntram Blohm; solving this would take a lifetime without your help guys!

Notice removed Draw attention by astralmaster
Bounty Ended with Edward's answer chosen by astralmaster
edited body
Source Link
astralmaster
  • 145
  • 1
  • 1
  • 8

EDIT 5:

It turns out, the index byte does play a role in calculating checksum, here is one particular example proving it:

INDEX   CHECKSUM    PAYLOAD

0x2B    0x704E      0x7E
0x3E    0x72C1      0x7E

Same payload has different checksum for different indexes. (checksum bytes reversed to show the actual 16 bit int)

Some more samples:

INDEX   CHECKSUM    PAYLOAD

0x3E    0x72C0      0x7D
0x1F    0x6E45      0x01
0x2B    0x704F      0x7F

EDIT 5:

It turns out, the index byte does play a role in calculating checksum, here is one particular example proving it:

INDEX   CHECKSUM    PAYLOAD

0x2B    0x704E      0x7E
0x3E    0x72C1      0x7E

Same payload has different checksum for different indexes. (checksum bytes reversed to show the actual 16 bit int)

Some more samples:

INDEX   CHECKSUM    PAYLOAD

0x3E    0x72C0      0x7D
0x1F    0x6E45      0x01
0x2B    0x704F      0x7F
edited body
Source Link
astralmaster
  • 145
  • 1
  • 1
  • 8
Checksum     Data (ASCII)

3540         11111111111111111111111111111
3561         11111111111111111111111111112
3582         11111111111111111111111111113

3981         11111111111111111111111111121
39A2         11111111111111111111111111122

c1a1         11111111111111111111111111211
c10e4DC1         11111111111111111111111112111

5de1         11111111111111111111111121111
7201         11111111111111111111111211111
Checksum     Data (ASCII)

3540         11111111111111111111111111111
3561         11111111111111111111111111112
3582         11111111111111111111111111113

3981         11111111111111111111111111121
39A2         11111111111111111111111111122

c1a1         11111111111111111111111111211
c10e         11111111111111111111111112111

5de1         11111111111111111111111121111
7201         11111111111111111111111211111
Checksum     Data (ASCII)

3540         11111111111111111111111111111
3561         11111111111111111111111111112
3582         11111111111111111111111111113

3981         11111111111111111111111111121
39A2         11111111111111111111111111122

c1a1         11111111111111111111111111211
4DC1         11111111111111111111111112111

5de1         11111111111111111111111121111
7201         11111111111111111111111211111
added 233 characters in body
Source Link
astralmaster
  • 145
  • 1
  • 1
  • 8
Loading
Tweeted twitter.com/#!/StackReverseEng/status/472104229629214720
Notice added Draw attention by astralmaster
Bounty Started worth 100 reputation by astralmaster
added 1654 characters in body
Source Link
astralmaster
  • 145
  • 1
  • 1
  • 8
Loading
Source Link
astralmaster
  • 145
  • 1
  • 1
  • 8
Loading