[OpenID-Specs-eKYC-IDA] Issue #1274: Review of country codes in the eKYC / IdA spec, suggestion for uniform preference (openid/ekyc-ida)

Vladimir Dzhuvinov issues-reply at bitbucket.org
Tue Dec 28 11:22:19 UTC 2021


New issue 1274: Review of country codes in the eKYC / IdA spec, suggestion for uniform preference
https://bitbucket.org/openid/ekyc-ida/issues/1274/review-of-country-codes-in-the-ekyc-ida

Vladimir Dzhuvinov:

The spec makes use of country codes in four places. There appears to be a general preference for the 3-letter codes, however the `place_of_birth.country` code deviates from that - in fact it allows only for 2-letter codes \(unless we have a former country / territory, allowing for their 4-letter codes\). Unless there is a specific reason to have this, our suggestion is to bring the `place_of_birth.country`code in line with the rest.

‌

We also noticed that some of the places where a country code is defined refer to the ISO spec, others to the ICAO spec. We don’t know if this is intentional. If it is a note to implementers might be helpful.

‌

This is a summary of the country codes appearing in the current spec \(v12\):

‌

In the `place_of_birth.country` claim:

[https://openid.bitbucket.io/eKYC-IDA/openid-connect-4-identity-assurance-1\_0-master.html#section-4.1](https://openid.bitbucket.io/eKYC-IDA/openid-connect-4-identity-assurance-1_0-master.html#section-4.1)

> `place_of_birth.country`: String representing country in \[[ISO3166-1](https://openid.bitbucket.io/eKYC-IDA/openid-connect-4-identity-assurance-1_0-master.html#ISO3166-1)\] Alpha-2 \(e.g., DE\) or \[[ISO3166-3](https://openid.bitbucket.io/eKYC-IDA/openid-connect-4-identity-assurance-1_0-master.html#ISO3166-3)\] syntax.

‌

In the `nationalities` claim:

[https://openid.bitbucket.io/eKYC-IDA/openid-connect-4-identity-assurance-1\_0-master.html#section-4.1](https://openid.bitbucket.io/eKYC-IDA/openid-connect-4-identity-assurance-1_0-master.html#section-4.1)

> `nationalities   array  End-User's nationalities using ICAO 3-letter codes [ICAO-Doc9303], e.g., "USA" or "JPN". 2-letter ICAO codes MAY be used in some circumstances for compatibility reasons.`

‌

In the address claim:

[https://openid.bitbucket.io/eKYC-IDA/openid-connect-4-identity-assurance-1\_0-master.html#name-extended-address-claim](https://openid.bitbucket.io/eKYC-IDA/openid-connect-4-identity-assurance-1_0-master.html#name-extended-address-claim)

> `country_code`: OPTIONAL. country part of an address represented using an ISO 3-letter code \[[ISO3166-3](https://openid.bitbucket.io/eKYC-IDA/openid-connect-4-identity-assurance-1_0-master.html#ISO3166-3)\], e.g., "USA" or "JPN". 2-letter ISO codes \[[ISO3166-1](https://openid.bitbucket.io/eKYC-IDA/openid-connect-4-identity-assurance-1_0-master.html#ISO3166-1)\] MAY be used for compatibility reasons. `country_code` MAY be used as alternative to the existing `country` field.

‌

‌

As `country_code` parameter in the document and electronic record evidences, and also via the extended `address.country_code` parameter in the vouch, utility bill evidences \(see above\):

[https://openid.bitbucket.io/eKYC-IDA/openid-connect-4-identity-assurance-1\_0-master.html#section-5.1.1.1](https://openid.bitbucket.io/eKYC-IDA/openid-connect-4-identity-assurance-1_0-master.html#section-5.1.1.1)

[https://openid.bitbucket.io/eKYC-IDA/openid-connect-4-identity-assurance-1\_0-master.html#section-5.1.1.2](https://openid.bitbucket.io/eKYC-IDA/openid-connect-4-identity-assurance-1_0-master.html#section-5.1.1.2)

> `country_code`: OPTIONAL. String denoting the country or supranational organization that issued the document as ISO 3166/ICAO 3-letter codes \[[ICAO-Doc9303](https://openid.bitbucket.io/eKYC-IDA/openid-connect-4-identity-assurance-1_0-master.html#ICAO-Doc9303)\], e.g., "USA" or "JPN". 2-letter ICAO codes MAY be used in some circumstances for compatibility reasons.


More information about the Openid-specs-ekyc-ida mailing list