You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I think there are essentially two possible ways we could integrate HPKE into HAIP 1.1:
As new sections that are "VP + redirects + HPKE" and "VP + DC API + HPKE".
As options within the existing sections.
Option "1" seems hard to proceed for the redirect based flow; there would be no way for verifiers to know if HPKE was supported, and no way for them to make both HPKE & non-HPKE requests.
So option 2 seems like the way to proceed.
We cannot make breaking changes in HAIP 1.1, so we can't entirely remove ECDH-ES ( as issue #199 seemed to propose).
So I think the base position is:
Wallets MAY support JOSE-HPKE [using a profile for JOSE-HPKE defined in HAIP, see issue Profiling JOSE-HPKE for HAIP 1.1 #357 for discussion about how to profile it] for encrypting returned credentials. If a Wallet supports JOSE-HPKE and the Verifier request both ECDH-ES and HPKE, the Wallet SHOULD use HPKE. (I'm not strongly attached to 'SHOULD', 'MUST' might make sense too?)
Verifiers MAY support JOSE-HPKE. (meaning that when they make a request, they need to supply include both ECDH-ES for backwards compatibility with 1.0 and also HPKE in the request)
This would mean everyone can add HPKE, and if both sites support HPKE then HPKE 'should' be used.
The additional problem is that some ecosystems want to support only HPKE. If we want to allow these ecosystems to be HAIP compatible, we would need carve outs to allow this - something like:
Ecosystems MAY mandate that only HPKE is supported. In such ecosystems, both Wallets and Verifiers MUST support HPKE and, if they need to interoperate with other ecosystems that may not require HPKE, MAY support ECDH-ES.
I think there are essentially two possible ways we could integrate HPKE into HAIP 1.1:
Option "1" seems hard to proceed for the redirect based flow; there would be no way for verifiers to know if HPKE was supported, and no way for them to make both HPKE & non-HPKE requests.
So option 2 seems like the way to proceed.
We cannot make breaking changes in HAIP 1.1, so we can't entirely remove ECDH-ES ( as issue #199 seemed to propose).
So I think the base position is:
This would mean everyone can add HPKE, and if both sites support HPKE then HPKE 'should' be used.
The additional problem is that some ecosystems want to support only HPKE. If we want to allow these ecosystems to be HAIP compatible, we would need carve outs to allow this - something like: