Blog > 2019

Explaining the Shelley Incentivized Testnet incentive model

Learn about Cardano’s incentive model, rewards, and our plan for the Incentivized Testnet

5 December 2019 Kevin Hammond 7 mins read

Explaining the Shelley Incentivized Testnet incentive model

We’ve talked a lot about incentives lately. That’s because right now we’re running the Incentivized Testnet: a Shelley testnet that provides an opportunity for stakeholders to delegate their stake or operate a stake pool to earn real ada rewards. Later this month, anybody that had ada in either a Daedalus or Yoroi mainnet wallet during the balance snapshot (taken on November 29) will be able to participate in the Incentivized Testnet, as either a delegator or stake pool operator, or both.

One of our key goals for the Incentivized Testnet is to test – in a real-world setting – the assumptions made in the Ouroboros incentives whitepaper, which uses game theory to calculate the incentives required to ensure consistent, active, and strong participation within a blockchain network.

The foundation of Cardano is mathematics; its central pillar, however, is a philosophy aimed at creating a fairer, more transparent, and more equitable system, decentralized and globally distributed.

Why incentives matter

Successful systems depend upon the adequate supply of incentives. Think of a company. A company must sufficiently incentivize its employees to work. This doesn’t just mean turning up to work – existing within the system – but performing a specific function to the desired standard. The same is true (and, arguably, is more crucial) for decentralized systems. Cardano is a decentralized network of global participants, each of whom must be adequately incentivized to take part and perform their roles, with the understanding that the network’s interests align with their own.

A brief overview of the incentives mechanism

Cardano’s incentives model begins with an assumption of rationality: that each player will act to maximize their own returns. These returns are the system’s incentives, and can take the form of tangible rewards – such as money – or intangible rewards, such as esteem, reputation, status, identity, or fulfilment.

Selfless acts are rare. As individuals, we pursue strategies that reward us, directly or indirectly. A network of participants each acting out of self-interest, however, can lead to chaos. That’s why successful systems codify – in protocols, rules, or laws – when and how much each participant will be rewarded. One of the core principles of game theory is that an ideal system is one where a selfish participant, acting in their own best interests, is also, by design, acting in the best interests of the system.

This is the function of Ouroboros’ incentives mechanism: a set of instructions that specify how and when rewards are paid out, and in what proportions to reward different levels of stake contribution. It allows a distributed network of participants to coordinate and collaborate in a decentralized system and receive rewards in accordance with their self-interest, while still contributing to the long-term health of the network.

Aims of Cardano’s incentive model

Equality and fairness are key to the sustainability of any future system, but can only be assured by the system itself, independent of individual goals or self-interest. Individuals must be free to exercise their ingenuity and maximize their outcomes, as long as doing so does not impede the operation of the network or restrict the possibilities of another (for example, by gaining a disproportionate amount of control). If one participant is the winner every time, other participants are disincentivized and, eventually, disenfranchised. The final implementation of Cardano’s incentives mechanism, as outlined in the incentives whitepaper, incorporates these factors, ensuring that that the biggest doesn’t always win, and that not only the richest get richer.

This is one of the aims of the game theory underpinning the incentives model – to test the thresholds and parameters for exploitation and the alignment of individual and collective interest – and is similarly one of the aims of the Incentivized Testnet. Over time, we will introduce new factors to the rewards calculation and monitor the impact on participant behavior.

Testing the incentive model

The incentives model we’re introducing to the Incentivized Testnet is not the final model. We plan to use this phase to test the incentives model incrementally, verifying our assumptions and exploring whether the network and participants respond in the way we anticipate.

We will not only be testing our game theory, however. We’ll also be testing the technology, ensuring that additional factors for reward calculations are only included once a baseline model is proven to be secure and stable.

