Skip to content

Latest commit

 

History

History
69 lines (51 loc) · 1.69 KB

File metadata and controls

69 lines (51 loc) · 1.69 KB
title Welcome to Aleo
description Documentation for the Aleo Network — the platform for building private applications.
keywords
aleo
blockchain
privacy
zero-knowledge
documentation
slug /

import ScrollReveal from '@site/src/components/ScrollReveal';

Welcome to Aleo

Aleo is a Layer 1 blockchain that enables developers to build private applications using zero-knowledge proofs.

Getting Started

Declare a new variable in Leo:

let a: address = aleo1rhgdu77hgyqd3xjj8ucu3jj9r2krwz6mnzyd80gncr5fxcwlh5rsvzp9px;

Write your first Leo program and deploy it to the Aleo network:

program hello.aleo {
    transition main(public a: u32, b: u32) -> u32 {
        let c: u32 = a + b;
        return c;
    }
}

Architecture

graph LR
    classDef ivory fill:#121212,stroke:#f5f5f5,color:#f5f5f5
    classDef cloudberry fill:#121212,stroke:#FFE2FC,color:#FFE2FC
    classDef tangerine fill:#121212,stroke:#FFA978,color:#FFA978
    classDef pomelo fill:#121212,stroke:#FFE092,color:#FFE092
    A(User):::ivory --> B(Leo)
    B --> C(Aleo Instructions):::cloudberry
    C --> D(snarkVM):::pomelo
    D --> E(Zero-Knowledge Proof):::tangerine
    E --> F(Aleo Network):::ivory
    F --> A
Loading

Key Concepts

Aleo uses three types of keys:

Key Purpose
Private Key Signs transactions, derives other keys
View Key Decrypts private records and transaction data
Address Public identifier, receives funds and records

Math Support

Zero-knowledge proofs rely on elliptic curve cryptography. A point $P$ on an elliptic curve satisfies:

$$ y^2 = x^3 + ax + b \pmod{p} $$