Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions fraud-proofs/honeypot/introduction.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,12 @@
# Introduction

:::caution
Honeypot app is being updated. We recently found a bug in the application that has led to a fail-stop state. This means the current deployment is permanently frozen, and the bounty funds within it are no longer recoverable. Get in touch with us on [Discord](https://discord.gg/cWGbyFkQ2W) for more details.
:::

This section focuses on the Cartesi application - the Honeypot - its introduction, application logic and how it demonstrates the PRT fraud-proof system's capabilities in a real-world scenario.


## What is the Honeypot App?

Cartesi’s Honeypot application is a [Stage-2](https://medium.com/l2beat/introducing-stages-a-framework-to-evaluate-rollups-maturity-d290bb22befe) app-specific rollup that is built to test the security of Cartesi Rollups. The application is a secure ERC-20 token vault that operates with asymmetric access controls: it accepts token deposits from any Ethereum address but restricts withdrawals exclusively to a single pre-configured address. This creates a "honeypot" mechanism where tokens accumulate in the vault until the authorized withdrawal address claims them.
Expand Down
3 changes: 3 additions & 0 deletions fraud-proofs/references/deployments.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,9 @@ This page covers the PRT and Honeypot v2 deployed contracts and their addresses.
| **CanonicalTournamentParametersProvider** | [`0xcC0a49320891Bf35bca834aF1045ab89Ecd44c0c`](https://etherscan.io/address/0xcC0a49320891Bf35bca834aF1045ab89Ecd44c0c) |

## Honeypot v2 Deployments
:::caution
Honeypot app is being updated. We recently found a bug in the application that has led to a fail-stop state. This means the current deployment is permanently frozen, and the bounty funds within it are no longer recoverable. Get in touch with us on [Discord](https://discord.gg/cWGbyFkQ2W) for more details.
:::

| Component | Mainnet Address |
|-----------|-----------------|
Expand Down
26 changes: 13 additions & 13 deletions get-started/app-chains.mdx
Original file line number Diff line number Diff line change
@@ -1,42 +1,42 @@
---
id: app-chains
title: App-Chains
title: Appchains
resources:
- url: https://medium.com/cartesi/application-specific-rollups-e12ed5d9de01
title: App-Specific Rollups - Thesis
---
# App-Chains
# Appchains

Cartesi enables application developers to build and deploy app-specific rollups, in other words, Cartesi App-Chains. Built on top of the Cartesi Rollups framework, these app-chains allow developers to deploy complex, high-performance decentralized applications (dApps) without sacrificing decentralization or security and overcome the limitations of general-purpose Layer 1 and Layer 2 blockchains.
By isolating application logic from the base layer, Cartesi App-Chains provide a scalable and customizable execution environment that supports familiar programming stacks, such as Linux, and heavy computational workloads that are infeasible on-chain.
Cartesi enables application developers to build and deploy app-specific rollups, in other words, Cartesi AppChains. Built on top of the Cartesi Rollups framework, these appchains allow developers to deploy complex, high-performance decentralized applications without sacrificing decentralization or security and overcome the limitations of general-purpose Layer 1 and Layer 2 blockchains.
By isolating application logic from the base layer, Cartesi Appchains provide a scalable and customizable execution environment that supports familiar programming stacks, such as Linux, and heavy computational workloads that are infeasible onchain.

## Why App-chains?
## Why Appchains?

#### Scalability and Performance

General-purpose blockchains(such as Ethereum) and rollup solutions(like Optimism and Arbitrum) are shared by thousands of applications, which compete for limited blockspace and computational resources. This often leads to network congestion, high gas fees and delayed transaction finality. By contrast, App-Chains are dedicated rollups tailored to a single application, eliminating resource contention and enabling optimized throughput and cost control.
General-purpose blockchains(such as Ethereum) and rollup solutions(like Optimism and Arbitrum) are shared by thousands of applications, which compete for limited blockspace and computational resources. This often leads to network congestion, high gas fees and delayed transaction finality. By contrast, Appchains are dedicated rollups tailored to a single application, eliminating resource contention and enabling optimized throughput and cost control.

![img](./images/app-chains-vs-general.png)

#### Application-Level Customization

Different dApps may have very different requirements for throughput, finality, State size and history and interactivity with users or other chains. With Cartesi App-Chains, developers have the freedom to define custom data availability strategies, use application-specific finality mechanisms, pick a consensus model and choose execution logic and libraries that best fit their needs.
Different apps may have very different requirements for throughput, finality, State size and history and interactivity with users or other chains. With Cartesi Appchains, developers have the freedom to define custom data availability strategies, use application-specific finality mechanisms, pick a consensus model and choose execution logic and libraries that best fit their needs.

## Composability and Interoperability

Cartesi App-Chains can interoperate with the Ethereum ecosystem and other chains, albeit with some constraints. Each app-chain is logically isolated but can use the base layer contracts(rollups-contracts) to share messages. Messaging across app-chains or between an app-chain and another dApp (like an L1 Uniswap pool) may require developers to build custom bridges or relayers.
Cartesi Appchains can interoperate with the Ethereum ecosystem and other chains, albeit with some constraints. Each appchain is logically isolated but can use the base layer contracts(rollups-contracts) to share messages. Messaging across appchains or between an appchain and another dApp (like an L1 Uniswap pool) may require developers to build custom bridges or relayers.

## Bridging Assets

Migrating assets from the base layer(Layer 1 or Layer 2) requires the user to interact with the pre-deployed Portal smart contracts of the rollups infrastructure. For the security and consistency across the app-chain, it becomes necessary for the application developers to only accept assets received from the portal contracts.
Migrating assets from the base layer(Layer 1 or Layer 2) requires the user to interact with the pre-deployed Portal smart contracts of the rollups infrastructure. For the security and consistency across the appchain, it becomes necessary for the application developers to only accept assets received from the portal contracts.

For instance, to **deposit assets**, the client makes a request to a dedicated portal smart contract. The portal contract then submits this request to the generic input contract of the rollups, which is then finally read by the node. This gives a representation of your assets on the app-chain.
For instance, to **deposit assets**, the client makes a request to a dedicated portal smart contract. The portal contract then submits this request to the generic input contract of the rollups, which is then finally read by the node. This gives a representation of your assets on the appchain.

**Withdrawal of assets**, on the other hand, works when the application creates a special kind of output called *voucher*. As discussed in the prior optimistic rollups section, this output must be validated before its execution. Note that while deposits are near instant, withdrawals can take time(dependent on epoch duration) before a user sees it in their base layer wallet.

## Application Deployment

Cartesi App-Chains are designed to be EVM-compatible, meaning they can seamlessly integrate with the Ethereum ecosystem and smart contract infrastructure. This allows Cartesi’s on-chain components - the rollups contracts - to be deployed across any EVM-compatible chain.
Cartesi Appchains are designed to be EVM-compatible, meaning they can seamlessly integrate with the Ethereum ecosystem and smart contract infrastructure. This allows Cartesi’s on-chain components - the rollups contracts - to be deployed across any EVM-compatible chain.

<div className="responsive-image">

Expand All @@ -45,9 +45,9 @@ Cartesi App-Chains are designed to be EVM-compatible, meaning they can seamlessl
</div>


Cartesi App-Chains can be deployed on:
Cartesi Appchains can be deployed on:
- Layer 1 (Ethereum): For maximum security and decentralization, especially for apps handling high-value assets.

- Layer 2 Rollups (e.g., Optimism, Arbitrum, Base): For reduced gas costs and faster transaction finality while retaining strong security guarantees.

This gives developers flexibility to optimize for cost, performance, and user reach depending on the application's needs. You can start building your app-chain in minutes with the quickstart guide [here](/get-started/quickstart/).
This gives developers flexibility to optimize for cost, performance, and user reach depending on the application's needs. You can start building your appchain in minutes with the quickstart guide [here](/get-started/quickstart/).
Binary file modified get-started/images/app-chains-vs-general.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion sidebarsGetStarted.js
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ module.exports = {
{
type: 'doc',
id: 'app-chains',
label: 'App-Chains',
label: 'Appchains',
},
],
},
Expand Down