-
Notifications
You must be signed in to change notification settings - Fork 108
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Question about libspdm_check_request_flag_compatibility #2970
Comments
No, that was added before SPDM 1.3 in #1512. The rationale is that if the Responder knows the Requester's public key then the Responder needs to be able to verify it, either through key exchange or challenge (which is deprecated). However there is an issue with SPDM 1.3 and the current check. In particular if a Requester sets Note that this check might be overzealous. In particular there might be a Requester that only signs VDMs, in which case the Responder would reject its capabilities. |
Thanks for background but why would the Responder always need to be able to verify the public key? The Responder might not support KEY_EXCHANGE at all. |
There is no check because there would be nothing to do. From the Responder's point-of-view what does a Requester with
mean? The Responder can somehow get the Requester's certificate chain and public key, but there are no messages for the Requester to sign with the private key, and no messages for the Responder to verify with the public key. Seems like an illegal combination. |
But it is still a valid combination in the spec and should not fail the capability check. |
As you pointed out, in SPDM 1.3 it would (probably) be more explicitly illegal. But the logic still stands for the specifications before 1.3.
The rationale is that an endpoint does not want to talk to a buggy or misconfigured endpoint. If This had been previously discussed in #2329 (comment) and I floated the idea of |
Hi,
I was wondering about the following check in libspdm_check_request_flag_compatibility().
libspdm/library/spdm_responder_lib/libspdm_rsp_capabilities.c
Lines 101 to 103 in 9cf032b
I guess this check is added based on the following 1.3 spec change. If that's case, should we check this only when version >= 1.3?
The text was updated successfully, but these errors were encountered: