mirror of
https://github.com/logos-blockchain/lssa.git
synced 2026-01-02 21:33:09 +00:00
fix: refactor 1
This commit is contained in:
parent
46361868ed
commit
8e4956891c
41
Cargo.lock
generated
41
Cargo.lock
generated
@ -8,6 +8,7 @@ version = "0.1.0"
|
||||
dependencies = [
|
||||
"aes-gcm",
|
||||
"anyhow",
|
||||
"common",
|
||||
"elliptic-curve",
|
||||
"env_logger",
|
||||
"hex",
|
||||
@ -17,7 +18,6 @@ dependencies = [
|
||||
"serde",
|
||||
"serde_json",
|
||||
"sha2 0.10.8",
|
||||
"storage",
|
||||
"utxo",
|
||||
]
|
||||
|
||||
@ -1078,12 +1078,17 @@ name = "common"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"elliptic-curve",
|
||||
"hex",
|
||||
"log",
|
||||
"monotree",
|
||||
"reqwest 0.11.27",
|
||||
"risc0-zkvm",
|
||||
"rpc_primitives",
|
||||
"rs_merkle",
|
||||
"secp256k1-zkp",
|
||||
"serde",
|
||||
"serde_json",
|
||||
"sha2 0.10.8",
|
||||
"thiserror 1.0.69",
|
||||
]
|
||||
|
||||
@ -1150,6 +1155,7 @@ name = "core_primitives"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"common",
|
||||
"elliptic-curve",
|
||||
"env_logger",
|
||||
"log",
|
||||
@ -3110,7 +3116,6 @@ dependencies = [
|
||||
"rand 0.8.5",
|
||||
"reqwest 0.11.27",
|
||||
"risc0-zkvm",
|
||||
"rpc_primitives",
|
||||
"sc_core",
|
||||
"secp256k1-zkp",
|
||||
"serde",
|
||||
@ -3141,7 +3146,6 @@ dependencies = [
|
||||
"log",
|
||||
"networking",
|
||||
"node_core",
|
||||
"rpc_primitives",
|
||||
"serde",
|
||||
"serde_json",
|
||||
"storage",
|
||||
@ -3160,13 +3164,13 @@ dependencies = [
|
||||
"actix-web",
|
||||
"anyhow",
|
||||
"clap",
|
||||
"common",
|
||||
"consensus",
|
||||
"env_logger",
|
||||
"log",
|
||||
"networking",
|
||||
"node_core",
|
||||
"node_rpc",
|
||||
"rpc_primitives",
|
||||
"serde",
|
||||
"serde_json",
|
||||
"storage",
|
||||
@ -4368,19 +4372,6 @@ dependencies = [
|
||||
"librocksdb-sys",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "rpc_primitives"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"env_logger",
|
||||
"log",
|
||||
"sequencer_core",
|
||||
"serde",
|
||||
"serde_json",
|
||||
"storage",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "rrs-lib"
|
||||
version = "0.1.0"
|
||||
@ -4680,6 +4671,7 @@ version = "0.1.0"
|
||||
dependencies = [
|
||||
"accounts",
|
||||
"anyhow",
|
||||
"common",
|
||||
"elliptic-curve",
|
||||
"env_logger",
|
||||
"k256",
|
||||
@ -4700,6 +4692,7 @@ dependencies = [
|
||||
"actix-cors",
|
||||
"actix-web",
|
||||
"anyhow",
|
||||
"common",
|
||||
"consensus",
|
||||
"env_logger",
|
||||
"futures",
|
||||
@ -4707,7 +4700,6 @@ dependencies = [
|
||||
"log",
|
||||
"mempool",
|
||||
"networking",
|
||||
"rpc_primitives",
|
||||
"sequencer_core",
|
||||
"serde",
|
||||
"serde_json",
|
||||
@ -4723,12 +4715,12 @@ dependencies = [
|
||||
"actix-web",
|
||||
"anyhow",
|
||||
"clap",
|
||||
"common",
|
||||
"consensus",
|
||||
"env_logger",
|
||||
"log",
|
||||
"mempool",
|
||||
"networking",
|
||||
"rpc_primitives",
|
||||
"sequencer_core",
|
||||
"sequencer_rpc",
|
||||
"serde",
|
||||
@ -4969,18 +4961,14 @@ name = "storage"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"elliptic-curve",
|
||||
"common",
|
||||
"env_logger",
|
||||
"hex",
|
||||
"log",
|
||||
"lru",
|
||||
"monotree",
|
||||
"rocksdb",
|
||||
"rs_merkle",
|
||||
"secp256k1-zkp",
|
||||
"serde",
|
||||
"serde_json",
|
||||
"sha2 0.10.8",
|
||||
"thiserror 1.0.69",
|
||||
]
|
||||
|
||||
@ -5522,6 +5510,7 @@ name = "utxo"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"common",
|
||||
"env_logger",
|
||||
"hex",
|
||||
"log",
|
||||
@ -5529,7 +5518,6 @@ dependencies = [
|
||||
"serde",
|
||||
"serde_json",
|
||||
"sha2 0.10.8",
|
||||
"storage",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@ -6238,7 +6226,6 @@ dependencies = [
|
||||
"risc0-zkvm",
|
||||
"serde",
|
||||
"serde_json",
|
||||
"storage",
|
||||
"test-methods",
|
||||
"thiserror 1.0.69",
|
||||
"utxo",
|
||||
|
||||
@ -15,7 +15,6 @@ members = [
|
||||
"zkvm",
|
||||
"node_core",
|
||||
"sequencer_core",
|
||||
"rpc_primitives",
|
||||
"common",
|
||||
"sc_core",
|
||||
"core_primitives",
|
||||
|
||||
@ -16,8 +16,8 @@ elliptic-curve.workspace = true
|
||||
hex.workspace = true
|
||||
aes-gcm.workspace = true
|
||||
|
||||
[dependencies.storage]
|
||||
path = "../storage"
|
||||
|
||||
[dependencies.utxo]
|
||||
path = "../utxo"
|
||||
|
||||
[dependencies.common]
|
||||
path = "../common"
|
||||
|
||||
@ -1,10 +1,10 @@
|
||||
use std::collections::HashMap;
|
||||
|
||||
use anyhow::Result;
|
||||
use common::{merkle_tree_public::TreeHashType, nullifier::UTXONullifier, transaction::Tag};
|
||||
use k256::AffinePoint;
|
||||
use log::info;
|
||||
use serde::Serialize;
|
||||
use storage::{merkle_tree_public::TreeHashType, nullifier::UTXONullifier, transaction::Tag};
|
||||
use utxo::{
|
||||
utxo_core::{UTXOPayload, UTXO},
|
||||
utxo_tree::UTXOSparseMerkleTree,
|
||||
|
||||
@ -1,10 +1,10 @@
|
||||
use aes_gcm::{aead::Aead, Aes256Gcm, Key, KeyInit};
|
||||
use common::merkle_tree_public::TreeHashType;
|
||||
use constants_types::{CipherText, Nonce};
|
||||
use ephemeral_key_holder::EphemeralKeyHolder;
|
||||
use k256::AffinePoint;
|
||||
use log::info;
|
||||
use secret_holders::{SeedHolder, TopSecretKeyHolder, UTXOSecretKeyHolder};
|
||||
use storage::merkle_tree_public::TreeHashType;
|
||||
|
||||
use crate::account_core::PublicKey;
|
||||
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
use common::merkle_tree_public::TreeHashType;
|
||||
use elliptic_curve::PrimeField;
|
||||
use k256::{AffinePoint, FieldBytes, Scalar};
|
||||
use rand::{rngs::OsRng, RngCore};
|
||||
use sha2::{digest::FixedOutput, Digest};
|
||||
use storage::merkle_tree_public::TreeHashType;
|
||||
|
||||
use super::constants_types::{NULLIFIER_SECRET_CONST, VIEVING_SECRET_CONST};
|
||||
|
||||
|
||||
@ -12,5 +12,12 @@ reqwest.workspace = true
|
||||
monotree.workspace = true
|
||||
risc0-zkvm = { git = "https://github.com/risc0/risc0.git", branch = "release-2.0" }
|
||||
|
||||
[dependencies.rpc_primitives]
|
||||
path = "../rpc_primitives"
|
||||
rs_merkle.workspace = true
|
||||
sha2.workspace = true
|
||||
log.workspace = true
|
||||
elliptic-curve.workspace = true
|
||||
hex.workspace = true
|
||||
|
||||
[dependencies.secp256k1-zkp]
|
||||
workspace = true
|
||||
features = ["std", "rand-std", "rand", "serde", "global-context"]
|
||||
|
||||
@ -1,6 +1,21 @@
|
||||
use rpc_primitives::errors::RpcError;
|
||||
use merkle_tree_public::TreeHashType;
|
||||
use serde::Deserialize;
|
||||
|
||||
pub mod block;
|
||||
pub mod commitment;
|
||||
pub mod commitments_sparse_merkle_tree;
|
||||
pub mod merkle_tree_public;
|
||||
pub mod nullifier;
|
||||
pub mod nullifier_sparse_merkle_tree;
|
||||
pub mod rpc_primitives;
|
||||
pub mod transaction;
|
||||
pub mod utxo_commitment;
|
||||
|
||||
use rpc_primitives::errors::RpcError;
|
||||
|
||||
///Account id on blockchain
|
||||
pub type AccountId = TreeHashType;
|
||||
|
||||
#[derive(Debug, Clone, Deserialize)]
|
||||
pub struct SequencerRpcError {
|
||||
pub jsonrpc: String,
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
use serde::de::DeserializeOwned;
|
||||
use serde_json::Value;
|
||||
|
||||
use crate::errors::RpcParseError;
|
||||
use super::errors::RpcParseError;
|
||||
|
||||
pub trait RpcRequest: Sized {
|
||||
fn parse(value: Option<Value>) -> Result<Self, RpcParseError>;
|
||||
@ -1,11 +1,12 @@
|
||||
use crate::errors::RpcParseError;
|
||||
use crate::block::Block;
|
||||
use crate::parse_request;
|
||||
use crate::parser::parse_params;
|
||||
use crate::parser::RpcRequest;
|
||||
use sequencer_core::transaction_mempool::TransactionMempool;
|
||||
use crate::transaction::Transaction;
|
||||
|
||||
use super::errors::RpcParseError;
|
||||
use super::parser::parse_params;
|
||||
use super::parser::RpcRequest;
|
||||
use serde::{Deserialize, Serialize};
|
||||
use serde_json::Value;
|
||||
use storage::block::Block;
|
||||
|
||||
#[derive(Serialize, Deserialize, Debug)]
|
||||
pub struct HelloRequest {}
|
||||
@ -19,7 +20,7 @@ pub struct RegisterAccountRequest {
|
||||
|
||||
#[derive(Serialize, Deserialize, Debug)]
|
||||
pub struct SendTxRequest {
|
||||
pub transaction: TransactionMempool,
|
||||
pub transaction: Transaction,
|
||||
///Nullifier Root, UTXO Commitment Root, Pub Tx Root
|
||||
pub tx_roots: [[u8; 32]; 3],
|
||||
}
|
||||
@ -22,3 +22,6 @@ path = "../storage"
|
||||
|
||||
[dependencies.sequencer_core]
|
||||
path = "../sequencer_core"
|
||||
|
||||
[dependencies.common]
|
||||
path = "../common"
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
use common::{merkle_tree_public::TreeHashType, nullifier::UTXONullifier, AccountId};
|
||||
use serde::{Deserialize, Serialize};
|
||||
use storage::{merkle_tree_public::TreeHashType, nullifier::UTXONullifier, AccountId};
|
||||
|
||||
///Raw asset data
|
||||
pub type Asset = Vec<u8>;
|
||||
|
||||
@ -38,9 +38,6 @@ path = "../utxo"
|
||||
[dependencies.zkvm]
|
||||
path = "../zkvm"
|
||||
|
||||
[dependencies.rpc_primitives]
|
||||
path = "../rpc_primitives"
|
||||
|
||||
[dependencies.common]
|
||||
path = "../common"
|
||||
|
||||
|
||||
@ -1,14 +1,14 @@
|
||||
use bincode;
|
||||
use common::{
|
||||
commitment::Commitment, commitments_sparse_merkle_tree::CommitmentsSparseMerkleTree,
|
||||
nullifier::UTXONullifier, nullifier_sparse_merkle_tree::NullifierSparseMerkleTree,
|
||||
};
|
||||
use k256::Scalar;
|
||||
use monotree::hasher::Blake3;
|
||||
use monotree::{Hasher, Monotree};
|
||||
use rand::thread_rng;
|
||||
use secp256k1_zkp::{CommitmentSecrets, Generator, PedersenCommitment, Tag, Tweak, SECP256K1};
|
||||
use sha2::{Digest, Sha256};
|
||||
use storage::{
|
||||
commitment::Commitment, commitments_sparse_merkle_tree::CommitmentsSparseMerkleTree,
|
||||
nullifier::UTXONullifier, nullifier_sparse_merkle_tree::NullifierSparseMerkleTree,
|
||||
};
|
||||
use utxo::utxo_core::UTXO;
|
||||
|
||||
#[allow(unused)]
|
||||
|
||||
@ -1,12 +1,12 @@
|
||||
use bincode;
|
||||
use common::{
|
||||
commitment::Commitment, commitments_sparse_merkle_tree::CommitmentsSparseMerkleTree,
|
||||
nullifier::UTXONullifier, nullifier_sparse_merkle_tree::NullifierSparseMerkleTree,
|
||||
};
|
||||
use k256::Scalar;
|
||||
use monotree::hasher::Blake3;
|
||||
use monotree::{Hasher, Monotree};
|
||||
use sha2::{Digest, Sha256};
|
||||
use storage::{
|
||||
commitment::Commitment, commitments_sparse_merkle_tree::CommitmentsSparseMerkleTree,
|
||||
nullifier::UTXONullifier, nullifier_sparse_merkle_tree::NullifierSparseMerkleTree,
|
||||
};
|
||||
use utxo::utxo_core::UTXO;
|
||||
|
||||
fn hash(input: &[u8]) -> Vec<u8> {
|
||||
|
||||
@ -1,14 +1,14 @@
|
||||
use bincode;
|
||||
use common::{
|
||||
commitment::Commitment, commitments_sparse_merkle_tree::CommitmentsSparseMerkleTree,
|
||||
nullifier::UTXONullifier, nullifier_sparse_merkle_tree::NullifierSparseMerkleTree,
|
||||
};
|
||||
use k256::Scalar;
|
||||
use monotree::hasher::Blake3;
|
||||
use monotree::{Hasher, Monotree};
|
||||
use rand::thread_rng;
|
||||
use secp256k1_zkp::{CommitmentSecrets, Generator, PedersenCommitment, Tag, Tweak, SECP256K1};
|
||||
use sha2::{Digest, Sha256};
|
||||
use storage::{
|
||||
commitment::Commitment, commitments_sparse_merkle_tree::CommitmentsSparseMerkleTree,
|
||||
nullifier::UTXONullifier, nullifier_sparse_merkle_tree::NullifierSparseMerkleTree,
|
||||
};
|
||||
use utxo::utxo_core::UTXO;
|
||||
|
||||
#[allow(unused)]
|
||||
|
||||
@ -5,9 +5,9 @@ use std::sync::{
|
||||
|
||||
use common::ExecutionFailureKind;
|
||||
|
||||
use ::storage::transaction::{Transaction, TransactionPayload, TxKind};
|
||||
use accounts::account_core::{Account, AccountAddress};
|
||||
use anyhow::Result;
|
||||
use common::transaction::{Transaction, TransactionPayload, TxKind};
|
||||
use config::NodeConfig;
|
||||
use executions::private_exec::{generate_commitments, generate_nullifiers};
|
||||
use log::info;
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
use common::transaction::Transaction;
|
||||
use serde::{Deserialize, Serialize};
|
||||
use storage::transaction::Transaction;
|
||||
|
||||
//Requests
|
||||
|
||||
|
||||
@ -1,15 +1,15 @@
|
||||
use accounts::account_core::Account;
|
||||
use anyhow::Result;
|
||||
use common::rpc_primitives::requests::{
|
||||
GetBlockDataRequest, GetBlockDataResponse, GetGenesisIdRequest, GetGenesisIdResponse,
|
||||
RegisterAccountRequest, RegisterAccountResponse,
|
||||
};
|
||||
use common::transaction::Transaction;
|
||||
use common::{SequencerClientError, SequencerRpcError};
|
||||
use json::{SendTxRequest, SendTxResponse, SequencerRpcRequest, SequencerRpcResponse};
|
||||
use k256::elliptic_curve::group::GroupEncoding;
|
||||
use reqwest::Client;
|
||||
use rpc_primitives::requests::{
|
||||
GetBlockDataRequest, GetBlockDataResponse, GetGenesisIdRequest, GetGenesisIdResponse,
|
||||
RegisterAccountRequest, RegisterAccountResponse,
|
||||
};
|
||||
use serde_json::Value;
|
||||
use storage::transaction::Transaction;
|
||||
|
||||
use crate::config::NodeConfig;
|
||||
|
||||
|
||||
@ -1,8 +1,9 @@
|
||||
use std::path::Path;
|
||||
|
||||
use anyhow::{anyhow, Result};
|
||||
use common::block::Block;
|
||||
use storage::sc_db_utils::DataBlob;
|
||||
use storage::{block::Block, RocksDBIO};
|
||||
use storage::RocksDBIO;
|
||||
|
||||
pub struct NodeBlockStore {
|
||||
dbio: RocksDBIO,
|
||||
@ -51,7 +52,7 @@ impl NodeBlockStore {
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use super::*;
|
||||
use storage::block::{Block, Data};
|
||||
use common::block::Data;
|
||||
use tempfile::tempdir;
|
||||
|
||||
fn create_genesis_block() -> Block {
|
||||
|
||||
@ -6,15 +6,15 @@ use std::{
|
||||
use accounts::account_core::{Account, AccountAddress};
|
||||
use anyhow::Result;
|
||||
use block_store::NodeBlockStore;
|
||||
use k256::AffinePoint;
|
||||
use public_context::PublicSCContext;
|
||||
use storage::{
|
||||
use common::{
|
||||
block::Block,
|
||||
merkle_tree_public::merkle_tree::{PublicTransactionMerkleTree, UTXOCommitmentsMerkleTree},
|
||||
nullifier::UTXONullifier,
|
||||
nullifier_sparse_merkle_tree::NullifierSparseMerkleTree,
|
||||
utxo_commitment::UTXOCommitment,
|
||||
};
|
||||
use k256::AffinePoint;
|
||||
use public_context::PublicSCContext;
|
||||
use utxo::utxo_core::UTXO;
|
||||
|
||||
use crate::ActionData;
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
use std::collections::BTreeMap;
|
||||
|
||||
use accounts::account_core::{AccountAddress, AccountPublicMask};
|
||||
use common::merkle_tree_public::TreeHashType;
|
||||
use serde::{ser::SerializeStruct, Serialize};
|
||||
use storage::merkle_tree_public::TreeHashType;
|
||||
|
||||
///Strucutre, representing context, given to a smart contract on a call
|
||||
pub struct PublicSCContext {
|
||||
|
||||
@ -41,8 +41,5 @@ path = "../zkvm"
|
||||
[dependencies.node_core]
|
||||
path = "../node_core"
|
||||
|
||||
[dependencies.rpc_primitives]
|
||||
path = "../rpc_primitives"
|
||||
|
||||
[dependencies.common]
|
||||
path = "../common"
|
||||
|
||||
@ -4,11 +4,11 @@ pub mod types;
|
||||
|
||||
use std::sync::Arc;
|
||||
|
||||
use node_core::{config::NodeConfig, NodeCore};
|
||||
use rpc_primitives::{
|
||||
use common::rpc_primitives::{
|
||||
errors::{RpcError, RpcErrorKind},
|
||||
RpcPollingConfig,
|
||||
};
|
||||
use node_core::{config::NodeConfig, NodeCore};
|
||||
use serde::Serialize;
|
||||
use serde_json::Value;
|
||||
|
||||
|
||||
@ -7,10 +7,10 @@ use futures::Future;
|
||||
use futures::FutureExt;
|
||||
use log::info;
|
||||
|
||||
use common::rpc_primitives::message::Message;
|
||||
use common::rpc_primitives::RpcConfig;
|
||||
use node_core::config::NodeConfig;
|
||||
use node_core::NodeCore;
|
||||
use rpc_primitives::message::Message;
|
||||
use rpc_primitives::RpcConfig;
|
||||
use tokio::sync::Mutex;
|
||||
|
||||
use super::JsonHandler;
|
||||
|
||||
@ -4,14 +4,14 @@ use actix_web::Error as HttpError;
|
||||
use node_core::generate_commitments_helper;
|
||||
use serde_json::Value;
|
||||
|
||||
use rpc_primitives::{
|
||||
use common::rpc_primitives::{
|
||||
errors::RpcError,
|
||||
message::{Message, Request},
|
||||
parser::RpcRequest,
|
||||
};
|
||||
use storage::transaction::ActionData;
|
||||
use common::transaction::ActionData;
|
||||
|
||||
use rpc_primitives::requests::{
|
||||
use common::rpc_primitives::requests::{
|
||||
GetBlockDataRequest, GetBlockDataResponse, GetLastBlockRequest, GetLastBlockResponse,
|
||||
RegisterAccountRequest, RegisterAccountResponse,
|
||||
};
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
use common::{ExecutionFailureKind, SequencerClientError};
|
||||
use log::debug;
|
||||
|
||||
use rpc_primitives::errors::{RpcError, RpcParseError};
|
||||
use common::rpc_primitives::errors::{RpcError, RpcParseError};
|
||||
|
||||
pub struct RpcErr(pub RpcError);
|
||||
|
||||
|
||||
@ -1,10 +1,10 @@
|
||||
use rpc_primitives::errors::RpcParseError;
|
||||
use rpc_primitives::parse_request;
|
||||
use rpc_primitives::parser::parse_params;
|
||||
use rpc_primitives::parser::RpcRequest;
|
||||
use common::parse_request;
|
||||
use common::rpc_primitives::errors::RpcParseError;
|
||||
use common::rpc_primitives::parser::parse_params;
|
||||
use common::rpc_primitives::parser::RpcRequest;
|
||||
use common::transaction::TxKind;
|
||||
use serde::{Deserialize, Serialize};
|
||||
use serde_json::Value;
|
||||
use storage::transaction::TxKind;
|
||||
|
||||
#[derive(Serialize, Deserialize, Debug)]
|
||||
pub struct ExecuteSubscenarioRequest {
|
||||
|
||||
@ -45,5 +45,5 @@ path = "../node_rpc"
|
||||
[dependencies.node_core]
|
||||
path = "../node_core"
|
||||
|
||||
[dependencies.rpc_primitives]
|
||||
path = "../rpc_primitives"
|
||||
[dependencies.common]
|
||||
path = "../common"
|
||||
|
||||
@ -2,12 +2,12 @@ use std::{path::PathBuf, sync::Arc};
|
||||
|
||||
use anyhow::Result;
|
||||
use clap::Parser;
|
||||
use common::rpc_primitives::RpcConfig;
|
||||
use consensus::ConsensusManager;
|
||||
use log::info;
|
||||
use networking::peer_manager::PeerManager;
|
||||
use node_core::NodeCore;
|
||||
use node_rpc::new_http_server;
|
||||
use rpc_primitives::RpcConfig;
|
||||
use tokio::sync::Mutex;
|
||||
|
||||
pub mod config;
|
||||
|
||||
@ -1,17 +0,0 @@
|
||||
[package]
|
||||
name = "rpc_primitives"
|
||||
version = "0.1.0"
|
||||
edition = "2021"
|
||||
|
||||
[dependencies]
|
||||
anyhow.workspace = true
|
||||
serde_json.workspace = true
|
||||
env_logger.workspace = true
|
||||
log.workspace = true
|
||||
serde.workspace = true
|
||||
|
||||
[dependencies.storage]
|
||||
path = "../storage"
|
||||
|
||||
[dependencies.sequencer_core]
|
||||
path = "../sequencer_core"
|
||||
@ -1,14 +1,14 @@
|
||||
use bincode;
|
||||
use common::{
|
||||
commitment::Commitment, commitments_sparse_merkle_tree::CommitmentsSparseMerkleTree,
|
||||
nullifier::UTXONullifier, nullifier_sparse_merkle_tree::NullifierSparseMerkleTree,
|
||||
};
|
||||
use k256::Scalar;
|
||||
use monotree::hasher::Blake3;
|
||||
use monotree::{Hasher, Monotree};
|
||||
use rand::{thread_rng, RngCore};
|
||||
use secp256k1_zkp::{CommitmentSecrets, Generator, PedersenCommitment, Tag, Tweak, SECP256K1};
|
||||
use sha2::{Digest, Sha256};
|
||||
use storage::{
|
||||
commitment::Commitment, commitments_sparse_merkle_tree::CommitmentsSparseMerkleTree,
|
||||
nullifier::UTXONullifier, nullifier_sparse_merkle_tree::NullifierSparseMerkleTree,
|
||||
};
|
||||
use utxo::utxo_core::UTXO;
|
||||
|
||||
fn hash(input: &[u8]) -> Vec<u8> {
|
||||
|
||||
@ -1,9 +1,9 @@
|
||||
use accounts::account_core::Account;
|
||||
use anyhow::Result;
|
||||
use common::transaction::{TransactionPayload, TxKind};
|
||||
use rand::thread_rng;
|
||||
use risc0_zkvm::Receipt;
|
||||
use secp256k1_zkp::{CommitmentSecrets, PedersenCommitment, Tweak};
|
||||
use storage::transaction::{TransactionPayload, TxKind};
|
||||
use utxo::utxo_core::UTXO;
|
||||
|
||||
use crate::proofs_circuits::{commit, generate_nullifiers, tag_random};
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
use anyhow::Result;
|
||||
use storage::nullifier::UTXONullifier;
|
||||
use common::nullifier::UTXONullifier;
|
||||
use utxo::utxo_core::{UTXOPayload, UTXO};
|
||||
|
||||
pub fn utxo_change_owner(
|
||||
|
||||
@ -22,6 +22,9 @@ path = "../mempool"
|
||||
[dependencies.accounts]
|
||||
path = "../accounts"
|
||||
|
||||
[dependencies.common]
|
||||
path = "../common"
|
||||
|
||||
[dependencies.secp256k1-zkp]
|
||||
workspace = true
|
||||
features = ["std", "rand-std", "rand", "serde", "global-context"]
|
||||
|
||||
@ -1,21 +1,21 @@
|
||||
use std::fmt::Display;
|
||||
|
||||
use anyhow::Result;
|
||||
use config::SequencerConfig;
|
||||
use mempool::MemPool;
|
||||
use sequecer_store::{accounts_store::AccountPublicData, SequecerChainStore};
|
||||
use serde::{Deserialize, Serialize};
|
||||
use storage::{
|
||||
use common::{
|
||||
block::{Block, HashableBlockData},
|
||||
merkle_tree_public::TreeHashType,
|
||||
nullifier::UTXONullifier,
|
||||
transaction::{Transaction, TxKind},
|
||||
utxo_commitment::UTXOCommitment,
|
||||
};
|
||||
use config::SequencerConfig;
|
||||
use mempool::MemPool;
|
||||
use sequencer_store::{accounts_store::AccountPublicData, SequecerChainStore};
|
||||
use serde::{Deserialize, Serialize};
|
||||
use transaction_mempool::TransactionMempool;
|
||||
|
||||
pub mod config;
|
||||
pub mod sequecer_store;
|
||||
pub mod sequencer_store;
|
||||
pub mod transaction_mempool;
|
||||
|
||||
pub struct SequencerCore {
|
||||
@ -262,9 +262,9 @@ mod tests {
|
||||
use super::*;
|
||||
use std::{fmt::format, path::PathBuf};
|
||||
|
||||
use common::transaction::{Transaction, TxKind};
|
||||
use rand::Rng;
|
||||
use secp256k1_zkp::Tweak;
|
||||
use storage::transaction::{Transaction, TxKind};
|
||||
use transaction_mempool::TransactionMempool;
|
||||
|
||||
fn setup_sequencer_config() -> SequencerConfig {
|
||||
|
||||
@ -1,7 +1,8 @@
|
||||
use std::path::Path;
|
||||
|
||||
use anyhow::Result;
|
||||
use storage::{block::Block, RocksDBIO};
|
||||
use common::block::Block;
|
||||
use storage::RocksDBIO;
|
||||
|
||||
pub struct SequecerBlockStore {
|
||||
dbio: RocksDBIO,
|
||||
@ -2,12 +2,12 @@ use std::path::Path;
|
||||
|
||||
use accounts_store::SequencerAccountsStore;
|
||||
use block_store::SequecerBlockStore;
|
||||
use rand::{rngs::OsRng, RngCore};
|
||||
use storage::{
|
||||
use common::{
|
||||
block::{Block, HashableBlockData},
|
||||
merkle_tree_public::merkle_tree::{PublicTransactionMerkleTree, UTXOCommitmentsMerkleTree},
|
||||
nullifier_sparse_merkle_tree::NullifierSparseMerkleTree,
|
||||
};
|
||||
use rand::{rngs::OsRng, RngCore};
|
||||
|
||||
pub mod accounts_store;
|
||||
pub mod block_store;
|
||||
@ -1,12 +1,18 @@
|
||||
use common::{merkle_tree_public::TreeHashType, transaction::Transaction};
|
||||
use mempool::mempoolitem::MemPoolItem;
|
||||
use serde::{Deserialize, Serialize};
|
||||
use storage::{merkle_tree_public::TreeHashType, transaction::Transaction};
|
||||
|
||||
#[derive(Debug, Clone)]
|
||||
pub struct TransactionMempool {
|
||||
pub tx: Transaction,
|
||||
}
|
||||
|
||||
impl From<Transaction> for TransactionMempool {
|
||||
fn from(value: Transaction) -> Self {
|
||||
Self { tx: value }
|
||||
}
|
||||
}
|
||||
|
||||
impl Serialize for TransactionMempool {
|
||||
fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
|
||||
where
|
||||
|
||||
@ -32,5 +32,5 @@ path = "../sequencer_core"
|
||||
[dependencies.storage]
|
||||
path = "../storage"
|
||||
|
||||
[dependencies.rpc_primitives]
|
||||
path = "../rpc_primitives"
|
||||
[dependencies.common]
|
||||
path = "../common"
|
||||
|
||||
@ -4,7 +4,7 @@ pub mod types;
|
||||
|
||||
use std::sync::Arc;
|
||||
|
||||
use rpc_primitives::{
|
||||
use common::rpc_primitives::{
|
||||
errors::{RpcError, RpcErrorKind},
|
||||
RpcPollingConfig,
|
||||
};
|
||||
|
||||
@ -7,8 +7,8 @@ use futures::Future;
|
||||
use futures::FutureExt;
|
||||
use log::info;
|
||||
|
||||
use rpc_primitives::message::Message;
|
||||
use rpc_primitives::RpcConfig;
|
||||
use common::rpc_primitives::message::Message;
|
||||
use common::rpc_primitives::RpcConfig;
|
||||
use sequencer_core::SequencerCore;
|
||||
use tokio::sync::Mutex;
|
||||
|
||||
|
||||
@ -1,14 +1,14 @@
|
||||
use actix_web::Error as HttpError;
|
||||
use sequencer_core::sequecer_store::accounts_store::AccountPublicData;
|
||||
use sequencer_core::sequencer_store::accounts_store::AccountPublicData;
|
||||
use serde_json::Value;
|
||||
|
||||
use rpc_primitives::{
|
||||
use common::rpc_primitives::{
|
||||
errors::RpcError,
|
||||
message::{Message, Request},
|
||||
parser::RpcRequest,
|
||||
};
|
||||
|
||||
use rpc_primitives::requests::{
|
||||
use common::rpc_primitives::requests::{
|
||||
GetBlockDataRequest, GetBlockDataResponse, GetGenesisIdRequest, GetGenesisIdResponse,
|
||||
GetLastBlockRequest, GetLastBlockResponse, HelloRequest, HelloResponse, RegisterAccountRequest,
|
||||
RegisterAccountResponse, SendTxRequest, SendTxResponse,
|
||||
@ -70,7 +70,10 @@ impl JsonHandler {
|
||||
{
|
||||
let mut state = self.sequencer_state.lock().await;
|
||||
|
||||
state.push_tx_into_mempool_pre_check(send_tx_req.transaction, send_tx_req.tx_roots)?;
|
||||
state.push_tx_into_mempool_pre_check(
|
||||
send_tx_req.transaction.into(),
|
||||
send_tx_req.tx_roots,
|
||||
)?;
|
||||
}
|
||||
|
||||
let helperstruct = SendTxResponse {
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
use log::debug;
|
||||
|
||||
use rpc_primitives::errors::{RpcError, RpcParseError};
|
||||
use common::rpc_primitives::errors::{RpcError, RpcParseError};
|
||||
use sequencer_core::TransactionMalformationErrorKind;
|
||||
|
||||
pub struct RpcErr(pub RpcError);
|
||||
|
||||
@ -34,5 +34,5 @@ path = "../sequencer_rpc"
|
||||
[dependencies.sequencer_core]
|
||||
path = "../sequencer_core"
|
||||
|
||||
[dependencies.rpc_primitives]
|
||||
path = "../rpc_primitives"
|
||||
[dependencies.common]
|
||||
path = "../common"
|
||||
|
||||
@ -2,8 +2,8 @@ use std::{path::PathBuf, sync::Arc};
|
||||
|
||||
use anyhow::Result;
|
||||
use clap::Parser;
|
||||
use common::rpc_primitives::RpcConfig;
|
||||
use log::info;
|
||||
use rpc_primitives::RpcConfig;
|
||||
use sequencer_core::SequencerCore;
|
||||
use sequencer_rpc::new_http_server;
|
||||
use tokio::sync::Mutex;
|
||||
|
||||
@ -11,14 +11,9 @@ log.workspace = true
|
||||
serde.workspace = true
|
||||
lru.workspace = true
|
||||
thiserror.workspace = true
|
||||
elliptic-curve.workspace = true
|
||||
hex.workspace = true
|
||||
|
||||
rocksdb.workspace = true
|
||||
rs_merkle.workspace = true
|
||||
sha2.workspace = true
|
||||
monotree.workspace = true
|
||||
|
||||
[dependencies.secp256k1-zkp]
|
||||
workspace = true
|
||||
features = ["std", "rand-std", "rand", "serde", "global-context"]
|
||||
[dependencies.common]
|
||||
path = "../common"
|
||||
|
||||
@ -1,27 +1,15 @@
|
||||
use std::{path::Path, sync::Arc};
|
||||
|
||||
use block::Block;
|
||||
use common::block::Block;
|
||||
use error::DbError;
|
||||
use log::warn;
|
||||
use merkle_tree_public::TreeHashType;
|
||||
use rocksdb::{
|
||||
BoundColumnFamily, ColumnFamilyDescriptor, DBWithThreadMode, MultiThreaded, Options,
|
||||
};
|
||||
use sc_db_utils::{produce_blob_from_fit_vec, DataBlob, DataBlobChangeVariant};
|
||||
|
||||
pub mod block;
|
||||
pub mod commitment;
|
||||
pub mod commitments_sparse_merkle_tree;
|
||||
pub mod error;
|
||||
pub mod merkle_tree_public;
|
||||
pub mod nullifier;
|
||||
pub mod nullifier_sparse_merkle_tree;
|
||||
pub mod sc_db_utils;
|
||||
pub mod transaction;
|
||||
pub mod utxo_commitment;
|
||||
|
||||
///Account id on blockchain
|
||||
pub type AccountId = TreeHashType;
|
||||
|
||||
///Maximal size of stored blocks in base
|
||||
///
|
||||
|
||||
@ -13,5 +13,5 @@ monotree.workspace = true
|
||||
sha2.workspace = true
|
||||
hex.workspace = true
|
||||
|
||||
[dependencies.storage]
|
||||
path = "../storage"
|
||||
[dependencies.common]
|
||||
path = "../common"
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
use anyhow::Result;
|
||||
use common::{merkle_tree_public::TreeHashType, nullifier::UTXONullifier, AccountId};
|
||||
use log::info;
|
||||
use serde::{Deserialize, Serialize};
|
||||
use sha2::{digest::FixedOutput, Digest};
|
||||
use storage::{merkle_tree_public::TreeHashType, nullifier::UTXONullifier, AccountId};
|
||||
|
||||
///Raw asset data
|
||||
pub type Asset = Vec<u8>;
|
||||
@ -87,7 +87,6 @@ impl UTXO {
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use super::*;
|
||||
use storage::{merkle_tree_public::TreeHashType, nullifier::UTXONullifier, AccountId};
|
||||
|
||||
#[derive(Serialize, Deserialize, PartialEq, Debug)]
|
||||
struct TestAsset {
|
||||
|
||||
@ -1,9 +1,9 @@
|
||||
use std::collections::HashMap;
|
||||
|
||||
use common::merkle_tree_public::TreeHashType;
|
||||
use monotree::database::MemoryDB;
|
||||
use monotree::hasher::Blake3;
|
||||
use monotree::{Hasher, Monotree, Proof};
|
||||
use storage::merkle_tree_public::TreeHashType;
|
||||
|
||||
use crate::utxo_core::UTXO;
|
||||
|
||||
@ -75,9 +75,10 @@ impl Default for UTXOSparseMerkleTree {
|
||||
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use common::AccountId;
|
||||
|
||||
use super::*;
|
||||
use crate::utxo_core::{UTXOPayload, UTXO};
|
||||
use storage::{merkle_tree_public::TreeHashType, AccountId};
|
||||
|
||||
fn sample_utxo_payload() -> UTXOPayload {
|
||||
UTXOPayload {
|
||||
|
||||
@ -17,9 +17,6 @@ test-methods = { path = "test_methods" }
|
||||
[dependencies.accounts]
|
||||
path = "../accounts"
|
||||
|
||||
[dependencies.storage]
|
||||
path = "../storage"
|
||||
|
||||
[dependencies.utxo]
|
||||
path = "../utxo"
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user