Bitcoin Forum
November 06, 2024, 12:59:54 AM *
News: Latest Bitcoin Core release: 28.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 2 3 4 5 6 7 8 9 [10]  All
  Print  
Author Topic: Gocoin - totally different bitcoin client with deterministic cold wallet  (Read 38566 times)
lokiverloren
Newbie
*
Offline Offline

Activity: 85
Merit: 0


View Profile
May 31, 2018, 08:08:10 PM
 #181

I just wanted to report on my experiences forking. I actually searched through all the 100 other forks and nobody really did anything. So I basically really was doing something that had not been done before.

I was able to change the majority of chain parameters and use different DNS seeds but for a reason I have not yet been able to determine, the peers on the other network refuse to grant auth to my modified gocoin node. I mean, it is significantly different, there is two PoW types in the network I am trying to join it to. The gocoin client doesn't even report the IP addresses in the interface of the nodes it's trying to connect to in the network section. I added extensive trace logging to many functions and these revealed the IP addresses but to be honest I don't know for sure if they were even correct from the DNS seed.

I kinda had hoped that configuration would be more centralised but instead there is about 3 or maybe more different places in the source that have to be changed and those that I have identified, and changed to match the other network were not enough to get peers seeding blocks to my node.

It's not a complaint, per se, or a request or anything like that. It's just a very nice bitcoin client and I thought it would not be so difficult to make it talk to a network based very closely on bitcoin (parallelcoin) and really quite old, so old that building the binary is a maze of ancient dependencies.

I understand that you build this mainly for your own benefit, so your needs are necessarily quite different being a well seasoned blockchain dev. Anyway, it's a very nice thing you made, just seems to be a bit too different for me to be able to figure out how to get it to connect to a different but basically bitcoin-based network.
Kazimir
Legendary
*
Offline Offline

Activity: 1176
Merit: 1011



View Profile
June 01, 2018, 12:56:50 PM
 #182

try deleting the peers3 folder.

it keeps the database of your known peers, but the node will find new ones as soon as it's up.
Thanks, it seems to be working again!

Maybe it would be a good addition to auto delete or re-generate this file or dir if it's corrupt or missing? That way, if this situation would ever occur for some reason, Gocoin can still continue.

In theory, there's no difference between theory and practice. In practice, there is.
Insert coin(s): 1KazimirL9MNcnFnoosGrEkmMsbYLxPPob
piotr_n (OP)
Legendary
*
Offline Offline

Activity: 2055
Merit: 1359


aka tonikt


View Profile WWW
June 01, 2018, 01:00:14 PM
 #183

try deleting the peers3 folder.

it keeps the database of your known peers, but the node will find new ones as soon as it's up.
Thanks, it seems to be working again!

Maybe it would be a good addition to auto delete or re-generate this file or dir if it's corrupt or missing? That way, if this situation would ever occur for some reason, Gocoin can still continue.

It's just never happened to me that this DB would get corrupt.

If you can find a way to reproduce the issue, I can investigate then and find the best fix for the problem.

Check out gocoin - my original project of full bitcoin node & cold wallet written in Go.
PGP fingerprint: AB9E A551 E262 A87A 13BB  9059 1BE7 B545 CDF3 FD0E
lokiverloren
Newbie
*
Offline Offline

Activity: 85
Merit: 0


View Profile
June 04, 2018, 06:34:14 AM
 #184

Ok, I have returned to working on it... I got a full node of another chain running and set this node as sole peer of the altered prototype. Now it reports bad header formats and PoW, as it should since the coin I am altering the client to work with has two - and an extra byte in the block header to signify which PoW is used on a block.

I have to do some forensics on the blocks of the foreign chain, split the logic so there is two PoW difficulty consensus values and the recognition of valid PoWs, but I am making significant progress. I most likely will, at the end of this process, be able to precisely point at which parts have to be changed to cope with a different network, and which for different chains, I have the idea of shifting all those functions and settings into a separate library so it becomes possible to quickly target a new PoW coin using the Gocoin codebase.

https://github.com/ParallelCoinTeam/duod

There is a working docker version of the circa 2014 parallelcoin in there, likely you could easily substitute any other for this purpose. I set the configuration from the gocoin side to connect only to this docker instance. After it grabs 20 incorrectly formatted blocks it complains and stops syncing for a bit, tries again, complains again... If you changed which coin was built in this you could make it work, change genesis block info, PoW verification, difficulty adjustment policies, etc.
Kazimir
Legendary
*
Offline Offline

Activity: 1176
Merit: 1011



View Profile
June 20, 2018, 09:00:55 AM
 #185

try deleting the peers3 folder.

it keeps the database of your known peers, but the node will find new ones as soon as it's up.
Thanks, it seems to be working again!

Maybe it would be a good addition to auto delete or re-generate this file or dir if it's corrupt or missing? That way, if this situation would ever occur for some reason, Gocoin can still continue.

It's just never happened to me that this DB would get corrupt.

If you can find a way to reproduce the issue, I can investigate then and find the best fix for the problem.
I haven't been able to reproduce it, the problem did not show up anymore. Possibly it was due to a sudden system shutdown (electricity failure), perhaps on a very unlucky moment, which caused a DB corruption.

Anyway if I encounter the problem again I will see if I can investigate anything. So far Gocoin is working great!

In theory, there's no difference between theory and practice. In practice, there is.
Insert coin(s): 1KazimirL9MNcnFnoosGrEkmMsbYLxPPob
Pages: « 1 2 3 4 5 6 7 8 9 [10]  All
  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!