-
Notifications
You must be signed in to change notification settings - Fork 47
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
bLIP-56: Pluggable Channel Factories. #56
base: master
Are you sure you want to change the base?
Conversation
a8cf032
to
55b73ed
Compare
Updated blip number to 56, as per PR number. |
55b73ed
to
82c7595
Compare
I think we should wait for a reference implementation, indicating that this will actually be used in practice before merging this bLIP. But it's fine to keep the PR open to guide future implementers! |
Hmm, I'm a bit confused about exact process (also related to #55), as
Wouldn't this indicate that bLIPs would get accepted (read: merged) in |
True, but if there is an implementation (or potentially multiple) that are in-progress: the goal of merging early in draft is mainly when more than one implementations are in-progress and they want to make sure they're building on the same foundations. I believe that we shouldn't accept bLIPs that nobody is actually implementing: if this is just a research protocol that should be iterated on before someone actually wants to use it, delving bitcoin is a better place. |
Alright, makes sense, thanks for clarifying! |
Channel factories are a way of scaling Bitcoin by hosting offchain channels, not directly onchain, but in another offchain mechanism. The hosting mechanism is called a channel factory. The channel factory can change the funding amounts of channels inside the factory, without any onchain transactions.
This pluggable channel factory protocol is a proposal by which base node software can handle channel state, while letting external code handle state of the channel factory. As far as the node software is concerned, the channel is a "0-conf" channel whose funding transaction never seems to confirm, even though the state is actually backed by an offchain mechanism that ensures that the channel can be unilaterally closed in the worst-case scenario.
When the channel factory wants to change the funding amounts of hosted channels, the node software acts as if a splice operation is being performed, which changes the funding amount (or not changes it, if it is other channels in the same factory that are changed but not this one). When the channel factory offchain mechanism has settled to a new state, it is as if a splice transaction was successfully deeply confirmed.