Pages:
Author

Topic: [JBS] Jumbucks - No IPO/ICO - Proof of Stake - Slack - DCR Stake Pool - 2+ Years - page 3. (Read 48244 times)

sr. member
Activity: 328
Merit: 525
Exponentially Subjective Scoring & Entering the final phases for Launch

So here's something I alluded to in a previous post. I wanted to take a look at eliminating the possibility of a long range re-org attack on the chain as this has been observed in other Ethereum forks.  Ultimately the best security for proof of work is having "sufficient" hash rate such that such an attack reaches the point of "not being feasible." The first idea I had for this was setting a limit on re-org depth, say 1 day. This solution on the surface seemed simple.. a little too simple so I sent Vitalik an email to see if he had any thoughts.

Here is Vitalik's reply:

Quote
The problem with limiting reorg depth to 1 day is that there's an attack vector where someone does a 51% attack that some nodes will see as being 1 day - 1 second and some nodes will see as being 1 day + 1 second, leading to a permanent split. One approach that could work is what I call "exponentially subjective scoring", which is defined as follows:

* Suppose that you are on a chain with score S1 (score = total difficulty). Suppose that there appears a new longer chain.
* Compute the "common ancestor" of the two chains; say that this ancestor has a score of S_a.
* Switch to the new chain only if (S2 - S_a) / (S1 - S_a) > 1.0001 ** (number of seconds between when S1 was received and when S2 was received)

The intention here is that you have a scoring mechanism which prevents long reorgs, as a reorg from one day ago would be penalized by a factor of 5650, but at the same time is friendly to timing discrepancies between nodes as if two nodes saw some block even one minute away then the chains would need to be almost exactly the same length for nodes to disagree as to the correct head of the chain.

I'd actually be quite excited to see this kind of mechanism tried out in a chain.

Exponentially Subjective Scoring is also further mentioned in this article that Vitalik wrote November 2014 - https://blog.ethereum.org/2014/11/25/proof-stake-learned-love-weak-subjectivity/

I'm pleased to say that I have coded this up and it works great. Here are some log lines which demonstrate this. ESS is basically another check which decides whether or not a re-org should take place.

Code:
I0924 00:59:07.674562 core/blockchain.go:797] == BlockChain exponentialSubjectiveScoring ==
I0924 00:59:07.674702 core/blockchain.go:800] ESS currentTime: 1474714747
I0924 00:59:07.674829 core/blockchain.go:814] ESS ptd (S_a): 1723872944000
I0924 00:59:07.675027 core/blockchain.go:822] oldBlock (S1) number: 14255
I0924 00:59:07.675169 core/blockchain.go:823] oldBlock (S1) difficulty:16380851
I0924 00:59:07.675350 core/blockchain.go:824] oldBlock (S1) Td:1723889324851
I0924 00:59:07.675471 core/blockchain.go:825] oldBlock (S1) time:1474714358
I0924 00:59:07.675637 core/blockchain.go:827] newBlock (S2) number:14256
I0924 00:59:07.675797 core/blockchain.go:828] newBlock (S2) difficulty:16345471
I0924 00:59:07.675972 core/blockchain.go:829] newBlock (S2) Td:1723905670322
I0924 00:59:07.676108 core/blockchain.go:830] newBlock (S2) time:1474714417
c:  1.9978401610514618
d: 1.0396644897858596
ESS Reorg
I0924 00:59:07.676607 core/blockchain.go:902] WriteBlock calling reorg
I0924 00:59:07.676730 core/blockchain.go:1096] == BlockChain reorg ==

The above lines are additional debug lines which I which are from a live test I did on the Testnet.  It's slightly confusing so here is a re-written version in Go which outlines the function using the exact figures from above.

Code:
package main

import (
"fmt"
"math"
"math/big"
)

func main() {

now := big.NewInt(1474714747)
S_a := big.NewInt(1723872944000)
S1 := big.NewInt(1723889324851)
S2 := big.NewInt(1723905670322)
S1_time := big.NewInt(1474714358)

// (S2 - S_a) / (S1 - S_a)
a := new(big.Int)
b := new(big.Int)
a.Sub(S2, S_a)
b.Sub(S1, S_a)
c := float64(a.Uint64()) / float64(b.Uint64())
fmt.Println("c: ", c)

// 1.0001 ** (now - S1_time)
d := math.Pow(1.0001, float64(now.Uint64())-float64(S1_time.Uint64()))
fmt.Println("d:", d)

// Comparison
if c > d {
fmt.Println("Reorg")
} else {
fmt.Println("No reorg")
}
}

The output is as follows.

Code:
c:  1.9978401610514618
d: 1.0396644897858596
Reorg

This code change actually took a bit longer as it required a lot of testing and learning how Ethereum handles new blocks being processed and the different scenarios. i.e. had to run through a lot of the following cases:

1 new block comes in
2 new blocks come in
3+ new blocks come in
1 new mined block pushed out the network
2 new mined blocks pushed out to the network
3+ new mined blocks pushed out the network

So most of the work was actually figuring out how block processing works and testing the scenarios and thinking more about "when should this be checked?" and further thinking of other cases where it could go wrong.


So just to re-cap JBSEE will come out with 2 new consensus level changes.  These are:

Exponentially Subjective Scoring - A deterministic scoring system when comparing two chains. The longer the reorg, the higher penalization, and the less likely the new chain will become the main chain. It is more expensive to attack a well publicized good chain.

Rewritten difficulty algorithm based on Digibyte's Digishield V3 - Difficulty algorithm that is battle tested on numerous coins and is far better suited to longer block times and fluctuations in hash rate.

It is also worth noting that no other Ethereum fork has the level of new code and consensus changes that the JBSEE network will have.


Here are the priority items in the next few weeks. It is a tight deadline but we are aiming for a launch of the network before October 11th next month.

Launch of new coin

All the technical details set and we are co-ordinating with exchanges.

PRE-ANN thread

The details are being written up. This will be up shortly.

Swap system

This has been outlined in a previous post and will again be outlined in the PRE-ANN. The sites for a non-exchange swap are being completed.

Code modifications

These are complete for the launch. We are also thinking of paying a Geth dev to code review the new code changes I have made just to have another pair of eyes go through the code.

Logo and branding

The new logo and name has been chosen.
sr. member
Activity: 328
Merit: 525
hey will my jbs be swapped automatic to new chain if they are on bittrex ... and is there a date for that swap

Hi,

This post has more details about the swap.

https://bitcointalksearch.org/topic/m.16213876

The main code developments to the fork are complete.

Entering final phases now.

Thanks,
Julian

well i seen some down movement making it interesting to make good entry position before the completion. good luck dev.

that's nice, dear
hero member
Activity: 2128
Merit: 520
hey will my jbs be swapped automatic to new chain if they are on bittrex ... and is there a date for that swap

Hi,

This post has more details about the swap.

https://bitcointalksearch.org/topic/m.16213876

The main code developments to the fork are complete.

Entering final phases now.

Thanks,
Julian

well i seen some down movement making it interesting to make good entry position before the completion. good luck dev.
sr. member
Activity: 328
Merit: 525
hey will my jbs be swapped automatic to new chain if they are on bittrex ... and is there a date for that swap

Hi,

This post has more details about the swap.

https://bitcointalksearch.org/topic/m.16213876

The main code developments to the fork are complete.

Entering final phases now.

Thanks,
Julian
hero member
Activity: 656
Merit: 500
Buy a gun!
To check up on the JBS-EE network, visit http://jbs-ee.sigwo.com
legendary
Activity: 1050
Merit: 1000
hey will my jbs be swapped automatic to new chain if they are on bittrex ... and is there a date for that swap
full member
Activity: 182
Merit: 100
We added your cryptocurrency.
With respect, the development team of Crypto-trade.
Crypto-Trade – Official Announcement https://bitcointalksearch.org/topic/crypto-trade-official-announcement-10-fiat-365-crypto-5300-pairs-1604225

Your exchange site looks like it's a scam and it doesn't run HTTPS.


We use ssl.


Step 1 (The user tries to go to an insecure protocol.)
http://i68.tinypic.com/2qdu3pt.png
Step 2 (Automatic redirection to https)
http://i66.tinypic.com/2s0zqq8.png
As far as i can tell you do have ssl encryption but if a user goes to the page for the first time to crypto-trade.net it uses standard http. Then only after manually appending https the http>https redirection works. dunno. Tested on Safari and chrome btw

