Bitcoin Forum
June 24, 2024, 07:19:27 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: We need a light version of Bitcoin Core on: September 18, 2017, 01:51:24 PM
I think it would be a GREAT idea to create a lighter version of Bitcoin core. "Bitcoin Core Mini"
It could be done, because for creating and verifying new transactions you do not need to have a full copy of the whole blockchain. All you really need is the info about all bitcoin addresses, that contain any bitcoins, and the inputs to those addresses.
The old transactions do not really matter for the purpose of creating and verifying new transactions.
You need to download the entire Blockchain, if you can't download it, you wont be able to index and verify the transactions and form your own UXTO set.

The purpose of the whole process is to ensure that every transaction is valid and the client is able to build their own UXTO database. It doesn't make sense for a client that can't do these basic stuff to exist. If you just want to only create and send transaction, you just need the UXTO.
signed, trusted file of about 10Gb, and then verifying every transaction that has happened since the file was created eg. at block #485732
(New ~10Gb file could be made accessible every year or 6 months)
Great... There goes our trustless and decentralisation nature. If you're only going to send the UXTO set, your client will not be able to see the transactions that was made (at least till a certain date). I don't really see a point in making a client that doesn't show the old transactions. How am I going to track my spendings? Blockexplorers?
Quote from: aplistir link=topic=2185592.msg21930254#msg21930254 date=1505656455
[b
Estimated size of the file comes from:[/b]
10000000           Addresses with balance
          * 1 kb       for info of the address (inputs, outputs balance.)
                          Some addresses would need more than 1kb, some less
10000000 kb                          
            =
          10 Gb

The size of the file could be made a lot smaller, if we forget the "dust addresses", that contain only a few satochis, and are unlikely to ever be used. In those cases we could just have a list of those addresses without any additional info. (it would take minimum amount of space)  And if any of those addresses would ever be used, the "Bitcoin Core Mini" would then ask the needed info from the network, from a full node.
So in the future, if someone DOES actually spend the dust outputs, how does the client handle it? It doesn't recognize it from the UXTO set that it has. Its quite bad if you were to query another node when you receive a transaction with an output that you don't have stored locally. Additionally, how do you ensure that the full node that you make the request from doesn't lie to you? How are you going to verify if what they tell you is true?
Anyone interested?
With "Bitcoin Core Mini" you would get almost all the advantages of a full Bitcoin Core. You could create and transmit your own transactions but you would not need to download and store over 120GB of data.
The real advantage of Bitcoin Core is mostly the fact that its trustless. If you're going to destroy it, might as well as just use an SPV client. Sure, they may be less secure than Bitcoin Core in a sense that they are susceptible to sybil attack, the client that you are going to develop will essentially be worse.



Is there any specific reason why you are writing UXTO instead of 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!