to who, when and how are forwarded, to easily use
metrics such as reputation, trust or risk to make de-
cisions, to use pseudonyms, etc. To avoid significant
modifications in the current specification of OpenID
Connect/Mobile Connect, we propose this mitigation,
mainly, as an implementation improvement, extend-
ing the IdP standard functionalities with an additional
service provider, the Privacy Arbiter or PA (instead
of the aforementioned Validation Service, or actually,
extending it). This new provider should not have,
ever, the aforementioned dual-role (RP and PA at the
same time), avoiding therefore the threat of amplifi-
cation that arises from account compromises, etc.
Figure 4 shows the Authorization Code flow with
OpenID Connect when a Privacy Arbiter is used (it
can be also used with the Implicit Flow, it is only an
example). As in previous mitigations, some kind of
agent running on end users’ side (a browser plugin, an
app: some component at the User Agent) is required.
Again, when the step 5 of Figure 4 takes place, the end
user not only performs her authentication or gives her
consent, she also decides, explicitly, which attributes
of her PII can be revealed to the RP when the PII is
shared with the RP using the Standard Claims of the
ID token. This would be the first modification affect-
ing the current OpenID Connect specification.
The second modification is related to the UserInfo
Endpoint, no longer required since the sharing of ad-
ditional PII with RPs will be performed, if necessary,
through the Privacy Arbiter. When the RP presents
the Access Token at the IdP, the IdP has to redirect
this information request to the Privacy Arbiter speci-
fied by the End User during her registration process.
4.4 Validation
All proposed mitigations have been validated and
evaluated in a controlled lab reproducing real use
cases like those introduced in the Motivation section.
The proposed privacy improvements at the IdP in-
frastructure have been implemented through a proxy
(located before the IdP), proposed measures and best
practices act as a wrapping improving current solu-
tions without changing core implementations, adding
as a new layer additional privacy capabilities.
The development of the plugin/app for the end
user and of a complete Privacy Arbiter are out of the
scope of this research, in our experiments for valida-
tion and evaluation their behaviour has been assessed
with very preliminary prototypes executing only their
essential functionalities. As a proof of concept, to
know how easy or complicated it would be for RPs
to adapt to the proposed improvements when working
with the most popular IdPs, Facebook and Google,
we have extended the Facebook ID PHP SDK (Face-
book, 2018) and the Google’s OAuth 2.0 APIs in
Python (Google, 2018) to implement all the specifi-
cation modifications and best practices proposed to
mitigate privacy threats and it only required a little
more than 60 code lines.
It has to be pointed that the costs of incorporating
proposed mitigations comes from required changes
in current software projects, not from a significant
increase in the computational complexity of using
OpenID Connect (not in terms or resource - CPU,
memory - consumption). This complexity is in-
creased only by using cryptographic mechanisms and
in this case all the burden falls on the IdP (Twitter,
Facebook or Google ) and on the new Privacy Arbiter,
therefore, on the agents of the flow in possession of
large and powerful resources.
As it can be observed, almost all proposed miti-
gations imply changes in the OpenID Connect core
specification, but the two first trying to add certain
aspects that until now has been considered out of its
scope (use of encryption for PII, meaning of the sub
parameter of the ID token). Only the proposal of the
Privacy Arbiter can be considered a significant modi-
fication to the current specification approach. But we
think that it is conveniently justified given the intro-
duced threat model and that our proposal minimizes
required modifications in the specification.
5 CONCLUSION
When considering to offer a new e-Government ser-
vice, public administrations must analyse what form
of eID is most secure, robust, scalable, compliant with
regulations and laws, technically feasible, economi-
cally acceptable, socially inclusive and easy to use for
citizens within the specific considered context. Nowa-
days, an additional value is that electronic identities
can be used for cross-border transactions. It is very
likely that the result of this analysis will lead to the
deployment of a FIM based on OpenID Connect or
Mobile Connect. If this is the case, the IdP can be
controlled by the own government or it can be a third-
party such as Facebook, Google, Twitter, an MNO, an
assurance company or a bank. Governments should
ensure that citizens without third party-issued elec-
tronic identities are not excluded from e-Government
services, citizens cannot be forced to enrol with a
private company. All threats identified in our threat
model must be thoroughly considered before making
this decision.
Finally, proposed mitigations and measures
should be deployed. We have checked that the en-
SECRYPT 2019 - 16th International Conference on Security and Cryptography
354