I've carefully read the entire discussion. As I understand it, Lock's architecture is designed to support Lightning without exposing the private key to the network-facing component. What I still don't understand from the discussion is how Lightning state will be stored and updated securely. madebylock, could you explain this in more detail?
I'm interested on this as well.
Good question, it's a very small detail in the updated answers but a big question if it's feasible.
Unless it'll be handled by a third-party or custodial setup,
The common way to achieve this in a self-custodial way is to either require the treasury every time the user needs to use their channel(s),
Or to derive an extended private key from the master private key at a specific derivation path that'll be used for lightning network.
But the latter defeats the purpose of an air-gap setup (
at least on the LN side) even though the master prvKey is still safely stored there.