-
Notifications
You must be signed in to change notification settings - Fork 0
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
Generated DID not accepted by Gaia-X Compliance API #4
Comments
solved via #3 |
Iff the
Judging from the documentation alone, both no. 1 and no. 2 should work as any of the fields that the API is complaining about are stated to be optional. No. 3 currently only works if |
Comments regards "Missing x5u field for RSA type verificationMethod"Configuration of scs-did-generator
The #JWK2020-RSA-0 one is missing the x5u field and is rejected by the Gaia-X Compliance API: DID generator supports JWK as verification method. JWK Standard allows different key formats, see section 4. There are:
DID generator supports the first three. Each format requires other settings in config.yaml. Obviously, documentation of DID generator is not clear with respect to verification methods. I will improve this. See #9. Mandatory optional attribute
|
You are right. It is intended, that scs-did-generator creates Gaia-X non-compliant verification methods. The reason behind is, that scs-did-creator should be more generic that Gaia-X requirements. I admit, documentation has to be updated, which is part of #9 |
Missing "alg" fieldYou are right, I observed the same and forwarded this issue to Gaia-X, see #75... In the meantime, @markus-hentsch already added missing "alg" attribute via #6 to be compliant with Gaia-X. |
I tried the DID creator and the JSON it produced to verify the compliance process I described in the upcoming blog post about Gaia-X compliance credentials.
Input `config.yaml` (click to expand ...)
A `did.json` generated by scs-did-creator (click to expand ...)
The generated DID fails to work with the Compliance API of Gaia-X.
Missing
x5u
field for RSA typeverificationMethod
I intuitively filled in both
keys
andx509s
in theconfig.yaml
.This seems a misinterpretation on my side (
keys
is not necessary ifx509s
is specified because the public key is downloaded from the URL anyway).This inevitably led to two
verificationMethod
s being generated:did:web:gaia-x-testing.cloudandheat.com#JWK2020-RSA-0
did:web:gaia-x-testing.cloudandheat.com#JWK2020-X509-1
The
#JWK2020-RSA-0
one is missing thex5u
field and is rejected by the Gaia-X Compliance API:In all existing examples1, the
x5u
field is always present and the JSON only contains oneverificationMethod
entry.The Gaia-X DID documentation categorizes the
x5u
field as "should" but it seems mandatory nonetheless.The alternative
x5c
is mentioned in the documentation as well but also rejected with the same error message.I'm not entirely sure but this makes it seem like the Gaia-X Compliance API is not correctly following its own standards.
Having generated the
#JWK2020-RSA-*
type by accident (fromkeys:
in the YAML) I'm wondering if that type is actually useful to have in scs-did-creator if it is not accepted by the Gaia-X API at all.On the other hand, maybe the API is just misbehaving currently as noted above.
Nonetheless, omitting the
keys:
input will result in a single entry with the correctx5u
field but leads to the next problem (see below).Missing
alg
fieldEven when only using the
x509s
input and generating a singleverificationMethod
that does include thex5u
field, it is still rejected by the Gaia-X Compliance API:The existing examples1 also include this field.
Although RFC7517 categorizes this field as optional, Gaia-X seems to mandate it.
I have not found any mentioning this in the Gaia-X documentation and its referenced standards yet hinting at this restriction.
Adding the
alg
field by hand makes the DID being accepted by the Gaia-X Compliance API.Summary
#JWK2020-RSA-*
type (resulting fromkeys:
config entries) is rejected by the Gaia-X Compliance API due to the missingx5u
field; hence it's usefulness is debatable but maybe this is an issue with Gaia-X's API implementationx5c
field as a replacement forx5u
alg
field ofpublicKeyJwk
is missing but mandated by the Gaia-X Compliance APIFootnotes
examples of existing DIDs are the DID JSON template of gaia-x-101 and the
did.json
hosted at Gaia-X Lab referenced asdid:web:registration.lab.gaia-x.eu:v1#X509-JWK2020
when receiving a signed LRN VC from the Registration API ↩ ↩2The text was updated successfully, but these errors were encountered: