Functional Specifications
User Stories
Holder
User Stories

Holder

H.1 Receive Attestation

As an authorized representative I want to receive an Attestation from an Attestation Provider in the Organizational Wallet, so that the Legal Entity and any of it's representatives can use the Attestation in the future.

H.2 Request Attestation

As an Authorized Representative I want to request issuance of an Attestation to the Organizational Wallet from an Attestation Provider.

H.3 View Attestation in Organizational Wallet

As an Authorized Representative I want to view the Attributes of an Attestation stored in the Organizational Wallet, so that I can check certain details of the Attestation such as the issuance date, the expiration date, the revocation state, and other attributes.

H.4 Renew Attestation in Organizational Wallet

As an Authorized Representative I want to renew an Attestation stored in the Organizational Wallet, so that Attestations that are revoked, expired, or otherwise invalid can be renewed.

H.5 Delete Attestation in Organizational Wallet

As an Authorized Representative I want to be able to delete an Attestation stored in the Organizational Wallet, so that Attestations that are no longer needed can be deleted.

H.6 Auto Renew Attestation in Organizational Wallet

As an Organizational Wallet I want to auto-renew an Attestation stored in the Organizationl Wallet that are configured to auto-renew and about to expire, so that Attestations in the Organizational Wallet are valid when they need to be used.

H.7 Present Attestations to Relying Party

As an Authorized Representative I want to present one or more Attestations stored in the Organizational Wallet in response to a request from a Relying Party to present Attestations, so that the Relying Party can verify certain Attributes about the Legal Entity or it's Authorized Representatives.

H.8 Configure Trust Frameworks

As an Authorized Representative I want to configure a list of trusted Trust Frameworks within the Organizational Wallet, so that an Attestations issued by an Attestation Provider, or a presentation request from a Relying Party can be verified against the trusted Trust Frameworks.

H.9 Verify Trust Framework of Attestation Provider or Relying Party

As an Authorized Representative I want to verify the Trust Framework an Attestation Provider or Relying Party the Legal Entity interacts with through the Organizational Wallet, so that the Legal Entity can be sure it interacts with ...?

H.10 Receive Wallet Attestation

As an Organizational Wallet I want to receive a Wallet Attestation from the Wallet Provider, so that an Attestation Provider can verify the authenticity of the Organizational Wallet.

H.11 Present Wallet Attestation when receiving Attestation

As an Organizational Wallet I want to present a Wallet Attestation to the Attestation Provider before receiving an Attestation, so that the Attestation Provider can verify the Wallet Provider and assure the Organizational Wallet conforms to the requirements for issuing the Attestation. For example, that the Organizational Wallet supports hardware bound cryptgraphic keys and thus Attestations issued to the Organizational Wallet can only be presented from the Organizational Wallet.

H.12 Attestation Duplication Prevention

Note sure if this is the best way to write the user story. The requirement is clear: prevent duplication of Attestations by leveraging hardware bound cryptographic keys.

As an Organizational Wallet I want to prevent duplication of received Attestations, for example by using cryptographic keys generated bound to specific hardware, so that the Attestation can only be presented when the Organizational Wallet is involved in the presentation of the Attestation