Section 8: Example responses: Issues and comments

Issue #1271 resolved
Vladimir Dzhuvinov created an issue

After updating the OAuth / OIDC SDK to the latest draft 12 the new examples were made part of the automated tests. This revealed several issues when parsing the example responses JSON in section 8. Some of the encountered issues may need to be addressed in the spec itself. I will create separate tickets for those.

https://openid.bitbucket.io/eKYC-IDA/openid-connect-4-identity-assurance-1_0-master.html#name-id-document-deprecated-form

There appear to be two ways to get the response to parse successfully:

  • Change the evidence type to the deprecated id_document evidence (now it’s document).
  • Or change it so that it parses as the new document evidence (see spec):

    • The ID card details go into a document_details elements (now it’s details).
    • The document number becomes document_number , serial_number or person_number.

https://openid.bitbucket.io/eKYC-IDA/openid-connect-4-identity-assurance-1_0-master.html#section-8.14

  • Change the document element to document_details.

https://openid.bitbucket.io/eKYC-IDA/openid-connect-4-identity-assurance-1_0-master.html#section-8.10

  • The created_at in the example 1979-01-22 doesn’t fit the expected timestamp format.

created_at: OPTIONAL. The time the record was created as ISO 8601:2004 [ISO8601-2004] YYYY-MM-DDThh:mm[:ss]TZD format.

  • The assurance_level set to al_2 is not in the registry, it looks like al2 was intended here.
  • The place_of_birth.country claim uses a three letter code. According to the spec the code must be 2 or 4 letters.
  • There are decimal HTML entities in the place_of_birth.locality. See the JSON RFC for the standard string encoding.

https://openid.bitbucket.io/eKYC-IDA/openid-connect-4-identity-assurance-1_0-master.html#section-8.12

  • The voucher element contains the given_name and family_name parameters. According to the spec those should be communicated in the name parameter.
  • The place_of_birth.country claim uses a three letter code. According to the spec the code must be 2 or 4 letters.

https://openid.bitbucket.io/eKYC-IDA/openid-connect-4-identity-assurance-1_0-master.html#name-document-with-validation-an

  • According to the spec the issuer country code ITA should be communicated in the country_code parameter.
  • The place_of_birth.country claim uses a three letter code. According to the spec the code must be 2 or 4 letters.

https://openid.bitbucket.io/eKYC-IDA/openid-connect-4-identity-assurance-1_0-master.html#name-id-document-deprecated-form

https://openid.bitbucket.io/eKYC-IDA/openid-connect-4-identity-assurance-1_0-master.html#section-8.3

https://openid.bitbucket.io/eKYC-IDA/openid-connect-4-identity-assurance-1_0-master.html#section-8.4

https://openid.bitbucket.io/eKYC-IDA/openid-connect-4-identity-assurance-1_0-master.html#section-8.6

https://openid.bitbucket.io/eKYC-IDA/openid-connect-4-identity-assurance-1_0-master.html#section-8.7

https://openid.bitbucket.io/eKYC-IDA/openid-connect-4-identity-assurance-1_0-master.html#section-8.8

https://openid.bitbucket.io/eKYC-IDA/openid-connect-4-identity-assurance-1_0-master.html#section-8.10

https://openid.bitbucket.io/eKYC-IDA/openid-connect-4-identity-assurance-1_0-master.html#section-8.13

https://openid.bitbucket.io/eKYC-IDA/openid-connect-4-identity-assurance-1_0-master.html#section-8.14

"address": {
        "locality": "Maxstadt",
        "postal_code": "12344",
        "country": "DE",
        "street_address": "An der Weide 22"
}
"address": {
        "locality": "Karlstad",
        "postal_code": "65344",
        "country": "SWE",
        "street_address": "Gatunamn 221b"
}
"address": {
        "locality": "Imola BO",
        "postal_code": "40026",
        "country": "ITA",
        "street_address": "Viale Dante Alighieri, 26"
}

There are 9 example responses where a country code appears to be communicated in the address.country claim, defined in OIDC Core as “country name”. At the same time there are two examples where address.country is set to Monaco and UK. The address.country_code claim introduced by the eKYC spec appears the most appropriate here, with its purpose to identify a country in a way that is unambiguous and interoperable.

https://openid.bitbucket.io/eKYC-IDA/openid-connect-4-identity-assurance-1_0-master.html#section-8.2

https://openid.bitbucket.io/eKYC-IDA/openid-connect-4-identity-assurance-1_0-master.html#section-8.5

The place_of_birth.country claim where a country code is expected is set to UK (which is not a valid two-letter country ISO code).

Comments (6)

  1. Mark Haine

    specifically on the place_of_birth.country claim - where does it say the code must be 2 or 4 letters - I don’t believe that was the intent and the three letter examples are correct.

  2. Vladimir Dzhuvinov reporter

    A note that should the check_method PR gets merged virtually all of the examples will get affected.

  3. Vladimir Dzhuvinov reporter

    I'm closing this issue. We'll plug the new examples into the OIDC SDK and if something comes up I'll file a fresh ticket. Thanks!

  4. Log in to comment