<?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: Ajiri Osiobe</title>
    <description>The latest articles on DEV Community by Ajiri Osiobe (@ajdroi).</description>
    <link>https://dev.to/ajdroi</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1811202%2F5b81bcee-71f3-4c0f-b0c2-997e9c899f89.jpeg</url>
      <title>DEV Community: Ajiri Osiobe</title>
      <link>https://dev.to/ajdroi</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/ajdroi"/>
    <language>en</language>
    <item>
      <title>Understanding Identity on Solana as a Web2 Developer</title>
      <dc:creator>Ajiri Osiobe</dc:creator>
      <pubDate>Tue, 12 May 2026 21:13:12 +0000</pubDate>
      <link>https://dev.to/ajdroi/understanding-identity-on-solana-as-a-web2-developer-57ep</link>
      <guid>https://dev.to/ajdroi/understanding-identity-on-solana-as-a-web2-developer-57ep</guid>
      <description>&lt;p&gt;Its day 6 of the 100-days-of-solana event hosted by the MLH community. &lt;/p&gt;

&lt;p&gt;First of all, I joined late, they are currently on Day 23, my job is to play catch.&lt;/p&gt;

&lt;p&gt;For the past 5 days, one concept kept coming up everywhere: keypairs. Wallets, transactions, accounts, signatures — almost everything seemed to revolve around them.&lt;/p&gt;

&lt;p&gt;Coming from a Web2 background as a fullstack developer, this felt confusing at first. In Web2, identity usually means usernames, emails, passwords, sessions, OAuth, or JWT tokens. On Solana, identity works very differently.&lt;/p&gt;

&lt;p&gt;The breakthrough for me came when I stopped thinking about wallets as “bank accounts” and started thinking about them like SSH keys.&lt;/p&gt;

&lt;h2&gt;
  
  
  Identity in Web2
&lt;/h2&gt;

&lt;p&gt;In traditional applications, identity is usually controlled by a company or platform.&lt;/p&gt;

&lt;p&gt;For example, when you create a GitHub account:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;GitHub stores your username and password&lt;/li&gt;
&lt;li&gt;GitHub decides whether your account exists&lt;/li&gt;
&lt;li&gt;GitHub can reset your password&lt;/li&gt;
&lt;li&gt;GitHub can suspend or delete your access&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Your identity depends on a centralized database.&lt;/p&gt;

&lt;p&gt;Even when using OAuth providers like Google Sign-In, your identity still depends on another company managing credentials and permissions.&lt;/p&gt;

&lt;p&gt;This model works well, but it also means users do not fully control their identity.&lt;/p&gt;

&lt;h2&gt;
  
  
  Solana Identity Feels Like SSH Keys
&lt;/h2&gt;

&lt;p&gt;If you have ever used SSH to connect to a server, Solana becomes much easier to understand.&lt;/p&gt;

&lt;p&gt;With SSH:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You generate a public and private keypair&lt;/li&gt;
&lt;li&gt;The public key goes on the server&lt;/li&gt;
&lt;li&gt;The private key stays with you&lt;/li&gt;
&lt;li&gt;You prove ownership by signing requests with your private key&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Solana works almost the same way.&lt;/p&gt;

&lt;p&gt;When you create a Solana wallet, you generate:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A public key → your wallet address&lt;/li&gt;
&lt;li&gt;A private key → your proof of ownership&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Your public key becomes your identity on the network.&lt;/p&gt;

&lt;p&gt;Instead of logging into a single server, your identity is recognized across the entire Solana blockchain.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Is a Solana Address?
&lt;/h2&gt;

&lt;p&gt;A Solana address is actually a public key.&lt;/p&gt;

&lt;p&gt;It is a 32-byte Ed25519 public key encoded in Base58, which produces addresses like this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;14grJpemFaf88c8tiVb77W7TYg2W3ir6pfkKz3YjhhZ5
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Base58 is intentionally designed to avoid confusing characters like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;0 and O&lt;/li&gt;
&lt;li&gt;I and l&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This reduces mistakes when copying addresses.&lt;/p&gt;

&lt;p&gt;Unlike a username in Web2, nobody “assigns” you this identity. It is mathematically generated and cryptographically tied to your private key.&lt;/p&gt;

&lt;h2&gt;
  
  
  Ownership Without Permission
&lt;/h2&gt;

&lt;p&gt;One of my biggest mindset shifts learning Web3 is understanding ownership.&lt;/p&gt;

&lt;p&gt;In Web2, companies grant access to your account.&lt;/p&gt;

&lt;p&gt;In Solana, cryptography proves ownership directly.&lt;/p&gt;

&lt;p&gt;If you hold the private key, you control the account.&lt;/p&gt;

&lt;p&gt;That means:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;No admin can freeze your identity&lt;/li&gt;
&lt;li&gt;No password reset exists&lt;/li&gt;
&lt;li&gt;No centralized authority controls access&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The network only trusts cryptographic signatures.&lt;/p&gt;

&lt;p&gt;When you send a transaction on Solana, your wallet signs it with your private key. Validators verify the signature using your public key.&lt;/p&gt;

&lt;p&gt;If the signature is valid, the network accepts the transaction.&lt;/p&gt;

&lt;p&gt;This is why protecting your seed phrase is so important. Losing it is like losing the master key to your identity.&lt;/p&gt;

&lt;h2&gt;
  
  
  Identity Beyond Wallets
&lt;/h2&gt;

&lt;p&gt;At first, I assumed wallets were only for storing tokens.&lt;/p&gt;

&lt;p&gt;But identity on Solana enables much more:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Owning tokens and NFTs&lt;/li&gt;
&lt;li&gt;Interacting with programs (smart contracts)&lt;/li&gt;
&lt;li&gt;Participating in governance votes&lt;/li&gt;
&lt;li&gt;Building on-chain reputation&lt;/li&gt;
&lt;li&gt;Logging into decentralized applications&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;What makes this powerful is portability.&lt;/p&gt;

&lt;p&gt;In Web2, every application creates its own identity system.&lt;/p&gt;

&lt;p&gt;In Solana, the same identity works across the entire ecosystem.&lt;/p&gt;

&lt;p&gt;You do not create separate accounts for every app. Your wallet becomes your universal identity layer.&lt;/p&gt;

&lt;h2&gt;
  
  
  Browser Wallets vs CLI Wallets
&lt;/h2&gt;

&lt;p&gt;Over the past few days, I experimented with both browser wallets and the Solana CLI wallet.&lt;/p&gt;

&lt;p&gt;The browser wallet felt easiest for interacting with decentralized apps because it handles signatures visually and connects quickly.&lt;/p&gt;

&lt;p&gt;The CLI wallet felt more developer-focused and secure because it gives direct control over keys, accounts, and transactions from the terminal.&lt;/p&gt;

&lt;p&gt;Using both helped me understand that wallets are not just storage tools — they are interfaces for managing cryptographic identity.&lt;/p&gt;

&lt;h2&gt;
  
  
  Final Thoughts
&lt;/h2&gt;

&lt;p&gt;The biggest lesson for me is that identity on Solana is self-custodied.&lt;/p&gt;

&lt;p&gt;In Web2, platforms own the identity layer.&lt;/p&gt;

&lt;p&gt;In Solana, users own it themselves through cryptography.&lt;/p&gt;

&lt;p&gt;That changes how authentication, ownership, and trust work on the internet.&lt;/p&gt;

&lt;p&gt;For a Web2 developer, the easiest way to understand Solana identity is this:&lt;/p&gt;

&lt;p&gt;A Solana wallet is basically your SSH key for the blockchain.&lt;/p&gt;

&lt;p&gt;Except instead of authenticating with one server, you are authenticating with an entire decentralized network.&lt;/p&gt;

&lt;h1&gt;
  
  
  100daysofsolana #solana #web3 # blockchain #beginners
&lt;/h1&gt;

</description>
      <category>beginners</category>
      <category>blockchain</category>
      <category>devjournal</category>
      <category>web3</category>
    </item>
  </channel>
</rss>
