vtl / volvo-cem-cracker

Volvo central electronic module pin cracker via OBD for P1, P2 and P3 platforms
GNU General Public License v3.0
106 stars 46 forks source link

Problem with cracking some PIN codes in P2 #4

Closed smyku22 closed 3 years ago

smyku22 commented 3 years ago

I noticed that with some PIN codes, for example: 179955542746, the algorithm is not able to crack it.

vtl commented 3 years ago

Show the log?

smyku22 commented 3 years ago

Crack_PIN_log.txt

vtl commented 3 years ago

Try to increase SAMPLES to 50 or 60. Or reduce CALC_BYTES to 2.

PrancingMoose commented 3 years ago

Sorry to jump on here but how do you run the program, am using Windows 7 pro 64Bit, need to crack my cem pin, thanks

vtl commented 3 years ago

You need to solder the Arduino (Teensy 4.0 + CAN-bus), compile the source code and program the hardware.

smyku22 commented 3 years ago

Crack_PIN_100_samples_log.txt I increased the number of samples to 100 and it gets worse. He has a problem with the second PIN byte.

vtl commented 3 years ago

Your MCP2515 seems to add a lot of noise. The one I have gives a latency aligned to 2 microseconds (see video), while yours disperse the latency in every bucket around CEM's latency.

The code also supports Teensy's built-in CAN-controllers, you only need to add a CAN-transceiver, like SN65HVD230. Just attach its RX/TX pins to the Teensy's pins related to CAN.

I think I'll drop MCP2515 support, since it is so unreliable. Also a built-in simplifies the schematics, since it does not need a level shifter.

smyku22 commented 3 years ago

But as I don't use MCP2515. I use Teensy 4.0 and SN65HVD230. Could you please check this PIN on your CEM? If you want, I can send you the Flash program, from my CEM. I discovered that if the second byte of PIN is 99 then there is a problem with cracking. When the 2nd PIN byte changes to any other, the CEM is able to crack.

vtl commented 3 years ago

Yes, please.

maxdenisov commented 3 years ago

Hi, does anyone have success through OBD2? I have some issues with it:

pin[2] candidate: 81 with latency 709670 Candidate PIN 0x74 0x54 0x81 -- -- -- : brute forcing bytes 3 to 5 (3 bytes), will take up to 695 seconds Progress: 0%..done

found PIN: 0x55 0x54 0x00 0x74 0x00 0x81 PIN is cracked in 1372.35 seconds Validating PIN PIN verification failed! done

frankhommers commented 1 year ago

I got it working when brute forcing the last 4 pairs. The first 2 pairs were always the same result, after that it was basically random.