block.rs - Block Structure
Block Structure Overview
// src/block.rs (lines 4-17)
#[derive(Serialize, Deserialize, Clone, Debug)]
pub struct Block {
pub header: BlockHeader,
pub transactions: Vec<Transaction>,
}
#[derive(Serialize, Deserialize, Clone, Debug)]
pub struct BlockHeader {
pub version: u32,
pub prev_hash: [u8; 32],
pub merkle_root: [u8; 32],
pub timestamp: u64,
pub vdf_output: [u8; 32],
pub difficulty: u32,
pub nonce: u64,
pub tx_count: u32,
pub signature: Vec<u8>,
}Blake3 Cryptographic Hashing
Radio-Optimized Design Features
Compact Binary Serialization
10KB Block Size Limit
Field-by-Field Analysis
Field
Size
Purpose
Radio Considerations
Integration with Mining Process
Serialization and Transmission
JSON Format for HTTP
Binary Format for Radio
Error Detection and Recovery
Cryptographic Integrity
Radio Error Correction
Future Enhancements
Planned Block Structure Extensions
Backward Compatibility
Last updated