We have created the trust_chain parameter for the authz request of the automatic client registration.
This was a successful decision however it extended the parameters recognizable in OIDC Core 1.0.
For equal benefit I would like to remove this parameter and move the trust_chain inside the JWT header of the signed request.
This allows us to define the trust_chain parameter within the JWTs, and to use the Federation trust chain in all cases where a signed JWT would like to carry verifiable proof of the trustworthiness of its issuer.
What is now clear to me is the similarity of the x5c parameter (x509 certificate chain) with the federation trust chain. However, we know that the federation trust chain brings with it much more functionality than an x509 certificate chain in the strict sense.
currently a JWT can carry the claims jwk, kid or x5c. To these I propose to add "trust_chain" and make this not in conflict with the presence of the "kid" claim, since the trust chain carries more than one jwk. I therefore consider it appropriate to bring trust_chain together with the presence of kid or jwk.
Defining the trust_chain parameter within the Federation would enable some important features, such as that of offline verifiability or the consistency of a JWT for historical verifications
The PR below aims to resolve this issue
https://bitbucket.org/openid/connect/pull-requests/518