# 24C256 Checksum EEPROM

#### Iwannalearneeprom

Joined Jul 22, 2021
5
Hey guys I am trying to find the checksum for a hex string. Below attached is the hex code that have checksum already found out and in the 2nd bottom I need to find the checksum

08 D0 1B 60 08 D0 1B 60 00 00 00 00 00 00 00 00 00 0B 75 4B 00 00 91 DC

So, in the upper hex code the last 4 bytes are the checksum, already found out

So now the problem is that I am trying to find out a new checksum for a new byte but have no idea how to do it. Here's below the hex code for that

07 EF C7 F0 07 EF C7 F0 00 00 00 00 00 00 00 00 00 09 75 4B

Also, can somebody please tell me how the upper checksum was found and how you find out the lower new checksum.

#### MrChips

Joined Oct 2, 2009
24,134
We cannot provide an answer because we do not know the algorithm used to compute the checksum.
There are 101 ways of computing the checksum and it is entirely up to the designer to choose one.

#### KeepItSimpleStupid

Joined Mar 4, 2014
5,063
You can do it one of two ways:

Xclusive or everything except the checksum itself.

I'm not about to do it.

e,g,
10
5
3
2

= 20 decimal; that would be a 2 decimal digit checksum

if that were binary 10100; if you wanted a 4 binary digit checksum it would be. 0100 or 4h.

Usual method, anyway.

#### Iwannalearneeprom

Joined Jul 22, 2021
5
We cannot provide an answer because we do not know the algorithm used to compute the checksum.
There are 101 ways of computing the checksum and it is entirely up to the designer to choose one.
Hi, I am completely new to this kind of programming because the guy who was teaching me is away as of now because I am getting no response. Can you help me find out which algorithm is this and how can I find the algorithm?

#### Iwannalearneeprom

Joined Jul 22, 2021
5
We cannot provide an answer because we do not know the algorithm used to compute the checksum.
There are 101 ways of computing the checksum and it is entirely up to the designer to choose one.
I just checked it might be 256 algorithm. This EEPROM chip is from the truck that I recently started working on. So the byte is mileage in them but the only part I am stuck at is the checksum I have no clue how the guy (that sent me the first set) got his checksum. I have spent all day to get the same checksum as the first set guy but nope. This is my first time trying it by myself. Last time the guy helped me but hes not available at the moment.

#### narkeleptk

Joined Mar 11, 2019
540
whats year/model? I might have it in my notes. I'm heading to bed but I'll look around tomorrow .

#### Iwannalearneeprom

Joined Jul 22, 2021
5
whats year/model? I might have it in my notes. I'm heading to bed but I'll look around tomorrow .
It’s 2013

#### andrewmm

Joined Feb 25, 2011
1,752
As @MrChips said
there are literally 1001 if not more ways of making a check sum

The aim of the check sum is to prove that there are no changes in the previous bits.
either intentionally or by an error
It can run from simply adding up all the previous bytes / words modulo 16 / 32
through to running the bits through a CRC algorithm,
and I am certain there are yet more complex options out there.

Reverse engineering as you can see, is a guessing game as t what is used.

If the porpoise of the check sum as just to check for errors,
it tends to be at the simpler end , try a through obvious algorithms out, see if it fist as many samples as you have

if it was there for anti tamper, then its likely to be much more resistant to being cracked by simple inspection.

#### Ian Rogers

Joined Dec 12, 2012
915
Try inserting your values into an online CRC calculator.. Look at the results to see which one it uses.. https://crccalc.com/

This will generate all the CRC's of most used algorithms .. Click the CRC16 when you have entered the string..

#### mcardoso

Joined May 19, 2020
198
Using the link provided (just because I was interested) I got the right checksum from CRC-16/XMODEM ( 0x91DC ).

There might be more to it, but if not, you second string with a checksum would be:

07 EF C7 F0 07 EF C7 F0 00 00 00 00 00 00 00 00 00 09 75 4B 00 00 CB DE

#### Iwannalearneeprom

Joined Jul 22, 2021
5
Using the link provided (just because I was interested) I got the right checksum from CRC-16/XMODEM ( 0x91DC ).

There might be more to it, but if not, you second string with a checksum would be:

07 EF C7 F0 07 EF C7 F0 00 00 00 00 00 00 00 00 00 09 75 4B 00 00 CB DE
I will put this data in the chip and lets see how it goes. Looks correct to me because one other person said the same thing.

#### Bahringer

Joined Aug 2, 2021
1
The PickIt programmers both seem to have the 24LC256 listed as a compatible device in their GUI but I'm not sure how to write code or connect/communicate with them directly, if that's even possible?