Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bounty Job] - Upgrade Chips-Core to latest Bitcoin-Core upstream code #10

Open
satindergrewal opened this issue Jun 9, 2021 · 8 comments
Labels
help wanted Extra attention is needed

Comments

@satindergrewal
Copy link

satindergrewal commented Jun 9, 2021

Chips-Core code is forked from some Bitcoin-Core 0.16 (if I remember correctly). And as of this old version, Chips only does support Tor Onion v2 addresses to setup Chips node over tor.

Tor service version 2 addresses are being deprecated already. Here's relevant link: https://blog.torproject.org/v2-deprecation-timeline

It is important to have a decentralised and private network of Chips network nodes for Pangea Poker, and we need to have support for latest Tor Onion v3 addresses in Chips-Core software. Bitcoin recently removed Onion v2 support from their latest code base, since it's been suggest to move the Tor services support to Onion v3 long ago by Tor project.

Since we have the need, the opportunity, and the right time to upgrade Chips to latest upstream Bitcoin-Core code, we should take this opportunity and do efforts to do so.

So, I offer a bounty to anyone or any team who upgrades Chips-Core to latest upstream code base of Bitcoin-Core.

Bounty:

TOTAL BOUNTY ON OFFER: 4000 KMD

But, you have to make sure that there'll be backwards compatibility APIs which kept in latest upgrades as well. Have a word with the core developers to know which ones are most important to keep for backward compatibility. One example I know is to keep getinfo API in latest upgrade.

@satindergrewal satindergrewal added the help wanted Extra attention is needed label Jun 9, 2021
@barrystyle
Copy link

Hi @satindergrewal,
I've finished a complete rebase over Bitcoin 0.21, including the cryptoconditions library; just debugging a small issue related to segwit and should be ready to check out.
james

@barrystyle
Copy link

Completed @ https://github.com/barrystyle/chips
Could be done as a PR but i'd probably recommend against that..

@satindergrewal
Copy link
Author

Completed @ https://github.com/barrystyle/chips
Could be done as a PR but i'd probably recommend against that..

Thanks @barrystyle!

I'll ask some developer from Chips to go through you upgrade changes. Will be getting back to you on it soon.
If you want to have a conversation on it with Chips developers you can also join Chips discord by visiting: https://chips.cash/

@satindergrewal
Copy link
Author

satindergrewal commented Jun 23, 2021

Thanks for the so far work @barrystyle.
Acknowledging here that full bounty is paid to @barrystyle for this job.

Bounty amounts paid details:

There are still other things which needs to be done on this upgrade:

  • Add the following seeds to code:
addnode=159.69.23.29
addnode=95.179.192.102
addnode=149.56.29.163
addnode=145.239.149.173
addnode=178.63.53.110
addnode=151.80.108.76
addnode=185.137.233.199
  • chips-qt should also create a chips.conf file just like chipsd daemon should also create a chips.conf file at the expected chips data directory location. Following info is the default info:
daemon=1
txindex=1
rpcuser=user$(openssl rand -base64 12)
rpcpassword=password$(openssl rand -base64 12)
rpcbind=127.0.0.1
rpcallowip=127.0.0.1"
prune=0
  • Remove cryptoconditions related code from Chips.
  • Tor Onion v3 address seed nodes for Chips will also be needed to add to the code.
tqjumabpm4fpuyrqbzeeolfagrjot52tiur3ahzstjghc6w7t4irbjyd.onion:57777
adxdtmyip56bccbhoa7apxz3acn3wpp4wpydrqvtaiparrokhs5chvid.onion:57777
w2lfxvotlgivqdaek3s25chlucbkldjj3fppu7npetmizfrmcbfhduyd.onion:57777
m3v2z2fhdsmzl247sh676hhyw42gwjnjlekpwgaawtspw4ywtxubanyd.onion:57777
cqd2pyeu2biqta3d76noxefdzmns6ts44kwkfj2hulbrpstfujbxz7id.onion:57777
nkmebbex5o3zkra6jnu4mdzl5q7jjaudfq7adxqhrr6o436ukk3bfbid.onion:57777
62av6yfpc7ilhvaoti3me24kq4spcoijzzkvihxbcounnaxiyxsvltyd.onion:57777
  • i2p seed nodes need to be added to code.
rf4tcov2mwpk6rwy3az3qyklhaoisykdcva3yrqpey6m45otd63a.b32.i2p:57777
cvqdesyhqx7l5gdo25huiyxlanhzg34rknuufbgyopk6u44a4qla.b32.i2p:57777
le67xufykulusucp2gmkz27unbnarppxoxlyepjk4njcpxnj762q.b32.i2p:57777
z57wabhjwocpudpztccl3ctrgoouy6e7afswbkezq2o6qncwjtka.b32.i2p:57777
u4ebunrra6ek26tqnd4t7wx453cidcjmflh4qwa45ysb37dy7z5q.b32.i2p:57777
  • Need to activate Taproot on Chips blockchain. Have a discussion with the developers in Chips Discord to decide what block height is best to activate it, and proceed accordingly on this task.
  • chips-qt showed wrong progress bar information, where still in early sync it quickly moves to 100% synced status while blocks are still syncing. Need to fix that.
  • In my testing I tried make check too, which failed it's test. Can you please also check what needs to be done to make them work?

@who-biz
Copy link
Collaborator

who-biz commented Jul 19, 2021

I am looking into adding the seeds for clearnet, tor, and i2p. Two questions:

  1. What is the desired default network for chipsd among clearnet/tor/i2p? This decision will change the manner in which seeds are added.
  2. Is it preferable to have a config file which includes these seeds? Or to hardcode them as default arguments (to -addnode) on init?

@barrystyle
Copy link

@who-biz
Copy link
Collaborator

who-biz commented Aug 2, 2021

@barrystyle you've included seeds for all of: clearnet, tor, and i2p?

@who-biz
Copy link
Collaborator

who-biz commented Jul 19, 2022

This should probably be closed, issue no longer relevant with current direction.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

3 participants