Specially for you.
Absolutely clean operating system.
The browser opens for the first time.

FireFox






Chrome







Why your exchange still don't conected to http://coinmarketcap.com/ ?

Do not worry. Request has been sent. They are already working on it.
legendary
Activity: 1078
Merit: 1050
We added your cryptocurrency.
With respect, the development team of Crypto-trade.
Crypto-Trade – Official Announcement https://bitcointalksearch.org/topic/crypto-trade-official-announcement-10-fiat-365-crypto-5300-pairs-1604225

Your exchange site looks like it's a scam and it doesn't run HTTPS.


We use ssl.


Step 1 (The user tries to go to an insecure protocol.)
http://i68.tinypic.com/2qdu3pt.png
Step 2 (Automatic redirection to https)
http://i66.tinypic.com/2s0zqq8.png
As far as i can tell you do have ssl encryption but if a user goes to the page for the first time to crypto-trade.net it uses standard http. Then only after manually appending https the http>https redirection works. dunno. Tested on Safari and chrome btw

Specially for you.
Absolutely clean operating system.
The browser opens for the first time.

FireFox






Chrome







Why your exchange still don't conected to http://coinmarketcap.com/ ?
full member
Activity: 182
Merit: 100
We added your cryptocurrency.
With respect, the development team of Crypto-trade.
Crypto-Trade – Official Announcement https://bitcointalksearch.org/topic/crypto-trade-official-announcement-10-fiat-365-crypto-5300-pairs-1604225

Your exchange site looks like it's a scam and it doesn't run HTTPS.


We use ssl.


Step 1 (The user tries to go to an insecure protocol.)
http://i68.tinypic.com/2qdu3pt.png
Step 2 (Automatic redirection to https)
http://i66.tinypic.com/2s0zqq8.png
As far as i can tell you do have ssl encryption but if a user goes to the page for the first time to crypto-trade.net it uses standard http. Then only after manually appending https the http>https redirection works. dunno. Tested on Safari and chrome btw

Specially for you.
Absolutely clean operating system.
The browser opens for the first time.

FireFox






Chrome





full member
Activity: 182
Merit: 100
We added your cryptocurrency.
With respect, the development team of Crypto-trade.
Crypto-Trade – Official Announcement https://bitcointalksearch.org/topic/crypto-trade-official-announcement-10-fiat-365-crypto-5300-pairs-1604225

Your exchange site looks like it's a scam and it doesn't run HTTPS.


We use ssl.


Step 1 (The user tries to go to an insecure protocol.)
http://i68.tinypic.com/2qdu3pt.png
Step 2 (Automatic redirection to https)
http://i66.tinypic.com/2s0zqq8.png
As far as i can tell you do have ssl encryption but if a user goes to the page for the first time to crypto-trade.net it uses standard http. Then only after manually appending https the http>https redirection works. dunno. Tested on Safari and chrome btw
You have reached the page login?
sr. member
Activity: 466
Merit: 250
We added your cryptocurrency.
With respect, the development team of Crypto-trade.
Crypto-Trade – Official Announcement https://bitcointalksearch.org/topic/crypto-trade-official-announcement-10-fiat-365-crypto-5300-pairs-1604225

Your exchange site looks like it's a scam and it doesn't run HTTPS.


We use ssl.


Step 1 (The user tries to go to an insecure protocol.)
http://i68.tinypic.com/2qdu3pt.png
Step 2 (Automatic redirection to https)
http://i66.tinypic.com/2s0zqq8.png
As far as i can tell you do have ssl encryption but if a user goes to the page for the first time to crypto-trade.net it uses standard http. Then only after manually appending https the http>https redirection works. dunno. Tested on Safari and chrome btw
full member
Activity: 182
Merit: 100
We added your cryptocurrency.
With respect, the development team of Crypto-trade.
Crypto-Trade – Official Announcement https://bitcointalksearch.org/topic/crypto-trade-official-announcement-10-fiat-365-crypto-5300-pairs-1604225

Your exchange site looks like it's a scam and it doesn't run HTTPS.


We use ssl.


