Could anyone please tell me if the state channels are unidirectional or bidirectional? Also, if a node goes off-line with an open channel, is it still able to receive transactions? I mean, not to sign but to receive something. I'm really curious about what would happen when there are short-term disconnections.

| improve this question | | | | |
  • My one is more specific. :)) But some answers under the previous post are interesting. – Yining Hu Mar 15 '18 at 2:05
  • Welcome to the Ethereum Stack Exchange! In the future, you need to try asking different questions in a separate thread :) – eth Mar 15 '18 at 2:13
  • Oh, thank you for letting me know. I'll be more careful with it. – Yining Hu Mar 15 '18 at 2:38

State channels are a general concept without a single implementation. State channels can be unidirectional or bidirectional (or even involve more than two participants). One participant going offline can be handled a number of ways, but generally after some amount of non-responsiveness, the online party resorts to an on-chain transaction.

| improve this answer | | | | |
  • May I ask another quick question? So my understanding is that none of participants has to stay online all the time. They only need to be online to update the state or respond to some request - is that correct? – Yining Hu Mar 15 '18 at 2:01

State channels don't really need or have a "direction" because they are a generalization and more powerful version of payment channels.

For example, the lack of "full" state is what may have led to the unidirectional and bidirectional terms. From this perspective, consider a unidirectional channel as one whose state is simply one value: "Alice's payment to Bob". Or consider a bidirectional channel as one that has 2 values: "Alice's balance" and "Bob's balance".

"Direction" is also different from how many parties can be participate in a state channel. You can have multiple parties in a state channel by setting it (usually a smart contract) to be updatable by multiple parties.

When a node goes offline, it can still receive "transactions" the same way that you can receive a token without needing to be online. If you mean will the node still be able to route transactions on the network, then it would not be able to. When there are disconnections, nodes need to find other peers along the channel path.

| improve this answer | | | | |
  • Thank you very much for the answer! It does clarify a lot of things. – Yining Hu Mar 15 '18 at 2:30
  • Now I'm having another question regarding nodes going offline. So if a rerouting is needed, basically a node has to open new a channel with deposit. Is there anything he could do with the previous payment path (on which some participants are not responding) or just wait until those channels expire? – Yining Hu Mar 15 '18 at 2:36
  • Better to ask in another thread; other people may write a good answer. – eth Mar 15 '18 at 2:39

Not the answer you're looking for? Browse other questions tagged or ask your own question.