As described in https://fedora-iot.github.io/fido-device-onboard-rs/specs/diun.html,
manufacturing-server needs to get public key prior to the start of the protocol.
Currently manufacturing-server tries to load the public key here:
https://github.com/fedora-iot/fido-device-onboard-rs/blob/69fec227de04d98c51a5b5d8eb218bdc264f0a3f/manufacturing-server/src/handlers/di.rs#L77-L84
but there are several problems for it.
- The file path is
{public_key_store}/{msg_info}, which msg_info is not a pub key file name. It should allow uses to set the path like public_key_path via configfile.
- It calls
store.load_data() to load the public key but load_data() deserialize the public key. It is not practical that users need to set the public key with the format change.
Also, there is no integration test to reveal fdo-manufacturing-client plain-di does not work.
As described in https://fedora-iot.github.io/fido-device-onboard-rs/specs/diun.html,
manufacturing-serverneeds to get public key prior to the start of the protocol.Currently
manufacturing-servertries to load the public key here:https://github.com/fedora-iot/fido-device-onboard-rs/blob/69fec227de04d98c51a5b5d8eb218bdc264f0a3f/manufacturing-server/src/handlers/di.rs#L77-L84
but there are several problems for it.
{public_key_store}/{msg_info}, whichmsg_infois not a pub key file name. It should allow uses to set the path likepublic_key_pathvia configfile.store.load_data()to load the public key butload_data()deserialize the public key. It is not practical that users need to set the public key with the format change.Also, there is no integration test to reveal
fdo-manufacturing-client plain-didoes not work.