Bitcoin Forum
May 11, 2024, 06:27:46 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 2 3 4 5 6 [7] 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 »
  Print  
Author Topic: ChromaWallet (colored coins): issue and trade private currencies/stocks/bonds/..  (Read 96894 times)
liorh
Newbie
*
Offline Offline

Activity: 6
Merit: 0


View Profile
November 14, 2012, 11:04:28 PM
 #121

Hello Dear friends, Trying to give everyone a little better understanding on the current stand of colored bitcoin and some playground to come up with your own concepts

go here:
https://docs.google.com/document/d/1pOaWe1fWdcUUKdyXz3rMWQneGLfTg89QaIBkS91nngE/edit

P.S. if you want an edit premissiom for this document please PM me
1715408866
Hero Member
*
Offline Offline

Posts: 1715408866

View Profile Personal Message (Offline)

Ignore
1715408866
Reply with quote  #2

1715408866
Report to moderator
1715408866
Hero Member
*
Offline Offline

Posts: 1715408866

View Profile Personal Message (Offline)

Ignore
1715408866
Reply with quote  #2

1715408866
Report to moderator
Once a transaction has 6 confirmations, it is extremely unlikely that an attacker without at least 50% of the network's computation power would be able to reverse it.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1715408866
Hero Member
*
Offline Offline

Posts: 1715408866

View Profile Personal Message (Offline)

Ignore
1715408866
Reply with quote  #2

1715408866
Report to moderator
1715408866
Hero Member
*
Offline Offline

Posts: 1715408866

View Profile Personal Message (Offline)

Ignore
1715408866
Reply with quote  #2

1715408866
Report to moderator
killerstorm (OP)
Legendary
*
Offline Offline

Activity: 1022
Merit: 1015



View Profile
November 15, 2012, 02:56:48 PM
 #122

Updates:

  • fees paid with uncolored coins
  • auto-trade

Before this fees were paid with colored coins, which is a major problem for coins which are significantly more valuable than BTC/which are represented with few satoshis.
After a patch fees can be paid with uncolored coins only. Perhaps it makes sense to allow paying fees with colored ones too, but there is no option for it in GUI yet.

Second update is auto-trade script. Basically you can use it to sell colored coins automatically: whenever script detects uncolored coins being sent to your address, it will send back colored coins according to exchange rate you set up. It works like Satoshi Dice, colored coins are sent to address which sent uncolored coins.

(This script is just a proof-of-concept, not an end-user material.)

Both features definitely require more testing. Particularly "uncolored fee" turned out to be rather hairy.

It would be cool if somebody would do code review since testing this stuff is kinda hard. I'm actually willing to pay a bounty for somebody to proof-read my code.

Prerequisites are:
  • good understanding of Python
  • willingness to work with code you aren't familiar with
  • code review skills, i.e. finding bugs simply by reading code attentively

Familiarity of Armory code base is not required as I'm ready to explain whatever is needed to understand code.

Base bounty is 1 BTC. It can be considerably higher if you do a great job, say, rewrite it in such a way that it sucks less.

PM me for details.

Chromia: a better dapp platform
killerstorm (OP)
Legendary
*
Offline Offline

Activity: 1022
Merit: 1015



View Profile
November 15, 2012, 03:09:01 PM
 #123

Next goals:

  • ZC transaction support (yeah, it doesn't quite work now)
  • user interface adaptations for colored coins (e.g. displaying correct units)
  • standardization of color definition format, automatic download from bitcoinX server
  • p2p exchange
  • a tool for making color definitions

My general plan is to implement features first, deal with quirks either. I'll try to finish most of this stuff this week.

Chromia: a better dapp platform
jtimon
Legendary
*
Offline Offline

Activity: 1372
Merit: 1002


View Profile WWW
November 15, 2012, 03:52:19 PM
 #124

Thank you for working on this.

...
After a patch fees can be paid with uncolored coins only. Perhaps it makes sense to allow paying fees with colored ones too, but there is no option for it in GUI yet.
...

Mhmm. I don't think it makes much sense. Miners could get the colored fee and uncolor it without noticing.
Those fees may be more attractive for miners that consider colored coins, but I don't see much value in this feature. If it's to be done, it can wait for everything else.

2 different forms of free-money: Freicoin (free of basic interest because it's perishable), Mutual credit (no interest because it's abundant)
killerstorm (OP)
Legendary
*
Offline Offline

Activity: 1022
Merit: 1015



View Profile
November 15, 2012, 04:12:48 PM
 #125

If txn fee is paid with colored coins those colored coins are lost. It might make sense if value per satoshi is ~1 satoshi. I agree it isn't a very useful feature, that's why I haven't implemented it. Smiley

There is, however, a better way to pay the fee with colored coins, it is based on same mechanism as p2p exchange. Say, you have only GOLDcoins and what to send them to somebody. To pay a fee you need to find somebody who wants to buy GOLDcoins, then you send them a small amount of GOLDcoins and he sends a fee. All in same transaction.

Essentially it is a slightly more elaborate p2p exchange mechanism.

And while we are here, we can probably implement ripple-style circular exchanges through same p2p exchange mechanism, it just needs to be even more elaborate. Smiley

I'll start with simplest one, of course, but maybe I can make some room for more advanced features.


Chromia: a better dapp platform
jtimon
Legendary
*
Offline Offline

Activity: 1372
Merit: 1002


View Profile WWW
November 15, 2012, 05:01:07 PM
 #126

I thought the miner was going to receive the fee colored. Anyway, someone else involved in the transaction can pay the fee with uncolored coins as you suggest.

The example of ripple transactions I mentioned in other thread were circular only when the trade involved bitcoins. There was also a non circular example of the typical example of Ripple transaction (A -> B -> C). Of course, uncolored coins for colored coins is the base use case and I think you're doing the right thing implementing it first.

2 different forms of free-money: Freicoin (free of basic interest because it's perishable), Mutual credit (no interest because it's abundant)
chrisrico
Hero Member
*****
Offline Offline

Activity: 496
Merit: 500


View Profile
November 15, 2012, 09:12:14 PM
 #127

I thought the miner was going to receive the fee colored.

No, because fees don't connect from one transaction to the coinbase of their including block (they don't even have to be included, really), like normal amounts do from one output to another input.
Red Emerald
Hero Member
*****
Offline Offline

Activity: 742
Merit: 500



View Profile WWW
November 16, 2012, 02:34:29 AM
 #128

I like the idea of autotrade, but your implementation requires trust.

I think some sort of multi-party transaction would be a better route. Armory's support for offline transactions will probably make this easier since you can build partial transactions to be signed later.

killerstorm (OP)
Legendary
*
Offline Offline

Activity: 1022
Merit: 1015



View Profile
November 16, 2012, 09:47:24 AM
 #129

Yep, I'm working on multi-party transactions now. That was one of reasons for choosing Armory.

Auto-trade's role is to allow to trade with clients which do not implement p2p trading protocol: any client capable of sending/receiving coins can trade them this way.

Chromia: a better dapp platform
killerstorm (OP)
Legendary
*
Offline Offline

Activity: 1022
Merit: 1015



View Profile
November 16, 2012, 09:58:45 AM
 #130

The example of ripple transactions I mentioned in other thread were circular only when the trade involved bitcoins. There was also a non circular example of the typical example of Ripple transaction (A -> B -> C).

OK, I meant transactions which involve more than 2 parties.

Quote
Of course, uncolored coins for colored coins is the base use case and I think you're doing the right thing implementing it first.

Uncolored coins are not particularly special, the only difference is that we can pay fees with them.

Chromia: a better dapp platform
jtimon
Legendary
*
Offline Offline

Activity: 1372
Merit: 1002


View Profile WWW
November 16, 2012, 10:26:35 AM
 #131

I thought the miner was going to receive the fee colored.

No, because fees don't connect from one transaction to the coinbase of their including block (they don't even have to be included, really), like normal amounts do from one output to another input.

I thought he wanted to keep them colored after passing through the coinbase. Is not impossible, but not particularly interesting.

2 different forms of free-money: Freicoin (free of basic interest because it's perishable), Mutual credit (no interest because it's abundant)
chrisrico
Hero Member
*****
Offline Offline

Activity: 496
Merit: 500


View Profile
November 16, 2012, 05:03:54 PM
 #132

I thought he wanted to keep them colored after passing through the coinbase. Is not impossible, but not particularly interesting.

I don't think this would be possible. Coloring can work with multiple inputs and outputs because you create a standard method of assigning them, order based coloring. You can then map colored inputs and outputs 1:1. However, with a coinbase transaction there's just a single output with a value of 50 + sum(fees). How would you determine the color of that output?
killerstorm (OP)
Legendary
*
Offline Offline

Activity: 1022
Merit: 1015



View Profile
November 16, 2012, 05:46:35 PM
 #133

However, with a coinbase transaction there's just a single output with a value of 50 + sum(fees). How would you determine the color of that output?

There was a proposal to assign an unique id to each satoshi in such a way that it can be traced through blockchain according to a set of deterministic rules.

It is possible to link satoshis which "vanished" in a txn fee to satoshis which "appear" in coinbase.

While this is theoretically sound, I don't think it's a good idea because it is rather complicated, but it doesn't solve any real problem:

With a simple order-based coloring colored coins are effectively lost when they are mixed or sent as a fee.

But with satoshi-level coloring they might be sent to random people. I don't think it's better.

Chromia: a better dapp platform
ShireSilver
Sr. Member
****
Offline Offline

Activity: 382
Merit: 253



View Profile WWW
November 17, 2012, 05:05:26 PM
 #134

I still have some concerns about this whole colored coin concept. Hopefully by bringing them up, they can either be addressed or another solution can be worked on.

Yesterday I did a quick count and calculated that if one satoshi were used to represent an individual share, the Dow 30 stocks would account for almost 1,000 bitcoins - General Electric by itself would consume 106 bitcoins. A rough guestimate based on that of the S&P 500 stocks means a similar amount of shares would consume about 15,000 bitcoins. That's still a negligible fraction of the total 21 million bitcoins, but imagine if not only were all shares in all current companies converted to satoshis but the explosion of newer shares caused by the more freed economy allowing more companies to exist - how many bitcoins would eventually be consumed? Add in shares of bonds, and how much now? Additionally, if we're going to use the BTC blockchain for share listings, why not use it for real estate? How many properties are there in the world? In the solar system? And why stop there? Why not use the BTC blockchain to register ownership of vehicles (using VINs perhaps)? How many vehicles are there and how many bitcoins would that remove from circulation as plain bitcoins? Of course, we can always add more significant digits, making units smaller than satoshis so using the 21 million we would never run out, but then we'd need to make that transition long before it would naturally occur.

Another concern is that adding new functionality to software always creates additional risks. Perhaps new security holes will be opened. Maybe it'll make the wallets more fragile. The user interfaces would probably have to be more complicated in many cases.

How would stock splits be handled under colored coins?

The reduction in total available plain bitcoins would cause deflation, which would be good for current holders of bitcoins, but is an unnecessary deflation fair?

IMHO, using something like namecoin's blockchain instead of the BTC blockchain would be a better route to go. You don't endanger the bitcoin network & currency, while allowing for unlimited ownership tokens. I've also heard that NMC is underutilized and in danger of being unmined, so expanding its purpose to cover property in general might give it the needed kick back into usefulness.

But as the discussion on the FB thread in the Free State Bitcoin group has pointed out, people are going to do what they want, so if the colored coins on the BTC blockchain is what works, so be it. The concept is pretty cool from a technical standpoint; I just don't want it's technical coolness to cause potential non-technical issues to be overlooked.

Shire Silver, a better bullion that fits in your wallet. Get some, now accepting bitcoin!
killerstorm (OP)
Legendary
*
Offline Offline

Activity: 1022
Merit: 1015



View Profile
November 17, 2012, 05:33:00 PM
 #135

I think I've already addressed your concerns.

1. You shouldn't ever worry that Bitcoin is being misused or abused, because being a crypto-based protocol it is DESIGNED to withstand misuse and abuse. If it cannot withstand abuse then it is a problem which needs to be addressed on protocol level.

2. What people do with Bitcoins is none of your business. If somebody wants to destroy them by sending them to non-existent address, it's his right.

3. Each satoshi costs money, so there is an incentive to not use it for something small and insignificant. Each transaction carries transaction fee, so again there is an incentive to not use it for something insignificant.

4. Colored coin protocol can work on any Bitcoin-like blockchain, so it's likely that if it will be heavily used then there will be specialized a blockchain just for colored coins. (E.g. ripplecoin.) But at start we want to use Bitcoin as a host for a number of reasons (e.g. ease of payment). No heavy use is expected at start, so don't worry about blockchain bloat and satoshis being out of circulation.

5. Bitcoin protocol doesn't need to be modified to support colored coins. Only people interested in colored coins need to run color-aware client software, and it's their own decision.

6. If some kind of danger for network & security will be discovered (which is highly unlikely, but still...) you should be grateful that we've discovered it sooner rather than later.

7. If you have many shares you won't need stock split. But if it is necessary, it can be done approximately same was as it was done by Berkshire Hathaway: company can issue a different kind of shares. See here: http://en.wikipedia.org/wiki/Berkshire_Hathaway#Corporate_affairs

Quote
But as the discussion on the FB thread in the Free State Bitcoin group has pointed out, people are going to do what they want, so if the colored coins on the BTC blockchain is what works, so be it. The concept is pretty cool from a technical standpoint; I just don't want it's technical coolness to cause potential non-technical issues to be overlooked.

As with any experiment, you never know until you actually try it. But luckily in case with Bitcoin risk is minimal because Bitcoin is designed to be robust BOTH technically and economically.

There are problems which colored coin users will face, but they won't affect Bitcoin users.

Chromia: a better dapp platform
Jutarul
Donator
Legendary
*
Offline Offline

Activity: 994
Merit: 1000



View Profile
November 17, 2012, 05:39:47 PM
 #136

I still have some concerns about this whole colored coin concept. Hopefully by bringing them up, they can either be addressed or another solution can be worked on.

Yesterday I did a quick count and calculated that if one satoshi were used to represent an individual share, the Dow 30 stocks would account for almost 1,000 bitcoins - General Electric by itself would consume 106 bitcoins. A rough guestimate based on that of the S&P 500 stocks means a similar amount of shares would consume about 15,000 bitcoins. That's still a negligible fraction of the total 21 million bitcoins, but imagine if not only were all shares in all current companies converted to satoshis but the explosion of newer shares caused by the more freed economy allowing more companies to exist - how many bitcoins would eventually be consumed? Add in shares of bonds, and how much now? Additionally, if we're going to use the BTC blockchain for share listings, why not use it for real estate? How many properties are there in the world? In the solar system? And why stop there? Why not use the BTC blockchain to register ownership of vehicles (using VINs perhaps)? How many vehicles are there and how many bitcoins would that remove from circulation as plain bitcoins? Of course, we can always add more significant digits, making units smaller than satoshis so using the 21 million we would never run out, but then we'd need to make that transition long before it would naturally occur.

Another concern is that adding new functionality to software always creates additional risks. Perhaps new security holes will be opened. Maybe it'll make the wallets more fragile. The user interfaces would probably have to be more complicated in many cases.

How would stock splits be handled under colored coins?

The reduction in total available plain bitcoins would cause deflation, which would be good for current holders of bitcoins, but is an unnecessary deflation fair?

IMHO, using something like namecoin's blockchain instead of the BTC blockchain would be a better route to go. You don't endanger the bitcoin network & currency, while allowing for unlimited ownership tokens. I've also heard that NMC is underutilized and in danger of being unmined, so expanding its purpose to cover property in general might give it the needed kick back into usefulness.

But as the discussion on the FB thread in the Free State Bitcoin group has pointed out, people are going to do what they want, so if the colored coins on the BTC blockchain is what works, so be it. The concept is pretty cool from a technical standpoint; I just don't want it's technical coolness to cause potential non-technical issues to be overlooked.

Your concern is similar to the idea of using cold coins as proof of ownership in shares. My short answer to that is that you're right. Using a valuable asset to reflect something of potentially lower value is not a good idea. However, you have to stay real. 1 satoshi represents 0.000000001 USD. Thus 1 BTC needs to be worth >10,000,000 USD before this starts to become a problem.
Also, don't forget that bitcoin will probably not be the only cryptocurrency in the future. If you feel like we need more digits NOW, you may want to start an alternate blockchain which supports maybe 4 times as many digits.

The ASICMINER Project https://bitcointalk.org/index.php?topic=99497.0
"The way you solve things is by making it politically profitable for the wrong people to do the right thing.", Milton Friedman
killerstorm (OP)
Legendary
*
Offline Offline

Activity: 1022
Merit: 1015



View Profile
November 17, 2012, 05:54:57 PM
 #137

Quote
If you feel like we need more digits NOW, you may want to start an alternate blockchain which supports maybe 4 times as many digits.

Devcoin generates 50,000 coins per block. So three billion devcoins already exist, and award per block won't be reduced.

That's probably enough satoshis for everything in solar system...

Chromia: a better dapp platform
ShireSilver
Sr. Member
****
Offline Offline

Activity: 382
Merit: 253



View Profile WWW
November 17, 2012, 06:04:46 PM
 #138

I think I've already addressed your concerns.
Yeah, probably mostly. Good to have them collected together though.

4. Colored coin protocol can work on any Bitcoin-like blockchain, so it's likely that if it will be heavily used then there will be specialized a blockchain just for colored coins. (E.g. ripplecoin.) But at start we want to use Bitcoin as a host for a number of reasons (e.g. ease of payment). No heavy use is expected at start, so don't worry about blockchain bloat and satoshis being out of circulation.
That's a good point. The first issuers can use the BTC blockchain, and when it is tested and working well, newer issuers can put theirs on another blockchain. I think that might work, and does address a lot of my concerns.

Or perhaps the BTC blockchain can be where shares migrate to when an issuer becomes big and legitimate enough (i.e. the BTC blockchain can host shares of white market issuers, NMC blockchain can host shares of pink market, and DVC blockchain can be where most issuers start as black market).

6. If some kind of danger for network & security will be discovered (which is highly unlikely, but still...) you should be grateful that we've discovered it sooner rather than later.
Good point!

7. If you have many shares you won't need stock split. But if it is necessary, it can be done approximately same was as it was done by Berkshire Hathaway: company can issue a different kind of shares. See here: http://en.wikipedia.org/wiki/Berkshire_Hathaway#Corporate_affairs
I can see how that should work in theory. We should have some time before we need to know exactly how to do it in practice.

Anyway, I am wanting to raise capital and am keenly interested in this idea of a decentralized share exchange capability. In addition to the ability to issue shares I'd also like the ability for my shareholders to be totally anonymous yet still be able to communicate back and forth including voting on proposals.

Shire Silver, a better bullion that fits in your wallet. Get some, now accepting bitcoin!
Red Emerald
Hero Member
*****
Offline Offline

Activity: 742
Merit: 500



View Profile WWW
November 17, 2012, 08:44:29 PM
 #139

Yep, I'm working on multi-party transactions now. That was one of reasons for choosing Armory.

Auto-trade's role is to allow to trade with clients which do not implement p2p trading protocol: any client capable of sending/receiving coins can trade them this way.
Awesome.  It sounds like you've really thought this through.  I'm excited to try it out!

jtimon
Legendary
*
Offline Offline

Activity: 1372
Merit: 1002


View Profile WWW
November 20, 2012, 04:13:03 PM
Last edit: December 04, 2012, 12:44:04 PM by jtimon
 #140

It is possible to link satoshis which "vanished" in a txn fee to satoshis which "appear" in coinbase.

This was what I was thinking.

While this is theoretically sound, I don't think it's a good idea because it is rather complicated, but it doesn't solve any real problem:

It may have some value, just enabling payment of chain fees with assets that are not bitcoin. Maybe a colored satoshi can be more attractive than a full btc for a color aware miner. Other miners may take the satoshi without knowing anything else.
In any case, I don't think this is very useful. We just considered it as the only way to finance ripplecoin hashing. We then thought that a cash hostcoin would be better.
As you say it adds too much complexity to the system and probably it isn't worth it. Surely not at this stage. Miners will be just fine with uncolored fees.

2 different forms of free-money: Freicoin (free of basic interest because it's perishable), Mutual credit (no interest because it's abundant)
Pages: « 1 2 3 4 5 6 [7] 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 »
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!