Step 1 (The user tries to go to an insecure protocol.)
http://i68.tinypic.com/2qdu3pt.png
Step 2 (Automatic redirection to https)
http://i66.tinypic.com/2s0zqq8.png
sr. member
Activity: 328
Merit: 525
We added your cryptocurrency.
With respect, the development team of Crypto-trade.
Crypto-Trade – Official Announcement https://bitcointalksearch.org/topic/crypto-trade-official-announcement-10-fiat-365-crypto-5300-pairs-1604225

Your exchange site looks like it's a scam and it doesn't run HTTPS.
full member
Activity: 182
Merit: 100
We added your cryptocurrency.
With respect, the development team of Crypto-trade.
Crypto-Trade – Official Announcement https://bitcointalksearch.org/topic/crypto-trade-official-announcement-10-fiat-365-crypto-5300-pairs-1604225
sr. member
Activity: 328
Merit: 525
This question has come up a few times.

Will JBS EE switch to 100% Proof of Stake when Ethereum's Proof of Stake Casper is released?

A switch to PoS isn't definite but we will evaluate and monitor Ethereum's Proof of Stake when it is released and had time to iron out any issues that may arise. A switch to PoS depends on the overall health of the JBS EE network and other factors such as ongoing distribution. It can make sense to just stay on PoW or a hybrid PoW/PoS network.

Another thing to factor in is that when Ethereum switches to PoS there will be excess mining capacity, so that can be another pro for sticking with PoW or a PoW/PoS hybrid.
hero member
Activity: 906
Merit: 500

Easiest anti 51% attack protection :

Don't allow more than X blocks from the same node / same coinbase address at an interval of X minutes... No need to fuss with checkpoints,  checkpoint server etc..  Keep it simple.


I'll host a pool for you guys as well when you're ready, great work

Hi ocminer. Thank you for the vote of confidence with your pool and suggestion.

I am looking into implementing a new solution for long range reorg attacks that Vitalik has suggested to me.


I will be watching this pool like an eagle!
sr. member
Activity: 328
Merit: 525
Those staking JBS at home will have to do.. what when this swaps to EE edition? and when, roughly?

Will it be easiest to send it to Bittrex and let them deal with it?

Hi Bitice,

You can keep staking until the swap.

Briefly there will be 2 methods for swapping. Claiming or using an exchange which will perform a claim and adjust on-exchange balances accordingly.

The off-exchange claim process will involve and consist of:

  • Generating receiving address/addresses (a fork of the MyEtherWallet web site will be provided to generate addresses)
  • An online form to enter JBS addresses mapped to a receiving JBS EE address
  • This form will be provided in both clear net URL and TOR URL form to retain anonymity
  • You will need to sign a message to prove ownership of the JBS address
  • JBS address balances will be snapshot at a defined block. This prevents double claims
  • JBS EE balances will be programmed into the Genesis Block of the JBS EE chain. Be a part of history!
  • You will be able to perform a claim at a later date as well after the network has been launched. The intention is not to screw people over with a claim process with a short time window
  • At some point we intend to send any unclaimed funds to a multisig address which will require multiple party approval to process any later claims

There will be further details in the upcoming PRE-ANN thread.

We intend to make this claim process as transparent as possible and it can therefore be audited on the blockchain

To maintain a healthy staking network we recommend people participate in the off-exchange claim process for the bulk of their holdings

You may want to consolidate some of your holdings to a smaller number of JBS addresses leading up to the swap
sr. member
Activity: 328
Merit: 525

Easiest anti 51% attack protection :

Don't allow more than X blocks from the same node / same coinbase address at an interval of X minutes... No need to fuss with checkpoints,  checkpoint server etc..  Keep it simple.


I'll host a pool for you guys as well when you're ready, great work

Hi ocminer. Thank you for the vote of confidence with your pool and suggestion.

I am looking into implementing a new solution for long range reorg attacks that Vitalik has suggested to me.
sr. member
Activity: 293
Merit: 250
JBS i feel to be high price this week or this month. Dev still very active.
God Job Dev of Jumbuck $JBS
member
Activity: 66
Merit: 10
Those staking JBS at home will have to do.. what when this swaps to EE edition? and when, roughly?

Will it be easiest to send it to Bittrex and let them deal with it?
Pages:
Jump to: