Hello All!
I have been doing some experiments to understand how MAVlink 2.0 signing is working and how it’s represented on different types of logs.
I am running a sim_vehicle.py SITL using mavproxy. I am running the sim as
sim_vehicle.py -V ArduCopter --console -C --mav20
I then proceed to interact with the MAVProxy console to reject unsigned packets and then setup a signature
set allow_unsigned False
signing key <testkey>
I am doing some takeoff, move around etc and then land. Lastly I download the .bin file
log download <X> dataflash.bin
and I also get the mav.tlog
I am analyzing both of them, but I only see a “trace” of the signature been sent from the tlog under the
SETUP_SIGNING {target_system : 1, target_component : 1, secret_key : [X,X,X,X,...,X,X], initial_timestamp : X}
While trying to cross reference the presence on the dataflash.bin following the timestamp or looking for any message around the same time, I cannot seem to find anything.
Following this article https://mavlink.io/en/guide/message_signing.html#secret_key is it a fair assumption to say that the dataflash log is not storing the key. Where is it saved on the autopilot? How is the sign key saved on the “autopilot”?
- Also regarding the Telemetry & Dataflash logs
Why can I not see the command sentset allow_unsigned False
? Is it under a PARAM message with an int representation?
I can provide both logs if my questions or explanations are not clear enough?
I would be really appreciating your input! Thanks in advance