Bitcoin Forum
August 30, 2015, 09:54:35 AM *
News: New! Latest stable version of Bitcoin Core: 0.11.0 [Torrent]
 
   Home   Help Search Donate Login Register  
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 72978 times)
killerstorm
Legendary
*
Offline Offline

Activity: 938



View Profile

Ignore
October 16, 2013, 01:00:05 PM
 #241

I'm sorry, I'm just dropping in here triggered by reddit all confused about colored coins implementations.

Why is this thread called ArmoryX while the implementation talked about seems to be called ngccc?

Well, previously I was working on a different client, called ArmoryX. Since many people already follow this thread, I decided to continue posting updates in it. I guess I should rename it....

colored coins proof-of-concept: private currencies, stock/bond p2p exchange

Tips and donations: 16v13Fa9cPmfFzpm9mmbWwAkXY4gyY6uh4
1440928475
Hero Member
*
Offline Offline

Posts: 1440928475

View Profile Personal Message (Offline)

Ignore
1440928475
Reply with quote  #2

1440928475
Report to moderator
The Bitcoin software, network, and concept is called "Bitcoin" with a capitalized "B". Bitcoin currency units are called "bitcoins" with a lowercase "b" -- this is often abbreviated BTC.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise here.
1440928475
Hero Member
*
Offline Offline

Posts: 1440928475

View Profile Personal Message (Offline)

Ignore
1440928475
Reply with quote  #2

1440928475
Report to moderator
1440928475
Hero Member
*
Offline Offline

Posts: 1440928475

View Profile Personal Message (Offline)

Ignore
1440928475
Reply with quote  #2

1440928475
Report to moderator
molecular
Donator
Legendary
*
Offline Offline

Activity: 1680



View Profile

Ignore
October 16, 2013, 07:38:00 PM
 #242

I'm sorry, I'm just dropping in here triggered by reddit all confused about colored coins implementations.

Why is this thread called ArmoryX while the implementation talked about seems to be called ngccc?

Well, previously I was working on a different client, called ArmoryX. Since many people already follow this thread, I decided to continue posting updates in it. I guess I should rename it....

I understand. Yes, please change the title, it's hard enough for newbs to find the relevant stuff about colored coins.

Where is the actual data saved which is associated with the coins?

What data?


I would like to seconds this question regarding color kernel and parameter "storage location"? Do I understand correctly that the color kernel is defined by the issuing transaction and that data is stored in the blockchain?

This leads me to next question: is any data stored off blockchain at all?

This leads me to yet further question: where/how is "association" of color with a contract "stored"?

sorry for being so lazy and just out-right asking these newbie-questions

also: thanks, killerstorm for writing this: https://github.com/bitcoinx/colored-coin-tools/wiki/colored_coins_intro, it really helps

PGP key molecular F9B70769 fingerprint 9CDD C0D3 20F8 279F 6BE0  3F39 FC49 2362 F9B7 0769
Meni Rosenfeld
Donator
Legendary
*
Offline Offline

Activity: 1596



View Profile WWW

Ignore
October 16, 2013, 07:49:21 PM
 #243

I'm sorry, I'm just dropping in here triggered by reddit all confused about colored coins implementations.

Why is this thread called ArmoryX while the implementation talked about seems to be called ngccc?

Well, previously I was working on a different client, called ArmoryX. Since many people already follow this thread, I decided to continue posting updates in it. I guess I should rename it....

I understand. Yes, please change the title, it's hard enough for newbs to find the relevant stuff about colored coins.

Where is the actual data saved which is associated with the coins?

What data?


I would like to seconds this question regarding color kernel and parameter "storage location"? Do I understand correctly that the color kernel is defined by the issuing transaction and that data is stored in the blockchain?

This leads me to next question: is any data stored off blockchain at all?

This leads me to yet further question: where/how is "association" of color with a contract "stored"?

sorry for being so lazy and just out-right asking these newbie-questions

also: thanks, killerstorm for writing this: https://github.com/bitcoinx/colored-coin-tools/wiki/colored_coins_intro, it really helps
The data has two parts, the color definition which identifies the color and its meaning, and the transactions which indicate movement of colored coins.

The transactions are completely normal Bitcoin transactions stored on the blockchain.

The color definition is "out of band". The most important place it should be stored is probably the issuer's records, if the issuer itself doesn't know how to treat coins of his color that's a problem. It should also be visible in some public place such as a company website or a repository so other people know what the color represents too. Lastly, every end-user client interested in this color should download the color definition and store it, perhaps in the wallet file, so it can recognize coins of this color.

The color definition connects the blockchain with a real-world entity so there is little benefit in having it inside the blockchain itself.

1EofoZNBhWQ3kxfKnvWkhtMns4AivZArhr   |   Who am I?   |   bitcoin-otc WoT
Bitcoil - Exchange bitcoins for ILS (thread)   |   Israel Bitcoin community homepage (thread)
Analysis of Bitcoin Pooled Mining Reward Systems (thread, summary)  |   PureMining - Infinite-term, deterministic mining bond
molecular
Donator
Legendary
*
Offline Offline

Activity: 1680



View Profile

Ignore
October 16, 2013, 08:13:20 PM
 #244

The color definition connects the blockchain with a real-world entity so there is little benefit in having it inside the blockchain itself.

Thanks a lot for your above explanations about "storage locations", Meni.

On the last point I quoted: What benefit (or downsides) could a hash of the contract inside the blockchain have?

PGP key molecular F9B70769 fingerprint 9CDD C0D3 20F8 279F 6BE0  3F39 FC49 2362 F9B7 0769
killerstorm
Legendary
*
Offline Offline

Activity: 938



View Profile

Ignore
October 16, 2013, 08:43:56 PM
 #245

I would like to seconds this question regarding color kernel and parameter "storage location"? Do I understand correctly that the color kernel is defined by the issuing transaction and that data is stored in the blockchain?

No.

Suppose you have just installed NGCCC. In its initial state, it only knows about bitcoins, and isn't able to recognize any colors.

But you, as a user, is interested in some asset. So you instruct it: "NGCCC, I want you to track certain colored colored coins using parametrized color kernel OBC. Their genesis is X:Y. Please call them Foo".

NGCCC will add a record like "OBC:X:Y = Foo" into its configuration file so it will be able to remember about this association between name and color.

And now it is able to recognize these Foo-coins.

Issuing transaction is just a normal transaction. It simply acts as a starting point: next transaction will spend its output, and so on.

This leads me to next question: is any data stored off blockchain at all?

Blockchain has information about transfers of colored coins.

Everything else can be stored elsewhere.

This leads me to yet further question: where/how is "association" of color with a contract "stored"?

We use a layered model.

Lowest layer is the colored coin model, it is about color kernel and colorvalues. Contracts simply do not exist on that level.

Contracts can appear on higher levels, but so far we haven't fully implement this higher level. But the thing is, it can be implemented in many different ways, and it isn't of utter importance.

I believe it's better to keep it manual for now.

E.g. suppose John Smith wants to issue 1000 bonds with face value of 1 USD each. To do this he will write a message like

Quote
I, John Smith, promise to pay X US dollars for a transaction output which has colorvalue X according to color kernel "obc:cc8e64cef1a880f5132e73b5a1f52a72565c92afa8ec36c445c635fe37b372fd:0:263370".
In order to redeem them, colored coins must be sent to address 1XYZabc, and then sender must write a message with his contact and banking information, sign it with address which was used to send colored coins to address mentioned above, and send me this signed message via email.

Then John Smith will sign this message using GPG and will post it in on forum. If there are people who trust him, they'll check if GPG signature is valid.

If they are willing to trade these bonds, they will add color mentioned in the message into their colored coin client.

Of course, we can create a special format for these contracts, make some kind of database where they can be published and so on.

But right now it isn't necessary: people can just use whatever they are comfortable with.

Colored coin software is just a tool which tracks coins.

colored coins proof-of-concept: private currencies, stock/bond p2p exchange

Tips and donations: 16v13Fa9cPmfFzpm9mmbWwAkXY4gyY6uh4
molecular
Donator
Legendary
*
Offline Offline

Activity: 1680



View Profile

Ignore
October 16, 2013, 09:01:15 PM
 #246

I would like to seconds this question regarding color kernel and parameter "storage location"? Do I understand correctly that the color kernel is defined by the issuing transaction and that data is stored in the blockchain?

No.

Suppose you have just installed NGCCC. In its initial state, it only knows about bitcoins, and isn't able to recognize any colors.

But you, as a user, is interested in some asset. So you instruct it: "NGCCC, I want you to track certain colored colored coins using parametrized color kernel OBC. Their genesis is X:Y. Please call them Foo".

NGCCC will add a record like "OBC:X:Y = Foo" into its configuration file so it will be able to remember about this association between name and color.

And now it is able to recognize these Foo-coins.

Issuing transaction is just a normal transaction. It simply acts as a starting point: next transaction will spend its output, and so on.

This leads me to next question: is any data stored off blockchain at all?

Blockchain has information about transfers of colored coins.

Everything else can be stored elsewhere.

This leads me to yet further question: where/how is "association" of color with a contract "stored"?

We use a layered model.

Lowest layer is the colored coin model, it is about color kernel and colorvalues. Contracts simply do not exist on that level.

Contracts can appear on higher levels, but so far we haven't fully implement this higher level. But the thing is, it can be implemented in many different ways, and it isn't of utter importance.

I believe it's better to keep it manual for now.

E.g. suppose John Smith wants to issue 1000 bonds with face value of 1 USD each. To do this he will write a message like

Quote
I, John Smith, promise to pay X US dollars for a transaction output which has colorvalue X according to color kernel "obc:cc8e64cef1a880f5132e73b5a1f52a72565c92afa8ec36c445c635fe37b372fd:0:263370".
In order to redeem them, colored coins must be sent to address 1XYZabc, and then sender must write a message with his contact and banking information, sign it with address which was used to send colored coins to address mentioned above, and send me this signed message via email.

Then John Smith will sign this message using GPG and will post it in on forum. If there are people who trust him, they'll check if GPG signature is valid.

If they are willing to trade these bonds, they will add color mentioned in the message into their colored coin client.

Of course, we can create a special format for these contracts, make some kind of database where they can be published and so on.

But right now it isn't necessary: people can just use whatever they are comfortable with.

Colored coin software is just a tool which tracks coins.


I understand the approach regarding binding of asset/contract/... to color and I agree this is a good approach. Maybe concering yourself with implementing the "higher level" should have low priority.

Thank you! Especially for supplying your example John Smith contract you put in quote above, maybe this could be put somewhere into the "intro" document (https://github.com/bitcoinx/colored-coin-tools/wiki/colored_coins_intro).

PGP key molecular F9B70769 fingerprint 9CDD C0D3 20F8 279F 6BE0  3F39 FC49 2362 F9B7 0769
dillpicklechips
Sr. Member
****
Offline Offline

Activity: 438


View Profile

Ignore
October 17, 2013, 11:10:35 PM
 #247

I'm wondering if using the term "colored coins" confuses what they actually represent to the lay person. If they were called "tokenized bitcoins" it would be abvious to most, that the bitcoins represent something else of value.  Turning a bitcoin into a token makes sense compared to coloring it.
dillpicklechips
Sr. Member
****
Offline Offline

Activity: 438


View Profile

Ignore
October 18, 2013, 05:08:08 AM
 #248

I'm wondering if using the term "colored coins" confuses what they actually represent to the lay person. If they were called "tokenized bitcoins" it would be abvious to most, that the bitcoins represent something else of value.  Turning a bitcoin into a token makes sense compared to coloring it.
Then the NGCCC can be a more user friendly and understandable: Bitcoin Tokenizer! Wink
Meni Rosenfeld
Donator
Legendary
*
Offline Offline

Activity: 1596



View Profile WWW

Ignore
October 18, 2013, 06:30:59 AM
 #249

I'm wondering if using the term "colored coins" confuses what they actually represent to the lay person. If they were called "tokenized bitcoins" it would be abvious to most, that the bitcoins represent something else of value.  Turning a bitcoin into a token makes sense compared to coloring it.
Then the NGCCC can be a more user friendly and understandable: Bitcoin Tokenizer! Wink
We use the "token" terminology often. However, "tokens" is the "what" - the goal is to have decentralized digital tokens representing arbitrary assets. "Colored coins" is the "how", it is the name of a specific approach to achieve it - which is to take coins (which is actually a technical term meaning UTXO) and "coloring" them, that is, making it possible to trace them.

1EofoZNBhWQ3kxfKnvWkhtMns4AivZArhr   |   Who am I?   |   bitcoin-otc WoT
Bitcoil - Exchange bitcoins for ILS (thread)   |   Israel Bitcoin community homepage (thread)
Analysis of Bitcoin Pooled Mining Reward Systems (thread, summary)  |   PureMining - Infinite-term, deterministic mining bond
osoverflow
Full Member
***
Offline Offline

Activity: 148


Viviendo Linux


View Profile WWW

Ignore
October 18, 2013, 07:03:31 PM
 #250

It's great to read this thread. I'm working in the implementation of colored coins in a p2p and web exchange for stocks, bonds and options.

coinmarket.pw is the link.

I'm using colored coins for transactions and to keep records of who has what.
I'm using namecoin to store the relationship between the genesis address and the stock and other metadata.
I'm using a mix of internal database and bitmessage to store local and p2p trades
I'm using abe block explorer and mysql to store all the block chain in a easy to access database to track colored coins

I want to collaborate with this project, because I'm using the technology. I think we can make this a initial exchange, then a group of exchanges can spawn from it in various countries, with collaborative order book, offering different advantages to traders and issuers that help them decide in which market they want to stay. They can also keep portion of their shares on multiple markets, to increase the liquidity.


Donations: 1BTCMktcVXbDrzBgv8yqgZg1iVRNfajPz8 | LbtcMKTfcFJrjGhSBbEsG2oRtA1fsHkhou | PDqPMLbD8ahJdQrYxSUxx9UZoShbB7H2n4
Visit:
http://opticalcube.com | http://tuminium.com (Bitcoin / Mexican Pesos) | http://pagabitcoin.com (cell phone credit page) | Earn Devcoins by Writing
dillpicklechips
Sr. Member
****
Offline Offline

Activity: 438


View Profile

Ignore
October 19, 2013, 01:06:25 AM
 #251

I'm wondering if using the term "colored coins" confuses what they actually represent to the lay person. If they were called "tokenized bitcoins" it would be abvious to most, that the bitcoins represent something else of value.  Turning a bitcoin into a token makes sense compared to coloring it.
Then the NGCCC can be a more user friendly and understandable: Bitcoin Tokenizer! Wink
We use the "token" terminology often. However, "tokens" is the "what" - the goal is to have decentralized digital tokens representing arbitrary assets. "Colored coins" is the "how", it is the name of a specific approach to achieve it - which is to take coins (which is actually a technical term meaning UTXO) and "coloring" them, that is, making it possible to trace them.
Thanks. I still wish it was "Bitcoin Tokenizer" and not "NGCCC"!  Grin
killerstorm
Legendary
*
Offline Offline

Activity: 938



View Profile

Ignore
October 25, 2013, 12:42:24 AM
 #252

ngcccbase development update: it is now able to issue and send colored coins.

Also, blockchain scan got considerably faster.



Note that 30 out of 31 commits are mine, which means that all my attempts to recruit people were futile.

I even had to do trivial tasks like this one: https://github.com/bitcoinx/ngcccbase/issues/10

myself: https://github.com/bitcoinx/ngcccbase/commit/c7c284d811a0457749c6e7eaef193b8ca0e78268

Sure, I can do that, but I'd rather focus on things which are complex.

colored coins proof-of-concept: private currencies, stock/bond p2p exchange

Tips and donations: 16v13Fa9cPmfFzpm9mmbWwAkXY4gyY6uh4
dillpicklechips
Sr. Member
****
Offline Offline

Activity: 438


View Profile

Ignore
October 25, 2013, 01:38:30 AM
 #253

ngcccbase development update: it is now able to issue and send colored coins.

Also, blockchain scan got considerably faster.



Note that 30 out of 31 commits are mine, which means that all my attempts to recruit people were futile.

I even had to do trivial tasks like this one: https://github.com/bitcoinx/ngcccbase/issues/10

myself: https://github.com/bitcoinx/ngcccbase/commit/c7c284d811a0457749c6e7eaef193b8ca0e78268

Sure, I can do that, but I'd rather focus on things which are complex.
Keep up the good work! Are you involved with coloredcoins.org?
dillpicklechips
Sr. Member
****
Offline Offline

Activity: 438


View Profile

Ignore
October 25, 2013, 03:22:23 AM
 #254

I get this error


$ python ngccc.py
Traceback (most recent call last):
  File "ngccc.py", line 30, in <module>
    main()
  File "ngccc.py", line 16, in main
    if args[0] == 'import_config':
IndexError: list index out of range
killerstorm
Legendary
*
Offline Offline

Activity: 938



View Profile

Ignore
October 25, 2013, 09:17:33 AM
 #255

Keep up the good work! Are you involved with coloredcoins.org?

Yes, there is my photo in The Team section Smiley

colored coins proof-of-concept: private currencies, stock/bond p2p exchange

Tips and donations: 16v13Fa9cPmfFzpm9mmbWwAkXY4gyY6uh4
killerstorm
Legendary
*
Offline Offline

Activity: 938



View Profile

Ignore
October 25, 2013, 09:56:33 AM
 #256

I get this error

$ python ngccc.py

It's not this simple Smiley

OK, first of all, I wouldn't call this 'usable', basically it is just a prototype at this stage.

Requirements: To run it you need bitcoind or Bitcoin-Qt with enabled JSON-RPC interface, and also txindex needs to be enabled.

To do this you can add txindex=1 to config. If you launched bitcoind/Bitcoin-Qt before, it will need to reindex blockchain. To do this, simply stop it and launch with -reindex parameter. Reindexation can take up to a hour.

(txindex is needed only for work with colored coins, if you want to use it for plain bitcoins it works fine without it.)

OK, so it is a command-line utility. Generally, each command requires a name of asset you're working with, e.g.:

Code:
$ python ngccc.py newaddr bitcoin
1NJukQf77p76SezLwRGkjeX4qtz28BMa6D

$ python ngccc.py balance bitcoin
30000

$ python ngccc.py alladdresses bitcoin
[u'1LxmJJLnnLR9QmBNJwVhFL4h8BtQQ8SEbS', ... ]

$ python ngccc.py send bitcoin 1LxmJJLnnLR9QmBNJwVhFL4h8BtQQ8SEbS 12345
...

(Note that it uses blockchain.info to find UTXOs, so balance command might be slow if you have many addresses.)

Now let's do something with colored coins:

Code:
$ python ngccc.py issue foo obc 1 10000
   # this issues colored coins using order-based coloring method (obc), using 10000 satoshi for this
   # asset associated with this color will be called foo

# balance will be available only after genesis transaction is included into a block:

$ python ngccc.py balance foo
10000

# only addresses associated with asset foo will be able to receive colored coins
$ python ngccc.py alladdresses foo
['17tJE7tySa6L6UUmLGAzMAvrqjLcAaXwZx']

$ python ngccc.py send foo 17tJE7tySa6L6UUmLGAzMAvrqjLcAaXwZx 10000
...

Currently there is no good way to get color_desc of asset/color:

Code:
$ python ngccc.py dump_config >my-config.json

$ cat my-config.json
{
    "asset_definitions": [
        {
            "color_set": [
                "obc:caff27b3fe0a826b776906aceafecac7bb34af16971b8bd790170329309391ac:0:265577"
            ],
            "monikers": [
                "foo"
            ]
        }
    ],
...

Once you have color_desc, you can import it into another client like this:

Code:
$ python ngccc.py addasset foo "obc:cc8e64cef1a880f5132e73b5a1f52a72565c92afa8ec36c445c635fe37b372fd:0:263370"

#and now it is possible to get an address which can be used to receive foo-coins:
$ python ngccc.py newaddr foo

Finally, wallet is editable: to do this you need to edit JSON file obtained by dump_config, and load it using import_config my-config.json

colored coins proof-of-concept: private currencies, stock/bond p2p exchange

Tips and donations: 16v13Fa9cPmfFzpm9mmbWwAkXY4gyY6uh4
MilkyWayMasta
Full Member
***
Offline Offline

Activity: 221


View Profile

Ignore
November 06, 2013, 06:37:48 PM
 #257

Where is the actual data saved which is associated with the coins?

What data?

If you're talking about metadata like name, contract, etc., then it can be anywhere. E.g. somebody might post on forum that he is selling shares of his company foo, and you canl add this asset definition to your client, like

Code:
ngccc.py addasset foo "obc:cc8e64cef1a880f5132e73b5a1f52a72565c92afa8ec36c445c635fe37b372fd:0:263370"

Now it can show you your foo balance (how many shares you have), you can buy and sell them. Of course, client doesn't care what "foo" means.

If you're talking about ownership data, it is encoded in Bitcoin transactions. These transactions look exactly like normal Bitcoin transaction and do not have color tags or anything. But client can trace them back to the genesis transaction my going through the transaction graph, and that's how it knows that it represents ownership.

How's the progress going killerstorm? Been following r/coloredcoins but no new info. Is there anything the bitcoin community can do to help other than helping develop for colored coins?

Tip: 1Cep5RbaEziB3cjNcHqXkxDQ2aaK5y7DQG
BitMessage: BM-2cXUWSpnEDH2rAPWGoVhd7rtCF8xpVFwGh
killerstorm
Legendary
*
Offline Offline

Activity: 938



View Profile

Ignore
November 06, 2013, 08:34:40 PM
 #258

How's the progress going killerstorm?

We have a lot (~5) of developers now and are making good progress, but still a lot is left to do...

I'll try to make an alpha release this week.

Been following r/coloredcoins but no new info. Is there anything the bitcoin community can do to help other than helping develop for colored coins?

Probably nothing now, but after we'll make a release we'll need people to test it.

colored coins proof-of-concept: private currencies, stock/bond p2p exchange

Tips and donations: 16v13Fa9cPmfFzpm9mmbWwAkXY4gyY6uh4
knybe
Hero Member
*****
Offline Offline

Activity: 644


decentralize EVERYTHING...


View Profile

Ignore
November 06, 2013, 10:35:02 PM
 #259

...
Probably nothing now, but after we'll make a release we'll need people to test it.

where do I sign up?
killerstorm
Legendary
*
Offline Offline

Activity: 938



View Profile

Ignore
November 06, 2013, 11:03:15 PM
 #260

...
Probably nothing now, but after we'll make a release we'll need people to test it.

where do I sign up?

I'll post an update to this thread when it's ready.

colored coins proof-of-concept: private currencies, stock/bond p2p exchange

Tips and donations: 16v13Fa9cPmfFzpm9mmbWwAkXY4gyY6uh4
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:  

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!