public inbox for bitcoindev@googlegroups.com
 help / color / mirror / Atom feed
From: Johnson Lau <jl2012@xbt•hk>
To: Tom Zander <tomz@freedommail•ch>,
	bitcoin-dev <bitcoin-dev@lists•linuxfoundation.org>
Subject: Re: [bitcoin-dev] Changing the transaction version number to be varint
Date: Thu, 26 Jan 2017 20:57:32 +0800	[thread overview]
Message-ID: <A4EF0301-870D-415C-9E80-36DBBA7F3E65@xbt.hk> (raw)
In-Reply-To: <3264264.qpyyi8nbyQ@strawberry>


> On 20 Jan 2017, at 22:02, Tom Zander via bitcoin-dev <bitcoin-dev@lists•linuxfoundation.org> wrote:
> 
> The way to do this is that from a certain block-height the current 
> transaction format labels bytes 2, 3 & 4 to be unused.
> From that same block height the interpretation of the first byte is as 
> varint.
> Last, we add the rule from that block-height that only transactions that do 
> not lie about their version number are valid. Which means version 1.
> 
> Do people see any problems with this?
> This could be done as a soft fork.

Yes, because:

a) what you are talking is a hardfork, because existing nodes will not be able to deserialise the transaction. They will forever interpret the first 4 bytes as nVersion.

b) it is not a “lie” to use non-version 1 txs. It is permitted since v0.1. And version 2 txs is already used due to BIP68.

c) if you are talking about changing the tx serialisation just for network transfer, it’s just a p2p protocol upgrade, not softfork nor hardfork

-------------------------

There are 3 ways to introduce new tx formats:

1. through a softfork, and make the old clients blind to the new format. That’s the segwit approach

2. through a hardfork. Forget the old clients and require new clients to understand the new format. That’s the FlexTran approach (in my understanding)

3. p2p only, which won’t affect consensus. No one could stop you if you try to copy a block by writing in your native language and pass to your peer.

In either way, one could introduce whatever new format one wants.


      reply	other threads:[~2017-01-26 12:57 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-01-20 14:02 Tom Zander
2017-01-26 12:57 ` Johnson Lau [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=A4EF0301-870D-415C-9E80-36DBBA7F3E65@xbt.hk \
    --to=jl2012@xbt$(echo .)hk \
    --cc=bitcoin-dev@lists$(echo .)linuxfoundation.org \
    --cc=tomz@freedommail$(echo .)ch \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox