Blog > Authors > Olga Hryniuk

Interoperability is key to blockchain growth

Bridges, sidechains, and the AGIX ERC20 converter are providing solutions for Cardano cross-chain development

28 April 2022 Olga Hryniuk 8 mins read

Interoperability is key to blockchain growth

Cardano is steadily expanding a broad community of developers and blockchain enthusiasts. According to Cardano blockchain insights, there are over 4.5 million native tokens, over 5,000 NFT projects, and more than 900 projects overall building on Cardano to date.

To support this growth, the community is now working on Cardano's wider adoption. The ability to work with other blockchains – interoperability – is key to this.

In this post, Input Output Global (IOG) takes a look at blockchain bridges, sidechains, and the role of the AGIX ERC20 converter. These are the core elements that enable communication between blockchains to ensure greater scalability, technology adoption, and ease of use.

Interoperability

Today, there are thousands of blockchains – Bitcoin, Ethereum, Algorand, Solana, and so on. They employ a range of programming languages and have their own systems and rules. Interoperability is the ability of different blockchain networks to connect in order to exchange and leverage data between one another and to move unique types of digital assets.

The value held in blockchains is increasing exponentially. However, to evolve the industry, each network cannot be limited to its own ‘silo’, functioning in its own ecosystem. As the volume of transactions increases, users tend to switch to other networks because each blockchain handles specific tasks that others may not address. The desire to switch networks can also relate to fees, speed of transaction processing, security, or incentives.

Interoperability is essential for blockchain technologies to succeed – users need to have the ability to transact with each other without being limited to a certain network. Developers should be able to write smart contracts that are compatible with many blockchains. And, of course, users should be able to transact with all types of tokens without limitations.

Sidechains and blockchain bridges are two technologies that enable interoperability by allowing users to interact with each other simultaneously across multiple blockchains.

Blockchain bridges

Back in 2017, during his Cardano whiteboard presentation, Charles Hoskinson said:

The idea of interoperability is that there won’t be one single token to rule them all.

Blockchain bridges enable a token native to one blockchain, to be used on a different blockchain. A bridge allows tokens to be moved from one blockchain to another, where they can be used for payments or to interact with decentralized applications (DApps).

There are three types of blockchain bridges:

  • Centralized: these bridges are owned and fully controlled by a single party (ie. a company) that validates all bridge operations.
  • Permissioned (federated): these bridges are more decentralized as they are operated by multiple parties. However, a person or entity willing to become a validator needs permission from the federation that maintains the bridge to set up and run a node that helps validate bridge operations.
  • Permissionless (trustless): these bridges work like a fully decentralized system. Anyone can join this bridge to help maintain the validity of its operations.

Generally, bridge operators act as network validators. Operators accept the tokens that are undergoing migration and store them in a special smart contract. Then, using smart contracts, operators can issue the equivalent of those tokens on another network. Some bridges can only move tokens in one direction, others can make transfers in both directions. For example, unidirectional bridges can move tokens from Ethereum to Cardano for users to interact with DApps on Cardano. If a bridge is bidirectional, then users will be able to move tokens back from Cardano to Ethereum. The bridge mechanism depends on the type of smart contracts used within the networks.

What is the AGIX ERC20 converter?

Through a collaborative effort, IOG and SingularityNET embarked on a mission to build a solution to drive greater adoption for Cardano – creating a bridge for Ethereum developers to leverage the inherent benefits of the network, including a more predictable and cost-efficient way to host their applications.

SingularityNET has recently launched the AGIX-ERC20 converter on mainnet. This bridge is centralized meaning that the validity of its operations and token transfer success will be managed exclusively by SingularityNET.

While SingularityNET can now support the AGIX-ERC20 converter independently, IOG continues to explore the possibility of other solutions. This will bring a greater degree of choice to the Cardano ecosystem – empowering developers to select tools that fit their specific needs. IOG’s commercial team is also available for developers, DApps, and enterprises alike to inquire about potential collaborations regarding future converters – or any other initiative – and can be reached using the contact form.

Sidechains

