Bitcoin Forum
December 15, 2024, 07:47:31 AM *
News: Latest Bitcoin Core release: 28.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1] 2 »  All
  Print  
Author Topic: [ANN] chain2 -- Pure SHA256 PoW coin | Real-Time Targeting  (Read 982 times)
dgenr8 (OP)
Newbie
*
Offline Offline

Activity: 16
Merit: 1


View Profile
October 13, 2019, 09:58:29 PM
Last edit: February 13, 2021, 11:04:10 PM by dgenr8
Merited by sidgrip (1)
 #1

chain2 is an experimental cryptocurrency.  The main purpose of chain2 is to explore the performance of its difficulty adjustment algorithm: Real-Time Targeting (RTT). As a pure SHA256 PoW altcoin, chain2 competes for a share of the biggest pool of hashrate on Earth.

Miners and nodes wanted. This might be fun.


Download
https://github.com/chain2/chain2/releases


chain2 Mining - IMPORTANT

The RTT target starts low (difficulty high) and increases (decreases) during the block, depending the timestamp of the block being mined.  The next block's resulting nominal target is also included in the block template. It also rises with time, but is not the same as the actual target (see research paper).  Unmodified miners that rely on the template difficulty will fail to submit some valid blocks.

Slight (and hacky) modifications to pool software allow it to mine chain2 in a reasonable way, with no stratum client modifications needed:
 - ckpool https://bitbucket.org/dgenr8/ckpool/commits/26bfbcf5dd02f81094f92cbdda21802c3e132a64
 - yiimp https://github.com/dgenr8/yiimp-1/commits/next

The incentives established by this algorithm do not favor inaccurate timestamps, therefore using the timestamp as a nonce is not recommended.

chain2 lends itself to optimized mining pools and clients which understand RTT.  Please work on this if you can! An internal CPU miner is included for reference, but of course it is unusably slow.

Pools
https://mcpool.chain2.org/           -a sha256 -o stratum+tcp://stratum.mcpool.chain2.org:3330 -u -p c=CTWO

chain2 Specifications

- PoW algorithm: SHA256D
- Difficulty adjustment algorithm: RTT
   RTT research paper: https://github.com/chain2/chain2/blob/master/specifications/rtt.pdf
   RTT implementation: https://github.com/chain2/chain2/pull/6
- Starting difficulty: 1
- Starting target: 0x1d00ffff
- Block time: 10 minutes
- Block reward: 50 ctwo
- Block reward halving schedule: every 210,000 blocks
- Total coin supply: 21M
- Default P2P port: 9393
- Default RPC port: 9392
- Address format: cashaddr with "ctwo:" prefix (legacy bitcoin mode available)

- Pre-mine: No
- Founders reward: No
- Instamine: Not possible
- ICO: No
- Masternodes: No
- Segwit: No
- Finalization: No
- Genesis coinbase output script: OP_FALSE


BEWARE
If you somehow manage to buy ctwo from someone right now, you are extremely likely to lose money.  Chaotic reorganizations are quite possible. ctwo should never be worth anything unless it gains a meaningful level of stable miner support compared to BTC.


chain2 Consensus Rules:

    Bitcoin Cash rules as of 14 November, 2018 (PRE-SPLIT)
      (BIP143, 32MB blocks, etc ...)
    + Real Time Targeting
    + CHECKDATASIG activates at 75% support over 90 days (BIP135)
           * Activated 2020-07-29 12:14:35
    + Gradual max block size adjustment by miners (BIP100)


Reference implementation source code: https://github.com/chain2/chain2

Markets:
 - https://freiexchange.com/market/CTWO/BTC

Resources:
 - Explorer http://explorer.chain2.org
 - Explorer http://iquidus.chain2.org
 - Faucet http://faucet.chain2.org
 - Chat https://discord.gg/pydVnNh

Many BTC, BCH, and BSV applications are compatible with chain2 or could be made compatible with slight modifications.
Additional compatible implementations of chain2 are of course possible. PR's are also welcome to the chain2 reference implementation.


Consumer/Investor Disclosures

 - Cryptocurrency is a rapidly evolving technology.
 - Cryptocurrency has historically been EXTREMELY VOLATILE.
 - Transfers of ctwo are NON-REVERSIBLE.
 - Mined or transferred ctwo tokens may disappear in chain reorganizations.
 - The chain2 software is provided AS IS, WITHOUT GUARANTEE or WARRANTY.
dgenr8 (OP)
Newbie
*
Offline Offline

Activity: 16
Merit: 1


View Profile
October 13, 2019, 10:19:36 PM
 #2

