graft-project / GraftNetwork

Graft Network Proof-of-work Node
https://graft.network
Other
82 stars 41 forks source link

CryptoNight Waltz support for CNv0 #223

Closed bitkis closed 5 years ago

bitkis commented 5 years ago

CryptoNight Waltz support for CNv0 needs to be added and tested.

Development team has limited exposure to mining realities right now and believes that active miners are better suited to select the algorithm. We will rely on the miner community to select and test the algorithm (with veto voting power to prevent manipulations.)

For more details see #216

SomethingGettingWrong commented 5 years ago

If the tweak is a simple iteration change … then graft will have so many fpga's on GraftNetwork.. profitilbity will go to zero on CNV0.

There's no point in going to CNV0 to make GPU's more profitable if FPGA's are more profitable on CNV0 then CNV2. The best idea is to accept FPGA's will always fork... and just make them inefficient... You cant copy monero because nicehash does... putting waltz on CNV0 makes FPGA more efficent

The best soluition is heavy with a tweak or wait for cn-gpu … if you want to quit forking anything else might as well stick with what you already done because fpga on cnv0 is way more profitable difference vs a gpu then fpga on cnv2.

another solution would be everytime monero forks for fpga resistance just tweak it.. but then your forking every 6 months.

accept fpga's… make them as close to profitable as GPU's.. (heavy with tweak) kill nicehash and then your network problems will be done for the time being

People within the mining community were screaming for Heavy with a tweak before the first Fork.. at the time you guys made a branch for it??? what happened. why did you guys not listen then? that's still the most valid solution! other then CN-GPU

https://github.com/graft-project/GraftNetwork/tree/feature/cn-heavy-pow

At this point... If you don't want to have to wait for them to fork a miner... The miner isalready done for CN-GPU

Just fork CN-GPU to graft Its nicehash resistant... and includes a miner already done... (just need to fork graft to CN-GPU) Its in testing now.. but this algo makes fpga/GPU as close to profitable as can possibly be..and allows FPGA's to support the network.. on this algo.. YOU WANT fpgas. with this GPU/FPGA=same profitiblity… NO NICEHASH ATTACKS No future codeing.. and miner is already done.. Just keep forking any updates.. if you wanted. with no codeing

https://github.com/ryo-currency/ryo-currency/pull/163/files

I have asked people in the mining channel there input

https://t.me/GraftMiningGroup/76577

SomethingGettingWrong commented 5 years ago

https://github.com/graft-project/GraftNetwork/issues/224 People are waiting responses from the team.

bitkis commented 5 years ago

@Patrickdurbin

NO NICEHASH ATTACKS

Could you please elaborate a bit? In particular, what will prevent Nicehash from implementing CN-GPU in 1-2 month from now?

SomethingGettingWrong commented 5 years ago

Nicehash ads whatever coin people ask it too. Usually coins that fork and follow monero's codeing because " well " there monero. There isn't anything special about any particular algo in reference to nicehashability other then popularity.

Cn-GPU is a new algo so the chances of it being added to nicehash are about as much as any tweaked coin on one coin to begin with.

Look how popular an iteration change is? theres alaready an issue with another coin wanting to know if your gonna do the same thing they are. The more coins that are on an algo the more likely nicehash is to support it. Of course theres never really a fullproof algo that cant be added to nicehash.

but for now No Nicehash is on CN-GPU its new.

You cant expect any algo to never be added to nicehash. But a generic algo will always be added. Iteration changes are simple... which is why a lot of coins do it. https://github.com/graft-project/GraftNetwork/issues/224 The point im making with Cn-Gpu is that if your gonna hardfork. Might as well get something that makes FPGA and GPU's as Profitable on each individual hash.

Every singe network hash has a USD price. The network difficulty/blocktargettime=network hashrate.

Daily emission/ Total seconds in a day gives the total coins per second.

if you multiply the exchange price by the total coins per second. You get Emission value in Satoshi Per second (and USD).

Then you take the network hashrate and divide it into emission value in satoshi per second and it tells you how much each hash is worth

when FPGA are 10x as profitable thena GPu's hashvalue.. Gpus will leave because they are not profitable because it cost more in electricity to mine.. then it does for the fpga to mine. Because the FPGA gets 10x the amount of Coins.. It has a different hashvalue.

Regardless of the network hashrate in crease.

if you use Cn-gpu.. you want have to endlessly fork away from FPGA's to stop this.. because they will have equilvient hash value. or as close to possible. So any FPGA on the network will actually Increase network hashrate and gpu's wont leave. because they are still profitable.

The amount of electricity used to mint a coin on a GPU ( or miner in general) is the minimum price a coin will be dumped on the exchange. No one mines at a loss. they leave instead. Usually FPGA's are on unknown pools. So what happens is GPu's on the known poosl become unprofitable and leave.. and the only pools are centaralized FPGA pools where 51 percents can be carried out....

So nicehash isn't just the only issue.. but nicehash can be forked away from with a tweak.. FPGA can not.. By just getting this algo.. FPGA's and gpu's will both be profitable and you don't have to worrya bout it...

The miner is already done and the codeing is already able to be forked. The co-author's of XMR-STAK started a coin Ryo. over the largest majority of gpu miners use their software.

The reason I personally am adamant about this algo is it takes care of FPGA's and since its new its just as good as any tweak.. (because a lot of coins don't have it) Ryo the coin this was made for network is small like grafts its a new coin as well.. so im sure that he will fork it away if nicehash starts attacking networkst that are on it.

But a simple iteration change... while being a tweak.. does nothing for FPGA and isn't any more guarantee that nicehash wont add it.

Also... the miner will always be available.. for any cn-gpu "forks" that Ryo has and the code would be done... copy and paste.

The algo is already in testnet and working fine.. on ryo.. I saw that you guys posted that it could cause a "blockchain failure " because its new! Im kinda at a loss on why you guys think that??

` "Note that introduction of completely new algorithm would induce the risk of blockchain failure due to unexpected consequences, which means more comprehensive and prolonged testing is required." ` Its just a hashing algo. I get prolonged testing if you think theres an issue are you see one. but because its new means nothing. it either hashs valid results or it doesn't.

If you chose to consider it. If you were nervous because its new.. id just fork it.. put it on a test net till your comfortable...

jagerman commented 5 years ago

In particular, what will prevent Nicehash from implementing CN-GPU in 1-2 month from now?

There is absolutely nothing that you can do to prevent NiceHash from creating a market for a given coin, but that isn't the issue or even the objective. The issue is that we don't want GRAFT to be vulnerable to 51% attacks that are made easy and cheap via NiceHash, which means either:

  1. The algorithm isn't on NiceHash at all
  2. The algorithm is on NiceHash but has significantly less hashrate readily available than is mining on the network

Option 2 is actually the better option here: NiceHash does provide a useful tool to allow mining by people without their own mining hardware.

Option 1, however, is more likely: it isn't worth NiceHash's time to add an algorithm that only two small coins (GRAFT and RYO) are using. The CN-heavy market has never been a big success, and the CN-light, CN-haven, CN-Masari algorithms never made it to NiceHash at all because, although there are multiple coins on each of them, there just isn't enough hashrate on those coins overall to make it worthwhile. NiceHash is only interested in pursuing big fish, and Graft isn't a big fish.

If the GRFT price and hashrate explode and NiceHash decides to open a CN-GPU market, then good: we'll be in option 2 — NiceHash supplements the network hashrate without allowing overwhelming it, which is the ideal place to be.

bitkis commented 5 years ago

@jagerman,

There is absolutely nothing that you can do to prevent NiceHash from creating a market for a given coin [...]

Can't agree more. And for this exact reason we want to consider it thoroughly before investing significant engineering time into the merge and, especially, testing. So far, I found somewhat different opinions here: Cryptonight variant 4 aka CryptonightR. A quote:

@tevador [...] Regarding "CN-GPU", it replaces the AES encryption in the initialization loop with keccak and then the main loop is replaced with just a lot of floating point math (single precision multiplication and addition). That's why it's power hungry. It will be most likely compute-bound on CPUs and possibly also on some GPUs.

It seems no-one knows how exactly it behaves. I doubt we have luxury of running into at least a week of development/testing without further investigation. What do you guys think?

SomethingGettingWrong commented 5 years ago

yeah see CNR and CN-GPU are on competing coins... they talk shit about each other.

Point is CN-R team lieks to fork away from fpgas every 6 months.... CN-GPU team realizes that you cnat fork away and its results in wasteless forks.. so they have an algo that fpga's bogdown on instead.

CryptonightR will be on nicehash asap. because its MONERO.... and Monero doesn't like Ryo because they seem them as a threat for some reason. Probably because a lot of the mining community tend to like the smaller new guy doing the right thing... (ryo) not the old rich guy(who) is okay with Nicehash on their algo which is where CN-R will go

If you follow monero like you did the last 3 forks.. nicheash will be on you.. On monero…. NiCEHAHS doesn't matter. On all coins FPGA hashvalue matters.

CN-GPU equalizes hashvalue.. and Ryo coin is new (last couple months) so they don't like nicehash either...

CN-R will be on nicehash because Monero is using it.. Hoep this clarifys things.

as far as it behaving?

Im testing it now... as we speak image

SomethingGettingWrong commented 5 years ago

The Algo on CN-GPU is not compute bound.. at all.. its about 160 hashs per Teraflop Floating point math on all gpu's and most hardware . It is the most equal hashvalue algo you will get If you keep following monero algo your going to be right back here again in a few months. Monero always gets added to nicehash. basicly stop looking at generic algo's The hashrate is tied to the teraflop of floating point math performance... regardless of the hardware so a cpu that gets .1 teraflops will be 16hashs (this is what you want it makes an equal hashvalue this way) Its quite easy to setup a testnet… and since the miner is out.. you can see exactly how it behaves.. It calculates a hash...

https://tnpool.ryo-currency.com/ https://github.com/fireice-uk/xmr-stak/releases

Try it yourself.... heres my testnet wallet.

