[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