Bitcoin Forum
December 05, 2016, 02:26:49 AM *
News: Latest stable version of Bitcoin Core: 0.13.1  [Torrent].
 
   Home   Help Search Donate Login Register  
Pages: [1]
  Print  
Author Topic: are coins necessary?  (Read 1030 times)
shrewdwatson
Newbie
*
Offline Offline

Activity: 3


View Profile
April 23, 2011, 05:00:57 PM
 #1

"Transactions" says that a transaction may contain multiple outputs. If I understand correctly from "Satoshi Nakamoto. Bitcoin: A Peer-to-Peer Electronic Cash System", a transaction may not be deleted if some output of that transaction is not spent. "Spent" = referred as input in some other transaction. Therefore every node can calculate how much money each Bitcoin address owns. Then we can refer in transactions to Bitcoin addresses instead of transaction hashes.

IMHO this new system is better. Each transaction contains numbers: money transferred; balances of each involved Bitcoin address; time. A transaction may not be deleted if it is last for some account. To calculate balance of a Bitcoin address, take the last transaction involving that Bitcoin address. We do not need to check in the database that each output is spent only once. Structure of the database is simpler. Transactions with incorrect time will be rejected by the same algorithm which rejects double spending (I can elaborate). There are no "coins" (outputs of transactions), thus accounting in this system is closer to payment systems with central authority.
1480904809
Hero Member
*
Offline Offline

Posts: 1480904809

View Profile Personal Message (Offline)

Ignore
1480904809
Reply with quote  #2

1480904809
Report to moderator
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise here.
1480904809
Hero Member
*
Offline Offline

Posts: 1480904809

View Profile Personal Message (Offline)

Ignore
1480904809
Reply with quote  #2

1480904809
Report to moderator
1480904809
Hero Member
*
Offline Offline

Posts: 1480904809

View Profile Personal Message (Offline)

Ignore
1480904809
Reply with quote  #2

1480904809
Report to moderator
Stefan Thomas
Full Member
***
Offline Offline

Activity: 235


AKA: Justmoon


View Profile WWW
April 23, 2011, 06:13:29 PM
 #2

We do not need to check in the database that each output is spent only once.

Note that instead of checking only the outputs, you have to check the source address balances *and* the target address balances. (To see if the new target address balance equals the old balance plus the money transferred.)

Each transaction contains numbers: money transferred; balances of each involved Bitcoin address; time.

The size of transactions is one of the main bottlenecks in practice, since they have to be replicated over the network to every node and stored in the block chain.

A slightly more complex database is a very good tradeoff for faster tx validation and smaller transactions.

Another advantage of the current design is that it allows for complex transaction types (even though that's currently disabled in the official client), see https://en.bitcoin.it/wiki/Script

Twitter: @justmoon
PGP: D16E 7B04 42B9 F02E 0660  C094 C947 3700 A4B0 8BF3
shrewdwatson
Newbie
*
Offline Offline

Activity: 3


View Profile
April 23, 2011, 08:27:51 PM
 #3

Each transaction contains numbers: money transferred; balances of each involved Bitcoin address; time.
The size of transactions is one of the main bottlenecks in practice, since they have to be replicated over the network to every node and stored in the block chain.
A slightly more complex database is a very good tradeoff for faster tx validation and smaller transactions.
Yes, the size of transactions will be smaller in my design, that's why I am proposing it.
theymos
Administrator
Legendary
*
Offline Offline

Activity: 2492


View Profile
April 24, 2011, 03:31:06 AM
 #4

It makes client mode impossible, since simple clients don't know balances.

1NXYoJ5xU91Jp83XfVMHwwTUyZFK64BoAD
Pages: [1]
  Print  
 
Jump to:  

Sponsored by , a Bitcoin-accepting VPN.
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!