Post #1
Hi everyone,
I’m working on an open research project focused on reverse engineering and reproducing parts of the BMW WinKFP / EDIABAS flashing stack:
github.com
The project is focused on understanding the actual runtime behaviour rather than simply implementing a new flashing tool.
So far I have been researching and testing:
The next step is real-hardware validation over K+DCAN.
I’m particularly interested in comparing an original WinKFP session with the reconstructed implementation:
WinKFP -> EDIABAS -> IFH -> K+DCAN -> BMW ECU
I’m looking for people who have experience with:
Initially I’m mainly interested in collecting diagnostic/session traces and understanding the communication sequence. I’m not looking for someone to experiment with an unknown ECU or perform risky flashing.
If anyone has already captured useful WinKFP/EDIABAS traces over K+DCAN, or has experience instrumenting the EDIABAS/IFH layer, I would be very interested in comparing results.
The goal is to document the protocol and runtime behaviour in a reproducible way and eventually understand how far the original WinKFP functionality can be reproduced with an independent implementation.
Any technical information, corrections, observations, or pointers to e
xisting research are welcome.
Thanks!
Arkayda
I’m working on an open research project focused on reverse engineering and reproducing parts of the BMW WinKFP / EDIABAS flashing stack:
GitHub - Arkayda/winkfp-research: WinKFP Reverse Engineering & Protocol Reconstruction Archive
WinKFP Reverse Engineering & Protocol Reconstruction Archive - Arkayda/winkfp-research
The project is focused on understanding the actual runtime behaviour rather than simply implementing a new flashing tool.
So far I have been researching and testing:
- WinKFP / winkfpt execution flow
- EDIABAS API interaction
- VDLE programming sequence
- INIT_VDLE / REQUEST_SEGMENTINFO / SEND_SEGMENT / RESEND
- TesterPresent and diagnostic session handling
- WinKFP security-access/authentication flow
- SGIDC / SGIDD authentication containers
- symmetric / simple / asymmetric authentication paths
- differential testing against reconstructed implementations
- EDIABAS API emulation and real EDIABAS API contact
- safety and programming-state validation
The next step is real-hardware validation over K+DCAN.
I’m particularly interested in comparing an original WinKFP session with the reconstructed implementation:
WinKFP -> EDIABAS -> IFH -> K+DCAN -> BMW ECU
I’m looking for people who have experience with:
- BMW E60/E9x and similar E-series vehicles
- WinKFP + EDIABAS
- K+DCAN interfaces
- EDIABAS/IFH tracing
- WinKFP programming logs
- BMW SP-Daten
- reverse engineering of BMW diagnostic/flashing software
Initially I’m mainly interested in collecting diagnostic/session traces and understanding the communication sequence. I’m not looking for someone to experiment with an unknown ECU or perform risky flashing.
If anyone has already captured useful WinKFP/EDIABAS traces over K+DCAN, or has experience instrumenting the EDIABAS/IFH layer, I would be very interested in comparing results.
The goal is to document the protocol and runtime behaviour in a reproducible way and eventually understand how far the original WinKFP functionality can be reproduced with an independent implementation.
Any technical information, corrections, observations, or pointers to e
xisting research are welcome.
Thanks!
Arkayda