How the chain looks so far

block, inter-block time, difficulty, target
0,1570992534,1,1d00ffff
1,9746,1,1d00ffff
2,240,183.9942093834309,1c01642e
3,661,77.56481858194326,1c034ce8
4,500,174.547270514061,1c017775
5,540,247.5244544770504,1c0108c3

dgenr8 (OP)
Newbie
*
Offline Offline

Activity: 16
Merit: 1


View Profile
October 13, 2019, 10:26:21 PM
 #3

Two successive GBT's have different targets and nbits. Target increases until a block is found. nbits won't be used until the next block and depends on this block's timestamp:


getblocktemplate

{
...
"previousblockhash": "0000000000093658813abd9f0c97b05cb5e3d23594b17c8abf27919312158af3",
"target": "0000000000b4d61573b036be175f295d6cd1e1d9c839e58cc85db34cd0760100",
"mintime": 1571004547,
"curtime": 1571005288,
"bits": "1b2a1d9c",
"height": 7
...
}



getblocktemplate

{
...
"previousblockhash": "0000000000093658813abd9f0c97b05cb5e3d23594b17c8abf27919312158af3",
"target": "000000000124ab302ef78bfb86628340481f85b4f0e6808b8ef587995ef7ced8",
"mintime": 1571004547,
"curtime": 1571005363,
"bits": "1b4b0ce2",
"height": 7
}

Twinkledoe
Full Member
***
Offline Offline

Activity: 1904
Merit: 138


★Bitvest.io★ Play Plinko or Invest!


View Profile
October 13, 2019, 10:31:32 PM
 #4

No website yet? Purchasing a domain is very cheap now. At least have official website for this project where everyone can check out with. No premine, no ico, no masternode, is a good start but creating value for your coin is not an easy task.
dgenr8 (OP)
Newbie
*
Offline Offline

Activity: 16
Merit: 1


View Profile
October 13, 2019, 10:42:56 PM
 #5

Hey Twinkledoe thanks!  Lets see if it can survive. For a SHA256 coin that would be valuable Smiley
MiningCoinsPool
Member
**
Offline Offline

Activity: 520
Merit: 20


View Profile
October 13, 2019, 11:53:38 PM
 #6

Hey Twinkledoe thanks!  Lets see if it can survive. For a SHA256 coin that would be valuable Smiley


hi

How can we avoid the problem with the prefix on wallet address, therefore we cannot mine it.


I've tried the pubkey generated with the prefix ctwo:address

ctwo:qr8ewlqzf85v0szmxtmfypunsmrtq9nm2gct7tdk8n



, it starts with c :   cf977c0249e8c7c05b32f692079386c6b0167b52



Also cannot create a legacy wallet address as you mentioned that it was possible. I've tried with the command :  

getnewaddress "nameofaccount"  "legacy" 



Is there another way ?


Thanks
dgenr8 (OP)
Newbie
*
Offline Offline

Activity: 16
Merit: 1


View Profile
October 14, 2019, 12:20:43 AM
Last edit: October 14, 2019, 12:46:49 AM by dgenr8
 #7

Is there another way ?

The simplest thing is to restart chain2 with -usecashaddr=0.

Functions to accept multiple formats or translate between formats could be added to the RPC.

Sometimes I've used this python-bitcoinlib script to get a legacy address from a pubkey (you can get the pubkey from chain2 using validateaddress):

python pubkey-to-mainnet-address.py <pubkey>

#!/usr/bin/env python
import sys
import bitcoin
from bitcoin.core import Hash160, x, lx
from bitcoin.wallet import CBitcoinAddress
def main():
    bitcoin.SelectParams('mainnet')
    print(CBitcoinAddress.from_bytes(Hash160(x(sys.argv[1])),0))
if __name__ == '__main__':
    main()
MiningCoinsPool
Member
**
Offline Offline

Activity: 520
Merit: 20


View Profile
October 14, 2019, 12:50:57 AM
Last edit: October 29, 2019, 07:13:07 PM by mprep
 #8

Is there another way ?

The simplest thing is to restart chain2 with -usecashaddr=0.

Functions to accept multiple formats or translate between formats could be added to the RPC.

Sometimes I've used this python-bitcoinlib script to get a legacy address from a pubkey (you can get the pubkey from chain2 using validateaddress):

python pubkey-to-mainnet-address.py <pubkey>

#!/usr/bin/env python
import sys
import bitcoin
from bitcoin.core import Hash160, x, lx
from bitcoin.wallet import CBitcoinAddress
def main():
    bitcoin.SelectParams('mainnet')
    print(CBitcoinAddress.from_bytes(Hash160(x(sys.argv[1])),0))