Now let’s talk about sidechains. The main benefit of sidechains is their ability to introduce new features to the network without causing security risks to the mainnet. Sidechains expand blockchain’s scalability because they take the burden of processing complex logic off the main chain, thereby increasing the speed (and decreasing the cost) of transaction processing. Sidechains can also act as a two-way mechanism for transferring tokens between the main and additional chains, which in turn greatly increases blockchain interoperability.

Simply put, a sidechain is a separate blockchain that is connected to the mainnet. The mainnet acts as a parent blockchain, but since sidechains are separate ledgers, they are not affected by the overall traffic. Organizations can set up their own sidechains to process transactions, execute smart contracts, and move tokens faster. These operations are not only more efficient, but also much cheaper than on the main chain, which benefits everyone.

Sidechains can also inherit some (or all) features of the parent chain, such as the ledger model and consensus mechanism. However, they can also adopt a different model depending on the organization’s goals. For example, a sidechain can combine different security protocols, consensus algorithms, or governance models to create a new sidechain that interoperates with other networks.

Cardano sidechains

By adding a sidechain to Cardano, it is possible to create opportunities for developers using the Solidity language on Ethereum. For instance, using the Ethereum Virtual Machine (EVM), developers can easily build DApps on top of Cardano.

Milkomeda is a sidechain protocol that was launched recently to support Cardano. It allows EVM-compatible smart contracts to be executed on the Milkomeda C1 sidechain, which is connected to the Cardano main chain. Currently, Milkomeda does not use Cardano’s security model, but this is being addressed to ensure the highest level of security. Milkomeda provides a broad selection of DApps by allowing developers to port over existing projects from Ethereum and also enables the latest innovations in zero-knowledge technology to be implemented as L3+ solutions on top of its protocol. Additionally, Milkomeda aims to provide interoperability between Cardano and other blockchains such as Solana by the end of 2022.

Earlier this week, Wanchain announced new decentralized, non-custodial, bi-directional cross-chain bridges connecting Cardano to other layer 1 blockchains. Wanchain is both a sustainable layer 1 proof-of-stake (PoS) blockchain and a decentralized interoperability solution. The Wanchain layer 1 PoS blockchain is a full Ethereum-like environment that works with industry-standard Ethereum tools, DApps, and protocols. Importantly, it shares some common ground with Cardano. Wanchain uses a PoS consensus algorithm called Galaxy Consensus that leverages a variety of cryptographic schemes including distributed secret sharing and threshold signatures to improve random number generation and block production mechanisms. Galaxy Consensus, developed by world-class researchers and academics, is a continuation of Cardano’s own Ouroboros.

Dr. Ben Goertzel, SingularityNET’s CEO, has also recently announced that his pioneering AI project is introducing the HyperCycle sidechain. It is being designed as a lightweight layer 2 architecture to enable inexpensive, high-speed, large-scale on-chain execution of microservices. This project is specifically designed to optimize AI-related processes, and will have profound implications for many domains beyond AI that require efficient and scalable sidechain solutions.

Orbis is an additional scalability solution being developed within the Cardano ecosystem. Orbis will act as a ZK (zero-knowledge) rollup layer 2 protocol, moving computation off-chain to scale Cardano's throughput.

Last but not least, IOG is planning to release a new permissionless EVM sidechain this year. This sidechain will allow developers to write Solidity smart contracts on Cardano, create EVM compatible DApps, and ERC20-compatible tokens (and in time, their own sidechains) while gaining many of the benefits of Cardano. That means users will benefit from far lower fees and faster settlement times on a more environmentally sustainable blockchain. The key features of the EVM sidechain will be full compatibility with Ethereum upgrades and tools, Web3 wallet compatibility, the use of the proof-of-stake Ouroboros Byzantine Fault Tolerance consensus protocol, and, of course, its ability to inherit security from the Cardano main chain.

April’s Cardano360 show will feature updates from Milkomeda, Wanchain, Orbis and IOG’s own EVM sidechain teams. Make sure you join to find out more.

Boosting Cardano’s throughput with script referencing

We take a closer look at just some of the enhancements coming to Cardano in June

13 April 2022 Olga Hryniuk 4 mins read

