Introduction To StackMint

Kennedy Idialu
Ellcrys
Published in
4 min readOct 27, 2017

--

The purpose of this post is to introduce StackMint — The coin generation and distribution scheme for the Ellcrys network. I encourage you to first read this post (if you haven’t) to get a better understanding of what Ellcrys is all about.

What is StackMint

StackMint refers to the process of scanning and verifying of national banknotes to generate and issue new coins (Ell). With StackMint, anyone in the world with a banknote supported by the Ellcrys will be able to exchange their banknotes for the native coin as long as it passes through the network’s validation protocol.

Why StackMint?

Fairness — Our goal is provide a globally accessible and fair approach to coin generation and distribution that isn’t favourable to only people who can buy specialised mining hardwares and have access to cheap electricity. StackMint allows anyone to participate in coin generation based on their existing fiat holdings. This may seem unfair as the extremely wealthy would still generate and own the majority of the coin distributed. But the regular guy with $100 can still participate without having to save some more money to buy the cheapest mining hardware before they can have a chance.

How it works

In this section, I will describe how StackMint works. Please be aware that some of the information are subject to change during implementation. StackMint is comprised of two routines — Scanning and Validation.

i. Scanning

Scanning involves taking an image of a banknote and submitting it to the network for processing. A scanned note is submitted to the network like any other transaction. When a node, receives a bill, it passes it to the banknote analyser which must perform detection and fingerprinting routines. Detection involves determining the originating country and denomination. Fingerprinting involves the collection of unique attributes of the banknote to use in constructing a unique representation of the bill to prevent duplicates (or double scanning) from being accepted. Scanners must include some transaction fee when sending banknotes as an abuse prevention measure.

ii. Validation

Validation attempts to separate “unacceptable” bills from being exchanged for new coins. A bill is accepted if it successfully passes through the validation routine. This routine is divided into two steps — On-chain & Off-chain validation.

  1. On-chain Validation: On-chain validation is performed by nodes on the network when scanned banknote are received (as described in “Scanning” section). A bill cannot move to the next step (off-chain validation) for further validation if it fails the on-chain validation.
  2. Off-chain Validation: Off-chain validation is also known as crowd-sourced validation. This involves people around the world staking money to validate the authenticity and correctness of a bill and its corresponding fingerprint. Users pull bills that have passed the on-chain validation, carefully assert the correctness of the fingerprint and ensure banknotes look “authentic”, include a stake and send their result. A bill is considered authentic if a majority of off-chain validators agree. The winning majority equally share the combined stake sent by the losing validators.

Exchange Algorithm

The exchange algorithm determines how much coins are exchanged for a given banknote bill. It accepts an amount and returns the number of ells. The algorithm employs a difficulty feature that cuts the reward by 2% every year. It estimates an initial amount of 1 million scanners to be involved in scanning and as such divides the banknote denomination by the estimated scanners. This has an effect of allowing millions of people participate in scanning without excessively inflating the existing supply. It will take 1,000,000 USD to get 1 ell in the first year. The estimated number of scanners is increased by 2% every year. See embedded code for a JS implementation.

Incentives For Validators

As earlier stated, off-chain validators stake some coins when they send a validation result for a bill — A proof of honesty. Off-chain validators equally share the total stake of losing validators + an additional 15% of the exchanged ells. On-chain validators (nodes) who participated in the first validation step (analysis & fingerprinting) share 15% of the exchanged ells. This means, 70% is returned to the bill owner.

Quick FAQ

How can a banknote be sent to the network?

This function can be provided as a feature in a mobile wallet application capable of taking photos, constructing and sending the appropriate transaction to the network.

How can I participate as an off-chain validator?

You’ll need an application with the ability to query the network for banknotes, display the banknote for inspection and construct a validation response transaction. This function can be fulfilled by a wallet application.

How can the network prevent counterfeit bills?

We recognise adversaries will send in counterfeits which may not be detected by the validators. However, we believe the number of people actively doing this will be quite small compared to the those actively sending in originals. The cost of producing counterfeits (financial & effort expense) may be greater than the value of the reward received.

What banknotes will be supported?

At launch, the banknotes of the top 30 economies of the world would be supported. Additional support for other national banknotes will be added in subsequent network upgrades.

If you have any questions not included in the FAQ, feel free to send us a mail at hello[at]ellcrys.co

--

--