if __name__ == '__main__':
    main()



It worked ty !



RTT difficulty ajustment make it really difficult to mine, its very interesting  Smiley
bitcoinbeliever
Newbie
*
Offline Offline

Activity: 54
Merit: 0


View Profile
October 14, 2019, 01:29:41 AM
 #9

RTT difficulty ajustment make it really difficult to mine, its very interesting  Smiley

Looks easy for you, getting all the blocks now  Wink

Difficulty up to the millions, block 26, average blocktime 555 seconds!
MiningCoinsPool
Member
**
Offline Offline

Activity: 520
Merit: 20


View Profile
October 14, 2019, 10:47:09 AM
Last edit: October 14, 2019, 11:05:50 AM by MiningCoinsPool
 #10

Looks easy for you, getting all the blocks now  Wink
Difficulty up to the millions, block 26, average blocktime 555 seconds!

Oh sorry for all blocks xp !

Yes for difficulty it even went to 9 trillion for a moment lol

pogadaev
Copper Member
Newbie
*
Offline Offline

Activity: 201
Merit: 0


View Profile
October 14, 2019, 04:32:47 PM
 #11

Hey. Tell me I wanted to include Your coin in my calculator https://calcminer.info/ but I didn't find the coin Explorer. Does it exist?
dgenr8 (OP)
Newbie
*
Offline Offline

Activity: 16
Merit: 1


View Profile
October 14, 2019, 04:58:15 PM
 #12

Hey. Tell me I wanted to include Your coin in my calculator https://calcminer.info/ but I didn't find the coin Explorer. Does it exist?

No explorer yet.  It would be great if someone wanted to put one up!
MiningCoinsPool
Member
**
Offline Offline

Activity: 520
Merit: 20


View Profile
October 14, 2019, 07:39:43 PM
Last edit: October 29, 2019, 07:14:34 PM by mprep
 #13

No explorer yet.  It would be great if someone wanted to put one up!


I'll make one when ill be back home Smiley

EDIT: It's compiling & will be ready soon



I'm just gonna need a logo of the coin, do you have one ?
dgenr8 (OP)
Newbie
*
Offline Offline

Activity: 16
Merit: 1


View Profile
October 14, 2019, 09:02:45 PM
 #14

Thanks MCP!!

Lol no, graphics and front-end are NOT a strength of mine. If you don't feel like pushing pixels either, I'd say just go minimalist (text) for now!
MiningCoinsPool
Member
**
Offline Offline

Activity: 520
Merit: 20


View Profile
October 14, 2019, 09:19:43 PM
Last edit: October 29, 2019, 07:16:19 PM by mprep
 #15

http://45.63.9.40/ explorer  Smiley



If anyone wants to mine it , i installed it on this pool but it might be temporary because its a small pool with low RAM we should get it on another one if we have a lot of miners, i think it can runs max 50 miners something like that , not sure :



https://gnark-mining.com

-a sha256 -o stratum+tcp://gnark-mining.com:3338 -u -p c=CTWO

Daddygogo
Newbie
*
Offline Offline

Activity: 24
Merit: 0


View Profile
October 15, 2019, 10:51:53 AM
 #16

New to mining. Is there a wallet ?
dgenr8 (OP)
Newbie
*
Offline Offline

Activity: 16
Merit: 1


View Profile
October 15, 2019, 12:34:20 PM
 #17

New to mining. Is there a wallet ?

Hi Daddygogo, are you looking for binaries? Working on that. Feel free to join us at https://discord.gg/pydVnNh
MiningCoinsPool
Member
**
Offline Offline

Activity: 520
Merit: 20


View Profile
October 15, 2019, 12:37:41 PM
 #18

I believe he was asking for a qt wallet or daemon, already compiled and ready for use
dgenr8 (OP)
Newbie
*
Offline Offline

Activity: 16
Merit: 1


View Profile
October 16, 2019, 01:30:15 PM
 #19

Official binaries are now posted here:

https://github.com/chain2/chain2/releases/tag/v0.11L


The signature in SHA256SUMS.asc is with the same key I used to authenticate all Bitcoin XT releases since 2016,  fingerprint = 8F6E DE3A 88F8 6BC6 F982  55D7 F5D9 9379 1A77 8012
samspaces
Legendary
*
Offline Offline

Activity: 1453
Merit: 1030


View Profile
October 17, 2019, 07:36:53 PM
 #20

What's the point of a chain that reorgs ad infinitum? It's an interesting idea, but practically not really useful.
Pages: [1] 2 »  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!