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

Topics: Add Swap-in Potentiam (SIP) #1538

Open
wants to merge 10 commits into
base: master
Choose a base branch
from
71 changes: 71 additions & 0 deletions _topics/en/swap-in-potentiam.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
---
title: Swap-in Potentiam (SIP)

## Optional. test Shorter name to use for reference style links e.g., "foo"
## will allow using the link [topic foo][]. Not case sensitive
shortname: swap-in potentiam

## Optional. An entry will be added to the topics index for each alias
#aliases:
# - Foo

## Required. At least one category to which this topic belongs. See
## schema for options
categories:
- Contract Protocols
- Lightning Network

## Required. Use Markdown formatting. Only one paragraph. No links allowed.
## Should be less than 500 characters
excerpt: >
**Swap-in-Potentiam (SIP)** is a protocol designed to enable the immediate transfer
of already-confirmed onchain Bitcoin funds to the Lightning Network, lowering
trust requirements by precommitting to an LSP and incorporating a timeout
arshbot marked this conversation as resolved.
Show resolved Hide resolved
mechanism for unilateral access.

## Optional. Produces a Markdown link with either "[title][]" or
## "[title](link)"
primary_sources:
- title: Moving Onchain Funds "Instantly" To Lightning (Jesse Posner, ZmnSCPxj)
link: https://lists.linuxfoundation.org/pipermail/lightning-dev/2023-January/003810.html

- title: LSPS C= Extension, Swap-in-Potentiam
link: https://github.com/ZmnSCPxj-jr/swap-in-potentiam/blob/master/doc/swap-in-potentiam.md

## Optional. Each entry requires "title", "url", and "date". May also use "feature:
## true" to bold entry
optech_mentions:
- title: "Swap-in Potentiam Announced"
url: /en/newsletters/2023/12/20/#swap-in-potentiam

- title: Non-interactive LN channel open commitments
url: /en/newsletters/2023/01/11/#non-interactive-ln-channel-open-commitments
arshbot marked this conversation as resolved.
Show resolved Hide resolved

## Optional. Same format as "primary_sources" above
see_also:
- title: Hash Time Locked Contracts from Bitcoin Wiki
link: https://en.bitcoin.it/wiki/Hash_Time_Locked_Contracts
arshbot marked this conversation as resolved.
Show resolved Hide resolved

- title: Swap-in potentiam for Phoenix
link: https://gist.github.com/t-bast/5fd89979a8088b99d0b95c124902aa56

---
SIP is a [submarine swap](https://bitcoinops.org/en/topics/submarine-swaps/)
arshbot marked this conversation as resolved.
Show resolved Hide resolved
mechanism that differs from typical purely HTLC based submarine swaps by
arshbot marked this conversation as resolved.
Show resolved Hide resolved
allowing for a pre-commital stage. This allows for reusable swap addresses and
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is it important for the address to be reusable? Isn’t that a privacy hazard?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Isn’t that a privacy hazard?

Yes. But still useful, sought after, and a common usecase among retail users. Non-reusable addresses onchain are hard UX for the masses w/o proper education (which is friction).

Not to fight SIP's fights here, but an example where reusable addresses are useful are donation posters.

more flexibility with onchain funds.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How does locking up your funds with a prospective channel partner provide more flexibility? It provides an option on a channel open or splice, but wouldn’t the shared control make the funds less flexible for all other purposes?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Elaborated


In this scheme, the reusable swap address is a contract between Alice and Bob
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If the "reusable" aspect of the address is important, it should perhaps be further elaborated.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Elaborated

that allows for two spend paths; Alice and Bob cosign, or timeout before Alice
can spend unilaterally.
arshbot marked this conversation as resolved.
Show resolved Hide resolved

Once the swap address is funded and confirmed, Alice can choose one of the
following options; swap the funds into a new or existing lightning network
channel with the help of Bob, or send the funds to a new onchain address with
the help of Bob. Alice also has the third option of waiting for the recovery
timeout if Bob is offline or uncooperative.

SIP is primarily geared towards mobile users who may go offline for extended
periods of time. The main trick of SIP is splitting the confirmation
arshbot marked this conversation as resolved.
Show resolved Hide resolved
requirements between a pre-commital address and a commited address, allowing
arshbot marked this conversation as resolved.
Show resolved Hide resolved
for the immediate usage of funds when the mobile user comes online.
arshbot marked this conversation as resolved.
Show resolved Hide resolved