Blog > Authors > Tim Harrison

Devnets: Building bridges to developer communities

Our new interoperability platforms (devnets) will expand Cardano's reach with support for the Solidity/Ethereum communities and beyond

17 December 2020 Tim Harrison 6 mins read

Devnets: Building bridges to developer communities

A blockchain environment is not a static one. Blockchains evolve as their communities grow and learn, and Cardano is no exception.

With every development stage, Cardano's core functionality has been expanded with new features: Shelley added delegation, stake pools, and decentralization to Byron’s core transactional capability. Goguen is now starting to bring fresh utility, from metadata to smart contracts and native tokens. Voltaire introduces a treasury and voting system, and we’ve seen the early steps of this process with Project Catalyst and the first ever public funding round for Cardano community ideas.

We introduced transaction metadata in November, an important first element in creating new utility and commercial use cases. We recently deployed the first pre-production environment for native tokens. Following that will be token creation and ERC-20 conversion. Plutus and Marlowe, Cardano’s native smart contract languages are under active development and will be released in 2021, opening up the platform for developers to create fresh solutions and power exciting new use cases.

All of these Goguen elements play their part in delivering Cardano's ultimate objective: a truly decentralized and self-sustaining platform. All the time encouraging deeper community engagement and growth by creating fresh opportunities.

We have a vibrant and skilled community, arguably one of the strongest and smartest in the crypto space. And in line with our avowedly non-’maximalist’ and open approach, we want to reach out to other communities and bring them onboard too.

As outlined in Charles Hoskinson’s recent video, Cardano's next strategic move will be the addition of a range of devnets to draw fresh developer communities into the wider Cardano ecosystem.

These devnets will act as ‘bridges’ between developer communities, providing development environments, virtual machines and suites of developer tools so new applications can be tested in an environment as close to the 'real world' as possible.

Understanding the devnets

After some initial exploratory work back in 2018, we are now restarting and accelerating the K Ethereum Virtual Machine (KEVM) program. The new KEVM devnet is the first of several devnets we’re building out over the next month or so. The EVM runs within the K Framework, a system for specifying languages and VMs, and then deriving tools such as interpreters, type checkers, equivalence checkers, debuggers, etc. for these languages. (The EVM is what runs smart contracts in the Ethereum network.)

K applies formal reasoning and mathematical rigor for the highest levels of assurance. It enables developers to define or implement the formal semantics of a programming language in an intuitive and modular way. K also generates an executable, 'correct by construction VM' from its formal specification, which is fast and powerful enough to run real programs and smart contracts. This effectively means that software should perform the required functions and nothing else, for all possible inputs, and have verifiable evidence.

Our long term vision – in association with our partners at Runtime Verification – is to build a K environment where we can just 'plug-and-play' new VMs. You can hear more about the goals of K from the team at Runtime Verification in this video segment from the Cardano monthly show.

The KEVM devnet, which is aimed at the Solidity/Ethereum community, will enable full backward compatibility with Ethereum. Because Solidity is a high-level language similar to JavaScript and C++, it cannot be directly executed by the EVM. Solidity programs must be compiled to assembly language (EVM bytecode) first, so they can run on the KEVM.

KEVM will allow developers to write applications in Solidity, EVM code, or Glow, providing toolkits to compile and deploy them on the devnet for (close to real-world) testing. We also plan to soon add Truffle integration, further increasing developer usability.

Glow

Solidity is by far the most popular higher programming language compiling to EVM bytecode, but by no means the only one. One fascinating alternative to Solidity is Glow, developed by our partner MuKn.

Glow is a ‘high-level’ language (other examples of high level languages include JavaScript, Python etc.) designed to allow writing highly secure financial contracts intuitively. Glow follows the 'correct-by-construction' doctrine to avoid common pitfalls and potentially costly bugs. Glow can prove that contracts written in this language have certain desirable properties, no matter what other participants in the contract do or do not do.

Glow has been designed with interoperability in mind. There will be Glow compilers targeting many diverse platforms and blockchains, making code reuse so much simpler and more practicable.

This will be the next devnet to be deployed. Most of the core development work is now done, ready for final QA and deployment in January 2021.

IELE - A foundation for third-generation blockchains

Full compatibility with the EVM is convenient and attractive to many experienced developers familiar with Ethereum, but KEVM inevitably also inherits the EVM’s weaknesses.

For this reason we’ll offer a more advanced and secure alternative in the form of our IELE devnet. The IELE (pronounced yeah-leh) virtual machine, also being developed by our partner Runtime Verification, is similar to the EVM, but much more secure. For example, it uses arbitrary precision integers, immediately eliminating many of the EVM's vulnerabilities. IELE is also register-based, not stack-based like the EVM, making it much easier for developers to write IELE bytecode by hand directly.

The term IELE describes two things:

  • The IELE VM
  • The IELE assembly language

IELE is a human-readable, blockchain low-level language, meant to serve as the foundation for third-generation blockchains. IELE was designed using state-of-the-art formal methods to address security and correctness concerns in Ethereum, while simultaneously enabling the verification of mathematical correctness of smart contract code that K EVM brings to Ethereum.

IELE represents the next step in the evolution of correct-by-construction, automatically generated implementation concepts. It is built to become the foundation of an entire compiler backend, allowing robust gas optimization, including contracts written in a high-level language that has IELE as its compilation target, like Solidity or Plutus.

Bridges between developer communities

The KEVM, Glow and IELE devnets align closely with Goguen’s key goals: to bring use and utility to Cardano, and build solid, lasting partnerships that contribute to the ongoing growth of our developer ecosystem. We aim to attract as many developers from as many disciplines as possible, to foster versatility and inclusivity.

Alongside Plutus and Marlowe, we hope these devnets present an unrivalled opportunity for developers (in the blockchain-crypto world and beyond) to engage with the Cardano platform, build compelling use cases, and contribute to the growth of the ecosystem.

An exciting future

We hope to provide a clear path towards new developer opportunities that will require close collaboration with many different communities, not least Cardano’s own. And it's one step at a time.

We’re putting the building blocks in place now. Once fully established, the devnets will act as bridges between developer communities, opening up new avenues of communication and cooperation across not just blockchain, but the whole developer ecosystem. Cardano will have permanent backward compatibility with the Ethereum network, keeping pace with any developments in the Ethereum chain. And by broadening the developer base, the Cardano community can help drive the continuing evolution of smart contracts and the decentralized finance (DeFi) space. Another remarkable year awaits. See you on the other side.

Delegating to decentralize and build value

In 2021, we’ll be delegating ada to community stake pool operators who believe their pool can make a positive difference. If that is you, here’s how to apply

10 December 2020 Tim Harrison 5 mins read

Delegating to decentralize and build value

In November, we announced our intent to support our corporate mission and encourage network decentralization through a new delegation approach. But to summarize, starting January, we’ll be delegating a proportion of our ada holdings across a range of community stake pools. Our goal? To support positive social change and continue building a more robust, resilient, and geographically distributed Cardano network.

Today, we’re delighted to take the first step in delivering on this strategy by opening our first call for applications. From today, we’re inviting eligible stake pool operators (SPOs) to consider applying. This is an evolving program, and we will refine it over the year ahead. But initially we are encouraging SPOs to gauge their eligibility for a delegation award based on these criteria:

  1. IOG will run two programs: one for ‘Incubator’ pools and another for ‘Purpose’ pools.

Incubator pools will be selected based on more ‘technocratic’ criteria. We’ll focus on pools that are performant and competently run by skilled operators who have invested a decent amount of pledge (or invested heavily in the ecosystem) but have struggled to attract delegation. Again, these are guidelines rather than hard rules; we’ll also look positively upon lower pledge pools with clear technological skill sets that contribute to the ecosystem.

Purpose pools will be selected according to the mission and purpose driving them. We will delegate to pools driving positive change by offering educational opportunities, supporting a charitable endeavor, committed to sustainable eco-friendly energy, etc. Or they might be driven by the desire to increase awareness and adoption of Cardano by hosting a stake pool centered on a developing country, holding blockchain meetups, creating non-English language Cardano/developer content, and many other options. Ultimately, it is up to each pool to state the positive change they want to make and how delegation can help them achieve that goal.

  1. IOG will select up to 100 stake pools each quarter and delegate between 3 and 4 million ada to each pool. There will be 4 cohorts/selection processes per year (one every 3 months)
  2. While we will not discount larger, more established operations, we will prioritize smaller pools (less than 5M ada/with low saturation) for the Purpose pools.
  3. We will monitor the block production rate across any pools we delegate to. We want to support skilled SPOs that are committed to deliver on the task their delegators have entrusted to them.
  4. We will show a strong preference to SPOs that run single pools. Any operator running multiple pools will need to demonstrate how they are adding community value by doing so. Failure to declare multiple pools at application will result in ineligibility to receive delegation.
  5. We will aim to delegate to a variety of new stake pools each quarter. We are focused on encouraging success and autonomy, and we will change our delegation when we are confident that the pool can continue to operate successfully without our support, or a quarter has passed. Unless exceptional circumstances arise, no pool will receive delegation for longer than 6 months.
  6. We will delegate on the basis of trust. We look for the same from SPOs and expect them to be transparent in all their dealings and how they represent themselves. We reserve the right to withdraw delegation without notice from any SPO making false or inaccurate claims about their eligibility for delegation. We will look for SPOs that are transparent with their costs and charge appropriately for them. In the short term, you may be prepared to invest your time and energy ‘for free’ (or at an effective loss, after hosting costs), but remember that this is not a sustainable model for the network over the medium and longer term. You are a pillar of Cardano and so you have every right to be compensated by the community.
  1. We will seek community feedback as we develop the process to help us both refine program mechanics and the choices we make. Community members are welcome to raise any particular concerns about delegation choices. However IOG reserves the right to make delegations in line with its ongoing decentralization strategy and changes to the program can be made at any time.

Building a decentralized, empowered, self-sustaining and self-governing ecosystem lies at the heart of our mission for Cardano. If 2020 was about laying the foundations of Shelley, 2021 will be about building upon that success through community opportunity and empowerment. Ultimately, our success is down to community and the protocol. But with this new delegation strategy, we hope to play a small but important role in helping to establish the stake pool ecosystem as a blockchain network unlike any other. Power pushed to the edges, skilled and empowered to support and accelerate all the exciting opportunities the future will bring.

We encourage any SPO who feels they meet the above criteria and would like to apply to do so through this form. We’ll also reach out directly to a number of pools we have already identified as strong candidates (based on their community contribution during 2020) and encourage them to apply. We’ll keep the application form open until the end of this year and review applications in early January, with a goal to make the first delegations by the end of January.

Native tokens on Cardano

The Cardano ledger will handle tokenized assets natively – there’s no need for any custom code. In the first of a two-part post, we’ll look at Cardano’s approach to tokenization through native tokens, why native assets are necessary, and their advantages over ERC-20 and ERC-721 tokens

8 December 2020 Tim Harrison 6 mins read

Native tokens on Cardano

It all began in the ether. Ethereum was launched in July of 2015. Bitcoin had been around for six years by then, but the whole cryptocurrency world still remained a niche affair.

Bitcoin was designed (and so it remains today) purely as a digital currency. When Ethereum came along, it had a solid ace up its crypto sleeve: smart contracts, right out of the box. This meant that third-party developers could build their own applications and run them in a decentralized manner on top of the Ethereum blockchain. Ethereum trumped Bitcoin with better marketability and more versatility.

Smart contracts enabled the creation of user-defined tokens on the Ethereum blockchain. Fungible Ethereum tokens could be developed with the ERC-20 standard, while unique, non-fungible tokens were created under the ERC-721 framework. However, user-defined Ethereum tokens (both fungible and non-fungible) carried an inherent inefficiency: they required the creation and implementation of custom code because the Ethereum chain did not offer native token support.