In the beginning, various factors will not be included in the rewards calculation. These include factors to increase the number of stake pools and to better rank stake pools according to their desirability. Other factors will be included but in a limited capacity, and their function and calculation will evolve over time. This includes stake pool ranking. At first, the ranking will be based on a stake pool’s performance but, as we progress through the Incentivized Testnet, will transition to be based on desirability (a combination of cost, margin, pledged stake, and performance).

We’ll then gradually introduce additional factors into the rewards calculation, beginning with factors to encourage growth in the number of stake pools and to ensure the system promotes the most desirable stake pools. Each of these is important, and introducing them in a staged approach will allow us to ensure they function as intended and that each has the intended effect on the network.

Incentivized Testnet rewards

The rewards for delegating stake or operating a stake pool on the Incentivized Testnet depend upon the percentage of network participation. An approximate 3.8 million ada will be awarded per epoch. If 50 percent of the network participates, then we estimate the annual return for delegation will be approximately 7 to 8 percent but could, if network participation is lower, be as high as 13-15 percent. These figures are subject to treasury taxes and stake pool fees. A rewards calculator is now available on the Incentivized Testnet website which, in addition to other variables, allows you to calculate approximate rewards relative to different levels of network participation. Here’s a sneak peek:

Approximate delegation rewards calculation at 30% participation

Approximate delegation rewards calculation at 50% participation

Meanwhile, for stake pool operators, the rewards for stake pool operation, assuming a pledged amount of 10,000,000 ada, a 10 dollar daily stake pool operating fee, 50 percent network participation in the Incentivized Testnet, and the operator margin set to 10 percent, the total return rate for stake pool delegation will be approximately 12 to 13 percent. We will be updating the calculator over time to include more sophisticated rewards calculation modelling.

Approximate stake pool operation rewards calculation at 50% participation

More coming soon

This is a testnet, and as such involves an iterative process to reach our desired end: a complete and fully functioning incentives mechanism – as described in the Ouroboros whitepaper – that rewards network participants accurately and fairly in proportion to their contribution, while preventing any single actor from gaining a disproportionate amount of control over the network. We’ll be actively monitoring participant behavior throughout the testnet, to determine when and what additional factors may be included in the rewards calculation.

To learn more about the Incentivized Testnet, visit our website. If you’re interested in running a stake pool, register your interest and explore our testnet website for step-by-step instructions. And, as always, follow us on Twitter or sign up to our email list for the latest progress updates.

Incentivized Testnet update: balance snapshot, wallets, and rewards

Get the latest information on the Incentivized Testnet as we prepare for the balance snapshot

27 November 2019 Dynal Patel 5 mins read

Incentivized Testnet update: balance snapshot, wallets, and rewards

The initial phases of the Incentivized Testnet are underway. We’ve already completed the balance check – a practice run that helped us identify a few bugs and issues – in preparation for the balance snapshot, scheduled for just after 12:00 UTC on November 29.

As a reminder, the balance snapshot is a UTXO snapshot of ada balances held across the mainnet – and the amount of ada captured by the balance snapshot is the amount of testnet ada you’ll be able to use on the Incentivized Testnet, to delegate, operate a stake pool, and, ultimately, earn rewards.

What do I need to do?

You can find all the information about the balance snapshot on our Incentivized Testnet website, or by watching our balance snapshot announcement video. Here’s a summary: by November 29, you’ll need to have moved your ada into either a Daedalus or Yoroi wallet. Only ada held in these wallets will be captured for use on the Incentivized Testnet (for technical reasons, ada held in exchanges, third-party wallets, or hardware wallets will not be captured). This mainnet ada is in no way locked up. Once the balance snapshot has happened, any ada moved for the purposes of the balance snapshot can be moved back. A snapshot is an imprint: it records the ada held in Daedalus and Yoroi at a specific point in time, with no requirement for it to remain thereafter.

What happens after the balance snapshot?

After the balance snapshot, there will be a short interim period before the Incentivized Testnet wallets are available. We’ll be using this time to onboard stake pool operators, and help them to set up their pools with videos and documentation hosted on the Cardano testnet website. We want to allow stake pool operators adequate time to get set up before delegation starts, and we’ll also use this period to gather information and metadata, address any issues that arise, and ensure the network is ready to scale. Stake pool operators will then be invited to formally register their stake pool. We’re aiming for the first week of December for the registration process to be up and running. Stake pool operators who have not yet signed up to the operator newsletter can do so via this questionnaire, to register their interest and receive progress updates.

We’ll be actively supporting stake pool operators during this onboarding period; for any queries or issues, operators can submit a ticket through our support portal. To find out how to become a stake pool operator – and the specific requirements for running a stake pool – visit our testnet website. We’ll also be keeping the wider community informed as we progress. Our hope is that we can start the delegation phase of the Incentivized Testnet with around 20 stake pools operational, and increase that number over time.

Test, test, and evolve

The provisional date for the rollout of delegation on the Incentivized Testnet is December 9. As is always the case – after all, this is a phased rollout designed to test and iterate functionality – this date is subject to meeting development milestones and fixing any issues identified through the balance snapshot. We’ll also need to address any bugs or issues discovered or reported by stake pool operators during their initial set up.

As the world’s first working incentive model on a proof-of-stake blockchain, we’re bound to encounter bumps in the road. This is an unprecedented opportunity for delegators and stake pool operators to earn ada rewards, but it is also, and fundamentally, a testnet. This means that its evolution will be provisioned by testing; some things will go wrong, but we’ll learn something each time they do. Everything we intend to make available – remember, the goal here is to create a facsimile of the mainnet incentive model – will be made available in due time. We aren’t going to rush. We’ll add features and capabilities as and when we’re confident to do so, expanding what’s included in the reward calculation as the testnet evolves.

A word on incentives

The philosophy behind Ouroboros’ incentive mechanism is founded on the principle that systems can only survive if participants are adequately incentivized. If they are not, then participation ceases, and the system fails. We’ll talk more about the game theory underpinning the incentive mechanism in a future blog post.

For now, it’s important to remember that Cardano isn’t just intended for today: it’s intended for the future. The common use of the ‘Rome wasn’t built in a day’ adage can sometimes belie its true meaning: that systems with immense and long-lasting implications take time to develop, and can only be built incrementally. Every stone is one stone more, and it is the end result that matters. This is true for Cardano, and is similarly true for the Incentivized Testnet.

In that vein, stay tuned for more information on the Incentivized Testnet. Check back here, visit the website, follow us on Twitter, or sign up to our email list for the latest updates.

Incentivized Testnet: what is it and how to get involved

Soon you’ll be able to earn real ada rewards as you support the rollout of Shelley. Here’s the lowdown

24 October 2019 Dynal Patel 6 mins read

Incentivized Testnet: what is it and how to get involved

Over the past few months, we’ve been working towards a full release of the Shelley testnet. You may have been following our reports about progress on the self-node and networked phases. Now, we’re on the third and final phase before the Shelley mainnet goes live: an Incentivized Testnet that all ada holders can join to earn real ada rewards.

This marks an acceleration in the Shelley testnet, and in Cardano’s development. Rewards earned from the Incentivized Testnet will be transferred to the mainnet: the ada earned from delegating your stake or operating a stake pool are real and will be transferred to the mainnet when it goes live.

The Incentivized Testnet is the beginning of Shelley’s rollout, which will culminate in the release of the codebase to the mainnet early next year and, with that, the realization of a secure, decentralized proof-of-stake (PoS) network. Exciting, unprecedented times.

Why the Incentivized Testnet?

Cardano runs on the Ouroboros protocol: the most advanced and secure PoS protocol in development. With this innovation, however, comes complication, so, to ensure stable and robust foundations, we’ve chosen to implement it in a practical and responsible way. This is also why we’ve introduced new capability – the latest being the incentive mechanism – gradually to the Shelley testnet. Shelley is the foundation to everything yet to come; once we’ve achieved a working decentralized network, much more then becomes possible, including Goguen, which introduces smart contract functionality.

The Incentivized Testnet will allow us to see Cardano’s incentive mechanism operating in a near real-world context. These mechanisms are integral to the operation of the Ouroboros protocol; incentivization is how we guarantee network participation, promote growth, and ensure essential actors play their part.

Incentivization depends upon two things we hold dear: time and money. It’s essential that we get this right, and that Cardano’s users are appropriately rewarded for their investment. This is why real incentives are necessary to test incentivization. The mechanism was designed around game theory and behavioral economics, and it is ultimately human behavior that we are testing.

Lastly, the Incentivized Testnet allows us to lay the foundation for Shelley on the mainnet, test its core functionality in a controlled way, and gather essential community feedback. It will also help us build a stable and qualified group of decentralized stake pool operators in preparation for the mainnet.

How can I take part?

This is different from our other testnets, and to most testnets. The Incentivized Testnet will begin with a UTXO snapshot of all the ada balances held across the mainnet. This snapshot will capture the value of your ada balance at the time. It is this balance value – not the ada itself – will then be transferred into the Incentivized Testnet.

Anybody that holds ada at the time of the balance snapshot can participate in the Incentivized Testnet. But you’ll need to ensure that you are holding it in an approved location. For technical reasons, ada held in exchanges or on hardware wallets will not be included in the snapshot. You can find details of which wallets are supported for the balance snapshot in the chart below.

Ada stored on exchanges or hardware wallets must be transferred to a supported software wallet – such as Daedalus or Yoroi – prior to the snapshot. Don’t worry. The snapshot works as a freeze-frame; ada held at the time can be freely exchanged and transferred immediately after.

The snapshot will happen during November, but we’ll also test it beforehand: to ensure everything’s working as intended and provide participants with an opportunity to check they’re able to download and configure the relevant software. Further details will be provided on when the snapshot will take place nearer the time, so you’ll be able to move your funds in advance. We don’t want anybody to miss out.

Stake delegation

No technical knowledge is required to delegate your stake. To take part, you will need to download one of the special testnet Daedalus and Yoroi wallets. To avoid any confusion, these will be visually distinct from their mainnet counterparts.

After the snapshot, you’ll be able to access your testnet wallet as you would your mainnet wallet – by entering your mnemonic phrase – to view your Incentivized Testnet ada balance. The testnet wallets will feature an option to delegate your stake to one or more stake pools. You’ll be able to choose how you delegate from within the wallet.

The ada within the Incentivized Testnet can be used as it would be on the mainnet, to delegate or operate a stake pool. It cannot be spent and cannot be transferred out of the testnet. Once this phase is complete, however, the rewards accumulated within the testnet will be transferred to the mainnet, as a real, spendable payment. Ergo, the ada earned on the testnet represent a real incentive. This is real money driving real behavior, but within a controlled environment.

Running a stake pool

Running a stake pool requires some technical know-how. At the least, stake pool operators should be comfortable with command-line interfaces and have some system operation and server administration skills. Ideal candidates are people who have run stake pools before, but anybody may learn how to run a stake pool using our step-by-step documentation. We’ll continue to expand our documentation and guides throughout the process.

What rewards can I expect?

You will be able to work out the approximate rewards for delegating or operating a stake pool using a soon-to-be-released calculator, which will be hosted on a dedicated web page we’re currently building. Stay tuned for more news soon!

When does the Incentivized Testnet begin and end?

The precise timing of November’s balance snapshot, and the beginning of the Incentivized Testnet, will be announced closer to the time through public and social media channels. It will run until the Shelley codebase is ready to be deployed on the mainnet.

At the end of the Incentivized Testnet program, we’ll provide a procedure that will allow you to import your testnet rewards into your mainnet wallet. As with the start date, the completion and termination of the Incentivized Testnet will be announced well in advance.

What does this mean for Cardano?

The start of the Incentivized Testnet phase marks the beginning of the Shelley era. Cardano has more commits than any other blockchain project on GitHub, and we’re close to realizing our vision of a decentralized network: one with the functionality and performance to support enterprise adoption and empower people across the world. With your help, we’re beginning to see what the Cardano network will be capable of, with sufficient incentive for enterprise and everyday users to participate, create, and interact.

Unboxing the blockchain – the Shelley testnet making its network debut

After a successful test run in London, the networked testnet is now available to the community

26 September 2019 Tim Harrison 5 mins read

Unboxing the blockchain – the Shelley testnet making its network debut

Last week, a team from IOHK, along with Cardano ambassadors and representatives from the Cardano Foundation, met up at a co-working space in London. After a quick presentation, laptops were switched on and a few Rock Pi computers were booted up. An hour later, we had them all connected in a peer-to-peer network of nodes. It was the first instance of the new networked Shelley testnet, available for the community to join as of today.

A recent post about the Shelley testnet covered the journey from the self-node phase of the testnet until now. This new phase is the first decentralized implementation of the Ouroboros Genesis consensus algorithm. While it’s still early days, this is an important milestone for the Shelley era of Cardano.

The networked testnet phase allows IOHK – and more importantly, the community – to test the behavior of an Ouroboros-based decentralized network before making changes to mainnet. The current Cardano mainnet operates on a federated model, with all nodes in the network controlled by either the Cardano Foundation, IOHK, or EMURGO. As a project, the ultimate goal is complete decentralization, with the majority of nodes run by the community. Not only does that goal pose an engineering challenge, but the change must be sustainable for the network to flourish in the long term, so it has to be achieved in an incremental way.

After less than a year of development, debugging, and troubleshooting, the project is close to realizing complete network decentralization – but it can’t happen all at once. Steps are being taken to ensure this is done correctly. The 'private' network we initially set up in London allowed us to see the networked testnet operating in real-time, and to capture crucial information about its behavior in a live context.

This network is being built for the real world, but the real world is unpredictable. By testing the network capabilities in different scenarios, it’s possible to learn more and account for a broader set of variables. To derive understanding from real-world scenarios, wider community participation is required.

That’s where you come in. With the release of the networked testnet, we're inviting the community to help Cardano take things to the next level by running your own nodes and participating in the network. We encourage everyone to take part, and to help, we've made documentation and instructions available to you.

We've already seen a brilliant response from the community during the self-node phase of the testnet. From today, we are inviting anyone who is interested to download and install the latest version of the testnet node and connect to the networked testnet.

We want to collect performance data in all circumstances and multiple use cases. So try to run a node from your local coffee shop, see if it works with their proxy. Try it from the free hotel Wi-Fi. Check out how it reacts with the firewall. All this ‘real world’ data is useful and the more communication we get from our community, the better. We are not expecting full stability at this point; by putting the network through its paces, we can get there, faster.

The Cardano ecosystem is built to be a community-focused decentralized network. As Shelley approaches, the ambassadors and supporters are integral to working through upcoming challenges, alongside technical support from the IOHK team. We expect instability in any testnet. There will be outages and lag in the network at the beginning, but that is inherent to all new platforms. With every iteration, we lay a stronger foundation for the future.

There will continue to be regular updates in the Jörmungandr GitHub repository, where you can download the latest release of the testnet code. This codebase will be iterated on and improved over time based on bug reports and user feedback, with the goal of making the network as robust as possible before we move towards phase three of the rollout later this year: the incentivized testnet.

We’ll be keeping a close eye on how the network behaves over the next few days. The focus, for now, is on stabilization, so you can expect to see some ups and downs. Please make sure you continue to log issues in the dedicated GitHub repository and we’ll get to them. As this phase progresses, we’ll start sharing further documentation and content which will walk you through more advanced functionality, and set some tasks you can experiment with.

Launching the first private decentralized testnet was like rolling a small snowball down a mountain. It’s only going to get bigger from here. Cardano is growing, picking up speed, and moving closer to IOHK’s vision of a decentralized future. We want you to become a part of that growth. Click here to launch your own node and join us.

Plutus and Marlowe in the spotlight at WyoHackathon 2019

Plutus and Marlowe, IOHK's smart contract programming languages, will have their next generations released at the 2019 WyoHackathon

20 September 2019 Eric Czuleger 4 mins read

Plutus and Marlowe in the spotlight at WyoHackathon 2019

The Cardano network was engineered to be the best possible foundation for the future of decentralized technology – but a foundation is only as good as what can be built upon it. Smart contracts are one of the most powerful ways a distributed network can generate value, allowing individuals and organizations to agree to conditions and automatically execute exchanges of information and wealth, all in a trustless way without relying on third parties. But smart contracts are still code, which means that the languages and tools they’re written with make a difference to their final level of security, efficiency, and reliability.

That said, understanding the potential of smart contracts is different from realizing their integration and adoption. Existing smart contract languages provide the basis for a solution, but are not the final answer. Current smart contracts are complex and difficult to program, partly because they’re built with languages created at the emergence of distributed technologies, and are vulnerable to malicious actors. Blockchain technology has changed drastically since it first emerged, and the conditions that underpinned the first languages are no longer true. The first answer to a problem is rarely the best, and any enterprise-focused solution cannot be gated by complexity or threaten network security.

Bringing functional programming to smart contracts with Plutus

We’re big fans of functional programming here at IOHK and are proud to be able to say that the code underpinning the Cardano network is written in Haskell, the world’s foremost functional programming language. Plutus is no different. Compared to their object-oriented counterparts, functional programming languages are less prone to ambiguity and human error – always a good thing – as well as being easier to verify and test. By using Plutus to write smart contracts on the Cardano network, developers benefit from all of the above, as well as the ability to use the same language for both on and off-chain code.

While developers will have to wait for the Goguen era to launch smart contracts on the Cardano network, they can begin testing their smart contract skills in the Plutus Playground. IOHK has also created a Plutus ebook and Udemy course to help developers hit the ground running once Plutus is available on the Cardano mainnet.

And bringing Plutus to everyone with Marlowe

The problem with smart contracts, however, is that sometimes the people who know how to write the code don’t have the industry expertise to know how to structure the contracts themselves. Enter Marlowe, IOHK’s domain-specific language (DSL). Marlowe is designed for use by anyone that wants to write a financial smart contract without the programming skills to implement it. Users can try out Marlowe via the Marlowe Playground, a web utility with a user-friendly GUI and drag and drop components, where they can create financial smart contracts which, when complete, will generate fully-functional, implementation-ready Plutus code.

Marlowe gives anyone the ability to gain familiarity with smart contracts while protecting them from unexpected outcomes. It also protects the developer and the system by ensuring that ill-formed smart contracts cannot be run. Finally, Marlowe focuses on commitment-of-funds and time-outs. These make certain that both parties have dedicated funds in the agreement while ensuring that money will not be left in the system after a contract has concluded.

Laying solid foundations

Plutus, Marlowe, and the Cardano ecosystem continue to evolve to provide the safest and most efficient conditions to build decentralized applications. The next generations of Plutus and Marlowe will be announced at the WyoHackathon at the University of Wyoming on September 20, ahead of their release on mainnet at the start of the Goguen era. Marlowe advances include a high-fidelity development system that aids the writing of executable contracts and the new iteration of Plutus will allow users to access their contracts from web or mobile applications. To get the latest news from the event, you can follow the WyoHackathon’s Twitter feed.

At IOHK, we're focused on creating the safest, most efficient platform for the building of decentralized applications. Plutus and Marlowe will be the first building blocks to be placed on the foundation which is the Cardano network – and they won't be the last. With this new suite of accessible, inclusive tools, Cardano becomes more capable of serving the diverse audiences that stand to benefit from a secure, decentralized network platform.

Stephen Walker