Does anybody know how to calculate "Storage CRC" for example CRC of UID ??
Ok i know how to calculate storage CRC8 and CRC16 i someone will need that pm me.
Yes "Storage" CRC8 polynomial is correct in this document (0xC6 - in reverse) and initial value is 0x55
And for CRC16 polynomial is 0xB400 (in reverse) and initial value is word constructed from UIDCRC for example:
UIDCRC id 0x78 (in reverse) the initial will be 0x7878
I don't have Proxmark but I'm writing reader/writer/emulator on dsPIC30 and now code for calculating this CRC i have in Pascal (Delphi) if someone will need some help write me ill try to help.
Also im fixing Proxmark code because it have some bugs like in "legic_prng_forward":
now it is:
lfsr.a = lfsr.a >> 1 | (lfsr.a ^ lfsr.a >> 6) << 6;
but it have to be:
lfsr.a = (lfsr.a >> 1 | (lfsr.a ^ lfsr.a >> 6) << 6) & 0x7F;
So it will generate valid decode stream and it will work not only with 0x55 RAND value.