mavlink / MAVSDK-Java

MAVSDK client for Java.
71 stars 41 forks source link

Signing MAVLink messages with MAVSDK #35

Open rogersanick opened 4 years ago

rogersanick commented 4 years ago

Hi there,

Hope you are well. I'm relatively new to the MavSDK-Java and am really enjoying it so far.

This may be a poorly phrased question - but it is my understanding that with the MavLink 2.0 wire protocol supports message signing - https://mavlink.io/en/guide/message_signing.html

Am I able to facilitate this using the SDK? Please let me know.

Cheers,

Nick

JonasVautherin commented 4 years ago

Hello! :blush:

Unfortunately, MAVLink encryption is not (yet) supported in MAVSDK. We have been looking into TLS/dTLS encryption, and the next step there is to move from LibreSSL to OpenSSL in MAVSDK.

If you can and would like to help in that effort, that would be gladly appreciated!

julianoes commented 4 years ago

@JonasVautherin there is also the MAVLink signing capability though as @rogersanick writes. The issue there is that it's not implemented or used in PX4 (see PR), and not added to QGroundControl (as far as I can tell from this PR). So it's a bit of a chicken and egg problem. If none of the other players have it I'm not very keen to add support for it in MAVSDK :thinking:.

rogersanick commented 4 years ago

@julianoes - thanks very much for your comment.

To add some color here, I'm hoping to integrate with Corda (a blockchain platform produced by R3). I've been able to do so very generally with MAVsdk (which is awesome), but in order to move forward mavlink signing would be extremely helpful.

julianoes commented 4 years ago

@rogersanick ok, one way to move it forward would be to get the PX4 PR working and merged.

JonasVautherin commented 4 years ago

Oh, my mistake, sorry :confused:

julianoes commented 2 years ago

Closing this. If/when signing is available in PX4 we can reconsider this. It would then happen over int he MAVASDK C++ core and not in the Java wrapper.

davidbuzz commented 1 year ago

https://github.com/davidbuzz/MAVAgent has full signing capabilities, in javascript, its ridiculous that px4 and qgroundcontrol don't have it.

JonasVautherin commented 1 year ago

Thanks for the constructive comment @davidbuzz! I'm absolutely certain that PX4 and QGroundControl will be happy to take your contributions, though not in Javascript :wink:

davidbuzz commented 1 year ago

I was just pointing out that there are existing implementations in at least 3 languages... javascript,python,C# , probably more

https://github.com/davidbuzz/MAVAgent has full signing capabilities, in javascript, its ridiculous that px4 and qgroundcontrol don't have it.

julianoes commented 1 year ago

Also taking contributions to enable signing for MAVSDK given we can implement and test it against ArduPilot instead. :smile: