Pages:
Author

Topic: Making Bitcoin and its Forks Turing Complete (Read 586 times)

legendary
Activity: 1568
Merit: 6660
bitcoincleanup.com / bitmixlist.org
the great #satoshi seemed to have no problems with storing our history on blockchains.

 The Times 03/Jan/2009 Chancellor on brink of second bailout for banks.  
You do realise this had a very, very specific, useful and actually necessary purpose, though? Like, proving there was no pre-mine?
I'm not sure it's a good idea to store data on the blockchain by putting it into the UTXO set.
~

It was just a time-based anchor. It does not prove the lack of a pre-mine. The proof of no premine was something any miner at the time could prove for themselves just by winning blocks.


Not that a time-based anchor was ever necessary in the first place, as all bitcoin transactions are timestampped from the very beginning.


Also, it's prohibitively expensively to store arbitrary OP_RETURN data inside the blockchain as a result of the tx fees going over the roof in the years since then.
sr. member
Activity: 317
Merit: 448
TC is just not safe and not a bright idea for a store of value, that is why no one with a brain is storing money on the Ethereum network. All these "im holding ETH long term" cryptonoobs will sooner or later pay the fee.
hero member
Activity: 882
Merit: 5834
not your keys, not your coins!
It was just a time-based anchor. It does not prove the lack of a pre-mine. The proof of no premine was something any miner at the time could prove for themselves just by winning blocks.
How would it be possible to pre-mine if the genesis block has some newspaper headline in it that satoshi couldn't know in advance?

Without this text, he could have invented Bitcoin 10 years earlier and created 10 years worth of blocks (all without publishing), then created the whitepaper and a genesis block (that his 'private' chain is also based on) and let people mine. He would then have been able to attack the network as long as the chain was shorter than his private one by publishing it.

But due to this text in the genesis block, we can be fairly sure he didn't start a private chain before that newspaper article got published.
legendary
Activity: 3472
Merit: 10611
A sidechain.borrows all coins from its host chain. So while it can not have its own block *subsidy*, it still has miners earning block rewards composed entirely of transaction fees.
It doesn't "borrow" coins, it pegs them to the host chain so it can have flexibility. It also has an entirely separate chain that can an entirely different consensus rules which means it could technically have block subsidy too although in a pegged coin it doesn't make much sense.
legendary
Activity: 2870
Merit: 7490
Crypto Swap Exchange
Since no one mentioned it yet, i'd like to mention that Rootstock (RSK) exist. It's Bitcoin sidechain which support smart contract with merged mining to Bitcoin network.

Rootstock is **not** a Bitcoin sidechain as per the sidechains whitepaper. It does **not** benefit from Bitcoin hashrate.


Did you even check RSK mining page[1]? It's clearly stated it utilize Bitcoin mining hashrate. The paper[1] even state it.

Satoshi consensus, based on proof-of-work, is the only consensus system that prevents the rewrite of blockchain history at a low cost. The academic community is advancing the knowledge and study of proof-of-stake as an alternative, but currently PoW provides the highest proven security. Merge mining is a technique that allows Bitcoin miners to mine other cryptocurrencies simultaneously with nearly zero marginal cost. The same mining infrastructure and setup they use to mine Bitcoins is reused to mine RSK simultaneously. This means that, as RSK rewards the miners with additional transaction fees, the incentive for merged mining becomes high.

[1] https://mining.rsk.co/
[2] https://www.rsk.co/Whitepapers/RSK-White-Paper-Updated.pdf, page 15.
legendary
Activity: 990
Merit: 1108
Rootstock is **not** a Bitcoin sidechain as per the sidechains whitepaper. It does **not** benefit from Bitcoin hashrate.
That is the definition of a sidechain, a separate chain that has its own mining

RSK is a Bitcoin sidechain, so it has its own network, and its own blockchain, but not its own token.

A sidechain.borrows all coins from its host chain. So while it can not have its own block *subsidy*, it still has miners earning block rewards composed entirely of transaction fees.
legendary
Activity: 3472
Merit: 10611
Rootstock is **not** a Bitcoin sidechain as per the sidechains whitepaper. It does **not** benefit from Bitcoin hashrate.
That is the definition of a sidechain, a separate chain that has its own mining, own blockchain, own network and the only link it has to bitcoin is usually a 2 way peg. It isn't really using bitcoin or its blockchain to benefit from its hashrate. It just benefits from its name!

RSK is a Bitcoin sidechain, so it has its own network, and its own blockchain, but not its own token.
member
Activity: 88
Merit: 37
the great #satoshi seemed to have no problems with storing our history on blockchains.

 “The Times 03/Jan/2009 Chancellor on brink of second bailout for banks.”  
You do realise this had a very, very specific, useful and actually necessary purpose, though? Like, proving there was no pre-mine?
I'm not sure it's a good idea to store data on the blockchain by putting it into the UTXO set.
Using your numbers, Ripple and Greenpeace with their $5M anti-Bitcoin budget could have increased the UTXO set size to over 500GB over the course of roughly a year.
I understand that even if you don't put a tool out there that easily allows people to bloat like this, they can code it themselves. But it's still a pretty considerable attack vector if we see how much money is splurged on anti-Bitcoin campaigns these days.

It was just a time-based anchor. It does not prove the lack of a pre-mine. The proof of no premine was something any miner at the time could prove for themselves just by winning blocks.
member
Activity: 88
Merit: 37
Since no one mentioned it yet, i'd like to mention that Rootstock (RSK) exist. It's Bitcoin sidechain which support smart contract with merged mining to Bitcoin network.

Rootstock is **not** a Bitcoin sidechain as per the sidechains whitepaper. It does **not** benefit from Bitcoin hashrate..
copper member
Activity: 821
Merit: 1992
Quote
What do ya'll think about the idea of using test-nets or even something like datacoin to host websites?
I think it is cheaper than using mainnet. But even then, there is no reason to spam some existing network, where you can create your own, and only commit to some existing network, just to reuse its Proof of Work and commit for no additional cost. So, you can create your own blockchain, with your own content, add any rules you want (that would be more suitable for hosting files than for moving coins, so coding and adjusting consensus rules would be easier). Then, you can just place "OP_RETURN " in a TapScript commitment every sometimes to get Proof of Work protection from some chain. It will be definitely cheaper and still very secure, without creating spam on the chain you want to commit to.

Quote
-TN is impermanent which is fine because websites will be updated anyway...
I think one commitment every sometimes for the whole network is all you need. If you only want to attach to the Proof of Work, you don't have to push things on-chain, you only need to create a commitment, then you can adjust content on your side, and everyone will still be able to verify if your commitment is correct, so every participant of your network will be sure that the history was not modified, and that your history is protected by Proof of Work of the chain you commit to.
hero member
Activity: 882
Merit: 5834
not your keys, not your coins!
What do ya'll think about the idea of using test-nets or even something like datacoin to host websites? -TN is impermanent which is fine because websites will be updated anyway...
Why not use https://nginx.org/en/?
newbie
Activity: 6
Merit: 0
What do ya'll think about the idea of using test-nets or even something like datacoin to host websites? -TN is impermanent which is fine because websites will be updated anyway...
legendary
Activity: 2870
Merit: 7490
Crypto Swap Exchange
would you prefer i store a 60KB picture of my daughter's cat using 700 transactions or 1 transaction?   Cheesy
What we prefer is for bitcoin to be used as it was meant to, meaning as a payment system not a distributed database where arbitrary data is being stored.

Exactly, there are different protocol (such as IPFS and BitTorrent) which is more suitable for distributed data sharing. Besides, it's more practical to use OP_RETURN to share hash of the IPFS/BitTorrent instead.
legendary
Activity: 3472
Merit: 10611
would you prefer i store a 60KB picture of my daughter's cat using 700 transactions or 1 transaction?   Cheesy
What we prefer is for bitcoin to be used as it was meant to, meaning as a payment system not a distributed database where arbitrary data is being stored.

The reason why OP_RETURN was introduced is to discourage exactly what you are doing (creating UTXO bloat) and the 80-byte limit is another discouragement telling you that bitcoin blockchain is not a place to store arbitrary data, even if you could.
legendary
Activity: 990
Merit: 1108
Quote
using OP_RETURN to store data in blockchains actually creates far more bloat then the method we are describing here
You don't need to store data on-chain, you only need to commit them to prove that they are connected with the chain.

Some applications *do* want to store, in order to publicly expose the data. Committing doesn't do that.
copper member
Activity: 903
Merit: 2248
Quote
using OP_RETURN to store data in blockchains actually creates far more bloat then the method we are describing here
Using many OP_RETURN outputs in a single TapScript creates far less bloat, while making funds spendable, because you have some tweaked public key and attached commitments. You don't need to store data on-chain, you only need to commit them to prove that they are connected with the chain. And you can do that without making any bloat, with zero additional on-chain bytes, just by tweaking your key, so it is cheaper.
legendary
Activity: 2870
Merit: 7490
Crypto Swap Exchange
Quote
no, they are all valid transactions to users who just haven't been born yet
But you could just use OP_RETURN! Better: you could use OP_RETURN inside TapScript and just commit to the blockchain, instead of burning coins! There is no reason to burn anything, there is also no reason to bloat the chain. Another thing is that one commitment for the whole network would be cheaper than pushing every commitment for every user.
using OP_RETURN to store data in blockchains actually creates far more bloat then the method we are describing here.

the maximum amount of OP_RETURN data currently supported by the network per transaction is 80 bytes.... i think.. Undecided it has been awhile since i checked.

80 bytes limitation is only enforced by Bitcoin node though. If you're pool owner or can convince pool miner to add your transaction, OP_RETURN would create less bloat.
hero member
Activity: 882
Merit: 5834
not your keys, not your coins!
the great #satoshi seemed to have no problems with storing our history on blockchains.

 “The Times 03/Jan/2009 Chancellor on brink of second bailout for banks.”  
You do realise this had a very, very specific, useful and actually necessary purpose, though? Like, proving there was no pre-mine?
I'm not sure it's a good idea to store data on the blockchain by putting it into the UTXO set.
Using your numbers, Ripple and Greenpeace with their $5M anti-Bitcoin budget could have increased the UTXO set size to over 500GB over the course of roughly a year.
I understand that even if you don't put a tool out there that easily allows people to bloat like this, they can code it themselves. But it's still a pretty considerable attack vector if we see how much money is splurged on anti-Bitcoin campaigns these days.
jr. member
Activity: 62
Merit: 6
Quote
no, they are all valid transactions to users who just haven't been born yet
But you could just use OP_RETURN! Better: you could use OP_RETURN inside TapScript and just commit to the blockchain, instead of burning coins! There is no reason to burn anything, there is also no reason to bloat the chain. Another thing is that one commitment for the whole network would be cheaper than pushing every commitment for every user.

this paper from ledger compares the efficiency and costs of P2FKH technology employed by apertus.io with other methods to insert data in bitcoin blockchain, hope this can provide some help;D
https://ledger.pitt.edu/ojs/ledger/article/view/101/93


thank you!! it is a great research paper...

we chose P2FKH because it was the easiest to implement
because it was and still is a method accessible via a standard RPC command that a majority of the blockchains support.
because it is provably unprune-able... our goal @hugpuddle.org is #forever... like forever ever and ever.. Grin.

i am totally serious about bitcoin still being around when humans are exploring io and vacationing on mars.


the great #satoshi seemed to have no problems with storing our history on blockchains.

 “The Times 03/Jan/2009 Chancellor on brink of second bailout for banks.”  

<3 #embii


newbie
Activity: 1
Merit: 1
Quote
no, they are all valid transactions to users who just haven't been born yet
But you could just use OP_RETURN! Better: you could use OP_RETURN inside TapScript and just commit to the blockchain, instead of burning coins! There is no reason to burn anything, there is also no reason to bloat the chain. Another thing is that one commitment for the whole network would be cheaper than pushing every commitment for every user.

this paper from ledger compares the efficiency and costs of P2FKH technology employed by apertus.io with other methods to insert data in bitcoin blockchain, hope this can provide some help;D
https://ledger.pitt.edu/ojs/ledger/article/view/101/93
Pages:
Jump to: