Selecting New PoW Algorithm for GRAFT

Nicehash attacks have been a real nuisance and been cause for frustration for the miners community and community at large, long confirmation times at the exchanges, and other disruptions. Last week we implemented a tweak to the current GRAFT algorithm which we dubbed CryptoNight Waltz (we reduced the current number of iterations to 3/4, hence the name “waltz” as waltz is written in ¾ timing). This change was selected because it is unique, easy to implement and test, and prevents the attackers from using available Nicehash hashing power.

Some community members suggest that GRAFT should go beyond this change and implement different algorithm. Specifically, new CN-GPU is suggested. 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. Also, if we take this algorithm without any tweak, there will be more than one blockchain on the same algorithm, which contradicts the original goal.

With that said, we would like the community to express their opinions in a form of questionnaire, and in addition to simple voting for particular algorithm name explain the reason, benefits, possible downsides, and risks. Please submit your suggestions here. You can also join discussion on Telegram GRAFT Mining group. It’s important that everyone gets a chance to “chime in”!

RTA Mining on Mainnet


Often times as engineers we have a tendency to wait to release something until it’s complete and final. This however is not always practical, especially when it comes large complex projects like RTA Supernodes.

We have given it a lot of thought over the last few weeks and decided to break up the Supernode release into two phases. While we’re continuing the work on fine tuning RTA workflow and communication protocol in preparation for mainnet beta, we will first roll out what we’re calling an “RTA Miner” – an RTA Supernode that stakes, participates in RTA communication, and gets revenue from the stimulus transactions.

Goals

This release will allow us to:
  • Test the supernode concept on the scale of real network (there is a limited number of alpha supernodes)
  • Fine tune the economic model including stimulus distribution model
  • Draw attention to the project (enter masternode listings etc.)

Scope

  • RTA transaction will not be enabled in wallets and POS clients (only stimulus transactions will be enabled, but they do not require GUI clients)
  • No requirements to RTA TX performance (time, fault tolerance, etc.) or security (double-spending) as stimulus RTA Tx will be processed by GRAFT team only (Stimulus Tx is sent between GRAFT wallets)
  • There will be no security risk to supernode owners or to the entire network

Incentive Details

We’re currently targeting a 5% avg. per month ROI in RTA mining income based on the stimulus program we had announced earlier. Stimulus incentives will carry into the RTA Mainnet launch (tentatively April 2019) until the network is fully ramped up.
The calculation is based on 1,000 active Supernodes

Timing

We haven’t set an exact date for this release yet, but expect it to be within the next 3 weeks, pending release and testing of the supernode staking wallets security issue fix.



Get Ready for Supernode Staking

/>

GRAFT Rebranding Contest

When the GRAFT project was originally named, we had envisioned a couple of clever conventions. First, that GRAFT stood for Global Real-Time Authorizations and Funds Transfers, signifying the core function of what the GRAFT protocol does. The second is how GRAFT functions in the market at large, “grafting” the established systems of payments with the new breed of cryptocurrencies. We still like these ideas – they have an impact once people get them.
Unfortunately, the term “graft” also comes with a negative connotation when dealing with money.

This creates potential challenges for the GRAFT brand that could otherwise be avoided.

While we are still fond of the old name, we see this as an opportunity to engage in meaningful collaboration with our community in looking for potential alternatives to rebrand. To this end, we would like to open up a contest for the new name and see where it takes us.

The name should be short and easy to pronounce (even for non-native English speakers), while attempting to convey as many of the following attributes as possible:

  • Secure / Private
  • Decentralized
  • Participation based
  • Cool and Innovative
  • Trustworthy

Optional criteria for the new name are direct or indirect associations with the payment industry, payment networks, and/or crypto.

The team will pare down the list to leave those that best reflect the original goals and principles of the project, check for availability, etc. The resulting names will then be put up for a vote by the community (including an option to keep the old name).

The award for the contest winner is 25,000 GRFT.

The contest will run for 2 weeks starting Feb1, but we may adjust that timeline based on the number of submissions. The timeframe for implementation (if new name is selected) will be established separately.

Please submit your entry(ies) HERE. If you have a logo design that accompanies the name, please attach it as well.
Checking for potential trademark issues and domain availability prior to submitting is appreciated (please don’t reserve the domain).

Best Regards,

GRAFT Team

** Similar rebranding efforts::
Dash Rebrand: https://www.dash.org/forum/threads/official-statement-on-rebranding-to-dash.4297/
Nano Rebrand: https://hackernoon.com/nano-rebrand-announcement-9101528a7b76

Development Update – Jan 31

Ecosystem

Over the last week you saw a culmination of development efforts outside of the RTA supernode core track, geared at bringing the ecosystem network to its complete functional state. We published:

Our approach is to release the Exchange Broker and Payment Gateway as simplified, standalone versions using rapid application development tools, with the assumption that in the beginning merchants will run all the modules as a consolidated stack. The next phase will be to extend or rewrite these components to allow independent exchange brokers or merchant service providers to run these modules autonomously.

New RTA Alpha Patch Release

Today, we have released RTA Alpha 4.1 (bugfix patch release)

Changelog:

Cryptonode Fixes:

  • disable logging to tmpdir
  • fix: segfault while logging deleted connections

Cryptonode Known Issues:

  • rarely happening random segfault in p2p server

Supernode Fixes:

  • The program exits gracefully on bind fail.
  • fixed appending X-Callback header caused “Too long header area” error

The github branches are the same as the previous release, so the latest instructions are unchanged.

The Core Team also continues working on Monero13 merge and Stake Transaction validation.

New POW algorithm for Nicehash resistance

Nicehash attacks have been a real nuisance and been cause for frustration for the mining community and community at large, causing long confirmation times at the exchanges and other disruptions. Earlier this week we implemented a tweak to CN8 algorithm we dubbed CryptoNight Waltz, which will prevent the attackers from using available Nicehash hashing power.

We have put together a private testnet. To test download CryptoNight Waltz here

Seeds:
54.208.86.27:28880
54.144.192.6:28880
35.175.164.180:28880

To launch miner on the node, simply run node and enter command “start_mining <wallet_address”>

The main reason we created this testnet is to add the possibility for miner and pool maintainers to add and test support of CryptoNight Waltz. Please reach out to your favorite mining software maintainer or pool operator to get them to update their software.

ColdPay Card

In the background, we’ve been toiling on the ColdPay card, working with the manufacturer on cryptographic algorithms and library support that’s required to support the CryptoNote protocol. We have also been prototyping the multisignature support in order to use the card as a payment mechanism with remote wallets.

At this point we feel comfortable with the proof of concept to move forward with production (assuming there is enough demand). To that end, we will be launching a crowdfunding campaign on IndieGoGo in the upcoming days (counting on your support there!). This crowdfunding process should also help elevate the overall project visibility.

Open Source Development

Finally, as discussed in the State of the Union, we’re moving towards becoming a truer open source project as many of you strongly urged us to do. In addition to publishing the Requests For Comments (RFC’s), we will be creating tasks for independent open source developers. Look for a list of these tasks in the upcoming days.

Best regards,

GRAFT Team

GRAFT STATE OF THE UNION

Last week GRAFT blockchain celebrated its 1st big birthday! We started this journey together one year ago when we launched the Mainnet and 1 year later (although it feels like 20 in blockchain years 🙂 ) we look back on it with feelings representing a spectrum from incredible pride and joy from what we’ve been able to accomplish to a bit of stress and frustration at times due to various attacks and hiccups along the way.

First, the Good

We have worked super hard for the entire year to deliver the base of GRAFT Blockchain Protocol and GRAFT Network ecosystem – 10’s of thousands lines of code, 100’s of architecture and status meetings and decisions, refactoring, optimizations, diagnostics, bug fixing, learning from other projects and science papers, and from the community.

We will let the results speak for themselves – we were able to deliver on all critical parts of the project and then some:

We are very proud of what we’ve been able to accomplish so far – it was no small feat!

The Hiccups

Did we learn a lot in that past year though! Coming into the project with lots of enterprise and startup product design and software development experience, with solid understanding of the math, principles, and techniques of the blockchain and business of payments, but with little practical experience in bringing up a new blockchain, and with limited experience running an open source project, we were in for a very steep learning curve getting up to speed and learning the ropes of this new frontier.

First, we want to own up to the mistakes that we’ve made and the improvements we can make:

1. We should have factored in the cost of mining as a factor for the ICO token price determination. It was difficult to forecast due to the fact that we didn’t know how many miners were going to step in and what the resulting hash rate was going to be, but we should have done more to model it. We also tried to remedy the situation with an idea of an airdrop if the price doesn’t recover – while we had the best intentions in mind with that, we didn’t think it all the way through and ended up retracting.

2. We should have been more upfront with publishing the RTA flow design to allow for feedback sooner – it would have saved us some redesign work.

3. We didn’t do enough to involve the community at various times in the project and didn’t communicate as much or as often as we should have at times.

4. We recognize that the alternative definition of the word “graft” can become an unnecessary hindrance during the commercial adoption phase and considering opening up a rebranding effort in the near future.

Finally, we want to take this opportunity to offer apologies to anyone we may have offended along the way – we realize people have had different expectations jumping into a project like GRAFT and sometimes expressed their grievances in a way that we couldn’t handle. We meant no disrespect – we are just watching out for the health of the project and for the team morale.

Course Corrections

We are taking steps to align with the vision of the community project by opening up design, development, and moving towards including the community into decision making. We have to strike a careful balance of getting the project up to speed before we “let go of the wheel” completely though. Opening up the project to community decision making is very democratic, but will usually lead to a lot of delays and stalling as various groups or individuals will see different solutions to problems and agreements will take time to emerge. DAO mechanism has to be thought out carefully borrowing from and innovating on top of the best practices.

As evidenced by other open source projects, the best strategy in regards to this dynamic is for the core team to lead the initial ramp in technology and business development and then start sharing the responsibility with the community once the community development and governance are strong enough.

To that end, we have implemented a hybrid development approach with a community tree https://github.com/jagerman/GraftNetwork and have opened up the design for community review.

https://github.com/graft-project/graft-ng/wiki/GRAFT-RFCs,-Proposals-Design,-Papers

Another balancing act that we have to do is balancing the long term and short term goals and approaches. While long term we’re striving for the ultimate in privacy and decentralization, at times we have to make some temporary compromises in order to expedite development, roll-out, or adoption.

What’s Next?

The next phase of the execution is to get ready for the real world adoption, which will include rolling out the RTA supernodes to the mainnet, updating the client (wallet) software, supporting reference software needed for integrations, improving liquidity through larger exchanges, and pursuing various market development efforts via existing channels as well as developing new creative ways to get traction. We’ve got a big year ahead of us!

We are also looking a step ahead from the technology perspective. All technological solutions must continuously evolve in order to survive, and blockchain and payment systems are not exception. As other forward-thinking projects in the field (e.g. Ethereum), we’re looking at migrating to pure proof-of-stake based model in the future with the following objectives:

  • Retaining GRAFT’s marque privacy, real time authorizations, buyer-friendly fee structure, multi-currency support, special merchant transaction flows, custom merchant tokens, participating economy, and more (see original GRAFT white paper for more details)
  • Eliminating Proof of Work altogether*
  • Providing virtually unlimited scalability to enable TPS (transactions per second) rates competitive with traditional payment processing networks
  • Eliminating a prolonged locking of funds in user wallets (both payer and payee) caused by waiting for multiple “block confirmations”
  • Reducing the network latency that affect transaction authorization times to insignificant minimum
  • Adding open banking features that would provide financial benefits to all users

The draft version of the new design and some preliminary proof of concept samples will be published for community review.

* When and if we switch to proof of stake blockchain, all the GRFT tokens will be converted and the total supply will always stay the same.

Wrapping Up

We have done a lot over this past year and learned a lot! We’ve built a solid foundation of a network that addresses three of blockchain and cryptocurrencies most promising areas (payments, loyalty programs, and decentralized exchanges).

At this point, we feel like we are on solid footing with the RTA Supernode and the rest of the ecosystem nearing the finish line, with major design issues having been addressed. We have a solid plan for going forward both technologically and roll-out wise.

There are lots of blockchain projects out there. A lot of them are a sham and a money grab, some are “scientific experiments”, and only a few are working hard on bridging the best technology and science with the real world applications in a genuine attempt to make a fundamental difference. We would like to believe that GRAFT is one of these projects. GRAFT is designed to make the best blockchain-based ideas fit together as puzzle pieces to form a solution that works now and in the future, is flexible and adjustable, lowers the bar to adoption on all sides, provides earning opportunities, and adheres to privacy and security standards of parties involved. It’s not a trivial undertaking, but we believe wholeheartedly that it’s a doable one and it’s never been as close as it is now to come to fruition!

We’d like to think that we know enough to not make mistakes, but we do make them from time to time. What’s important is that we learn from these mistakes and make quick corrections. If there was one thing we’d like to leave you with at this point is keep challenging us in a constructive manner – we’re listening! And keep rooting for GRAFT! Turbulent times like what the market is experiencing, provide opportunities for the best projects to pull ahead and shine. Big things will come, we just need to be patient and persevere.

Sincerely,

GRAFT Team

Nicehash Attacks Update

As many of you know, GRAFT and numerous other projects are being regularly attacked using Nicehash (service providing hash power on demand). The attackers’ goal is to perform a sustained 51% attack to produce an alternative chain that would include their own double-spending transaction in it, and attempt to withdraw the funds from the exchange before the network adopts a new chain.

These attacks are unpleasant for several reasons: 1) the exchanges have to raise number of confirmations leading to very long withdrawal and deposit times, 2) some legitimate transactions get stuck while being written to the alt-chain, and it takes days until they get reversed.

What others have done:

A common approach is to create a small tweak to the hash algorithm, or use existing tweaks.

https://www.graft.network/wp-content/uploads/2019/01/CryptoNight-PoW-Versions-1.pdf

The downside of this approach is that it requires coordinated changes to the node, miner software, and pool software. (some of it is going to happen organically since miners are incentivized, but it is far from guarantee as practically no software miners support all the changes listed above).

What we plan to do about it:

The best approach to solving this problem at this time is something like ChainLocks, which is using the 2nd layer network to help validate the blockchain. This approach is much more robust and provides a long-term solution to the issue. The “ChainLocks approach” will take some time, however, as it’s reduced from conceptual to practical implementation and will rely on having a robust 2nd tier network to execute it, so we’re looking at 4-6 months out.

We recognize the need to deal with this issue now, however, and as such have decided to implement our own unique CryptoNight variation (more details will be published soon, after we finish preliminary testing). Rolling out this tweak will not be trivial, however, as again, it will require support from mining software and pool software. We will create a separate testnet for the new PoW algorithm and will rely on the miners community to not only test for robustness and unintended consequences, but also engage with the mining and pool software publishers to incorporate the change.

Keep in mind that any new hash algorithm solutions are temporary and are only effective until Nicehash adds support for it, which is driven by economics of the gains for the Nicehash community.

Additional Information

We’ve done some polling among the miners as to what mining software they use and how likely they would be to switch mining software if necessary. Here are some results so far, but we welcome you to provide your feedback as well.

https://docs.google.com/forms/d/e/1FAIpQLSdt85jV4QxY2a3N8jD6bj4SGSuDnEp4G0xc4QVNfyLiZLIZdA/viewform

Update

Earlier this week we implemented a tweak to CN8 algorithm we dubbed CryptoNight Waltz, which will prevent the attackers from using available Nicehash hashing power.

We have put together a private testnet. To test download CryptoNight Waltz here Seeds:

  • 54.208.86.27:28880
  • 54.144.192.6:28880
  • 35.175.164.180:28880
To launch miner on the node simply run node and enter command “start_mining

The main reason we created this testnet is to add the possibility for miner and pool maintainers to add and test support of CryptoNight Waltz. Please help reach out to your favorite mining software maintainer or pool operator to get them to update their software. We will not be able to roll this patch out to the Mainnet before we have that support.


Pay-in Exchange Broker Alpha

We’re excited to publish the first version of the Exchange Broker that we’ve been working on for a while in parallel to the RTA in an effort to provide a complete second layer eco-system.

https://github.com/graft-project/exchange-broker

This is the first version of the exchange broker which aims to facilitate a scenario where the merchant or merchant service provider perform the accept, exchange and payout functions. (Future versions of the broker and other components will become further decentralized and separate those functions among other participants in the network)

The broker can run on the RTA Alpha testnet and comes with a nice demo application emulating a POS/terminal accepting testnet BTC and ETH for payment.

Join the Exchange Broker Telegram channel for community-based support and idea exchange.


RTA Design Receives Major Privacy and Security Updates

https://github.com/graft-project/graft-ng/wiki/%5BRFC-003-RTVF%5D-RTA-Transaction-Validation-Flow

In the new revision we’ve been focused on privacy and security of RTA transactions. We shifted significant amount of the work, required for transaction verification, from POS Proxy to POS itself. POS Proxy doesn’t know a recipient wallet address anymore. We also introduced an end-to-end encryption of the payment data.

Thanks to @jagerman42 and others for contributing their critique and ideas!

SuperNode RTA Alpha 4 Release


We’re happy to announce the Alpha 4 is ready to be tested! Alpha 4 is a big improvement in stability over Alpha 3.

Cryptonode (graftnode) v1.3.4 (alpha4) changelog:

  • fixed random segfault caused by copying p2p_connection_context
  • fixed “unexpected recv failed” error while cryptonode communicating with supernode (default HTTP timeout increased to 3 seconds)
  • added extra build target “release-static-linux-x86_64-debug-info” (release binary with debug info in separate files)
  • fixed memleak in case libwallet running in multithreaded mode
  • removed extra (duplicated) p2p-rta outgoing connections

Supernode v0.4.0 (alpha4) changelog:

  • fixed crash due to missing return values
  • fixed auth sample validates only RTA transactions
  • optimized auth sample selection code
  • added check if supernode is busy before applying announce
  • decreased amount of opened file descriptors by using shared io_service instance in libwallet
  • fixed “refresh from block height” parameter in the future which caused 0 balance for stake wallet
  • fixed random deadlock while processing supernode announces
  • refactored internal project structure

Alpha RTA Testnet install instructions:

https://github.com/graft-project/graft-ng/wiki/Alpha-RTA-Testnet-Install-&-Usage-Instruction


GRAFT Development Status Update January 16th, 2019

Today is GRAFT blockchain’s 1st birthday! One year ago, on January 16th, 2018, a team of a few developers and several miners launched the GRAFT mainnet. Happy Birthday, GRAFT blockchain!

This week is shaping up to be big on deliverables:

  • Alpha RTA version 4 – this version brings greatly improved stability to the SuperNode
  • Improved RTA workflow proposal (based on the community input and vulnerabilities found)
  • Exchange broker and sample test application with installation instructions made public on github and made to work on the RTA AlphaNet

Stretch goals:

  • Payment Gateway and BigCommerce plugin on RTA AlphaNet
  • Monero 13 merge

We would like to be more specific and technical in our development updates, so we have included a breakdown by specific tasks for each topic below.

Core Team

  • Making last preparations and bug fixes for Alpha4 release.
  • Working on stack transaction functionality.
  • Progressing on Monero13 merge
  • Working on the next revision of Auth flow and Communication RFCs

Payment Gateway

Preparing for transfer to RTA TestNet

TMS-150 Payment Gateway: Refactor pages

TMS-151 Payment Gateway: Documentation for developers (GitHub description)

TMS-152 Payment Gateway: changing in config file

TMS-157 Exchange Broker: check source code

TMS-159 Payment Gateway: installation test

Exchange Broker

Preparing for transfer to RTA TestNet

TMS-154 Exchange Broker: check configuration file

TMS-153 Exchange Broker: Installation and deployment documentation

TMS-160 Exchange Broker: installation test

ColdPay Card / Hard Wallet

Continuing to do R&D on implementing a smart-card based mobile wallet / payment mechanism

TMS-140 2.3 a) Discovering transaction structure and signing procedure in the Monero testnet: transaction structure and hash base: Monero unsigned tx set & Monero signed tx set discovered and parsed by means of Trezor monero-agent code (https://github.com/ph4r05/monero-agent)

Best Regards,

GRAFT team