<div dir="ltr">Ok, I think I got the OP_CHECKAWESOMESIG proposal, transactions keep referencing using hashes of complete transactions (including signatures), while the OP_CHECKAWESOMESIG looks up the previous transaction (which we already need to do anyway in order to insert the prevOut pubkeyScript), normalizes the prevout and calculates its normalized transaction ID. It then inserts the normalized transaction IDs in the OutPoint before calculating its own hash which is then signed. Is that correct so far?<div><br></div><div>Let me try to summarize the discussion so far:</div><div><br></div><div>I think we have consensus that transaction malleability needs to be addressed, and normalized transaction IDs seem to be the way to go forward.</div><div><br></div><div>The discussion now is how to use normalized transaction IDs and we have two approaches to implement them:</div><div><ul><li>OP_CHECKAWESOMESIG which continues to use the current hashes to reference a specific signed instance of a class of semantically identical transactions. Internally only the semantic class is enforced. Transactions can be fixed to reference the correct signed instance if the transaction has been changed along the <a href="http://way.is">way.is</a> a softfork using the &quot;if I don&#39;t know this opcode the TX is automatically valid&quot; trick</li></ul></div><div><br><div class="gmail_quote">On Thu, May 14, 2015 at 2:40 AM Pieter Wuille &lt;<a href="mailto:pieter.wuille@gmail.com">pieter.wuille@gmail.com</a>&gt; wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">On Wed, May 13, 2015 at 1:32 PM, Tier Nolan <span dir="ltr">&lt;<a href="mailto:tier.nolan@gmail.com" target="_blank">tier.nolan@gmail.com</a>&gt;</span> wrote:<br></div><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><br><div class="gmail_quote"><span>On Wed, May 13, 2015 at 9:31 PM, Pieter Wuille <span dir="ltr">&lt;<a href="mailto:pieter.wuille@gmail.com" target="_blank">pieter.wuille@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><span></span><div class="gmail_extra"><span></span><br><div class="gmail_quote"><div>This was what I was suggesting all along, sorry if I wasn&#39;t clear.<span><font color="#888888"><br></font></span><br></div></div></div></div></blockquote></span><div>That&#39;s great.  So, basically the multi-level refund problem is solved by this?<br></div></div></div></div></blockquote><div><br></div></div></div></div><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div>Yes. So to be clear, I think there are 2 desirable end-goal proposals (ignoring difficulty of changing things for a minute):<br><br></div><div>* Transactions and blocks keep referring to other transactions by full txid, but signature hashes are computed off normalized txids (which are recursively defined to use normalized txids all the way back to coinbases). Is this what you are suggesting now as well?<br><br></div><div>* Blocks commit to full transaction data, but transactions and signature hashes use normalized txids.<br><br></div><div>The benefit of the latter solution is that it doesn&#39;t need &quot;fixing up&quot; transactions whose inputs have been malleated, but comes at the cost of doing a very invasive hard fork.<br><br>-- <br></div></div></div></div><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div>Pieter<br><br></div></div></div></div>
------------------------------------------------------------------------------<br>
One dashboard for servers and applications across Physical-Virtual-Cloud<br>
Widest out-of-the-box monitoring support with 50+ applications<br>
Performance metrics, stats and reports that give you Actionable Insights<br>
Deep dive visibility with transaction tracing using APM Insight.<br>
<a href="http://ad.doubleclick.net/ddm/clk/290420510;117567292;y" target="_blank" style="display:none!important">http://ad.doubleclick.net/ddm/clk/290420510;117567292;y</a>_______________________________________________<br>
Bitcoin-development mailing list<br>
<a href="mailto:Bitcoin-development@lists.sourceforge.net" target="_blank">Bitcoin-development@lists.sourceforge.net</a><br>
<a href="https://lists.sourceforge.net/lists/listinfo/bitcoin-development" target="_blank">https://lists.sourceforge.net/lists/listinfo/bitcoin-development</a><br>
</blockquote></div></div></div>