pylessard / python-udsoncan

Python implementation of UDS (ISO-14229) standard.
MIT License
575 stars 199 forks source link

support 0x29 #164

Closed zhaohuijun1 closed 11 months ago

zhaohuijun1 commented 1 year ago

Hi,When support 0x29 Services?

pylessard commented 1 year ago

I never noticed that they added that service. That looks like a big one! Will do some reading and let you know. My knowledge is limited when comes to cryptography

zhaohuijun1 commented 1 year ago

OK,Thanks.

zhaohuijun1 commented 1 year ago

Hi,do you have any plans for 0x29 services?

pylessard commented 1 year ago

Hi. It's a lot of work and I am working on another project. So no, not on the short term. PR are welcome though

geynis commented 12 months ago

I hope I can contribute a PR in the near future. Please tell me if someone else is already working on it.

pylessard commented 12 months ago

Not to my knowledge. If you do, please follow the module architecture and consider unit tests and documentation.

Cheers

geynis commented 12 months ago

Sure, already started, thanks!

pylessard commented 12 months ago

Nice, don't hesitate to share partial work to get early feedback

geynis commented 11 months ago

Hi, It would be great if you can feedback on it, core development done (was easier than expected). Next step, I need to write the unit tests, here is the branch: authentication_service_0x29

pylessard commented 11 months ago

@geynis Nice! I have checked the code you wrote, seems super clean and you clearly followed the project architecture. I have only checked the container, not the content. Meaning, I have not validated the compliance with ISO-14229:2020. I will put my trust on you for this.

The docstring are nice, don't forget to add an entry in the doc folder to make sphinx load them.

Do you support all of the possible flows proposed by the standard? If not, maybe make sure what is supported and what is not is clearly identified.

geynis commented 11 months ago

Hi, thanks for the feedback. I think I have now added the entries you mentioned in the doc folder. It is supporting all possible flows of the service, it has 9 sub functions and they are all there. I have added unit-tests. My next step is to test with a real setup, but it will be anyway partial as there are many possibilities and I don't have all examples in a real setup (and don't have the private keys to reach end-to-end testing)

geynis commented 11 months ago

Submitted PR

pylessard commented 11 months ago

Merged and part of new release 1.20.0