Boosting Cardano’s throughput with script referencing

During the Basho development phase, the ledger continues to optimize and scale for the growing demand. Along with parameter adjustments and node upgrades, Plutus capability continues to develop at a steady pace.

Plutus is a living, evolving smart contract language. Cardano improvement proposals – also known as CIPs – play an important role in this evolution. Through the CIP mechanism, anyone can suggest an improvement to Cardano. CIPs encourage community engagement and proposal reviews, which are continually maintained on the Cardano Foundation’s GitHub repository.

Let’s drill down into two of these. CIPs for reference inputs (CIP-31) and reference scripts (CIP-33) have been submitted to be implemented on Cardano and are among those due to be implemented as part of June’s Vasil hard fork. Along with other scalability improvements, these enhancements to Plutus will boost throughput for decentralized apps (DApps) decentralized finance (DeFi), RealFi, products, smart contracts, and exchanges building or operating on Cardano.

In this post, we take a closer look at what these CIPs are and how they benefit and optimize Cardano's scalability.

Reference inputs

Transaction outputs carry datums, which enable the storage and access to information on the blockchain. However, these datums are constrained in a number of ways. For example, to access datum’s information, you’d have to spend the output that the datum is attached to. This requires the re-creation of a spent output. Any user who wishes to look at the data cannot spend the old output (which is gone), but must spend the new output (which they will not know about until the next block). In practice, this limits some applications to one ‘operation’ per block, thus decreasing the desired performance.

CIP-31 introduces a new mechanism for accessing information in datums – a reference input. Reference inputs allow looking at an output without spending it. This will facilitate access to information stored on the blockchain without the need for spending and re-creating unspent transaction outputs (UTXOs).

Reference inputs also enable the other key improvement – reference scripts.

Reference scripts

When you spend an output locked with a Plutus script, you must include the script in the spending transaction. Hence, the size of the scripts contributes to transaction size, which directly influences Cardano’s throughput.

Large script sizes pose problems for users because:

  1. Larger transactions result in higher fees.
  2. Transactions have size limits. Large scripts can hit the limits. Even if one script fits, multiple scripts in one transaction might not fit. This makes it difficult to execute complex transactions that rely on several scripts.

CIP-33 suggests script referencing as a possible solution. This is the ability to reference a script without including it in each transaction, which hugely reduces the contribution of scripts to the transaction size. Referencing scripts in multiple transactions can significantly reduce transaction sizes, improve throughput, and reduce script execution costs.

How does script referencing work?

The idea is to use reference inputs and outputs that carry actual scripts (reference scripts). The script referencing proposal eliminates sending frequently-used scripts to the chain every time they are used. Instead, scripts will be available in a persistent way on-chain. This means that the transaction using the script will not need to include the script itself, as long as it references the output that contains it.

This approach follows the reference inputs proposal (CIP-31). CIP-31 considers how to enable data sharing on-chain, and concludes that referencing UTXOs is the most appropriate solution. UTXOs store data safely, and take advantage of the existing mechanisms for size control.

For reference scripts, transaction outputs must be extended to carry an optional field to include a script. The minimum UTXO value for such outputs will depend on the size of the script, following the coinsPerUTxOWord protocol parameter.

Community engagement is key

With the proposals already submitted and implemented, Plutus script referencing and reference inputs are planned to be included in the June Vasil hard fork. The CIP process enables the community to contribute to the development of Cardano by proposing, discussing, reviewing, and contributing to improvement proposals. We encourage the developer community to join CIP discussions and visit Cardano Foundation’s CIP repository for more details.

A new internal IOG Developer Experience department will improve development agility

Starting with our internal processes, we are committed to building better solutions and the optimization of the Cardano development experience

13 January 2022 Olga Hryniuk 4 mins read

A new internal IOG Developer Experience department will improve development agility

Designed for global reach and enhanced functionality, Cardano is now moving from its core capabilities to a living and breathing smart contract platform. Gradual optimization and scientifically verified system improvements lead the way for Cardano's growth and maturity.

‘Move fast and break things’ isn’t the way Cardano is built. Working at the forefront of technology, and with our research agenda at the core, we use formal methods, such as mathematical specifications, property-based tests, and proofs to deliver high assurance software systems and give confidence to users for the management of digital funds.

Programmability

While we chose the Haskell programming language as the basis to achieve strong guarantees on the functional correctness of core system components, there is no single language or tool that helps us deliver a rock-solid blockchain platform.

With so many possibilities of different programming scenarios, our goal is to ensure that both internal developers and the wider developer ecosystem have a coherent and consistent experience while building on Cardano. So, while working with different programming languages and development tools in the infrastructure, we’re also pushing this development to the limits. This means enhancing coding principles and expanding the capabilities of various systems and methodologies.

Any effort to grant wider functionality and use needs to start with internal processes. So, to provide a flexible and consistent environment for everyone building and deploying on Cardano, we have now created a new internal structure that improves the agility of development.

Developer experience department

To establish an environment, where developers at IOG are not hindered by the tools they use in their day-to-day work, we have created a new Developer Experience department (DevX), led by Moritz Angermann.

Moritz Angermann explains:

Think of DevX as an internal technical support center for IO developers. It primarily focuses on providing assistance and tooling to different teams assisting with their Continuous Integration (CI) and ‘Build’ needs and ensuring that setup procedures don’t affect timely deliveries.

The department involves cooperation with all engineering teams and is also responsible for amplifying synergies between teams and streamlining development processes. Another focus of DevX is improving the Haskell tooling as a natural continuation of the ‘tools’ team that is now part of DevX.

The tooling

While Cardano is a multi-functional smart contract development platform, it is still early days and the ledger and network is being gradually upgraded as we go. Cardano is designed to serve millions of users everywhere and thus we’re adapting it to be flexible upon increasing demand. This means that along with the network growth, we are tuning protocol parameters to adjust to extending scalability and throughput properties.

The DevX department is creating tooling that will enable continuous ledger upgrades and optimizations. This tooling addresses developers’ needs and allows for better utilization of various building libraries. Streamlining the Haskell development experience includes:

  • substantial improvement of cross-compilation capabilities
  • enhanced plugin support
  • work on interoperability with the Rust programming language and other languages

These improvements enable developers not only to work with Haskell using libraries written in other languages but use Haskell libraries from other languages. Along with that, the department also concentrates on boosting the workflow relevant to using Nix, the Glasgow Haskell Compiler (GHC) and GHCJS (Haskell to Javascript compiler) support.

As Cardano continues to evolve as a fully open infrastructure model during 2022, we hope in due course these improvements will provide the broader developer community with better tooling for working on different projects and deploying them on Cardano.

DevX contributions are included across multiple Input Output repositories, and you can check out Haskell Nix development progress in this repository or learn more about the Glasgow Haskell Compiler development by going to gitlab.haskell.org.

DeFi demystified

With the Cardano ecosystem set to grow exponentially in 2022, now is the time to get to grips with some of the prime principles – and jargon – behind DeFi

10 January 2022 Olga Hryniuk 11 mins read

DeFi demystified

The number of ada users and software developers building on the Cardano blockchain continues to grow. With projects now in final testing and starting to deploy, sites like Cardano Cube, Built on Cardano, Building On Cardano, Essential Cardano, and Developers.cardano.org are busy mapping an exciting ecosystem. Cardano has been created as a secure, robust platform to build blockchain-based products, services, and systems. With a clear roadmap to steadily develop, we now see it scaling to serve on a global scale.

DeFi – decentralized finance – has exploded in recent years, opening up a host of new financial instruments – from the useful to the crazily speculative. Ultimately as this market matures, the goal of DeFi is to help individuals and companies engage in financial activity without going through a central, expensive middleman such as a bank, or to attain higher returns on their assets in an era of inflation and negative interest rates.

Cardano has expanded on this idea. The aim is to bring inexpensive banking and insurance services to the millions of people worldwide who cannot access such products. This would help break down the barriers between developed and developing nations. We call this vision ‘RealFi’.

Despite this surge for Cardano, overall blockchain understanding and adoption levels are still low. Not least, because of the mountain of jargon every crypto-curious person needs to grapple with. So, in anticipation of the next wave of fresh interest in Cardano – and particularly to welcome new readers to this blog – we thought the beginning could be a great place to start!

So we’ll try to unpack the complexity of some notions that we so often read about with blockchain. Terms like DeFi, RealFi, DApp, DEX, liquidity, and so on go hand-in-hand with the latest blockchain products. Let’s take a look at what these terms mean, and let’s start with the basic building blocks.

Where does DeFi start?

It all starts with a blockchain. So, simply put, a blockchain is a digital ‘book’ of records – what accountants would call a ledger – about transactions. What’s unusual about this book is that it is not controlled by a single person, company, or government official. Instead, entries are made in a decentralized way. By decentralized, we mean that thousands of people’s computers communicate with each other to agree on whether a transaction is valid. They reach this consensus based on the rules built into the blockchain software they are running. Blockchain records cannot be altered and can be examined by everyone – making it impossible to delete the record about a transaction, forge its amount, or hide any details. This feature guarantees transparency and trust between the users. Interestingly, although the blockchain shows such information, users are ‘presented’ as addresses. So, although anyone can see what transactions were made to and from an address since the blockchain started, no one can identify the person at the blockchain address.

The advantages of decentralized systems are summarized in Figure 1.

But how do we use blockchain in daily life, and why does it matter? The answer is that blockchain is about trading or exchanging funds under specified conditions, for a potentially infinite number of applications. Companies in healthcare, art, retail, collecting, beverage, sportswear and gaming already use blockchain technology.

Figure 1. Decentralized v traditional finance

What is decentralized finance?

Decentralized finance or DeFi is a blockchain-based form of finance that addresses the same needs as traditional finance. You can send and receive payments, pay for products or services, or invest in cryptocurrency projects instead of bonds or stocks. However, DeFi does not depend on any intermediary and uses smart contracts to settle deals fairly. By adding an identity component such as Atala Prism – and thus a ‘bridge’ to the real world – you have what we call RealFi.

The money

In a traditional setting, we use money to pay for products and services. This medium of exchange is usually represented as coins or banknotes issued by central banks. Crypto users have popularized the use of the term fiat ​​to describe real-world money. The US dollar, British pound, and Japanese yen are all fiat money. The word has been used since governments stopped having to back their currency with gold. Instead, they issue a formal decree – a fiat – that their currency is legal tender.

On the blockchain, people use crypto assets instead of fiat. Let’s take a look at the different types (Figure 2).

Figure 2. Types of cryptocurrency assets

How it works

Before we dive into the peculiarities of DeFi terminology, let’s first see what makes it all work. So, the driving force of security and fair agreements lies in smart contracts. Let’s say you download a DeFi app and you’d like to lend Alice 10 ada. We need to be assured that Alice will pay it back, and we’d also like to earn some interest if she pays back later than agreed. Traditionally, users sign agreements and specify such conditions. That’s also done on the blockchain, but in the form of smart contracts.

  • Smart contract: an automated digital agreement, written in code, that tracks, verifies, and executes the binding parts of a deal between various parties. The contract stages are automatically executed by the smart contract code when predetermined conditions are met.

An interesting fact is that smart contracts don’t find specific data themselves. For example, we agree with Alice that she pays back by say, January 20. For a smart contract to execute, it needs to know the date, whether Alice processed a transaction and whether the sent amount matches the indicated amount. For this, smart contracts use oracles.

  • Oracle: a way to communicate with real-world data. Oracles connect with trusted external data sources that enable smart contracts to execute by referencing datasets such as exact timing, the weather, election results, sports statistics, and cryptocurrency prices. Oracles ensure confidence in timely, accurate, and untampered data.

With Cardano, users can work with Plutus or Marlowe contracts:

  • Plutus: a set of programming tools for writing smart contracts on Cardano. Deployed since September on Cardano, it includes Plutus Core – the software that runs Plutus transactions and contracts – and the Plutus programming language, which is based on Haskell, a language designed for writing extremely reliable programs. There is also the Plutus Playground – a place where developers can test their code before using it on the main chain.
  • Marlowe: Marlowe is a language designed specially for writing financial smart contracts. It is limited to financial applications and is for experts in finance rather than in programming. There is also the Marlowe Playground, where users can create, edit, simulate, and analyze Marlowe contracts in a web browser. Marlowe will be deployed to Cardano later this year.

DeFi ecosystem

Users access various DeFi platforms and applications for different purposes. For instance, asset management products (or simply, wallets) store, send and receive cryptocurrencies between users. There are many decentralized applications (DApps):

  • DApp: a digital application that runs on the blockchain. There are various types of DApps, such as DeFi products, NFT markets, wallets, exchanges, games and more.

Now that the Cardano ecosystem is growing fast, more and more DeFi products are coming to Cardano. Users will soon be able to use new DApps and platforms for their financial needs. Thus, to ensure that users and the developer community can offer and consume products of the best quality, we are working on:

  • The dAppStore: a user-friendly marketplace for all Cardano DApps. It is also a place where users with limited blockchain knowledge will be able to explore ways that the technology can be useful to them.
  • DApp certification: certification and assurance help ensure that products meet certain quality checks. While voluntary (Cardano is, after all, open and decentralized) Certification benefits both developers and users because it includes security checks that help with auditing smart contracts. There are three levels of certification, each of which complementary to the others.

DeFi platforms and DApps mainly deal with financial activities. Besides sending and receiving funds, these can be used for investing, lending, and borrowing.

As a matter of fact, users can borrow cryptocurrency on the blockchain without paying interest:

  • Flash loan: works as an instant loan that doesn't require collateral (funds needed to secure a loan of other cryptocurrencies or tokens) or know-your-customer (KYC) verification. However, the flash loan requires repayment within the same block it is lent to the borrower. If the loan isn’t paid back, the initial transaction is rejected, and the issuer retains their funds.

Let’s take a look at a few more of the most common terms you’ll come across in DeFi:

  • Exchange: a cryptocurrency marketplace where users can buy or sell cryptocurrencies. There are two types of exchanges. A CEX (centralized exchange) is maintained by a specific entity or structure, which is subject to regulations or rules. A DEX (decentralized exchange) is a type of crypto exchange with no intermediary, and users can buy and sell their assets in a secure, peer-to-peer way.

Liquidity is another term that you’ll commonly hear. It measures the circulating supply and trading activity in a certain DEX, CEX, or another network. Circulating supply is essential to meet the trading needs of users. For example, Alice wants to sell some bitcoins she owns and instead buy some ada, and let’s say, some tokens needed for her new shopping app. While bitcoin trading is very popular, she won’t have any difficulties. She’ll probably buy ada as well if the chosen exchange supports it. But what if there are none of the tokens she’s looking for? Or, say, she wants to get 100 tokens for her app, and there are only 30? This is what liquidity is about – having enough supply of coins or tokens to satisfy users’ requirements.

Liquidity includes relevant activities and notions that go hand in hand with them:

  • Liquidity mining: the process of creating or adding new coins or tokens to support the demand for transactions. Liquidity miners (providers) usually get rewards that incentivize them to support the user base and grow liquidity pools. Liquidity mining is also known as yield farming.
  • Liquidity pools: a pool of deposited cryptocurrencies that provides liquidity to the network, where the currencies are in demand.
  • AMM (automated market maker): a pool of cryptocurrencies that provides liquidity between ‘trading pairs’. A trading pair is a match between Alice, who wants to sell her bitcoin, and Bob, who wants to buy it, for example. AMMs are decentralized and depend on the liquidity provided by their users.

Decentralized exchanges aren’t only convenient marketplaces for cryptocurrency trading. They also serve as tools for earning profit. So let’s discuss some relevant terms:

  • ROI (return on investment): the profit or loss on an investment, often expressed as a percentage.
  • Yield farming: as mentioned above, this is also known as liquidity mining. Because rewards are gained for providing funds, such a process is called farming.
  • Yield: rewards earned for cryptocurrency staking or liquidity mining.
  • Leverage: the act of using borrowed capital, expecting profits to be greater than the paid interest.

