美文网首页
Aleo介绍

Aleo介绍

作者: 雪落无留痕 | 来源:发表于2021-06-07 00:57 被阅读0次

Aleo允许构建高效,安全和匿名的应用。

基本概念

账户

账户包括 private key, view keyaddress

private key: 用于授权交易,更新账户记录record的全局状态

proving key: 由私钥派生,可允许其他证明者为用户交易生成证明

view key: 用于解密账户记录record, recordaddress进行加密

address: 用于和他人交互,发送和接收record的应用数据

程序

program 用于表示应用程序的逻辑和状态。Aleo引入一种新的编程语言Leo 用于开发匿名应用。 Leo 是一种静态的,功能型编程语言,用于开发隐私保护的应用。

circuit Point {
    x: u32,
    y: u32,

    function new() -> Self {
        return Self { 
            x: 0, 
            y: 0, 
        };
    }

    function add(self) -> u32 {
        return self.x + self.y;
    }
}

function main() {
    let p = Point::new();
    
    p.x = 4u32;
    p.y = 6u32;

    let sum = p.add();
    
    console.log("The sum is {}", sum);
}

ID: 每个program 有一个ID, 由验证密钥的hash生成;

input: 由用户提供的程序运行的输入,输入为隐私的,除非用户想公开;

state: 应用的状态;

output: 用于表示应用的输出,由零知识证明验证输出的有效性;

程序寄存器: 允许两个program运行时进行交互。

记录

record 用来编码用户资产和应用程序的状态。

每个交易可以消耗一个record, 并生成新的record

record 的结构如下:

  • owner: 拥有者地址;
  • value: 记录的金额;
  • payload: 记录任意应用程序信息;
  • birth program id: 创建record时指定;
  • death program id: 在消耗record时指定。
  • serial number nonce: 当record被花掉时,生成的一个随机数, 用于防止双花;
  • commitment randomness: 生成record commitment

交易

交易的结构如下:

  • old_serial_number: 被花掉的record 的序列号;
  • new_commitments: 新生成的记录的承诺;
  • program_commits: 程序的承诺
  • local data root:对 old records, new records, memorandum, network ID 的承诺
  • value balance: 输入减输出的值,用于计算fee。
  • memorandum: 交易的任意公开的信息
  • networkID: 网络id
  • signatue: 交易的签名
  • Ledger digest:包含所有记录承诺的Merkle 树根
  • Encrypted record: 交易新创建的记录
  • transaction proof : 交易的证明,用于证明交易的有效性

区块

区块的结构如下:

  • header: 区块头,503个字节;
  • num_transactions 交易的个数;
  • transactions: 交易的列表

区块链头header包括如下字段:

  • previous block hash: 前一区块链的hash;
  • Merkle root hash: 所有交易Merkle树的根;
  • Pedersen Merkle root hash: 所有交易的Merkle 树的根,采用pedersen hash计算;
  • proof of succint work: 共识的证明;
  • timestamp: 时间戳
  • Difficult Target: 动态设置挖矿的难度值;
  • Nonce: POSW谜题的解

共识机制

Aleo采用POSW (Proof of Succinct Work ) 共识机制,由一种基于SNARK的POW算法,用于激励开发SNARK加速的硬件。

矿工主要需要计算一个有效的nonce, 解决POSW谜题。

参考

https://aleo.org/post/welcome-to-aleo

https://github.com/AleoHQ/snarkVM

https://github.com/AleoHQ/leo

https://github.com/AleoHQ/zexe

https://github.com/AleoHQ/welcome

https://aleo.pm/

https://developer.aleo.org/aleo/getting_started/overview/

相关文章

  • Aleo介绍

    Aleo允许构建高效,安全和匿名的应用。 基本概念 账户 账户包括 private key, view key ...

  • aleo

    首先把相应的执行文件下载: cd ~git clonehttps://github.com/qsobad/aleo...

  • A16z领投2800万美元Aleo

    美国时间2021年4月20日,Aleo今天宣布已筹集了2800万美元,本轮融资由Andreessen Horowi...

  • Runtime介绍---术语介绍

    1. 什么是Runtime Runtime又叫运行时,是一套C语言的API。 我们平时编写的OC代码,底层都是基于...

  • 介绍

    万物终有一天会消失殆尽,诸神出卖黎明,光明为黑暗所湮灭,日月皆痕,海潮鸣泣,幼雏嚎啕,生灵涂炭。 托里奥世纪第20...

  • 介绍😊

    大家好,我是beth,初入简书,不邀自来,还请各位见谅! 先说说我是怎么想着来的吧?这不是刚过了一个寒假嘛...

  • 介绍

    在这个世界上还有三个家族他们不受各个国家联合国管。但他们身上有着使命分别是帝国家族曲国家族圣国家族。他们隐藏在一个...

  • 介绍

    云轩:主角,星罗帝国的二皇子。从小就不能练气,被人们称为废物。直到12岁的时候,自己的武魂觉醒才能练气,双...

  • 介绍

    万花阁 神秘至极的组织,亦正亦邪。万花阁的人行动隐秘,至今未被发现所在地。听说组成成员均以花来命名。所到之处,皆留...

  • 介绍

    此书命曰元.八洲传。属九洲四传第二部。第一部,上古往事。上古往事乃元八洲传外传。前两部为战胜心魔,而第三部,大梦...

网友评论

      本文标题:Aleo介绍

      本文链接:https://www.haomeiwen.com/subject/kujheltx.html