Search content
Sort by

Showing 20 of 32 results by oocook5u
Post
Topic
Board Announcements (Altcoins)
Re: [ANN][Datacoin] Next step: web applications inside blockchain (demo)
by
oocook5u
on 09/01/2014, 01:28:48 UTC
Very nice to see you here! I am reading this right now and trying to understand as much as i can! Already posted the link of this on the other thread so others can see it too cause with all the spam coins it will get buried.

Edit: Very good news! I dont understand it and i would not be able to run Datacoin Local HTTP server myself but i suppose in a few days it will be more explained and i will. I lack skills.

Wink

This link doesn't need any installation procedures: http://ec2-54-201-144-165.us-west-2.compute.amazonaws.com/dtc/get/40a3eb9624528008a87d9119dbed4041d45c9f6483ecd52a7b24f9c8b4fdf548
Post
Topic
Board Announcements (Altcoins)
Topic OP
[ANN][Datacoin] Next step: web applications inside blockchain (demo)
by
oocook5u
on 09/01/2014, 00:22:30 UTC
Hello!

Datacoin blockchain started about two months ago. Thank you to all of you supporting Datacoin. It exists because of your support.

Now we can start developing blockchain-based web applications. Note that this feature doesn't touch sources of Datacoin daemon or qt-wallet: if you are not interested in this it you can still use Datacoins and without understanding this post. Blockchain-based web applications require a http-server that redirects HTTP requests from browser to daemon. This is implemented now with Perl (dtc_http_server.pl). Yes, I know I would have to do it using C++. I'll rewrite it later.

Why web-applications inside blockchain are good?

1. they are protected from being deleted or censored
2. they work locally and don't require a live Internet connection
3. web interface is convenient to users
4. no new technologies are required for developement: HTTP, AJAX and JSON RPC are simply linked together Wink

Datacoin HTTP server is very simple and it is intended to work locally on end-user's machine.

Types of requests supported by Datacoin local HTTP server

NB: NET can be 'dtc' or 'dtc-testnet'

1. Get data from blockchain
http://localhost:PORT/NET/get/TXHASH -> data from tx with TXHASH will be sent back (data is assumed to be in Envelope format - see envelope.proto file)

Example:
http://localhost:8080/dtc/get/40a3eb9624528008a87d9119dbed4041d45c9f6483ecd52a7b24f9c8b4fdf548

2. Call daemon's method
http://localhost:PORT/NET/rpc/METHOD(/ARGS) -> json-rpc call to daemon's METHOD will be performed and resulting json will be sent back to browser

Several arguments are possible in form arg1/arg2/arg3/...

Example:
http://localhost:8080/dtc/rpc/getblockhash/1000

Code:
{
 "result" : "ce3ca3728ee050bf14d8f9a059f13c0062ca303cf2c982796c7dec2ce10f13c6",
 "error" : null,
 "id" : null
}

NB: due to security reasons only 'getinfo', 'getmininginfo', 'getblock', 'getblockhash' and 'getrawtransaction' are supported now. Later all reading methods will be added. 'sendtoaddress' and other money-spending methods probably will be added also but some security issues are to be considered before in order to protect users from theft.

3. Call http local server's method
http://localhost:PORT/NET/lsrpc/METHOD(/ARGS) -> http server will handle this method itself (or translate to several requests to daemon).

There is only one example of lsrpc methods now: 'getenvelope'. It parses tx.data field of a given transaction as an Envelope and returns envelope in json format (without 'Data'). This method is needed to get metadata easily.

Example:
http://localhost:8080/dtc/lsrpc/getenvelope/40a3eb9624528008a87d9119dbed4041d45c9f6483ecd52a7b24f9c8b4fdf548

Code:
{
  "result":
  {
    "FileName":"blockexplorer.html",
    "ContentType":"text/html",
    "Compression":"1",
    "PublicKey" : "MIGJA... a lot of base64 letters ...AE=",
  }
}

Demo
In order to demonstrate this in action I've sent 'Block explorer' application in transaction 40a3eb9624528008a87d9119dbed4041d45c9f6483ecd52a7b24f9c8b4fdf548. Here is an instruction on how to access it from your own computer with local HTTP server (actually this will be too difficult for 99% of users, I need to rewrite server using C++ and deliver it as a precompiled binary):

Before you start: DON'T do this on the machine with many coins!!! Setup a different user account on Windows (or Linux) or a virtual machine. There is a lot of possible bugs in this code that can lead to loss of money.

Now you are warned. Let's continue.

1. backup yout wallet.dat and protect it with password

2. git clone https://github.com/foo1inge/datacoin-browser.git

3. install all required CPAN modules (the way to do this depends from your Perl distribution, ask Perl guru if you don't know how to do this). Here is list of modules:

Code:
HTTP::Server::Simple::CGI
Google::ProtocolBuffers
MIME::Base64
IO::Compress::Bzip2
IO::Uncompress::Bunzip2
Crypt::OpenSSL::RSA
JSON::RPC::Client
File::HomeDir
Data::Dumper

4. start Datacoin daemon ('getdata' RPC method is required. It was commited two weeks ago and probably you have to update your daemon).

5. cd datacoin-browser/perl/

6. perl dtc_http_server.pl --http-port=8080
This will start local HTTP server on port 8080. In order to see Datacoin testnet add "--testnet=1" option - it will connect to daemon working in testnet.

7. go to http://localhost:8080/dtc/get/40a3eb9624528008a87d9119dbed4041d45c9f6483ecd52a7b24f9c8b4fdf548

8. enjoy

You can deploy this on any machine. Here is this application deployed on Amazon EC2 (micro instance, very slow):
http://ec2-54-201-144-165.us-west-2.compute.amazonaws.com/dtc/get/40a3eb9624528008a87d9119dbed4041d45c9f6483ecd52a7b24f9c8b4fdf548

Blockexplorer application consists of three transactions:

40a3eb9624528008a87d9119dbed4041d45c9f6483ecd52a7b24f9c8b4fdf548 - blockexplorer.html
465ca75b6dedf70bc85db24548ee99bab776028f9295116afba4fa1e4838ff5f - blockexplorer.js
73b7c7165a51f604040e17681705a39145392691a0447266b9074a2ad9140327 - datacoin-logo.png


All these files are accessed by TXID (not by names!) the following way (snippets from blockexplorer.html):

Code:
  src="/dtc/get/465ca75b6dedf70bc85db24548ee99bab776028f9295116afba4fa1e4838ff5f"
  type="text/javascript"
  encoding="UTF-8">


Code:

  src="73b7c7165a51f604040e17681705a39145392691a0447266b9074a2ad9140327"
  alt="Datacoin logo"/>


Blockexplorer does following steps while starting:

1. getinfo RPC call (to get current height)
2. getblockhash / getblock for each block in cycle
3. getrawtransaction for each transaction
4. getenvelope for each transaction with data

All these calls are coded as ordinary AJAX in blockexplorer.html.

Important issues for web developers on how to develop applications for Datacoin

1. Start development in testnet

Testnet block explorer: http://ec2-54-201-144-165.us-west-2.compute.amazonaws.com:81/dtc-testnet/get/7fead7473c448b2d69d0e62354dedd59895a1ab099c1835155d83f7327c5156a

2. Never use specific IP or PORT in URLs - only relative URLs are meaningful (user can start local HTTP server on any IP:PORT).
In your HTML code instead of doing

Code:

use relative URL:

Code:

3. Use "--content-type" argument of dtc_put_file.pl script to set a "Content-type" HTTP attribute for your files.

Here is an example:
Code:
perl dtc_put_file.pl --content-type="text/html" blockexplorer.html

4. Use "--add_key" argument of dtc_put_file.pl script and save private key (it will be printed on screen) in a secure place in order to upate your application later.

Here is a full example:
Code:
perl dtc_put_file.pl --add_key=true --content-type="text/html" blockexplorer.html

NB: update feature isn't implemented yet Sad I'm working on it now.

Datacoin development plans regarding blockchain-based web-applications:
(I don't mention here issues not related to the topic)

1. bugfixing

2. Update feature (see detailed description of update scenario in envelope.proto file)

3. Big files (more 128Kb) feature

4. C++ version of local HTTP server

5. "senddata" from local HTTP server

6. Access to P2P file sharing networks from local HTTP server (something like localhost:8080/kademlia/HASH). Needs some investigation.
Post
Topic
Board Announcements (Altcoins)
Re: [ANN][Datacoin] Datacoin blockchain start announcement (Minor code upd + logo)
by
oocook5u
on 19/12/2013, 16:57:33 UTC
Two questions:

 - can it be implemented 'auction system', when data storage fee is dynamic and depends only on demand - the same as with Bitcoin transaction fees, more DTC per 1KB -> higher probability to be processed soon (and to be processed at all - with 0 fee it can be impossible to confirm transaction)


This is the same question as mentioned above. In case tx fee modification will be enabled it will behave following way:

----
Sender can set any fee above technically hard-coded minimum (such a minimum is required in order to avoid tx spam).
Each miner sets his own minimum fee to accept tx into memory pool.

Auction system will really work in case tx flow is close to 1Mb per minute (max blockchain capacity). Below this limit miners are motivated to accept any tx with fee above zero.
----

NB: Second question will get it's answer also Wink
Post
Topic
Board Announcements (Altcoins)
Re: [ANN][Datacoin] Datacoin blockchain start announcement (Minor code upd + logo)
by
oocook5u
on 19/12/2013, 16:12:29 UTC
oocook5u, I have a request for you, what about lowering the fee to post data so people start actually using this nice feature ?
You know, people tend to hold the coins, as if they where bitcoins ...

Can we test it client side ? I tried lowering MIN_TX_FEE in the code but somehow I end up always with the same fees ( the -paytxfee argument doesn't work either since XPM has it disabled in code).

Do you know why did Sunny King disabled -paytxfee?
Post
Topic
Board Announcements (Altcoins)
Re: [ANN][Datacoin] Datacoin blockchain start announcement (Minor code upd + logo)
by
oocook5u
on 19/12/2013, 15:49:25 UTC
I downloaded datacoin and was surprised to see the difficulty at above 9.  I'm just wondering, is it possible to merge-mine this, or at least to re-use the cunningham chains from the Primecoin block chain?  If it's possible, I'd say some clever person is getting a lot of blocks!
That's interesting, and I have been thinking about it also, if in the end DTC could be merge-mined with XPM that would be definately good for the coin, and that would also mean that both coins would share the same difficulty. I can't see a reason why the prime chains accepted by XPM couldn't be accepted for DTC, but they could be chained somehow in the blockchain.

Let's wait and see.  Roll Eyes

Yeah, with the same difficulty and merge-mining it can be awesome union for both coins.

In case of merged mining one of blockchains is parent (has much higher difficulty) and another one is auxiliary and has lower difficulty. This is not the case of Datacoin and Primecoin as soon as difficulties are very close to each other now: 10.x for Primecoin and 9.x for Datacoin. Thus there is no way to do merged mining in the near future.

Please see details here: https://en.bitcoin.it/wiki/Merged_mining_specification
Post
Topic
Board Announcements (Altcoins)
Re: [ANN][Datacoin] Datacoin blockchain start announcement (Minor code upd + logo)
by
oocook5u
on 06/12/2013, 22:08:18 UTC


  yes, we are surpporting DTC in China and just now finished translating the website in Chinese
  but because of the problem of POOL, many miner have no choice, but give up mining DTC,
  any good news about POOL?
  best wishes from China.

Pools will definitely appear.
Good news is that I plan to support pools (at least pools that can mine directly to Datacoin address) in Qt wallet.
Post
Topic
Board Announcements (Altcoins)
Re: [ANN][Datacoin] Datacoin blockchain start announcement (Q&A session)
by
oocook5u
on 06/12/2013, 20:17:18 UTC
Here is a small Q&A session. I'll stay online for 1-2 hours and answer other questions.

Q1: I asked in a different thread: I have two wallets with mined balances. How can I bring them in a single one without importing each privatekey separately?

A1: you can do "sendtoaddress" RPC command or just push "Send" button and input another wallet's address.


Q2: Is the RPC getdata function already implemented ? You did not comment about it on the faq, using shell commands is fine for now.

A2: Not yet. But it will be implemented soon.


Q3: Does this means that he is officially dismissing the new development team? If yes, no problem, I'll go back to developing my own crypto currency. Maxsolnc, Mstfck and the rest, seem your hard work have gone down the drain.

A3-1: I respect your work. This is just a security issue: it's important to have one "approved" point of updates. Security is important for all people holding coins.

A3-2: I'm really surprized with a lot of activity around DataCoin. This is very good for all of us. I still need to adapt to this fact.


Q4: Another thing that bothers me about Datacoin is why has the block reward gone down so fast ?

A4: Block reward goes down with difficulty increase. It's all the same as in PrimeCoin. The difference is that you can get more in the future with tx fee (full block will give about 50 DCT in fees).


Q5: Do both wallet versions (normal and HP) store the full data blockchain ?

A5: Yes. The difference is only in mining speed (-hp uses libgmp).


Q6: And BTW if storage is so expensive, those who keep the full blockchain available in the network should be rewarded, otherwise there is not much incentive to keep a growing blockchain in your hardrive.

A6: I'm thinking now about policy that can encourage people to store and distribute blockchain data to other services. I think this shouldn't be a part of core protocol due to security reasons. All ideas are welcome.


Q7: The mining reward is so tiny, why should people mine long-term?

A7: Cummulative tx fee from one block is expected to be higher than block reward. This is different from PrimeCoin.


Q8: cryptrol -> maxsolnc: Maybe the dev is more interested in an open discussion here, instead of a private conversation with you.

A8: Both Wink


Q9: I just thought, that including virus/malware code(not working) in blockchain can cause antivirus software to block/delete the chains. Of cousre you can exclude blockchains directory for antivirus, but there should be better solutions for this.

A9: cgminer and some other tools are recognized by antiviruses as malware. This is still not a problem. In case this will become a problem we can always encrypt blockchain on local hdd. This will not lead to hardfork or any other network related problem.


Q10: The original dev has only interest in coding DTC, but zero interest in promoting it.

A10: Somebody must work with code. I think this is very important Wink
I appreciate all of you for doing promotion. You do this much better than I could.
Post
Topic
Board Announcements (Altcoins)
Re: [ANN][Datacoin] Datacoin blockchain start announcement (FAQ & plans added)
by
oocook5u
on 04/12/2013, 02:49:42 UTC
What if i modify the data inside a transaction? How do other peers can protect themselves?
Seems something critical.

Data is signed with TxInput's keys. If you change data transaction's signatures become invalid. It's the same as if you change output address or locktime. No peer would accept tx into mempool with invalid signatures.
Post
Topic
Board Altcoin Discussion
Re: Datacoin Logo - chosen?!
by
oocook5u
on 04/12/2013, 00:08:15 UTC

Thanks to Zorrosv, maxsolnc and to all participating in logo creation. Current changes are pushed to datacoin-hp repo (please let me know if I did something wrong with images). Binaries will be published soon (see main post for links).
Post
Topic
Board Announcements (Altcoins)
Re: [ANN][Datacoin] Datacoin blockchain start announcement (just launched)
by
oocook5u
on 28/11/2013, 20:41:18 UTC
Hello!

1. I've added FAQ to the top message of this thread. I hope it will clarify plans. In case something important is missing, please add questions here.

2. Please don't post non technical issues (exchange rates, markets, etc) into this thread because it's hard to find questions I really have to answer.
Post
Topic
Board Announcements (Altcoins)
Re: [ANN][Datacoin] Datacoin blockchain start announcement (just launched)
by
oocook5u
on 26/11/2013, 21:21:46 UTC
I tried nodes from bidji29 but it still doesn't work.

I also think about DNS, however I've got Primecoin gt installed and it works perfectly fine.
Can you be more precise?

Primecoin-qt works because it is using their OWN DNS seed server! Your no connection may be because you are trying to connect to primecoin-qt!

Btw, my datacoin-qt runs fine on my current computer but don't have connection when I try to run it on a new computer.

1. Please don't use Primecoin's DNS seed. This will not help.

2. I've restarted both hardcoded seed nodes. They are working now.

3. New nodes will be installed by my friends. I'll hardcode these IPs too.

4. Here is the list of working nodes I've found right now:

14.158.38.21:4777
14.220.228.99:4777
14.28.52.207:4777
36.57.145.161:4777
36.57.145.16:4777
36.57.146.21:4777
37.143.201.89:4777
46.10.55.117:4777
49.67.135.67:4777
49.83.33.38:4777
77.23.239.66:4777
88.83.203.34:4777
93.189.44.49:4777
106.187.41.67:4777
108.161.145.16:4777
111.173.1.17:4777
113.124.121.18:4777
117.11.230.244:4777
117.21.226.240:4777
117.21.227.229:4777
117.93.111.112:4777
122.7.124.45:4777
123.171.107.117:4777
123.174.211.94:4777
123.9.118.54:4777
124.230.102.236:4777
124.230.77.181:4777
124.232.136.235:4777
125.211.206.16:4777
162.213.253.139:4777
162.243.47.48:4777
173.208.179.90:4777
183.86.193.42:4777
209.126.73.2:4777
209.126.74.150:4777
221.0.120.129:4777
221.234.191.176:4777
222.243.84.129:4777
Post
Topic
Board Announcements (Altcoins)
Re: [ANN][Datacoin] Datacoin blockchain start announcement (just launched)
by
oocook5u
on 26/11/2013, 00:49:21 UTC
china have an exchange now:https://www.btc-8.com/?DTC_CNY
1 DTC = 1 CNY, not bad for start  Smiley


Yes Smiley
Now I'm trying to contact oocook5u - developers at ypool want to ask several Qs to him. After it DTC can be possibly added to YPool !

I've started fixing the issue with getwork in daemon. This will take few day to complete and verify.
Post
Topic
Board Announcements (Altcoins)
Re: [ANN][Datacoin] Datacoin blockchain start announcement (just launched)
by
oocook5u
on 24/11/2013, 22:05:40 UTC
I am confused about the fees for storing files. What is to stop someone from modifying the code to just insert files for free? From what I understand there is nothing in the algorithm that would actually prevent that.

Thank you for the question. Nothing stops us from modifying mintxfee as soon as txfee isn't a hard rule: block will be accepted with zero tx fee.

There is two kinds of mintxfee:

1) minimal tx fee that limits me (as a miner) to accept tx into block
2) minimal tx fee that limits me (as a node) to relay tx to other nodes

As a miner I can accept lowfee txes into my memory pool but these txes will be accepted by other nodes only with blocks I've mined myself. This means that lowfee txes will reach other nodes much slower.

...and no confidence that it will reach other nodes at all, correct?

Yes.
Post
Topic
Board Announcements (Altcoins)
Re: [ANN][Datacoin] Datacoin blockchain start announcement (just launched)
by
oocook5u
on 24/11/2013, 21:21:56 UTC
I am confused about the fees for storing files. What is to stop someone from modifying the code to just insert files for free? From what I understand there is nothing in the algorithm that would actually prevent that.

Thank you for the question. Nothing stops us from modifying mintxfee as soon as txfee isn't a hard rule: block will be accepted with zero tx fee.

There is two kinds of mintxfee:

1) minimal tx fee that limits me (as a miner) to accept tx into block
2) minimal tx fee that limits me (as a node) to relay tx to other nodes

As a miner I can accept lowfee txes into my memory pool but these txes will be accepted by other nodes only with blocks I've mined myself. This means that lowfee txes will reach other nodes much slower.
Post
Topic
Board Announcements (Altcoins)
Re: [ANN][Datacoin] Datacoin blockchain start announcement (just launched)
by
oocook5u
on 24/11/2013, 20:36:12 UTC
Created an information sheet
https://bitcointalk.org/index.php?topic=345190.msg3699194#msg3699194

Anything I should add?
Yes, add specs of DTC - how much coins, when subsidy halving, etc

Do you have the specs?

Here is a short spec:

2.000.000.000 coins will be emitted.

Block reward gradually goes down as difficulty rises (no halving) as in Primecoin. But finally it is a bit different from Primecoin: tx fee is high (0.05 DTC per 1Kb) => fully loaded block (1024Kb) gives ~50DTC in plus to block reward. This is expected in future.

Block target is 1 minute.

Max block size is 1Mb.
Max tx size is 128Kb.
Post
Topic
Board Announcements (Altcoins)
Re: [ANN][Datacoin] Datacoin blockchain start announcement (just launched)
by
oocook5u
on 20/11/2013, 01:30:15 UTC
So the transaction fee does not increase with the size of the data being sent?  Personally, I think the more someone stores in the blockchain the more they should have to pay in a fee.

Sorry, I'm not clear enough Sad
Here are details and example:

Minimal tx fee is 0.05DTC => any tx will cost at least 0.05DTC
1Kb fee is also 0.05DTC => tx fee = tx size * 0.05DTC

Let's check how this works (I use non-hp version of daemon and perl scripts from https://github.com/foo1inge/datacoin-browser):

"balance" : 31.83000000,

$ perl dtc_put_file.pl ubuntu-12.04.3-alternate-amd64.iso.torrent
db0bbf965ee6da1d6e546b5d5b0d6f8a0934687d9ea7b9fd9af91491cfb7011a

"balance" : 30.33000000,

ubuntu-12.04.3-alternate-amd64.iso.torrent is 29Kb long

Total fee for 29Kb (+ some meta information added by scripts) is 1.50 DTC (30Kb * 0.05 = 1.50).
Post
Topic
Board Altcoin Discussion
Re: Datacoin Logo Contest!
by
oocook5u
on 20/11/2013, 00:55:03 UTC

Nothing better than uploading the D. Wink

I think we should definitely wait for a couple days worth of submissions though; really like a couple so far but I'd reserve judgment until we get a few more.

Agree with you, no need to hurry with that

I will also add +250 DTC for the best logo. Let's wait a week (until Nov 25) before making any decisions.
Post
Topic
Board Announcements (Altcoins)
Re: [ANN][Datacoin] Datacoin blockchain start announcement (just launched)
by
oocook5u
on 20/11/2013, 00:48:39 UTC
In my understanding, a transaction with or without extra data always have a 0.05 DTS fee?

If 1Kb or 128Kb of data is push in the data field, the price is always the same 0.05 DTS?

Thanks

I think this is correct but would need the developer to confirm.

Yes, this is a min tx fee.
Post
Topic
Board Announcements (Altcoins)
Re: [ANN][Datacoin] Datacoin blockchain start announcement (just launched)
by
oocook5u
on 18/11/2013, 22:24:21 UTC
Were there no other datacoins (which store data in tx) already? If so, can you remind me please of their names?

The fist coin with data in tx was Namecoin. The main difference is that Namecoin is a key-value storage and it applies some rules to the data (data can be correct or not). Datacoin daemon handles blobs and it doesn't care about data format.
Post
Topic
Board Announcements (Altcoins)
Re: [ANN][Datacoin] Datacoin blockchain start announcement (just launched)
by
oocook5u
on 18/11/2013, 22:13:42 UTC
How was this done in the coding?  Any new script versions created?

Can you also send messages with this coin?

Sending a message means that there is a receiver for this message. senddata RPC doesn't add a receiver into tx but as soon as any tx has a data field you can do this (=> needs a bit of coding but doesn't need a hardfork).

I don't think that messaging (like IM or e-mail) is a very good idea for the blockchain: IM/e-mail is a one-to-one communication and data in blockchain is more suitable for one-to-many communication model.