Please note that we’re not giving any financial advice. This post explains some of the DeFi terms for informative purposes only.

And while we’re discussing some ‘earning profit’ terms, let’s also recall how ada holders can securely benefit and get rewards from their ada:

  • Staking and delegating on Cardano: every ada holder owns a stake that is based on the amount of ada they have. A developer or a tech-savvy person can set up a stake pool and run it to help verify Cardano transactions, getting rewards for this. Everyone can delegate their funds to a stake pool to earn a share of these rewards. There is no risk to this and no ada leaves your wallet. Ada can be delegated from your wallet or spent at any time.

While these are exciting times, we continue to stress the importance of doing your own research and approaching new products with caution. Follow our blog and Twitter for new announcements not to miss a thing. And throughout this year, we’ll have plenty more content coming your way to help you navigate this growing ecosystem.

Introducing our new peer-to-peer (P2P) testnet

We are working with a small group of stake pool operators on a new P2P testnet to further drive network decentralization

8 December 2021 Olga Hryniuk 3 mins read

Introducing our new peer-to-peer (P2P) testnet

Cardano continues to build momentum with more features and capabilities being steadily added to the blockchain. As we recently reported, we are optimizing the network to increase throughput so more transactions can be processed faster, and decentralized applications (DApps) and smart contracts created and used more efficiently. This week, we have kicked off an important new initiative to support our ongoing drive toward full decentralization with the launch of a new peer-to-peer (P2P) testnet.

Cardano ensures trust and security in a decentralized setting using proof-of-stake consensus through the Ouroboros algorithm. At the heart of this are about 3,000 stake pools run by operators (SPOs) who manage the distributed nodes that power the network. Clearly, in a decentralized and distributed network, there has to be reliable communication between these nodes. Central to this and vital for verifying blockchain activities is data diffusion – the process of sharing information about transactions and block distribution. This also enables the Ouroboros algorithm to make its ‘decisions’.

Until recently, Cardano nodes established connections with peers by looking up a file that described the static configuration of the network. The system also relied on nodes set up by IOG – with a community-managed and configured topology – that helped to establish network connectivity (read more about the evolution of network connectivity here). To increase decentralization and simplify node communications, we've been establishing a P2P network. Direct interaction between peers streamlines communication between the thousands of distributed nodes that will maintain the network without reliance on federated relays. This will be done by automated P2P networking components. Automating the process of peer selection brings us closer to a fully decentralized network and simplifies the process of running a relay or a block-producing node.

From the early days of the Shelley incentivized testnet through to the Alonzo testnets program, community-supported rollouts have been central to our approach. To expand testing of the P2P changes, we are now inviting some pool operators to a semi-public testnet. Eleven operators will help us test the automated P2P components before we expand the program more widely.

What’s new?

P2P is still an experimental feature. Although it will be part of future releases, we’re not yet integrating it into all our work. The pool operators will assess the environment by configuring their nodes for direct interaction with each other. P2P capabilities will be included in the cardano-node master branch and in merged pull requests to ‘ouroboros-network’ on GitHub.

The P2P mode will enable ‘churn’ to ensure dynamic promotion and demotion of peers. Updating network configuration will also be simpler for SPOs because their nodes do not have to be restarted.

The semi-public testnet will also improve the node’s Prometheus interface. It will include the following statistics:

  • outbound connections: warm (active connections that don’t participate in the consensus) and hot (active connections that take part in the consensus)
  • inbound connections: warm and hot
  • uni-direction/duplex connections.

What’s next?

The assessment of network connections on the semi-public testnet will help us to gather valuable feedback and catch unknown issues. Once we are satisfied, we will then be ready to invite all SPOs to test P2P node communications on the public testnet. This will mark the implementation of a smart policy for peer selection. This policy will allow defining final metrics to compare with the previous, non-P2P setting. Most importantly, we’ll continue testing to verify that all the components work flawlessly in isolation as well as in combination in a wide range of network conditions.

Follow our weekly development updates to find out more about P2P network development and also check out the Ouroboros network repository for the latest updates.