--- Log opened Sun Mar 09 00:00:39 2025 00:10 -!- tromp [~textual@2a02:a210:cba:8500:d904:ecda:6ce1:ab96] has quit [Quit: My iMac has gone to sleep. ZZZzzz…] 00:22 -!- tromp [~textual@2a02:a210:cba:8500:d904:ecda:6ce1:ab96] has joined #bitcoin-wizards 01:29 -!- tromp [~textual@2a02:a210:cba:8500:d904:ecda:6ce1:ab96] has quit [Quit: My iMac has gone to sleep. ZZZzzz…] 01:50 -!- tromp [~textual@2a02:a210:cba:8500:d904:ecda:6ce1:ab96] has joined #bitcoin-wizards 01:54 -!- jamesob443688173 [~jamesob@pool-108-44-244-6.clppva.fios.verizon.net] has quit [Ping timeout: 260 seconds] 01:54 -!- jamesob15665 [~jamesob@pool-108-44-244-6.clppva.fios.verizon.net] has quit [Ping timeout: 260 seconds] 03:02 -!- bitdex [~bitdex@gateway/tor-sasl/bitdex] has quit [Ping timeout: 264 seconds] 03:04 -!- bitdex [~bitdex@gateway/tor-sasl/bitdex] has joined #bitcoin-wizards 03:17 -!- MasterX [~dddd@176.29.200.197] has joined #bitcoin-wizards 03:18 -!- MasterX [~dddd@176.29.200.197] has left #bitcoin-wizards [] 03:47 -!- jamesob15665 [~jamesob@pool-108-44-244-6.clppva.fios.verizon.net] has joined #bitcoin-wizards 03:47 -!- jamesob443688173 [~jamesob@pool-108-44-244-6.clppva.fios.verizon.net] has joined #bitcoin-wizards 03:58 -!- jamesob443688173 [~jamesob@pool-108-44-244-6.clppva.fios.verizon.net] has quit [Ping timeout: 244 seconds] 03:58 -!- jamesob15665 [~jamesob@pool-108-44-244-6.clppva.fios.verizon.net] has quit [Ping timeout: 244 seconds] 05:46 -!- tromp [~textual@2a02:a210:cba:8500:d904:ecda:6ce1:ab96] has quit [Quit: My iMac has gone to sleep. ZZZzzz…] 05:52 -!- tromp [~textual@2a02:a210:cba:8500:d904:ecda:6ce1:ab96] has joined #bitcoin-wizards 06:28 -!- jonatack [~jonatack@user/jonatack] has quit [Ping timeout: 245 seconds] 06:31 -!- jonatack [~jonatack@user/jonatack] has joined #bitcoin-wizards 06:56 < Chris_Stewart_5> Hi everyone, i'm working on an opcode for "value locks" or "amount locks" called OP_INOUT_AMOUNT - the basic idea is the opcode currently consumes 2 bitvectors for the stack that correspond to input and output indices. If the indice is set, the corresponding value is pushed onto the stack 06:58 < Chris_Stewart_5> I.e. OP_INOUT_AMOUNT ... 07:00 < Chris_Stewart_5> There is an ordering problem here, if I want to constrain the funding of the transaction in my witnessScript, but allow the funder to place constraints on the output index vector, this isn't possible due to how ordering of how stack elements are consumed 07:01 < Chris_Stewart_5> I've thought about making the opcode take 1 input, and then have the most significant bits correspond to an input bitvector, and the least significant bits correspond to an output bit vector, but that runs into MINIMALDATA issues if you don't care about the input bit vector at all (encoded as 0x00...000) 07:02 < Chris_Stewart_5> any ideas on how to handle this? 07:03 -!- Guyver2 [~Guyver@77-174-98-73.fixed.kpn.net] has joined #bitcoin-wizards 07:03 < Chris_Stewart_5> code: https://github.com/Christewart/bitcoin/tree/op-inout-amount 07:07 -!- brunoerg [~brunoerg@187.183.60.153] has joined #bitcoin-wizards 07:10 -!- brunoerg_ [~brunoerg@2804:14d:5285:84b2::1000] has quit [Ping timeout: 246 seconds] 07:47 < darosior> For amount introspection it seems you'd necessarily end up having to introspect other inputs' amounts, or you would be restricted to single-input transactions. And doing that from within Script is... meh. Have you maybe considered storing this in the annex so at least the check can be performed at the transaction level before executing each input's 07:47 < darosior> script. Of course this means that you'd have to somehow link the "amount covenant" with the "program covenant" (which would likely be in Script). But it also seems the separation of concerns makes things much cleaner. 07:49 < darosior> Discussed this recently with Salvatore Ingala for his redesign of his OP_CCV proposal. You may want to reach out to him too for feedback. If i remember correctly he had an OP_INOUT_AMOUNT as part of it too, at some point. 07:59 < darosior> An existing example of a similar ugliness is how absolute timelocks work. Not only you can't have an execution path within a script that requires an absolute timelock of different types, you also cannot mix inputs that have different timelock checks. This makes coin selection, and therefore UX, really annoying. What's the user's balance? Well, it 07:59 < darosior> depends... 08:49 -!- bitdex [~bitdex@gateway/tor-sasl/bitdex] has quit [Ping timeout: 264 seconds] 09:09 -!- bitdex [~bitdex@gateway/tor-sasl/bitdex] has joined #bitcoin-wizards 09:41 < Chris_Stewart_5> I have not considered storing that in the annex, i'll think aobut that more as it isn't intuitive to me. I'll check out OP_CCV as well. Since BIP341 now requires signing all input amounts except in the case of ANYONECANPAY I don't think this is that far of a leap to expose it directly in the interpreter 09:42 < Chris_Stewart_5> but being able to arbitrarily inspect all input amounts is the reason why an input bitvector is provided 09:44 < Chris_Stewart_5> code: https://github.com/Christewart/bitcoin/blob/df5ef7baf2493c59062991d872425cfdf39d181f/src/script/interpreter.cpp#L1294 09:46 < Chris_Stewart_5> > check can be performed at the transaction level before executing each input's 09:46 < Chris_Stewart_5> Is there a DoS concern you have here? 12:45 -!- mcey_ [~emcy@148.252.129.40] has joined #bitcoin-wizards 12:48 -!- mcey [~emcy@148.252.129.40] has quit [Ping timeout: 252 seconds] 12:50 -!- MyNetAz [~MyNetAz@user/MyNetAz] has quit [Remote host closed the connection] 12:51 -!- MyNetAz [~MyNetAz@user/MyNetAz] has joined #bitcoin-wizards 13:15 -!- Guyver2 [~Guyver@77-174-98-73.fixed.kpn.net] has quit [Read error: Connection reset by peer] 17:39 -!- mcey_ [~emcy@148.252.129.40] has quit [Ping timeout: 276 seconds] 17:42 -!- mcey [~emcy@185.69.144.54] has joined #bitcoin-wizards 18:44 -!- MyNetAz [~MyNetAz@user/MyNetAz] has quit [Remote host closed the connection] 18:45 -!- MyNetAz [~MyNetAz@user/MyNetAz] has joined #bitcoin-wizards 19:21 -!- solocshaw [~Thunderbi@c-73-255-91-223.hsd1.tx.comcast.net] has joined #bitcoin-wizards 23:01 -!- mcey [~emcy@185.69.144.54] has quit [Remote host closed the connection] 23:01 -!- mcey [~emcy@185.69.144.54] has joined #bitcoin-wizards --- Log closed Mon Mar 10 00:00:40 2025