Tokenization in brief

Let’s remind ourselves of the purpose and value of tokens. Tokenization can be defined as the process of substituting a sensitive data element with a non-sensitive equivalent. This non-sensitive equivalent is referred to as a token and it has no extrinsic or exploitable meaning or value. Simply put, tokenization is the process of turning things into digital assets.

This approach offers distinct advantages: reduced transaction costs, transparency, enhanced liquidity, decentralization, and increased efficiency, to name a few. In itself, tokenization is a highly versatile feature that opens the path to achieving many commercial objectives. This utility stems from the fact that tokens are programmable, so they can be made unique.

For example, tokens can be programmed to grant the holder access to exclusive content, custom merchandise, or even a stake in voting. The actual purpose of the voting process is irrelevant. Ultimately, tokenizing the ability to vote gives participants the feeling that they are part of something larger than themselves, and they can have their views represented in it.

Tokenization can be used to create financial products and economic models. Examples can be envisaged in fields as diverse as collectibles, alternative investments, gift cards, sports betting, in-game assets, commodities, and much more. This has the potential to connect real world goods, services, and activities to the digital space.

Turning things into digital assets, the Cardano way

Goguen introduces a mechanism whereby tokenization is handled natively. That is, the logic is based on the Cardano ledger, rather than smart contracts. By taking this approach, we are able to implement an efficient tokenization strategy that is superior to the ERC-20 and ERC-721 standards supported on the Ethereum blockchain.

User-defined tokens on the Ethereum chain (both fungible ERC-20 and non-fungible ERC-721 tokens) are non-native, that is, the underlying ledger does not directly support these tokens. That is because tokens created with ERC-20 and ERC-721 standards are fundamentally different from Ether, the cryptocurrency native to Ethereum.

The Cardano approach to tokenization enables the representation of custom assets on the blockchain without the need for smart contracts, and also enables those assets to behave in a similar way to the principal currency, ada, except that:

  • native tokens can be created and destroyed, unlike ada.
  • ada is the only currency that can be used to service fees, rewards, and deposits.

Native tokens, some terminology

The terms 'coin' and 'token' are often used in the crypto world. Sometimes, these terms are interchangeable, sometimes not. And sometimes, 'token' is a sort of umbrella term that encompasses all digital assets.

It is worth making a finer point here. Cardano's approach to tokenization is as unique as the ledger itself, so here's some terminology to help understand the native tokens framework.

In Goguen/Cardano:

  • A token is defined as the representation of an asset stored on the Cardano blockchain
  • An asset is anything that can be quantified
  • A token bundle is a representation of multiple tokens
  • Native refers to token logic running on the Cardano ledger, rather than using smart contracts.

Native tokens on Cardano

Ethereum requires custom code for user-defined tokens to be supported on the chain; this adds a layer of complexity, cost (gas is needed to pay for the execution of the code), and inefficiency, since token code for both standards is replicated and adapted, rather than being part of the system itself. This is an inherent weakness of the Ethereum chain, because it leaves room for human error. Custom code, if done sloppily, can introduce bugs that could potentially lead to great financial loss. In one particularly infamous incident, software bugs led to the loss of ether worth $300m. The Cardano approach aims to prevent such catastrophic errors.

Cardano supports user-defined tokens natively, that is, without the need for custom code, through the native tokens framework. Native tokens is an accounting system defined as part of the cryptocurrency ledger and enables tokens to be transacted with (tracked, sent and received.) This eliminates the need to use custom code or costly smart contracts. In short, native tokens remove the unnecessary layer of expensive complexity and inherent inefficiency found in the Ethereum chain.

Why are native assets necessary on Cardano?

Cardano is a distributed ledger. Typically, when a distributed ledger is designed, it can only track a single asset type (its own cryptocurrency, for example.) But as the ledger evolves in terms of further decentralization, the need and possibility of tracking multiple types of assets using the same infrastructure becomes apparent, which is why many blockchains can support multiple assets such as stablecoins, utility tokens, credential tokens, and security tokens.

Native token functionality extends the accounting infrastructure defined in the ledger model (which is designed for processing ada-only transactions) to accommodate transactions that use different types of assets simultaneously.

Native tokens on Cardano have advantages over ERC-20 and ERC-721 tokens, in terms of security and affordability. In the next blog post, to be published tomorrow, we’ll dig down into this as well as outline how developers can get involved in the months ahead. For now, visit our developer site, where you can access supporting documentation and resources.

Delegating with fresh purpose

To encourage a sustainable, decentralized and diverse network, we’re introducing a new ada delegation program.

24 November 2020 Tim Harrison 7 mins read

Delegating with fresh purpose

The deployment of Shelley on mainnet in July opened up a new world of staking and delegation for Cardano. Since then, we have seen a groundswell of support from the community, with the creation of 1,200+ stake pools. Many have thrived and taken an early vantage position in the community in terms of visibility or controlled stake – or both. Equally, some pools are yet to make their mark. With a sub-optimal k, the high saturation threshold has made it particularly tough going for pools yet to mint their first block.

This is starting to change. On December 6, we’ll raise the k parameter to 500 – it was set at 150 for the Shelley launch. This will encourage delegators to spread their stake, giving more stake pools the opportunity to make blocks and step into the spotlight. It’s an important move, just one of a number of changes in the evolving ecosystem and staking experience we can expect over the months ahead.

This week, we are also announcing that we’ll change our staking approach. Initially, we set up 20 public pools. This was partly due to our desire to monitor and test the network and technical dynamics of running a range of ‘real’ pools. Also, for operational and security reasons, we elected to stake the company’s own ada holdings across these pools, rather than within private pools.

In late December, we shall be retiring all but one of our (IOG) public pools, and moving the majority of our stake to private pools. We shall keep one pool open. This is both a symbolic and practical move – we want to maintain a public presence as a pool operator as well as benefit from the technical and operational experience involved.

Evolving our approach

IOG is a research and development company driven by a vision and missionary zeal that is arguably unmatched in the crypto space. We are committed to Cardano’s long-term adoption and success. We’re also a commercial entity and as such, we have an obligation to be commercially successful. So as much as we are bound together by our mission and purpose, an equally powerful motivation has to be in sustaining the financial success that will enable us to keep delivering on our objectives.

As the creators of Cardano, we have a wide and deep role to play. Alongside our technological investment, we want to invest in other ways to help nurture the ecosystem.

Our new strategy

As Cardano continues the journey to full decentralization, IOG is evolving its delegation approach. Besides moving our holdings to private pools, we will be taking about 15% of our ada holdings and delegating it to the Cardano community. We shall use this ada to support our long-term vision, support Cardano’s growth and reaffirm the values we espouse, while maintaining the financially responsible position required from us as a commercial organization.

Our delegation strategy will be based on two elements: supporting what we are calling purpose pools, and encouraging network security, technological excellence and decentralized innovation through incubator pools.

Purpose pools

Our primary objective here is to delegate to pools that we feel support our wider purpose and mission of economic inclusion – decentralization of sustainable technology, empowerment through education, and opening up economic identity for all.

These purpose pools might include operations hosted in developing countries, where blockchain can make a massive impact, or operations focused on supporting educational objectives. Purpose pools might also include those run on a charitable or philanthropic basis, pools supporting underserved or minority members of the community, pools committed to the use of sustainable energy, and so on.

These are pools that not only create tangible value today, but also aim to deliver societal impact tomorrow. That’s a bold ambition, but it is what drives us already, so we want to use some of our ada holdings to support ecosystem players who share and live by similar values.

Incubator pools

With incubator pools, we’ll focus on supporting smaller stake pools and their operators to maximize the diversity of our pool ecosystem, notably in terms of ownership, geographic location and decentralized block production. Such pools may or may not have an ambition to grow or deliver additional value beyond their network role, but we want to get them to the stage where they can take it forward themselves.

Of course, some pools may fall into both categories. These categories are not mutually exclusive, and, initially, our criteria will be flexible as we develop the program. We do, however, expect a certain level of performance and potential (along with a healthy dose of ambition) from every pool. We shall look closely at each pool’s track record, while community kudos and influence will be important factors to consider. We also reserve the right to make occasional awards outside these core categories in the early days. This program will be driven by clear objectives, but we are open to adapting the approach at this early stage of the ecosystem’s development.

Applying for delegation

We’ll launch our first ‘call for delegation’ on December 10 (we thought Ada Lovelace’s birthday was a suitable day to start), and we’ll keep applications open until the end of the year. Throughout 2021, we’ll run quarterly cohorts, inviting pools to apply for delegation, within a two-week window every quarter. We’ll also talk more about the program on our monthly update next week (December 3) so be sure to tune in for details.

Here's a summary. For both programs, pool operators will need to fill out a survey covering some details, plus other questions depending on which category a pool falls into. To register for a delegation award during our winter cohort (delegation during Feb-April 2021) operators should submit a form providing background information such as their pool’s location, technology set up, objectives etc.

On the incubation side, each quarter we will be looking to delegate to between 50 and 70 pools.

We shall also select up to 10 purpose pools each quarter for the program. We’ll publish full criteria as part of the registration process on December 10, but in short, we will be looking to support pools with a mission of economic and social inclusion, and geographical diversity. We recognize that pools located in parts of the world that would most benefit from blockchain also have some of the biggest barriers.

Initial three-month delegation

Each pool selected will receive a delegation for an initial three months – pools will be rotated every quarter. IOG will delegate enough ada to ensure that each of these pools produces at least one block every epoch. At k= 500, we anticipate this amount to be between 3 million and 5 million ada per pool. All pools selected will receive an equal delegation amount.

We’ll review all applications in early/mid January, with a view to start delegating by the end of that month. We’ll publish a list of all chosen pools for both programs for full transparency among the community, which may also help people with their own delegation choices. Initial delegation awards will stay in place till the end of March.

It is still early days for Cardano. Together, we’re building a decentralized ecosystem that will prove its value over decades, so it cannot be fairly judged over months. Yet we’re already seeing incredible momentum in a community that is passionate, committed, and skilled. We hope this new strategy will help identify and encourage some of those pools and ‘pioneers’ – a word we may have overused in 2020 but one we feel remains valid – and help accelerate our growth into 2021 and set us up for many successful years ahead.

Parameters and decentralization: the way ahead

On December 6 we'll be making adjustments to the k-parameter in Cardano. Here’s why

5 November 2020 Tim Harrison 10 mins read

Parameters and decentralization: the way ahead

Shelley continues to evolve and, as it does, IOHK is committed to supporting the healthy development of the Cardano ecosystem. There are many factors at play in this regard: everything from the wallet experience for ada delegators to network tools for stake pool operators; from governance and funding frameworks like Project Catalyst and Voltaire to community-led initiatives. Central to the health of Cardano as a vibrant proof-of-stake network is the manner in which delegators and stake operators are rewarded for running it, and how those rewards are shared to maximize decentralization and secure the network.

The system is still transitioning towards full decentralization and community ownership. Very shortly, the majority of blocks will be minted by community pools as the influence of the genesis nodes supporting the network is gradually reduced. The steady reduction of d (the parameter governing this process) will see it reach zero by the end of March 2021. This will mark the full decentralization of all block production on Cardano.

Some four months on from the deployment of Shelley, it is time to adjust the parameters of the rewards mechanism so that the next phase of the network’s growth is fueled. Since launch, we have been monitoring network behavior, while seeing how the community and ecosystem are developing. We have also been carefully modeling various scenarios based on data as it emerges. We have now finished a full review and have aligned – from a philosophical, scientific, technical and practical perspective – the next steps. Before we make further adjustments to the parameters of the rewards scheme, we wanted to share with the community what we hope to achieve with the underlying mechanism and associated parameter adjustments.

Encouraging sustainability through pool diversity

First and foremost, the rewards-sharing mechanism of Cardano aims to reward people fairly for supporting the platform in a sustainable way, not as a short-term windfall. One of the goals of staking has always been to encourage long-term holders of ada: the people who are committed to the success of the ecosystem.

In the longer term, the system can be successful only if it is widely decentralized. Philosophically, the design of the rewards scheme aims to encourage a wide and diverse set of stake pool operators. This secures the platform against attacks, spreads any available rewards evenly across the community, and makes the system more resilient to change.

Many economic systems have a tendency towards consolidation and a smaller number of strong players. On the other hand, blockchains can only be successful when control is decentralized. The rewards-sharing scheme ensures that smaller and medium pools can contribute meaningfully to the ecosystem without becoming subsumed into larger operators and consortia, as has happened with other blockchain systems, particularly Bitcoin.

One way to discourage a trend towards a few large pools that collectively control the system is to introduce a counter-incentive to a pool's growth. The rewards-sharing scheme we designed is an example of this novel (in the cryptocurrency space) concept. As soon as stake delegation to a single pool increases above a threshold, the rewards automatically diminish, encouraging ada holders delegating to that pool to find a new home to improve their rewards. This mechanism limits the delegation that can be rationally made to any pool and spreads delegated stake more evenly across a larger number of pools.

All about k

The parameter of the rewards scheme that sets this 'soft-cap' on the pool size is called k. The mechanism is designed so that, at equilibrium, assuming rational participants and no external factors, the stakeholders' best response behavior converges to k pools of equal size delivering the same level of rewards per unit of stake to their delegates.

For the deployment of Shelley on mainnet, we started with k=150, which limits pool size to 210 million ada. This was a modest increase from the parameter choice used in the incentivized testnet (ITN), which had a value of k=100. At the time, this was considered to be a relatively conservative choice, made to ensure the ITN environment would smoothly move to the mainnet. The launch of Shelley has seen enormous interest from the community and a large number of pools. Over the past few months, we have observed the way the staking pools are operating, and recognize that k needs to be adjusted upwards.

It is worth noting that the k-parameter is not amenable to small, gradual increases (unlike, for example, the d-parameter, which lends itself to a gradual reduction). Each increase in k requires pools and delegators to take action. For pool operators, this means a careful adjustment of their parameters and in particular their margin; for delegators, it means choosing new pools to delegate their ada to, especially if their current choice becomes oversaturated.

Therefore, the best strategy for an upwards adjustment of k is to move in larger, less frequent increments – and to move it as far and as fast as practical network dynamics and economics will allow. The ‘how much’ and ‘how soon’ has been a topic of intense debate and discussion within the team, made more complex by a number of technical factors. The best solution is one that minimizes disruption for successful pools and their delegators, while maximizing the opportunity for medium and smaller pools to mint blocks and attract more stake. Equally, it is crucial to be always focused on the longer-term strategic goal as a community to broaden decentralization as widely as possible.

Moving to k=500 in December

We are committed to a measured and deliberate set of changes and will be using the data we gather to inform subsequent decisions. Therefore, we plan to implement the k change in a staged manner. First, we shall move to k=500 at epoch 234 (21:44 UTC Sunday, December 6, 2020). The move to k=500 will give small- to medium-sized pools that are struggling an improved opportunity to attract delegation. It will also have the effect of limiting pool size to 64 million ada, which means more than 100 of the largest pools will become saturated.

Ada holders can redelegate at any point between now and the change. If you are currently delegating to one of the largest pools, and wish to continue receiving optimal staking rewards, you may need to move your ada before or during epoch 233, before the new epoch boundary at 21:44 UTC on December 6. We certainly encourage delegators to keep an eye on their favorite pools in the saturation meter in the Daedalus wallet a day or two before December 6. If it shows significantly more than 64 million ada at this point, you should certainly consider redelegating. It is important to note that rewards will still be payable from slightly saturated pools, but these steadily diminish the greater the saturation over 64 million ada in the pool. To be clear, though, no one delegating to an over-saturated pool will lose any of their stake. It is simply that the return on their stake will be reduced if they stay delegated to a saturated pool. We always encourage the community to keep an eye on their delegation choices, and this will be especially important around this time.

