Bitcoin Forum
June 22, 2024, 07:33:25 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
  Home Help Search Login Register More  
  Show Posts
Pages: [1]
1  Bitcoin / Development & Technical Discussion / Re: Question about LN routing at 1 Million TPS on: May 25, 2018, 04:14:06 PM
Also remember that even VISA, the largest transaction processor in the world, only averages like 3000 or 4000 txs/sec. So while the LN may be able to technically handle on the order of 1 million txs/sec, it will never get close to that number
It can easily get to this number and VISA is not the right example here. LN can handle billing for pay videos, phone calls, ect. on pay per second level. VISA cannot do it.
2  Bitcoin / Development & Technical Discussion / Re: A minimalist text encoding for OP_RETURN outputs on: May 25, 2018, 03:48:19 PM
Even using 5 bit alphabet you waste a lot of space, you need to compress message first,
Using Arithmetic coding for example.
You can even perform it on words level, not the letters level.
3  Bitcoin / Development & Technical Discussion / Re: How to handle deposits on a turn based multiplayer game on: May 25, 2018, 01:39:44 PM

In theory, you can do it via multisig addresses "2 out of 3"
Players will deposit funds into this address (new one for every game)
In order to send money to winner, you need 2 signatures: Yours and winner's.
Moreover, you are as arbiter will create resulting transaction which pays your fee.
4  Bitcoin / Development & Technical Discussion / Re: Who is doing Peer review on Alt coins and Open Source projects? on: May 24, 2018, 01:16:05 PM
In case of altcoins which are based on bitcoin code, it's not very difficult.
You don't have to review a ton of code in this case. You need to follow a few simple steps.
1) Find a version of bitcoin which altcoin is based on.
2) Download a bitcoin source code for this version.
3) Use diff tool for comparison.

You can simplify it a little bit further.
For instance: a vast majority of pos coins based on Peercoin code.
As a result if you need to review any of those forks, you do above mentioned steps on Peercoin code instead of bitcoin code.

P.S.: Pay a special attention to GetBlockSubsidy function. Usually all premines are defined there. Smiley
5  Bitcoin / Development & Technical Discussion / Re: Selfish miner implementation on: May 24, 2018, 12:22:11 PM
So if your selfish miner works on its own private chain, you don't have to accept blocks from the main chain.

AFAIK above some treshold selfish miner may decide to drop his chain (fork) and restart a new one over the new point of main chain.
Another concern is to compare chain lengths in order to decide when to publish his 'private'.
Of course, you're right on that, it can have some elaborated program logic behind it. (when release private blockchain, when to drop it and follow the main chain, ect.)
But I think RoeiDimi can first implement something simple. Something like:
Code:
if (privateChainLen > 4) 
   ReleasePrivateChain();
else (nBlocksBehindMainChain > 2)
   DropPrivateChain();
6  Bitcoin / Development & Technical Discussion / Re: start bitcoin core private blockchain on: May 24, 2018, 06:34:21 AM
what do you mean by private bitcoin core chain?
1) bitcoin core it's just a client, so use bitcoin blockchain term.
2) do you want to fork bitcoin codebase? In this case you have to change more parameters than genesis block: port number, magic message number ect.
3) But if you just want to run private bitcoin blockchain for your own testing or something similar, you don't have to change anything Smiley just start daemon with -regtest option.

Thank you. I would like to fork bitcoin code base.

In src/chainparams.cpp
Quote
    const char* pszTimestamp = "The Times 03/Jan/2009 Chancellor on brink of second bailout for banks";
    const CScript genesisOutputScript = CScript() << ParseHex("04678afdb0fe5548271967f1a67130b7105cd6a828e03909a67962e0ea1f61deb649f6bc3f4cef3 8c4f35504e51ec112de5c384df7ba0b8d578a4c702b6bf11d5f") << OP_CHECKSIG;

Can i just change the timestamp and genesis output script, to create a customised bitcoin ?
No it's not enough.
Read some guide, for example this one:
Complete Guide on How to Create a New Alt Coin
7  Bitcoin / Development & Technical Discussion / Re: start bitcoin core private blockchain on: May 24, 2018, 05:52:53 AM
To start a customised private bitcoin core blockchain, all i need to do is:

1) change the genesis block
2) change the timestamp of genesis block

is there anything else?

what do you mean by private bitcoin core chain?
1) bitcoin core it's just a client, so use bitcoin blockchain term.
2) do you want to fork bitcoin codebase? In this case you have to change more parameters than genesis block: port number, magic message number ect.
3) But if you just want to run private bitcoin blockchain for your own testing or something similar, you don't have to change anything Smiley just start daemon with -regtest option.
8  Bitcoin / Development & Technical Discussion / Re: Get list of all addresses with a balance over x? on: May 24, 2018, 05:44:36 AM
Yes, but this is not sufficient. You also have to uncompress those entries, and it requires some programming knowledge than using a library and print, it requires too to know how those coins works, their storage format (compact size, varint, etc)... Not hard, not trivial either.

Yes, it's true.
However, if coin uses bitcoin codebase from 0.15 or later, it's quiet easy, one db entry one utxo.
Before that it's somewhat complicated because one db entry contained the whole transaction.
But format of this entry was well documented in coin.h file:
https://github.com/bitcoin/bitcoin/blob/v0.10.1/src/coins.h#L20

Also, if I'm not mistaken BTCP script has function for decoding old format as well
https://github.com/BTCPrivate/utxo-dump/blob/master/utxo/chainstate.py
parse_ldb_value_old line 57
9  Bitcoin / Development & Technical Discussion / Re: Selfish miner implementation on: May 24, 2018, 05:30:55 AM
As blockchain name suggests, it's a chain of blocks.
So if your selfish miner works on its own private chain, you don't have to accept blocks from the main chain.
AcceptBlock function and other functions which are related to accepting blocks are located in validation.cpp
10  Bitcoin / Development & Technical Discussion / Re: Get list of all addresses with a balance over x? on: May 24, 2018, 05:15:57 AM
Hello!

Can you parse Bitcoin Private (btcprivate.org)?
You can parse almost any coin very easily, because most of them using level db for keeping their utxo,
Just use python plyvel module to read db data.

Actually, bitcoin private used the same technique to get bitcoin utxo.
Pages: [1]
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!