Re: SPSP protocol for multi currencies ledgers

As someone who has done the difficult thinking on this subject for ~15
years, the protocol replaces the need for currency.

The purpose of currency is to facilitate a transaction.  Similarly, the
purpose of a standard protocol is to facilitate a transaction.  If that
protocol is designed to handle ALL functions of currency, the protocol
becomes the money.

See attached for the 'big picture' framework.  It's event-based contract
law with sufficient precision for computers.  Contact me with questions.
ILP's existing protocols can fit within this event-based conceptual
framework.  It fixes money permanently.




Andrew B. Brown
(512) 947-8282
http://KidsCourtyard.com


On Tue, Mar 7, 2017 at 4:15 AM, Evan Schwartz <evan@ripple.com> wrote:

> Great question. We are definitely interested in supporting cases where the
> receiver has multiple accounts on different ledgers. The main question is
> what layer to address this at.
>
> TL;DR: I think the best way to handle this is with a "personal ledger",
> and possibly supporting returning multiple addresses corresponding to the *same
> ledger* on the Application Layer.
>
> We've discussed these different approaches to handling multi-currency
> receivers:
>
>    1. *Interledger layer* - support "multihoming" at the lowest layer, so
>    you always give multiple addresses whenever you're dealing with ILP
>    addresses. If the different addresses correspond to different currencies
>    you also need to give different amounts and the sender will need to quote
>    all of them. This seemed overly complex and our conclusion was that at the
>    Interledger layer we should only be dealing with one address and one amount.
>    2. *Multiple currencies on the Application layer* - SPSP or another
>    protocol on the same layer could return an array of addresses and
>    currencies, as you suggest. This brings up a similar issue as on the
>    Interledger layer. If you give me an array of addresses that all correspond
>    to a different currency (that I don't know) and I get a quote for each of
>    them, I have no way of knowing what a "better" price is. The sender doesn't
>    have an easy way of choosing which address to send to.
>    3. *Dynamic response on the Application layer* - instead of the sender
>    choosing between different addresses, the receiver could. The receiver
>    could return a different ILP address depending on some parameters you
>    supply when querying for the receiver's details.
>    4. *Personal ledger *- if you want to receive a payment through one of
>    a set of currencies, you need a way to determine and express the exchange
>    rate between them, or between them and some common unit. You could run a
>    "personal ledger", denominated in whatever asset you choose (or your own
>    units). Then you'd have a connector between your personal ledger and the
>    other ledgers you have accounts on. The best rate to your ledger would be
>    determined through normal ILP quoting. The one addition that might be
>    useful on the application layer is returning an array of addresses that
>    correspond roughly to different ways to reach your personal ledger. In
>    contrast to the second option, the multiple addresses would all correspond
>    to the same ledger/"currency", so the sender would be able to quote
>    multiple and choose whichever one results in a higher destination amount
>    (or lower source amount for them).
>
> I also think there's an open question as to whether having multiple
> addresses qualifies for being included in the "Simple Payment Setup
> Protocol", or whether that feature would be best left for another
> Application Layer protocol.
>
> What do you think?
>
> On Mon, Mar 6, 2017 at 6:09 PM Didier Martin <didierphmartin@hotmail.com>
> wrote:
>
>> Hello,
>>
>>
>>
>> As it becomes more and more current that ledgers (from some banks)
>> support multicurrencies accounts, the SPSP spec shows singleton JSON
>> examples. What about mutilcurrencies? Noting is mentionned about returned
>> JSON arrays. Is it simply Something not part of the spec or simply
>> Something forgotten to be written about?
>>
>>
>>
>> Cheers
>>
>> Didier PH Martin
>>
>>
>>
>> Sent from Mail <https://go.microsoft.com/fwlink/?LinkId=550986> for
>> Windows 10
>>
>>
>>
> --
>
> Evan Schwartz
> Software Engineer
> Managing Director of Ripple Luxembourg
>

Received on Tuesday, 7 March 2017 10:36:07 UTC