Modeling the long-term viability of stake pools, we found that k values of 1,000 were stable in the long term. As a result, our aim is to move to k=1,000 during March 2021. We recognize the importance of economic factors that also strongly influence pool profitability and will continue to consult widely with the community on the plan; the social dynamics of the network should also not be underestimated. A number of opportunities will be presented (including community panels and seminars) for further discussion, while helping the community understand more about the changes and contribute their perspectives.

From a strategic and philosophical perspective, we believe this is the correct approach for Cardano. We wish to encourage decentralization across a large number of stake pools that are independently operated, while recognizing the positive contribution of the pools currently leading in the rankings. We shall also pay heed to the practical dynamics of the evolving ecosystem. By the end of March, d, the decentralization parameter, will also be set to zero, meaning that Cardano block production will be fully decentralized, and responsibility shared across nearly all the pools currently running the network (and hopefully, some new entrants too).

No silver bullet

We believe that changing k to 500 will benefit the ecosystem, despite a period of disruption and change. However, it is not the whole solution. We are continuing to develop our thinking in other areas that will tangibly contribute to Cardano’s decentralization. Hardware wallet delegation support (coming very soon) should help open up ada supply, to the benefit of all. We shall soon add the ability to delegate to several pools from a hardware wallet, which will help Trezor (initially) and subsequently Ledger owners spread their stake across a range of pools. Improvements to stake pool servers will in time allow community members to start curating their own pool lists to help shape and steer delegation choices. We shall also be retiring all but one of our public IOG pools and encouraging delegators to switch their ada to community pools, while developing our own delegation strategy. On the parameter side, we are now finalizing some modeling around pledging by pool operators, another factor that will help shift network dynamics in favor of a broader spread of ada. Expect more news on all these topics soon.

We recognize that in the short term, the move to k=500 will mean significant change for some. If delegators to larger pools do not react, some pools will become oversaturated and rewards will be unclaimed (note that no rewards are lost; everything goes back to the system’s reserves for the community to draw upon in the future). As a result, pool operators will need to adjust their margin and cost in the short term to stay profitable and incentivize delegators to take action. While this will require some effort from the community, it is an essential step for the Cardano ecosystem to maximize its decentralization. As smart contracts and multi-currency support will be coming soon to Cardano, a high level of decentralization will be the jewel of the ecosystem, and a strong competitive advantage over other blockchains.

The increase in k will be a significant step forward in delivering Cardano’s mission. Because this change will bring some disruption, we want to give the community plenty of time to absorb the changes and adjust their strategy. Moreover, we would like to help the community make the right decisions for the long-term sustainability of Cardano. We will be publishing more content over the next few weeks and months to support this approach (including a guide to making good delegation choices) as we continue to improve the experience.

Achieving the highest level of decentralization is the ultimate objective of any blockchain system. Decentralization is the solid foundation over which the Cardano ecosystem will thrive. True decentralization cannot be conjured purely out of mathematical theorems, and the tweaking of parameters and formulas will never be enough by itself – even though with Cardano we have taken huge strides compared to any other blockchain. Nevertheless, in the end, true decentralization will emanate from the collective will and actions of the Cardano community. We will continue in this path together, investigating additional approaches to allow stake pools to build their brand, communicate with their delegators, and highlight their own contributions and mission more directly.

Thanks to Aggelos Kiayias, Colin Edwards, Olga Hryniuk and Francisco Landino for their input to this piece. Thanks also to researchers Aikaterini-Panagiota Stouka and Elias Koutsoupias.

We’ll be posting throughout the next month to support delegators and stake pool operators as we approach the December 6 deadline. Please be sure to follow us on Twitter and subscribe on YouTube for all the latest updates.