Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Delivery of offered goods #2

Open
wants to merge 9 commits into
base: guilt/offers
Choose a base branch
from

Commits on Apr 16, 2021

  1. BOLT 7: variable message onion message support.

    These use onion encoding for simple one-way messaging: there are no error returns.
    
    Any reply is done with an enclosed blinded path.
    
    Note that this defines the message system, not the contents of messages
    (e.g. invoice requests from offers).
    
    Signed-off-by: Rusty Russell <[email protected]>
    rustyrussell committed Apr 16, 2021
    Configuration menu
    Copy the full SHA
    b47c545 View commit details
    Browse the repository at this point in the history
  2. BOLT 4: More notes on blinding, and a general matching requirement.

    If we supply a reply_path, we *must not* respond if we get a message
    which doesn't use it.  Similarly, we must not respond to requests via
    a reply_path except the exact reply we want.
    rustyrussell committed Apr 16, 2021
    Configuration menu
    Copy the full SHA
    1006d88 View commit details
    Browse the repository at this point in the history
  3. BOLT 1: add bip340sig type.

    Signed-off-by: Rusty Russell <[email protected]>
    rustyrussell committed Apr 16, 2021
    Configuration menu
    Copy the full SHA
    b49e2a4 View commit details
    Browse the repository at this point in the history
  4. BOLT 1: Add utf8 type.

    It's far easier to validate these on parsing than to hand-validate them
    elsewhere.
    
    I didn't turn `alias` or `error` into this, though they're similar
    (`alias` can have a nul terminator).
    
    Signed-off-by: Rusty Russell <[email protected]>
    rustyrussell committed Apr 16, 2021
    Configuration menu
    Copy the full SHA
    669ad39 View commit details
    Browse the repository at this point in the history
  5. tools/spellcheck.sh: more generally ignore things inside ``.

    Signed-off-by: Rusty Russell <[email protected]>
    rustyrussell committed Apr 16, 2021
    Configuration menu
    Copy the full SHA
    65643ea View commit details
    Browse the repository at this point in the history
  6. BOLT 12: offers, third draft

    A BOLT11 "invoice" has proven too low-level for human use in many
    scenarios.  Efforts like lnurl have covered the gap, but integrating
    some of such higher layers into the lightning protocol itself has many
    advantages.
    
    This draft defines three new things:
    
    1. A new invoice format.  I know, this is painful, but it maps almost
       1:1 to the current format (though signatures are very different),
       is easier to implement, and easier to send via the lightning
       network itself.
    
    2. Formats for an "offer", which for all intents and purposes serves
       as the new, persistent invoice for users.  It can also be a "send_invoice"
       offer, which is an offer to send money (refund, withdrawl).
    
    3. Format for an "invoice_request": this is a message sent via the
       lightning network itself to receive the real invoice.
    
    Signed-off-by: Rusty Russell <[email protected]>
    rustyrussell committed Apr 16, 2021
    Configuration menu
    Copy the full SHA
    c564643 View commit details
    Browse the repository at this point in the history
  7. fixup! BOLT 12: offers, third draft

    Make spellchecker happy.
    rustyrussell committed Apr 16, 2021
    Configuration menu
    Copy the full SHA
    41b5680 View commit details
    Browse the repository at this point in the history
  8. BOLT 12: allow replacement of previous invoices, make signature on in…

    …voice_request compulsory
    
    We can ask the vendor to discard the previous invoice in the case of
    stuck payments: this discarded invoice gets mirrored into the new
    invoice, so if they actually don't do it and take both payments we can
    prove it.
    
    We need a signature using payer_key here, otherwise someone else could
    cancel our invoice.  We previously only needed that signature for
    recurrence; now we rename it and make it always present for
    simplicity.
    
    Signed-off-by: Rusty Russell <[email protected]>
    rustyrussell committed Apr 16, 2021
    Configuration menu
    Copy the full SHA
    fc8aab7 View commit details
    Browse the repository at this point in the history

Commits on May 11, 2021

  1. offers: add scheme for required delivery info

    Provide lightweight mechanism for peer to send info about the delivery
    of paid goods to the peer.
    
    Lightly structured, with provided extensibility
    niftynei committed May 11, 2021
    Configuration menu
    Copy the full SHA
    f5cb170 View commit details
    Browse the repository at this point in the history