Posts

Showing posts with the label Solana

Deep Dive into QUIC: The Transport Protocol Powering Solana's Firedancer

Image
Introduction In our previous article, we explored Solana's revolutionary Firedancer client and its groundbreaking performance characteristics. One of the key architectural decisions that enables Firedancer's exceptional throughput and low latency is its use of the QUIC transport protocol, specifically implemented in what's called the "QUIC tile."  You might say we need to have a quick introduction to QUIC - get it? Because it's literally called QUIC! Yes, that's about as dad-joke-level obvious as it gets. While most blockchain infrastructure relies on traditional TCP connections, Firedancer leverages QUIC's advanced features to achieve the sub-microsecond latencies and massive throughput required for high-frequency trading and institutional-grade blockchain operations. QUIC (pronounced "quick" - not an acronym) represents a fundamental shift in how we approach network transport protocols. Originally developed by Google and now standardized...

Introduction to Solana SPL Token-2022

Image
Hello fellow Solanauts! Today we're diving into the shiny new Token-2022 Solana Program Library (SPL) token standard and what it means for you as a Solana developer using the Anchor framework. Strap in, because this upgrade brings some major benefits and unlocks exciting new possibilities for Solana tokens! But first, let's make sure we're all on the same page by recapping the original SPL token program... Background: The Original SPL Token Program The original SPL token program provided a standard for creating and managing fungible and non-fungible tokens on Solana. It defined a common interface and a set of instructions for minting tokens, transferring them between accounts, setting metadata, and more. Here's a simple example of minting an SPL token using the original program: let mint = Pubkey::new_unique(); let token = Keypair::new(); let token_account = Keypair::new(); let (mint_authority, _) = Pubkey::find_program_address(&[b"mint"], &spl_to...

Why Solana Developers Migrate to Ethereum

Image
For developers building on Solana, the frequent network outages and performance issues over the past year have likely been a source of major frustration. The promise of high speed and low cost that initially attracted many to Solana has not panned out, with the network failing to meet expectations for stability and reliability. In contrast, Ethereum has made huge strides recently in scalability, security, and developer experience that make it an increasingly appealing alternative. It's worth taking a close look at the current state of Ethereum and considering whether migrating your Solana project might be the right move. Enhanced Scalability with Layer 2 Rollups One of the biggest knocks against Ethereum historically was limited throughput and high gas fees on the layer 1 chain. However, the emergence of layer 2 rollup solutions like Optimism, Arbitrum, and zkSync has changed the calculus. These L2s bundle many transactions together and post cryptographic proofs of their validit...

Solana for Ethereum Devs: A Different World of Blockchains

Image
If you're an experienced Ethereum developer looking to explore other ecosystems, Solana is definitely worth checking out. While there are some high-level similarities - they're both Layer 1 smart contract platforms after all - when you peek under the hood, the differences become quite stark. Let's dive in and see how Solana compares to Ethereum in terms of architecture, execution, accounts, and more. A Radically Different Architecture First, a quick primer on how Ethereum works to set the stage. Ethereum relies on the tried-and-true proof-of-work (PoW) consensus mechanism, where miners compete to add blocks to the chain. Smart contracts are executed by the Ethereum Virtual Machine (EVM) in a sequential manner. Scaling is achieved through sharding and rollups. Solana takes a very different approach with its proof-of-history (PoH) consensus model combined with proof-of-stake (PoS). Miners are replaced by "validators" who stake their SOL tokens as collateral. Rath...

Eliptic Curve Cryptography (ECC) and Curve25519

Image
It is always important to start from the basics and in this case, the best place to start from the definitions around the domain. From the previous encryption article , you recall asymmetric encryption algorithm RSA, or Rivest-Shamir-Adleman, is an algorithm that was first developed in 1977 by Ron Rivest, Adi Shamir, and Leonard Adleman, it was adopted in 1978. Ever since its adoption, it has grown to be the most popular cryptosystem. The algorithm was designed to work based on a public and private key in the encryption and decryption of information that is sent over the internet. The information is encrypted using a public key while at the receiver end; a private key is needed to decrypt the information. The algorithm, on the other hand, uses a reverse process for user authentication-a private key is used to encrypt digital signatures, then the receiver can use a public key to decrypt the digital signatures. What is ECC ECC ( Elliptic Curve Cryptography ) on the other hand is a...

Upgrading smart-contracts on Solana

Image
Why is Solana so different from Ethereum? By far the biggest reason the development experience between Solana and Ethereum is so different is due to their account model designs. Before we dig into those, it’s helpful to understand why Solana’s account model was designed so differently from Ethereum. Unlike Ethereum, which is designed to run on consumer grade hardware, Solana was designed to optimize transaction throughput on high-end multi-core machines. The Solana team noticed a trend that the number of cores in computers is growing exponentially. In order to take advantage of all these cores and future-proof the protocol, the Solana team designed transactions to be easily parallelized with each other. Account model design So what is actually meant by the “account model” of a blockchain? Well, when an on-chain program is called on a blockchain like Solana or Ethereum, the smart contract needs a way to track certain state like token balances, who owns an NFT, or who the curre...