# Key Components

<details>

<summary>zk (zero-knowledge)</summary>

Zero-knowledge proof technology can prove the validity of a batch of transactions through succinct proofs, ensuring computational trustworthiness and enabling scalability.

</details>

<details>

<summary>EVM (Ethereum Virtual Machine)</summary>

This is the smart contract execution environment within the Ethereum ecosystem. It empowers Ethereum to execute smart contracts and function as a worldwide computing network, distinguishing it from Bitcoin, which primarily operates as a digital currency and is often likened to a basic calculator. Additionally, EVM gives rise to the different types of zkEVMs, each implementing zero-knowledge proof technology to enhance Ethereum's capabilities.

</details>

<details>

<summary>Rollup</summary>

A rollup is a type of blockchain that offloads some work to a layer 1. Rollups host applications and process user transactions. Once those transactions get processed, they are then published to layer 1. It’s L1’s job to order those transactions and check that they are available. Over time, two primary designs emerged for rollups: optimistic and zk-rollups.

</details>

<details>

<summary>Lower fees</summary>

Ryoshi does not consume expensive gas (i.e., DA to store transaction data off-chain).

</details>

<details>

<summary>ZKP powered scalability</summary>

Ryoshi is not bounded by the amount of transaction data that can be published to Ethereum with ZK-validity proofs.

</details>

<details>

<summary>Ethereum security</summary>

Ryoshi natively inherits the security of Ethereum, securing user funds from malicious operators.

</details>

<details>

<summary>Near-instant finality</summary>

Ryoshi utilizes cryptographic security to ensure the integrity of transactions, achieving near-instant finality and robust security.

</details>

<details>

<summary>Portal to Web3</summary>

Enter the world of Web3 via MetaMask Wallet, built with compact infrastructure modules to create innovative DApps.

</details>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.ryoshiresearch.com/welcome/key-components.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
