taler-docs

Documentation for GNU Taler components, APIs and protocols
Log | Files | Refs | README | LICENSE

commit b23316a6f6f0b3f258085f382a7d732cb03e0fa5
parent b6dc037bfc2301e52bb053f489b89e8ae782a5c6
Author: Martin Schanzenbach <schanzen@gnunet.org>
Date:   Tue,  7 Oct 2025 12:14:03 +0200

typos and notes

Diffstat:
Mdesign-documents/070-alias-directory-mailbox.rst | 52++++++++++++++++++++++++++++++++++++----------------
1 file changed, 36 insertions(+), 16 deletions(-)

diff --git a/design-documents/070-alias-directory-mailbox.rst b/design-documents/070-alias-directory-mailbox.rst @@ -19,16 +19,14 @@ and web service while maintaining the respective privacy guarantees. Motivation ========== -The Digital Euro is current in development and as a part of it the +The Digital Euro is currently in development and as a part of it the so-called "Alias Lookup Service" is being developed for at least 28 Millon Euros (Tender "PRO-009485"). To enable peer-to-peer payments for the GNU Taler payment system between users such a directory service and lightweight inbox service are also required. -But, this service one the one hand has delicate privacy requirements not found -in . We believe that the estimated development costs from the ECB tender -are unreasonably and unexplicably high and we can demostrate how an efficient, +are unreasonably and unexplicably high. We can demostrate how an efficient, privacy-friendly and lean service that offers this kind of functionality can be developed within this proposal at a fraction of the cost of the "Alias Lookup Service": @@ -106,33 +104,55 @@ Bob wants to request money from Alice. He opens his Taler wallet and opens the `Send to Friend` screen from the menu. The screen consists of a search input and an Alias type selector. Bob selects the Alias type (e.g. GitHub or Email) and inputs Alice's Alias. -If not found, Bob canno use this feature. +This will initiate a lookup request to the :ref:`Taldir API <api-taldir>`. +If no results were found, Bob cannot use this feature. If found, Bob will be able to proceed to create a payment request. A screen that allows to create a payment request is shown to Bob. -Once Bob has input all necessary details, the payment request is sent to -Alice's Mailbox URI. -This request may fail if Alice's Mailbox is full (See also :ref:`Mailbox API <api-mailbox>`). - +Once Bob has entered all necessary details, the payment request is sent to +Alice's Mailbox URI through the :ref:`Mailbox API <api-mailbox>`. +This request may fail, for example if Alice's Mailbox is full. **Note**: It makes sense to use something like HPKE to encrypt the payment request - to Alice's Wallet Public Key. + to Alice's Wallet Public Key. In general, the Payment Request payload is undefined. We require (probably) a unique request ID in order to properly handle resending payment requests in UC-4. US-3: Receive Payment Request ----------------------------- Prerequisites: Alice has installed Taler Wallet, Alice has registered an Alias. -Alice's Wallet periodically checks her Mailbox (:ref:`Mailbox API <api-mailbox>`) -for new payment requests. -If a new payment request is found the Wallet should notify Alice. +Alice's Wallet periodically checks her Mailbox using the :ref:`Mailbox API <api-mailbox>` +for new payment requests and downloads the messages locally. +Remote messages are deleted after download. + + **Note**: When are local messages deleted? + +If a new payment request ID is found the Wallet should notify Alice. + + **Note**: Notice request *ID*. This requires requests to have unique IDs. Also, maybe notifications should happen even if the ID is already seen, but the message is new. + The wallet provides a screen with payment request overviews (list of messages -in the mailbox). +in the local mailbox). Alice selects Bob's payment request either through the notification or from the list of payment requests. Alice creates a P2P payment based on the metadata in the payment request. -Upon completion of the payment, the request is deleted from the Mailbox. -She may also decline to pay and delete the payment request. +She may also decline to pay. + +US-4: Resend Payment Request +---------------------------- + +Prerequisites: Bob has sent a Payment Request to Alice + +Bob opens the screen in the Wallet that displays sent payment requests. +Bob may resend a payment request to Alice using a Button. +This sends the request to Alice's mailbox again. + +Open Questions +============== + +- Payment Request Message unspecified. + - Requests should probably have an ID. + - Requests should probably be encrypted (HPKE?) Proposed Solution =================