RYoTqzDuLcj9iGuFD5x8JpVfCrqtJgsawKoGReaKoDPAg8SdYUhecZ6j5FLjen8fcYDdgfJksJV1RDsS5u7ZQth6Bt8nHetq7sc

It is working on its on testnet now!I Try it yourself. (it behaves like an algo). look at the results Yay! No errors.... (its not something that's gonna break your blockchain lol)

sebseb7 commented 5 years ago

https://github.com/swap-dev/swap/tree/master/src/crypto/cuckaroo

SomethingGettingWrong commented 5 years ago

HA! you got that working? when is your mainnet fork?

EDDragonWolf commented 5 years ago

https://github.com/swap-dev/swap/tree/master/src/crypto/cuckaroo

@sebseb7 not clear what you mean with it. If it's your proposal for new PoW, thanks, but we would like to get more information about it, cryptographical analysis, stats, comparison with other algorithms. Simple link submitting means nothing. And more likely, we won't spend time investigating it.

HA! you got that working? when is your mainnet fork?

@Patrickdurbin, if you asked the Graft Core Team, then no. However, we glad that @sebseb7 (or anyone else) tries to propose something, even if these proposals won't use in the development.

bobbieltd commented 5 years ago

It is Cuckaroo (from Grin coin’s PoW), hot in cryptoworld, implemented by Seb for CN coins. Very good idea to consider for Graft.

SomethingGettingWrong commented 5 years ago

The algo is good but the problem is that it is and on Nicehash already and limits cards that are not 8 gigs and FPGAs and ASICS can mine on it at a different hashvalue. You don't want a major network Algo on a small network.

I proposed Cn-gpu because Nvidia and AMD both can hash very well on it and FPGA's don't hurt being on the network because of the fact that there floating point performance is close to a gpu. ITs not on nicehash! FPGA's are not at an advantage and increase overall network hash! Asics wouldn't be that much more profitable then an FPGA unless dieshrunk 3 to 4x ! CN-GPU Comparison https://github.com/Patrickdurbin/Cn-Gpu_Hashrate_Caluculator/blob/master/CN-Gpu_Comparison.md FPGA http://squirrelsresearch.com/cvp-13/ can do 32 kilohash on CNv2 but about 3,000 hash on cn-gpu(350watts) where a gpu can do 200 watts(2000hash) NVIDIA With Cn-gpu Nvidia hashrate can now join the cryptonight world ! supplementing 100x fold any cpu loss mitigated from the fact anything a cpu can hash at an fpga can streamline

As you can see if you look at the comparison its a very even hash where watts to hash is around 7hash per watt per second across most cards.. The hashvalue is the same this means each 7 hashs on the network should thereticly have a pricepoint of about the cost of a watt of power in electricity backing emission.. as people don't sell less hten they mine at... and since everyone is about equal..... price will be stable at a minimum (good for any coin on this algo)

I proposed a very good alternative. @EDDragonWolf @bitkis https://github.com/ryo-currency/ryo-libre/tree/master/src/crypto/pow_hash

@Patrickdurbin, if you asked the Graft Core Team, then no. However, we glad that @sebseb7 (or anyone else) tries to propose something, even if these proposals won't use in the development.

Implement CN-GPU proof-of-work hash https://github.com/ryo-currency/ryo-currency/pull/163 https://github.com/ryo-currency/ryo-currency/pull/164 https://github.com/ryo-currency/ryo-currency/pull/166 https://github.com/ryo-currency/ryo-currency/pull/167 https://github.com/ryo-currency/ryo-currency/pull/169 https://github.com/ryo-currency/ryo-currency/pull/171

aux hash and keccek are needed as well The code is modular I don't understand the problem Mainnet on Ryo is live and everyone is loving it because... it doesn't use anymore power then cnv2 but 2-3 percent on newer cards. ON older cards.. it uses less power then cnv2!

sebseb7 commented 5 years ago

but we would like to get more information about it, cryptographical analysis, stats, comparison with other algorithms.

read the whitepaper: https://github.com/tromp/cuckoo/blob/master/doc/cuckoo.pdf

sebseb7 commented 5 years ago

but the problem is that it is and on Nicehash already

only grins personal variant of it available on nicehash. Not my variant or other variants.

sebseb7 commented 5 years ago

I proposed Cn-gpu

floating point for consensous? not a good idea!

http://www.yosoygames.com.ar/wp/2013/07/on-floating-point-determinism/

randygrolemund commented 5 years ago

I came up with a solution to prevent 51% attacks, but I could not get people to use my product, so I shut it down. You will have the same problems, over and over, as long as you allow 1 pool to hold more than 50% of the traffic. Your currency, like so many others, fails in that regard. Not only do you need to worry about the algo... you also need a way to prevent everyone from bunching up on the same server. Look here: https://miningpoolstats.stream/graft Here is PANDA (hit space bar 2x to start it): https://www.profitbotpro.com/panda/assets/player/KeynoteDHTMLPlayer.html

EDDragonWolf commented 5 years ago

@randygrolemund, thanks. We'll look at it. However, not for this fork, I think.