Cardano's TX throughput is insufficient for mass adoption and it has no instant transaction mechanism for responsive, non-custodial DEXes.
Extend our L2 Erdstall from Ethereum to Cardano: low-fee, high-throughput, instant transactions and NFT mints, DEX intrinsics, and SDK.
This is the total amount allocated to Erdstall: instant TXs, L2 NFT mints.
[Disclaimer: This is a dual proposal to "Perun". "Perun" and "Erdstall" are two different scaling solutions developed by the PolyCrypt team. As we have limited resources, we would prioritize one project over the other depending on the interest from the community.]
Erdstall is the implementation of CommiTEE, the novel light-weight, efficient and secure commit-chain protocol invented at TU Darmstadt’s Chair of Applied Cryptography. It is an improvement over conventional Plasma and ZK roll-up schemes in terms of on-chain interactions needed and communication complexity. Leveraging the security and performance of TEEs such as Intel SGX and ARM TrustZone, we can achieve instant transactions and the security guarantees and trustworthiness of a ZK roll-up without the need for any of the costly on-chain checkpoints or computationally expensive ZK proof generation. Its design is extremely streamlined and allows us to scale well into the thousands of transactions per second and maybe even beyond. Because we need no on-chain checkpoints to be secure, we could run as many Erdstall instances as we want without congesting the blockchain whatsoever.
CommiTEE relies on remotely attestable execution, a feature of TEE CPUs, where the CPU’s trusted platform module (TPM) can generate an unforgeable proof that it is currently running an unmodified version of a specified executable in a secure, sandboxed environment. With this proof, the execution is trustworthy even in the event that an attacker could gain full access to the machine. This attestable execution is more efficient and powerful than ordinary zero knowledge proofs, as it has additional guarantees about secrecy. TEEs behave like a smart contract in the way that they can be trusted to correctly execute their program code.
Erdstall has been in development since late 2020, and started out as a project in the ETHOnline 2020 hackathon, where it was a winning entry. Since then, we have come a long way, refining it and figuring out where to go with it. We are already deployed on Ethereum’s Goerli test network, where we have built a sample off-chain NFT marketplace using Erdstall. Currently, Erdstall is not yet mainnet-ready, as some important milestones are still missing, for example, we are still working on integrating an Ethereum light client into a TEE for remote-attestable block verification.
From a technical perspective, Erdstall offers the following properties:
We currently offer a simple set of powerful features:
We can easily introduce new transaction types if demand for specific use cases pops up. We know that our current transaction throughput might not suffice in the future, so we are already keeping possible L3 architectures in mind when building Erdstall, resulting in an extendable architecture.
Erdstall’s purpose: Erdstall is still evolving, but it is heading towards a clear vision. We do not want to merely be another generic L2 side-chain. Similar to Cardano, we have learned from the short-comings of generic computation L1s. This is why we offer only the financial primitives needed to execute transactions safely and securely, and all additional logic has to happen “off-Erdstall” on L3. By offloading all user logic, we can achieve maximum performance, as only the actual asset transfers are processed in Erdstall. We want to be an easy-to-develop-on financial platform that satisfies real-world requirements, such as ease of use and integration, performance, security, and robustness. We want to make cryptocurrencies accessible and viable for the traditional economy sectors, and for that, we want to provide a great platform for cryptocurrency service providers, such as exchanges, crowdfunding platforms, and more, to build their products on. Hence, we focus on developer and user experience and offering primitives that allow building the most important kinds of services. We use state-of-the-art technology to provide a performant, secure, and trust-less asset backend that marketplaces can build their business logic on, and guarantee trust even to users who might not trust the marketplace operators. Erdstall brings back the focus on transacting with currencies and assets, away from generic computation on the blockchain, because a narrower mission statement allows us to achieve more excellence by focusing our efforts. Future financial services should not have to be bound to a single blockchain or cryptocurrency, so we will make Erdstall into a great base layer for future projects to build on, and hope to integrate many L1 chains into Erdstall. In the future, we’re also thinking of building an L3 framework for generic off-Erdstall smart contracts, but much of the research on this still has to be done. As a lean and explicitly L3-oriented L2 platform, we will be future-proof and will not get bogged down by any bloated features that would come back to haunt us years later, at which point we won't be able to change them easily any more.
Besides its raw performance, low fees and instant transactions, and the ability to securely scale every-day asset transfers, we specifically offer the features that non-custodial DeFi marketplaces, NFT platforms and blockchain games need most: general NFT and fungible asset management (native support for off-chain NFT minting), atomic multi-asset transfers, and atomic multi-asset swaps with optional matchmaker fees going to the marketplace operators.
With Erdstall, we want to transform the DeFi ecosystem: we want to offer the throughput and latency of centralized marketplaces, but with the security of decentralized (non-custodial) marketplaces. By providing the primitives marketplaces need to perform trades directly and securely on Erdstall, we eliminate the need for marketplace deposits, keeping our users’ funds safe at every moment. Once funds are deposited in Erdstall, they can instantly be used on any marketplace or other service running on Erdstall. Competing marketplaces lead to low trading fees, encouraging high trading volumes and arbitrage, keeping prices accurate.
Moreover, Erdstall is also perfect for managing game FTs and NFTs: the instant, cheap minting, transferring, and burning of NFTs allows games to manage all their items and currencies on Erdstall. Decentralized game developers can even integrate third-party Erdstall exchanges directly into their games. Players can directly trade their in-game items on their favorite third-party marketplace, so game developers don’t have to reinvent the wheel.
We have not worked with Cardano yet, and we have not completely grasped the developer framework, and especially never built smart contracts under the eUTXO paradigm, so we do not know how complex the changes we need to make to our protocols and contract designs need to be. This is why we want to invest enough time in upfront research and planning development steps before starting to build Erdstall. That way, we avoid a lot of potential confusion and wasted work. We also seek to get in contact with experienced Cardano developers for guidance.
Please note that we will be unable to do a mainnet release as part of this grant, as it requires a lot of hardening, such as redundancy, fail-over operators, and a custom remotely attestable block verification component, which would require a lot of additional time and effort. Thus, the scope of this grant is only to create a working prototype on testnet, a client SDK, and a simple demonstrator so the community can start building off-chain Cardano applications and services using Erdstall already. However, we hope to do a follow-up grant that allows us to work on a mainnet release.
We estimate we will need 12 months when allocating 3-4 developers, 1 researcher, and 1 project manager. We expect to require $37,500 USD/month in salaries, resulting in overall costs of $450k USD.
The team includes the following members, which will potentially be assigned to the project.
Prof. Dr. Sebastian Faust (Head of research): Co-founder of PolyCrypt and co-inventor of the Perun Protocols. Head of research group for applied cryptography at TU Darmstadt, Germany. Numerous publications at renowned cryptography and computer security conferences such as CRYPTO, EUROCRYPT, S&P, CCS.
Hendrik Amler (Head of business and project management): Co-founder and CEO of PolyCrypt. Leads the business development. Will support the project management.
Dr. Matthias Geihs (Head of development): PhD in computer science with a focus on cryptography and computer security. Leads the development of the Perun Framework since the beginning of 2021. Proven track record of successfully leading projects for integrating Perun with Cosmos and Polkadot. Skilled in a variety of programming languages, research and project management.
Steffen Rattay (Core developer): Core developer of Erdstall and of the Perun Framework since its beginning in 2019. Skilled in a variety of programming languages including Go and Rust. Main developer of the upcoming Perun integration with the Dfinity Internet Computer network.
Norbert Dzikowski (Core developer): Core developer of Erdstall and of the Perun Framework since mid 2020. Experienced in a variety of programming languages including Go and Haskell.
Philipp-Florens Lehwalder (Core developer): Core developer of the Perun Framework since 2021. Experienced full stack developer and familiar with blockchain development.
Ruben Krüpper (Core developer): Core developer of Erdstall since 2021. Our most capable front-end developer, also capable in backend development. Has previous experience in the financial industry.
We will provide regular public updates on our progress, possibly on Twitter and/or a discord server, or a blog, and the progress can also be inspected in our SDK and Cardano operator repositories via issues and merge requests. We will also announce whenever we fulfill a milestone.
The project is complete when we have a functioning and tested prototype deployed on testnet, a published client SDK that can be used to build applications and services using Erdstall, and some sort of simple demonstrator that the community can try out.
This is a new project.
We at PolyCrypt have been working on off-chain solutions since early 2019.
In addition to our experience as blockchain developers, we have the co-inventor of state channels and the CommiTEE protocol, Prof. Sebastian Faust as our co-founder and research lead.