Alice <--50--> Bob <--50--> Steve <--50--> Anna
Here, each arrow denotes a payment channel with capacity
N eth. What is, step by step, the algorithm used to route a 10 eth payment between Alice and Anna? Please, include, at each step, how each party should react to the possibility of one party not following the protocol.
What I have tried
I have read some explanations but I'm missing the fine details. On that case, I assume, it'd go like this:
Anna generates a random secret, sends its hash to Alice.
Alice signs to send 10 eth to Bob given Alice's secret.
Bob signs to send 10 eth to Steve given Anna's secret.
Steve signs to send 10 eth to Anna given her secret.
Anna reveals her secret to Steve.
Steve reveals it to Bob.
Bob reveals it to Alice.
Alice now knows Anna received the payment, everyone else knows their balance are equal.
But that's pretty simple, so I'm not sure if I actually got it right. In particular, worried if one of those parties could just drop the protocol at any point to a personal benefit.