How GRAFT is Going to Conquer the Crypto Payments World. Part 1: Blockchain and CryptoNote

Slava Gomzin, GRAFT Co-Founder

Although we have created a lot of materials explaining GRAFT (both existing features and future developments), including countless technical or semi-technical pages, marketing brochures, blog posts, and educational videos, it’s often difficult to see the whole picture while going through all of the specifics. A focus on the multiple features and their design details can obscure the view of the entire system, creating a so-called “you can’t see the forest through the trees” effect. We are getting many questions from supporting community members as well as potential customers and partners about “the big plan”: what is the ultimate goal, and how exactly are we going to achieve it? Whereas the answer to the first part of this question is quite simple and short, the answer to the second part requires some time and efforts. In this series of blog posts we will iterate through the various GRAFT features and try to explain why they are there, and how they help achieve our ultimate goal: Conquest of the crypto payments world.

Part 1: Blockchain and CryptoNote

Let’s start from the very beginning with the blockchain, or layer one of GRAFT. The blockchain is maintained by a peer-to-peer network of computers, or network nodes. We refer to these network nodes as “cryptonodes” to distinguish them from our “supernodes” (a.k.a. “masternodes” in other networks), which constitute the second layer of the GRAFT network (to be explained in a future blog post). The GRAFT blockchain is based on the CryptoNote protocol, which is the most private blockchain protocol in use as of today. In order to save time and resources, we used the luxury of the open source principle and forked the initial code of the GRAFT cryptonode from Monero — the best implementation of the CryptoNote protocol. In addition to acquiring fundamental privacy features “out of the box”, forking Monero provided a high degree of confidence in our blockchain from day one of the mainnet existence. It’s important to note that the code of GRAFT supernodes, which we create from scratch, is also open source, so essentially everything that we add on top of the previously existing features is also available for others to reuse.

Now let’s go back to the initial question and apply it to the blockchain layer: Why a brand new blockchain and why CryptoNote?

We’ll start with the new, dedicated blockchain: Yes, it would have been easy-peasy to run the GRAFT ICO on ERC20 or a similar token, as most people do these days to avoid blockchain maintenance, mainnet, mining, emission, seed nodes, etc. However, creation of the GRAFT payment network requires our own blockchain because we have to modify the cryptonodes as we develop the supernodes so they will support each other and work together. Without the ability to modify the code, we wouldn’t be able to create the network of supernodes and implement features like real time authorization or exchange brokers on top of any existing blockchain or token platform. In addition, there are features such as payout tokens, loyalty points, store credits, gift certificates, and discount coupons that are required for merchants — all of these are based on the merchant tokens platform, which cannot be built without a dedicated blockchain.

Now for CryptoNote: it’s not just “nice to have”, it is absolutely required in order to be competitive with traditional payment systems such as Visa network or PayPal. Ironically, Visa and PayPal provide much better privacy to their customers than most existing cryptocurrencies such as Bitcoin and Ethereum. Let me explain. When you swipe/insert your payment card at the point of sale terminal, or click the PayPal’s pay button online, there are two entities in the world that are aware of your transaction: the payment network (Visa or PayPal in our case) and the merchant. In reality, of course, there are more organisations that “know” about your transaction because the payment network is more complex. This network includes, at the very least, the issuing bank (the one that gave you the payment card), the acquiring bank (the one that approves the payment), the payment gateway (the one that routes your transaction to the right payment processor/acquiring bank) and the payment processor (which processes the payment and merchant’s payout). However, in any case, this list of organizations is limited because they are under security and privacy regulations, and they have typically implemented some decent security controls that protect your transaction records from prying eyes. Of course, everyone in this list can be hacked or give away your info to a law enforcement agency, but this is a different story (which is, by the way, another good reason to switch to cryptocurrency payments and throw away your plastic cards!). For the sake of simplicity though, let’s assume that random people cannot gain access to your data in most situations.

Finally, let’s see what happens with blockchains. The key innovation of Bitcoin (the first blockchain and cryptocurrency) was the open ledger that is accessible to every node participating in the network because your transaction must be verified to make sure you are not trying to spend your money twice. But this also means that anyone in the world can see your transactions and how much money you have in your wallet! Now, unlike plastic cards, Bitcoin wallets are, in principle, anonymous because transaction records are not directly linked to your identity. At first glance, this feature appears to compensate for the fact that your transaction records are laying there in plain sight on the blockchain for anyone to see. Well, the problem is that there are ways to link addresses to identities. Once this happens, all of your transactions magically become visible forever because the blockchain is always there and it cannot be erased!

Fortunately, there is a solution: the CryptoNote protocol, which hides the sender’s address, the recipient’s address, and the transaction amount , while still preserving the ability to validate each transaction and prevent double spending — and it’s all thanks to advanced cryptography! One day I am going to explain how it works in layman’s terms to unveil the beauty of CryptoNote and its cryptography (the same as I have done to explain RSA and Elliptic Curves cryptography in my book about Bitcoin payments). But for now, let’s just take it on faith that CryptoNote ensures a high degree of privacy for all participants. Moreover, on top of existing CryptoNote features, GRAFT adds even more privacy and hides transaction fees!

Summary of Part 1:

Why a brand new blockchain and why CryptoNote?

The dedicated blockchain allows GRAFT to create a merchant token platform. This is required for features like payout tokens and loyalty programs, and the second layer supernode network, which enables special retail features such as real time authorizations and exchange brokers.

The Cryptonote blockchain protocol provides an absolute privacy to all participants of the transaction, which is required in order to compete with existing payment platforms such as Visa or PayPal that are more private than most exciting (non-Cryptonote) cryptocurrencies.

To Be Continued — Part 2: Supernodes and RTA

GRAFT Transactions: How to Transfer Your GRFT Between Wallets

If you read GRAFT white paper, you probably know that RTA (Real Time Authorizations) is one of the main features proposed by GRAFT. Eventually, all GRAFT transactions will be real-time (point of sale purchases) or near real-time (“regular” inexpensive, or in some situations even free fund transfers between user wallets). Now, when ICO is finished, we can finally be fully focused on development of RTA and other important features.

Implementing RTA, however, is not a simple task which requires significant development and testing efforts, and we never promised it will be available at the beginning. Meanwhile, before RTA is available on mainnet, GRAFT wallet users will be able to transfer their GRFT balances between wallets using “traditional”, slow transactions. Such transfer is not available on mainnet for mobile and desktop wallets yet, only on RTA testnet; however, those transfers between mobile and desktop wallets will be available on mainnet by the end of this week.

Note that even now you can use CLI wallet for GRFT transfers by exporting your mobile or desktop wallet and importing it into CLI wallet:

Exporting wallet from mobile/desktop wallet app

To view the mnemonic phrase go to the Settings and press “Show Mnemonic Password” button. The application will ask you to enter your password if the password is correct, you will see the mnemonic phrase.

Installing CLI wallet

See Installing VM and Installing network node and CLI wallet sections of Mining Guide

Importing mobile/desktop wallet into CLI wallet

To restore your wallet via GRAFT CLI, you need to get the mnemonic phrase of your GRAFT wallet and run GRAFT CLI with the following options:

–restore-deterministic-wallet \\allow to create wallet from mnemonic phrase

–electrum-seed “” \\mnemonic phrase of your Graft wallet

Linux/MacOS:

.//graft-wallet-cli –restore-deterministic-wallet –electrum-seed “

Windows:

\graft-wallet-cli.exe –restore-deterministic-wallet –electrum-seed “

GRAFT Merchant Tokens: Introducing VChains

Merchant token is a simple smart contract that allows creating a private token that belongs to its owner. Unlike some other smart contract and token platforms, creation of GRAFT merchant token does not require any programming and can be done by anyone.

The business features described below are typically associated with using complex third party service providers and high implementation costs, which makes those services inaccessible for small to medium size businesses and expensive to large businesses. GRAFT Merchant tokens allow any merchant to implement those important business features with minimum efforts and low cost.

Types of Merchant Tokens

Store Credits

Store Credits are typically utilized by merchants for performing purchase returns and exchanges, when return cannot be done using the original payment method, or the merchant’s return policy does not allow the full refund. Store Credit essentially transforms return to exchange, so the merchant does not lose the customer and associated revenue.

Store Credit Token can be linked to the item price in local fiat currency, so the customer can use those tokens during next purchase “instead” of or in addition to the payment with local fiat currency. Store Credit tokens usually either do not expire or have very distant expiration date as they are basically replace the fiat currency.

Loyalty Rewards

Loyalty Rewards is powerful marketing instrument which attracts customers and increases spending. Loyalty Rewards can be awarded with each purchase, or as one-time bonus, or using other models. The rewards than can be used to makes purchases of particular items or all items, or converted to cash. Loyalty Rewards are not necessarily linked directly to fiat or crypto currency as they can be spend to provide discount or buy a special “unique” reward items that are not available for sale using other methods of payment.

Loyalty Rewards usually have relatively close expiration date. This way the merchant “stimulates” earning more rewards and eliminates accumulation of very large amounts of reward points that can become useless.

GIft Certificates

Gift Certificates can be issued by merchant in order to attract customers. In order to increase the effect, gift certificates can be sold with discount (for less than their nominal price). Gift Certificate tokens usually either do not expire or have very distant expiration date as they are basically represent the fiat currency.

Discount Coupons

Discount coupons can be used for one-time or long term promotions. The coupons can be distributed publicly or to individuals, in wallet or paper form. The coupon then can be scanned by point of sale in order to get discounted or even free item.

Transactions with Merchant Tokens

Create

Creating new merchant token (“smart contract”). Can be done using point of sale app.

Renew

Renew merchant token (“smart contract”). Can be done using point of sale app.

Add

Add more merchant tokens to the circulation.

Issue

Merchant’s point of sale sends merchant tokens to the customer wallet or prints a paper wallet.

Redeem

Customer redeems merchant tokens at merchant’s point of sale using wallet app or paper wallet.

Merchant Token Fees

All the merchant token fees are paid to the current supernode authorization sample.

Merchant Token Transaction Fees

Merchant always pays the token transaction fee, which means the buyer never pays the fee. A regular transaction fee is applied to each transaction with merchant token, including adding, issuing, and redemption. As GRAFT fees are proportional to transaction amount, the fee is calculated based on 1 token = 1 GRF, although it’s not necessarily that the token has any direct link to the GRF or other currency. It’s important to note that GRAFT fees are calculated based on logarithmical formula so there is no danger of paying high fee on large amounts.

Initialization and Renewal Fees

The initial Create transaction implies a special higher fee because it is associated with naming a token. In order to prevent “domain squatting”, the initial fee is set to a reasonable amount that prevents massive abuse. Initialization fee of 5 GRF is required to generate a new merchant token smart contract (Create transaction). The renewal fee is 10 GRF.

VChain

VChain allows creating a virtual chain of stores so multiple point of sales can be “connected’ to the same private “virtual blockchain”. Thus, there is a dual meaning of word “Vchain”: virtual chain and virtual blockchain. Vchain creates a private common platform for managing merchant tokens and items catalogue.

Merchants can create their own private vchain which is going to be accessible only by this particular merchant and contain all information about its tokens. Vchain allows connecting multiple points of sale or even creating a chain of multiple stores. Points of sale that belong to the same vchain can issue and accept the same merchant tokens, use the same shared item catalog stored and maintained on the blockchain, generate aggregated transaction reports, and more.

Buyers can use vchain to link multiple wallets so they can manage multiple accounts and move funds between those accounts without paying fees. This feature is useful for family and corporate accounts.

VChain Fees

There is initialization annual fee of 5 GRF for creating a new Vchain smart contract. The renewal fee is 10 GRF. Those fees are required to securely process the smart contract and prevent system abuse. There is a separate annual fee of 10 GRF for adding another point of sale or wallet to the vchain.

All vchain fees are paid to the current supernode authorization sample.