<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: R Anmol</title>
    <description>The latest articles on DEV Community by R Anmol (@hellhope).</description>
    <link>https://dev.to/hellhope</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2F99mvlsfu5tfj9m7ku25d.png</url>
      <title>DEV Community: R Anmol</title>
      <link>https://dev.to/hellhope</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/hellhope"/>
    <language>en</language>
    <item>
      <title>You Don’t Exist on Solana (Until You Do)</title>
      <dc:creator>R Anmol</dc:creator>
      <pubDate>Sun, 17 May 2026 17:17:26 +0000</pubDate>
      <link>https://dev.to/hellhope/you-dont-exist-on-solana-until-you-do-4fdk</link>
      <guid>https://dev.to/hellhope/you-dont-exist-on-solana-until-you-do-4fdk</guid>
      <description>&lt;p&gt;When we compare a normal(web2) account signup to signup on blockchain(web3) one question comes to mind: how does the blockchain know this account is real or this accounts exists on the network?&lt;/p&gt;

&lt;p&gt;I am going to talk specifically about Solana, but it may apply to the broader landscape in general&lt;/p&gt;




&lt;h2&gt;
  
  
  Key-Pair Creation
&lt;/h2&gt;

&lt;p&gt;When we first create a key-pair in solana&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;solana-keygen new &lt;span class="nt"&gt;--outfile&lt;/span&gt; /tmp/broke-wallet.json &lt;span class="nt"&gt;--no-bip39-passphrase&lt;/span&gt; &lt;span class="nt"&gt;--force&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;We get, &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftag46rhpqeybdtlpnkwi.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftag46rhpqeybdtlpnkwi.png" alt="Output of solana-keygen. Contains private key, public key and seed phrase"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;From the image above, we can see that we get three things - &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Private Key&lt;/strong&gt;, which is stored as a json file in the specific path&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Public key&lt;/strong&gt;, which can be derived from the private key&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Seed Phrase&lt;/strong&gt;, which can derive the private key.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Private Key and Public Key follow a one-to-one mapping, meaning we will always get the same public key from the private key. We cannot derive private key from our public key.&lt;/p&gt;

&lt;p&gt;Our seed phrase can derive &lt;strong&gt;multiple private keys&lt;/strong&gt;. This makes managing  multiple wallets with single seed phrase possible.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Disclaimer:&lt;/strong&gt; Never share your actual seed phrase and/or private key.&lt;/p&gt;




&lt;h2&gt;
  
  
  Answer
&lt;/h2&gt;

&lt;p&gt;Now that we have created the key, let's go back to our original question, how does the blockchain know we exist?&lt;/p&gt;

&lt;p&gt;The simple answer is &lt;strong&gt;it doesn't.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Private keys are created from &lt;strong&gt;random 256 bits&lt;/strong&gt;, meaning there are 2^256 possible combinations (more than the atoms in a universe). So chances of two people having same private key is virtually zero. &lt;/p&gt;

&lt;p&gt;The blockchain only knows about your wallet after its &lt;strong&gt;first incoming or outgoing transaction&lt;/strong&gt;. In Solana, this is when the network explicitly allocates space on the ledger for our public key and deposits enough SOL to make the account "&lt;strong&gt;rent-exempt&lt;/strong&gt;." Before this happens, our wallet isn't an active account on the ledger—it's just a mathematical possibility among 2^256 options.&lt;/p&gt;




&lt;h2&gt;
  
  
  Fun Fact
&lt;/h2&gt;

&lt;p&gt;The json file which is created is a 64 byte array, where first 32 bytes are the private key and next 32 bytes are the public key.&lt;/p&gt;

&lt;p&gt;Solana saves this in this format because whenever we sign a transaction on blockchain, we need both private key and public key and yes we can derive the public key on the spot with the help of private key, which is inefficient when our (Solana in this case) goal is to go as fast as possible while using as few compute units as possible.&lt;/p&gt;




&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;This is the major architectural and philosophical difference between Web2 and Web3. On Web2, we(our identities) are row in centralized database. In Web3, we do not exist, till we do.&lt;/p&gt;

</description>
      <category>100daysofsolana</category>
      <category>beginners</category>
      <category>web3</category>
      <category>solana</category>
    </item>
    <item>
      <title>Introduction to Web3 by a Beginner</title>
      <dc:creator>R Anmol</dc:creator>
      <pubDate>Sun, 03 May 2026 11:34:19 +0000</pubDate>
      <link>https://dev.to/hellhope/introduction-to-web3-by-a-beginner-2fe1</link>
      <guid>https://dev.to/hellhope/introduction-to-web3-by-a-beginner-2fe1</guid>
      <description>&lt;h2&gt;
  
  
  The Core Vision
&lt;/h2&gt;

&lt;p&gt;Let's start with "What is Web3"&lt;/p&gt;

&lt;p&gt;Web3 is a decentralized, trustless and ownerless network, which aims to give back the power from few companies to individual users&lt;/p&gt;

&lt;p&gt;All the technological decision of Web3 depends on the above tenet&lt;/p&gt;

&lt;h2&gt;
  
  
  Identity: From Records to Key Pairs
&lt;/h2&gt;

&lt;p&gt;Traditionally to identify ourself on the network, we would have to authenticate ourself with username and password. &lt;/p&gt;

&lt;p&gt;This username and password would have been stored in the server which is managed by a company or simply a entity.&lt;/p&gt;

&lt;p&gt;We have to trust the entity to keep the username and password safe from any data breach. &lt;/p&gt;

&lt;p&gt;But in Web3, method to authentication is through key pair, like SSH keys. We first generate a private key. Then derive public key from that private key. This is our identity on the blockchain.&lt;/p&gt;

&lt;h2&gt;
  
  
  Trust and Validation
&lt;/h2&gt;

&lt;p&gt;A small nuance on what I mean by trustless is that we have simply shifted the trust from companies to open source or cryptography. &lt;/p&gt;

&lt;p&gt;In the blockchain there is no sign in like we are used to in traditional services. &lt;/p&gt;

&lt;p&gt;So you might ask if there is no sign in blockchain, how does the network know that you exist. &lt;/p&gt;

&lt;p&gt;The answer I have understood is that network does not know you exist, till you sign a transaction. When we sign a transaction, every node on the network check it with the signature and public key, and if the check returns true then the transaction is considered to be true. &lt;/p&gt;

&lt;p&gt;Now how does that check happen is something which I also don't know. But I would like to know&lt;/p&gt;

&lt;h2&gt;
  
  
  Solana Specific
&lt;/h2&gt;

&lt;p&gt;Both the private key and the public key are of 32 bytes&lt;/p&gt;

&lt;p&gt;Solana often stores the concatenated array of private key + public key (64 bytes). Because to sign a transaction we need both the public key and the private key. While we can always generate the same public key from the same private key, it is computationally inefficient, so for the sake of efficiency we store both the private key and public key in one 64 byte array.&lt;/p&gt;

&lt;h2&gt;
  
  
  Trade-off
&lt;/h2&gt;

&lt;p&gt;Now, that we have understood that our identity on the network is made by cryptography( public and private key) not by a centralized account. This opens several benefits and drawbacks. Let's focus on the primary benefit and the drawback derived from the "benefit"&lt;/p&gt;

&lt;h3&gt;
  
  
  Benefit
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;No entity can lock you out of your account as long as you hold the private key&lt;/li&gt;
&lt;li&gt;Your private key is always with you and so you are not trusting anyone with it&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Drawback
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;It removes the option of "forgot password" we all are so familiar with. If you lose your private key there is no backdoor, no forgot password, no password reset. Your access to the account is gone&lt;/li&gt;
&lt;li&gt;Since we trusting ourself with the private key, we have to manage the security and backup of it. &lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Wallets: Managing Your Keys
&lt;/h2&gt;

&lt;p&gt;This is where browser and mobile wallet comes into the picture, they offer the convenience along with security &lt;/p&gt;

&lt;p&gt;Now wallets(both broswer and mobile) are of two types:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Hot Wallet&lt;/li&gt;
&lt;li&gt;Cold wallet&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;There are more types like hardware wallet and multisig wallet but that also follow the same principle that browser and mobile wallet follow&lt;/p&gt;

&lt;p&gt;Just a remainder a wallet is used to store our private key securely. That is the wallet's main purpose. A wallet can be a software on a device or a separate device itself&lt;/p&gt;

&lt;h3&gt;
  
  
  Hot Wallet
&lt;/h3&gt;

&lt;p&gt;A Hot wallet is a wallet that is connected to the internet. So theoretically it is susceptible to cyber attacks.&lt;/p&gt;

&lt;h3&gt;
  
  
  Cold Wallet
&lt;/h3&gt;

&lt;p&gt;A Cold Wallet is a wallet that is NOT connected to the internet. So it is much more secure, but inconvenient to use. &lt;/p&gt;

&lt;h2&gt;
  
  
  Finding the Right Balance
&lt;/h2&gt;

&lt;p&gt;Now one might assume that cold wallet are the best, and they would be correct if we were looking at things from the security perspective only.&lt;/p&gt;

&lt;p&gt;It is analogous to the best practice of using different password for different accounts, it is better for security objectively, but incredibly inconvenient if you have not set up password managers and extensions.&lt;/p&gt;

&lt;p&gt;So, choosing the right type of wallet is a choose based on your usecase&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;If you are developer and using a devnet wallet for testing, you really don't need much security because all the currency in the wallet is fake&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;If you are storing your real currency use a cold wallet, assuming you don't sign transaction often. If you sign transaction often you may have to look to a middle ground.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;These are all the insights (or common sense to experienced folks) gained after reading about Blockchain (specifically Solana) for a week. &lt;/p&gt;

</description>
      <category>100daysofsolana</category>
      <category>solana</category>
      <category>web3</category>
      <category>beginners</category>
    </item>
  </channel>
</rss>
