{"type":"rich","version":"1.0","title":"ZmnSCPxj [ARCHIVE] wrote","author_name":"ZmnSCPxj [ARCHIVE] (npub1g5…3ms3l)","author_url":"https://yabu.me/npub1g5zswf6y48f7fy90jf3tlcuwdmjn8znhzaa4vkmtxaeskca8hpss23ms3l","provider_name":"njump","provider_url":"https://yabu.me","html":"📅 Original date posted:2019-12-03\n📝 Original message:\nGood morning Rusty,\n\n\u003e \u003e Hi all,\n\u003e \u003e I recently revisited the eltoo paper and noticed some things related\n\u003e \u003e watchtowers that might affect channel construction.\n\u003e \u003e Due to NOINPUT, any update transaction can spend from any other, so\n\u003e \u003e in theory the tower only needs the most recent update txn to resolve\n\u003e \u003e any dispute.\n\u003e \u003e In order to spend, however, the tower must also produce a witness\n\u003e \u003e script which when hashed matches the witness program of the input. To\n\u003e \u003e ensure settlement txns can only spend from exactly one update txn,\n\u003e \u003e each update txn uses unique keys for the settlement clause, meaning\n\u003e \u003e that each state has a unique witness program.\n\u003e\n\u003e I didn't think this was the design. The update transaction can spend\n\u003e any prior, with a fixed script, due to NOINPUT.\n\u003e\n\u003e The settlement transaction does not use NOINPUT, and thus can only\n\u003e spend the matching update.\n\nMy understanding is that this is not logically possible?\nThe update transaction has no fixed txid until it commits to a particular output-to-be-spent, which is either the funding/kickoff txout, or a lower-`nLockTime` update transaction output.\nThus a settlement transaction *must* use `NOINPUT` as well, as it has no txid it can spend, if it is constrained to spend a particular update transaction.\n\nUnless I misunderstand how update transactions work, or what settlement transactions are.\n\nRegards,\nZmnSCPxj"}
