Hi Giuseppe,

We are on different tracks.

There is however a common point in our two approaches: "however, we assume that the Wallet Instance had an internet connection within the last 24h". However, there is no need to present an "OAuth Status Attestation" to a verifier.

IMO, neither the "Token Status List", nor to the "OAuth Status Attestations" are the right way to address two privacy considerations: "Unlinkability between verifiers" and "Untrackability by digital credential issuers".

Anyway, none of these two approaches would be usable with digital credentials signed using BBS+.
A single solution able to work in all cases would be preferable.

It can be supported by including an additional field in a digital credential: a policy identifier.

A policy identifier included in a digital credential would indicate that this digital credential, when stored in a wallet, is still under the control of its digital credential issuer.

An I-D would be necessary (and sufficient) to define such policy identifier.

Denis

Ciao Denis,

OAuth Status Attestation was born because of some different approches with the oauth status list token, I really would like to have a single specification with the two approaches.

I report below and explain the main differences between the status attestation and the status list token.

Taken from status list editor's copy draft
>  This (Status List Token) allows for the Status List Token to be hosted by third parties or be transferred for offline use cases.

it is not clear how:

- the token is rquested and obtained and used
- why it would be hosted by a third party
- the meaning of "transferred"

AFAIK this token reference a status list, with url and index, allowing a RP to control over time the status of a credential. It is not clear the scope of this token, in my assumption it represent a long lived attestation of the historical status of a credential and that's fine, but doesn't protect user privacy against revocation status checks over time by unallowed RP.

Here the summary of the razionale behind OAuth Status Attestation

Use Case Scenario:
- A Verifier needs to check the status of a given Credential only during the presentation flow. - A Verifier is not allowed to check the status of a Credential over time (after it was presented by the Holder), due to some privacy constraints. - No internet connection is available during the presentation phase (however, we assume that the Wallet Instance had an internet connection within the last 24h).

The idea:
The Credential Issuer provides the Wallet Instance with a Status  Attestation, which is bound to a Digital Credential.  This allows the Wallet Instance to present it, along with the Digital Credential itself, to a Verifier as proof of the Digital Credential's non-revocation.

Merging the two approaches or extending OAuth Status List with OAuth Status Attestations is always possibile if the authors wants do this, I want do this if resonable to you and the WG as well,
best




Il giorno mer 7 feb 2024 alle ore 09:03 Denis <denis.i...@free.fr> ha scritto:

    Hi Guiseppe,

    In your reply, you cut the main content of my original text and
    hence you didn't reply to it.

    In addition, you missed to pay attention to the email I sent
    yesterday in my response to "I-D Action:
    draft-ietf-oauth-status-list-01.txt".

    I copy some parts of it below:

        Another approach would be to consider that it is not the job
        of the verifiers to check the “non-revoked” status of the
        digital credentials they verify,
        but that it is the job of the Holder (application). This would
        be a “Holder centric” approach.

        The Holder (application) needs to be a Trusted Application
        (TA) that can be trusted by the digital credential issuer to
        effectively control
        and limit the use of some cryptographic keys and that cannot
        be modified by an individual. A “digital identity wallet” is
        the prime example of a TA.

        In the real-life, a “*digital identity wallet*” is supported
        by a smart phone or a tablet which will usually be online as
        soon as some network is locally available.

        When a digital credential is requested by a Holder at the
        initiative of an individual, the base URL of the digital
        credential issuer needs to be provided.
        Such base URL can be built-in the downloaded Holder
        (application), added when a revision of that Holder
        (application) is available or manually entered by the individual.

        An access point to contact the digital credential issuer can
        be derived from the base URL of the digital credential issuer.
        Once a digital credential has successfully been downloaded by
        the Holder, this access point can be used by the Holder to
        dialogue with the digital credential issuer
        as soon as the smart phone or tablet is online.

        During this dialogue, if some entity asked to a digital
        credential issuer the revocation or the suspension of a
        digital credential still within its validity period,
        the digital credential issuer can freeze (i.e. suspend) the
        use of that digital credential. A policy may be put in place
        to say that if no contact has been possible
        with a digital credential issuer during some period of time,
        the use of each digital credential issued by that digital
        credential issuer will be frozen by the Holder.
        As a consequence, *if a digital credential has been able to be
        used by a Holder, this means that it has not been frozen*.
        A digital credential can later be unfrozen by its digital
        credential issuer.

        If there is a desire to freeze all the digital credentials
        stored in an app, the TA Manager of that app would be in a
        position to do that.

        In the context of the “Issuer-Holder-Verifier model”, the
        above descriptions are sketches of possible approaches that
        highlight the fact that,
        the "Token Status List" approach might not be the best way,
        nor the simplest way, to support the two following privacy
        properties:
        “Unlinkability between verifiers“ and “Untrackability
        by**digital credential issuers”.

    Theses approaches are alternatives to
    draft-demarco-status-attestations-01 and to the"Token Status List"
    approach that would be simpler to implement.

    Also note that, at the moment,
    draft-demarco-status-attestations-01 does not contain a "Privacy
    considerations" section.


    Denis

    Hi Denis,

    sorry for the delay, below by points.

    > A *digital credential* may be presented to a verifier long
    after it has been issued.

    In the abstract we say what's the status attestation. Probably
    it's an editorial suggestion from you to say what's the
    substantial difference between the digital credential and its
    status attestation. the subject of this specification is the
    status attestation, not the digital credential which the status
    attestation is referred to.

    > Entity that relies on the validity of the *digital proof*
    presented to it.

    verifiers validate the digital credentials and these can have
    different revocation check mechanisms (or no one). I'd keep the
    digital credential as the most important landmark for the
    verifier, where the status attestation is a sort of annex of that.

    > This does not correspond to the flows of the figure.

    The picture contains two distinc moments: the provisioning of the
    attestation (that currently in the specs is online only) and the
    presentation of it (that works fine in the offline scenario).

    I'll look forward for other interactions about this specs,
    probably by voice it would be everything more easy to explain,
    thank you for the hints!
    best


_______________________________________________
OAuth mailing list
OAuth@ietf.org
https://www.ietf.org/mailman/listinfo/oauth

Reply via email to