Hacker News new | past | comments | ask | show | jobs | submit login

It looks like it is true in a technical sense; a bitcoin transaction record specifies a prior transaction as its input, rather than specifying a source address. So as a purely formal matter, your example records will look like this in relevant part:

    T0885: 100 Satoshi from T0002 to address xxxxx0x # 1 wallet, 2 Satoshi
    T1001:   1 Satoshi from T0885 to address xxxxx1x
    T1104:   1 Satoshi from T0885 to address xxxxx2x # Each Satoshi moves to a separate new wallet
    T1300:   1 Satoshi from T1104 to address xxxxx3x
    T1400:   1 Satoshi from T1001 to address xxxxx3x # and then they recombine
https://en.bitcoin.it/wiki/Transaction

From that record, it's clear that one Satoshi moved from address 0x to address 3x by way of transaction 1001, and the other one did the same by way of transaction 1104.

However, there is no instrumental difference between an address's balance from one transaction and its balance from another transaction, as the behavior of the address is controlled by the private key associated with that address, and two balances belonging to the same address necessarily share the associated private key. I'm not sure what this is supposed to accomplish.




The transaction sequence in your example is not possible. A transaction output can only be used once as an input. To me, the operation would rather look like these three transactions:

    100 Satoshi from A1
        2 Satoshi to A2
        98 Satoshi to Ax

    2 Satoshi from A2
        1 Satoshi to A3
        1 Satoshi to A4

    1 Satoshi from A3
    1 Satoshi from A4
        2 Satoshi to A5
Edit: Sorry I referred to "wallets" in my previous comment. This allows a scenario where the Satoshis are kept in separate transactions all the time. But I'm not interested in those scenarios. I'm talking about scenarios with multiple inputs and outputs. Where you can't say which of the inputs went which way. In this transaction:

    1 Satoshi from A1
    1 Satoshi from A2
        1 Satoshi to A3
        1 Satoshi to A4
You can't tell which Satoshi went where.


Yeah, I will 'change' my position on this. Satoshis in a single UTXO that are split are fungible - in your scenario you cannot identify the specific sat: either a1->a3, or a1->a4. This is kind of like 'forward fungibility'. You can however trace the value in satoshi's back from A4 to their coinbase at birth. At best, we introduce a UTXO taint percentage from previous inputs. Its this taint from other, external inputs that break backwards fungibility (due to taint).




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: