Electrum Dark

darkzero

Member
Jun 6, 2014
44
35
58
Hijacked by vertoe : Trying to draw a timeline and list important events and contributors.

June 2014: darkzero first one to try working on this, stopped a while ago.
https://github.com/ccur108/electrum-drk-server

July 2014: flare always keeping an eye on it, any progress?
https://github.com/nightlydarkcoin/electrum-drk-server
https://github.com/electrum-drk/electrum-drk
https://github.com/electrum-drk/electrum-drk-server
and hosting http://electrum-drk.org/

Octb 2014: akhavr stepped up after darkzero but lacks on time
https://github.com/akhavr/electrum-drk
https://github.com/akhavr/electrum-drk-server

Novb 2014: Cofresí contributed stuff
https://github.com/Cofresi/electrum-drk
https://github.com/Cofresi/electrum-drk-server

Decb 2014: Gorila1977 helped with some strings afaik
https://github.com/gorilla1977/electrum-drk

Febr 2014: Propulsion brought life back into that project
https://github.com/Propulsions/electrum-drk
https://github.com/Propulsions/electrum-drk-server

Febr 2014: ELM4ever set this project on fire
https://github.com/ELM4Ever/electrum-drk
https://github.com/ELM4Ever/electrum-drk-server

??? redtocatta who are you? ;-)
https://github.com/redtocatta/electrum-drk

??? keeping an eye on electrum-alt
https://github.com/electrumalt
https://cryptocointalk.com/topic/23210-ann-electrum-lightweight-client-for-doge-drk-dvc-ftc-ixc-ppc/

-------------------------------------------------------------------------------------------------------------------------

Original post by darkzero :
I forked the electrum-ltc-server project and updated to work in the Darkcoin TESTNET. First synch took a while possibly because of a fork but the server finally started.
The project is at https://github.com/ccur108/electrum-drk-server
Install procedure isn't changed and the website doesn't exists so you have to build the db from the blockchain.
Haven't changed all the references to darkcoin yet in the various README. I'm looking forward to give a try at the client but there is no ETA.
 
Last edited by a moderator:

yamada

New Member
May 26, 2014
31
21
8
Excellent !

I will add these to my masternodes .

Any plans on a compatible electrum wallet?
 

flare

Administrator
Dash Core Team
Moderator
May 18, 2014
2,287
2,406
1,183
Germany
I forked the electrum-ltc-server project and updated to work in the Darkcoin TESTNET. First synch took a while possibly because of a fork but the server finally started.
The project is at https://github.com/ccur108/electrum-drk-server
Install procedure isn't changed and the website doesn't exists so you have to build the db from the blockchain.
Awesome - will have a look at this too. Will give running a electrum-server on testnet a try.

Any plans on a compatible electrum wallet?
I guess so - electrum server alone does not make sense :)
 

Propulsion

The buck stops here.
Feb 26, 2014
1,008
468
183
Dash Address
XerHCGryyfZttUc6mnuRY3FNJzU1Jm9u5L
Ha! Very cool. So if this some how becomes baked into the MN binaries, we would eliminate the need to download the blockchain for 99% of the userbase. Awesome.
 
  • Like
Reactions: iHeartSmartArt

flare

Administrator
Dash Core Team
Moderator
May 18, 2014
2,287
2,406
1,183
Germany
Got my electrum server running - now to the wallet :)

Code:
[13/07/2014-15:25:45] Starting Electrum server on localhost
[13/07/2014-15:25:45] initializing database
[13/07/2014-15:25:45] UTXO tree root hash: 5df6e0e2761359d30a8275058e299fcc0381534545f55cf43e41983f5d4c9456
[13/07/2014-15:25:45] Coins in database: 0
[13/07/2014-15:25:45] catching up missing headers: -1 0
[13/07/2014-15:25:45] headers file: 0
[13/07/2014-15:25:54] catch_up: block 1000 (4.703s 4.553s) 4ef4d05c7e2352807ecc8339e387a4efab5bbd6588cac6660cd57df019132e41
[13/07/2014-15:26:04] catch_up: block 2000 (4.657s 5.303s) bcc995862371bfd75e3afb84675f95b9d8323e47d939d7003c9d0f507e80828f
[...]
[13/07/2014-17:42:11] catch_up: block 100000 (5.205s 85.107s) 3f5c2b04418920a428707deadd0e7667e748628a6f27a6b505520646fbd7cb79
[13/07/2014-17:43:43] catch_up: block 101000 (5.162s 86.756s) 948397ca176be1aba953725cc497ee03a56b413c561be4816ff5fc710f2d99a2
[13/07/2014-17:44:25] Blockchain is up to date.
[13/07/2014-17:44:25] Memory pool initialized.
[13/07/2014-17:44:25] TCP server started on port 50001
[13/07/2014-17:44:25] SSL server started on port 50002
[13/07/2014-17:44:25] HTTP server started.
[13/07/2014-17:44:25] HTTPS server started.
 
N

nj47

Guest
You beat me to it! I was working on this as well, though it was on my backburner and wasn't getting a lot of attention.

What are your thoughts on implementing darksend?
 

flare

Administrator
Dash Core Team
Moderator
May 18, 2014
2,287
2,406
1,183
Germany
You beat me to it! I was working on this as well, though it was on my backburner and wasn't getting a lot of attention.

What are your thoughts on implementing darksend?
First i want to get the client running, then, after RC4 darksend+, implement darksend. We'll see...
 
  • Like
Reactions: vertoe

flare

Administrator
Dash Core Team
Moderator
May 18, 2014
2,287
2,406
1,183
Germany
Yeah, would be nice to see a working client!
Works :D







Code:
[14/07/2014-10:44:48] Blockchain is up to date.
[14/07/2014-10:44:48] Memory pool initialized.
[14/07/2014-10:44:48] TCP server started on port 50001
[14/07/2014-10:44:48] SSL server started on port 50002
[14/07/2014-10:44:48] HTTP server started.
[14/07/2014-10:44:48] HTTPS server started.
[14/07/2014-10:44:58] blockchain: 34177 (0.003s)
[14/07/2014-10:47:36] SSL  xx.xxx.xx.xxx:59254 [u'n1x78ab9yURvoc2meC7W6GkWDWfYe9PNbk']  10 1.9.8.3
[14/07/2014-10:50:28] blockchain: 34178 (0.042s)
[14/07/2014-10:51:39] blockchain: 34179 (0.040s)
[14/07/2014-10:52:39] blockchain: 34180 (0.038s)
[14/07/2014-10:54:49] blockchain: 34181 (0.039s)
[14/07/2014-10:58:29] blockchain: 34182 (0.057s)
[14/07/2014-10:59:59] blockchain: 34183 (0.040s)
[14/07/2014-11:02:49] blockchain: 34184 (0.037s)
[14/07/2014-11:04:29] blockchain: 34185 (0.037s)
[14/07/2014-11:06:29] cache: invalidating n1x78ab9yURvoc2meC7W6GkWDWfYe9PNbk
[14/07/2014-11:07:29] cache: invalidating n1x78ab9yURvoc2meC7W6GkWDWfYe9PNbk
[14/07/2014-11:11:19] cache: invalidating n1x78ab9yURvoc2meC7W6GkWDWfYe9PNbk
[14/07/2014-11:11:19] blockchain: 34186 (0.054s)
[14/07/2014-11:13:45] sent tx: 6584dca2618acd7df68d276ccc8003b0fbc193bcaf4a9894d3bd215c316a912e
[14/07/2014-11:13:49] cache: invalidating mjFx69oLayXt8uagx2VGEsqspRY7GJ2XWP
[14/07/2014-11:13:49] cache: invalidating n1x78ab9yURvoc2meC7W6GkWDWfYe9PNbk
[14/07/2014-11:13:49] cache: invalidating mw3oqgzrURJhd5DKYmeGt9jxcqRU2hADTW
[14/07/2014-11:14:49] cache: invalidating n1x78ab9yURvoc2meC7W6GkWDWfYe9PNbk
[14/07/2014-11:14:49] cache: invalidating mw3oqgzrURJhd5DKYmeGt9jxcqRU2hADTW
[14/07/2014-11:14:49] cache: invalidating mjFx69oLayXt8uagx2VGEsqspRY7GJ2XWP
[14/07/2014-11:14:49] blockchain: 34187 (0.046s)
[14/07/2014-11:17:20] blockchain: 34188 (0.040s)
 
  • Like
Reactions: Red-Shinobi

flare

Administrator
Dash Core Team
Moderator
May 18, 2014
2,287
2,406
1,183
Germany
Cool, mind sharing details? We could have some fun on testnet :)
This should get you started:

Code:
sudo apt-get install python-qt4 python-pip python-slowaes python-dev git pyqt4-dev-tools
sudo pip install ecdsa pyasn1 pyasn1-modules tlslite qrcode
sudo pip install https://github.com/darkcoinproject/xcoin-hash/archive/master.zip
git clone https://github.com/nightlydarkcoin/electrum-drk.git
cd electrum-drk/
git checkout ruffcutts
pyrcc4 icons.qrc -o gui/qt/icons_rc.py
python electrum-drk
There is still something odd with the server syncronization, but i haven't managed to figure out what - yet.

Have fun.
 
  • Like
Reactions: darkzero

darkzero

Member
Jun 6, 2014
44
35
58
I just updated repository with a small change that affect electrum.conf
Simply use testnet=1 to use the server on testnet, use testnet=0 to switch to mainnet
 
  • Like
Reactions: flare

flare

Administrator
Dash Core Team
Moderator
May 18, 2014
2,287
2,406
1,183
Germany
I just updated repository with a small change that affect electrum.conf
Simply use testnet=1 to use the server on testnet, use testnet=0 to switch to mainnet
Good stuff! Is your testnet electrum server public? Would like to add it to the list of servers in the client to test multiple connections...

There is still something odd with the server syncronization, but i haven't managed to figure out what - yet.
I fixed the sync issues, pull from git repo to get the latest rough cut of Electrum-DRK :)

https://github.com/nightlydarkcoin/electrum-drk





BTW: Any ideas on the name? Electrum-DRK sounds not so cool.... Darkium?




EDIT: I realized that there is a problem with the chain verification code, as Darkcoin is using DGW3 as retargetting algorithm. Seems i will need to port DGW3 to Python :D
 
Last edited by a moderator:

darkzero

Member
Jun 6, 2014
44
35
58
Good stuff! Is your testnet electrum server public? Would like to add it to the list of servers in the client to test multiple connections...
Finished setup TESTNET Electrum server, the address is 188.226.243.116
Ports are:
stratum_tcp_port = 50001
stratum_http_port = 58081
stratum_tcp_ssl_port = 50002
stratum_http_ssl_port = 58082
 

flare

Administrator
Dash Core Team
Moderator
May 18, 2014
2,287
2,406
1,183
Germany
Finished setup TESTNET Electrum server, the address is 188.226.243.116
Ports are:
stratum_tcp_port = 50001
stratum_http_port = 58081
stratum_tcp_ssl_port = 50002
stratum_http_ssl_port = 58082
Hmm, does not work for me - not connecting to any port. Down for maintenance?
 

darkzero

Member
Jun 6, 2014
44
35
58
Hmm, does not work for me - not connecting to any port. Down for maintenance?
Please try again, had to restart.

I noticed that the confirmations in the Electrum Wallet are different/wrong from the standard wallet.
Also, details of a transaction doesn't work, getting this error

Traceback (most recent call last):
File "/electrum-drk-client/electrum-drk/gui/qt/main_window.py", line 528, in <lambda>
menu.addAction(_("Details"), lambda: self.show_transaction(self.wallet.transactions.get(tx_hash)))
File "/electrum-drk-client/electrum-drk/gui/qt/main_window.py", line 536, in show_transaction
d = transaction_dialog.TxDialog(tx, self)
File "/electrum-drk-client/electrum-drk/gui/qt/transaction_dialog.py", line 45, in __init__
tx_dict = tx.as_dict()
File "/electrum-drk-client/electrum-drk/lib/transaction.py", line 844, in as_dict
"complete":self.is_complete()
File "/electrum-drk-client/electrum-drk/lib/transaction.py", line 684, in is_complete
s, r = self.signature_count()
File "/electrum-drk-client/electrum-drk/lib/transaction.py", line 677, in signature_count
signatures = filter(lambda x: x is not None, txin['signatures'])
KeyError: 'signatures'
 

flare

Administrator
Dash Core Team
Moderator
May 18, 2014
2,287
2,406
1,183
Germany
Please try again, had to restart.
Works now, thanks!

I noticed that the confirmations in the Electrum Wallet are different/wrong from the standard wallet.
Yep, the client is using the litecoin retarget algorithm, and therefore is not able to stay in sync with the server. I need to port DGW3 to Python first :D

Also, details of a transaction doesn't work, getting this error

Traceback (most recent call last):
File "/electrum-drk-client/electrum-drk/gui/qt/main_window.py", line 528, in <lambda>
menu.addAction(_("Details"), lambda: self.show_transaction(self.wallet.transactions.get(tx_hash)))
File "/electrum-drk-client/electrum-drk/gui/qt/main_window.py", line 536, in show_transaction
d = transaction_dialog.TxDialog(tx, self)
File "/electrum-drk-client/electrum-drk/gui/qt/transaction_dialog.py", line 45, in __init__
tx_dict = tx.as_dict()
File "/electrum-drk-client/electrum-drk/lib/transaction.py", line 844, in as_dict
"complete":self.is_complete()
File "/electrum-drk-client/electrum-drk/lib/transaction.py", line 684, in is_complete
s, r = self.signature_count()
File "/electrum-drk-client/electrum-drk/lib/transaction.py", line 677, in signature_count
signatures = filter(lambda x: x is not None, txin['signatures'])
KeyError: 'signatures'
This works for me - are you doing something special about the transaction?

 

darkzero

Member
Jun 6, 2014
44
35
58
Works now, thanks!


Yep, the client is using the litecoin retarget algorithm, and therefore is not able to stay in sync with the server. I need to port DGW3 to Python first :D
Ok well let me know if i can be of any help.

This works for me - are you doing something special about the transaction?

It's a mined transaction like this one:

Status: 18 confirmations
Date: 16/07/14 18:20
Source: Generated
Credit: 5.00 DRK (matures in 102 more blocks)
Net amount: 0.00 DRK
Transaction ID: 0bc2c06febbb4210aed91d687b56a95e2bd4767ddeb3dbadc8227e8305df38b2

Generated coins must mature 120 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours.