<?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: Jane Odhiambo</title>
    <description>The latest articles on DEV Community by Jane Odhiambo (@janespot).</description>
    <link>https://dev.to/janespot</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%2F2620751%2F60571585-5395-424d-bcef-eda54b75d932.jpg</url>
      <title>DEV Community: Jane Odhiambo</title>
      <link>https://dev.to/janespot</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/janespot"/>
    <language>en</language>
    <item>
      <title>From Passwords to Keypairs: Understanding Solana Identity as a Web2 Developer</title>
      <dc:creator>Jane Odhiambo</dc:creator>
      <pubDate>Thu, 07 May 2026 03:26:51 +0000</pubDate>
      <link>https://dev.to/janespot/from-passwords-to-keypairs-understanding-solana-identity-as-a-web2-developer-3cl0</link>
      <guid>https://dev.to/janespot/from-passwords-to-keypairs-understanding-solana-identity-as-a-web2-developer-3cl0</guid>
      <description>&lt;p&gt;When I first started learning Solana, I thought a crypto wallet was basically a digital bank account that stored cryptocurrency. After spending the first week learning about wallets, keypairs, and blockchain identity, I realized that idea was completely wrong. A wallet does not actually store your crypto. Instead, it manages cryptographic keys that prove ownership on the blockchain.&lt;/p&gt;

&lt;p&gt;As a Web2 developer, the easiest way for me to understand Solana identity was to compare it to things I already knew, especially SSH keys and authentication systems.&lt;/p&gt;

&lt;p&gt;In Web2, identity usually depends on companies and servers. You create an account with an email and password, and the platform stores your credentials in a database. If you forget your password, the company can reset it for you. Your identity is controlled by the service provider.&lt;/p&gt;

&lt;p&gt;Solana works very differently.&lt;/p&gt;

&lt;p&gt;On Solana, identity starts with a cryptographic keypair:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;a public key&lt;/li&gt;
&lt;li&gt;a private key&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The public key becomes your wallet address. It is safe to share and works like your public username. The private key is secret and proves ownership. Whoever controls the private key controls the wallet.&lt;/p&gt;

&lt;p&gt;The best analogy I found was SSH authentication. When using SSH, you generate a public and private key pair. You place the public key on a server, then prove your identity by signing requests with your private key. Solana uses the same basic idea, except instead of one server verifying you, the entire blockchain network verifies the cryptographic signature.&lt;/p&gt;

&lt;p&gt;One thing that surprised me was realizing there is no “forgot password” feature on Solana. There is no company managing your account. Ownership is entirely mathematical. If you lose the private key or seed phrase, nobody can recover the wallet for you. At first this sounded scary, but it also helped me understand what decentralization actually means in practice.&lt;/p&gt;

&lt;p&gt;During the challenges, I experimented with several wallet types:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;CLI wallets&lt;/li&gt;
&lt;li&gt;browser wallets like Phantom&lt;/li&gt;
&lt;li&gt;mobile wallets&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The CLI wallet felt the most developer-friendly because it works directly in scripts and terminals. However, it also felt the least secure because the private key is stored in a plain JSON file on disk. Anyone who copies that file can control the wallet.&lt;/p&gt;

&lt;p&gt;Browser wallets felt much safer and more realistic for actual users. Instead of exposing the private key, the wallet extension handles signing internally. My app never saw the private key at all. The wallet simply asked the user for approval through a popup. This reminded me of “Sign in with Google” in Web2 applications. The application delegates authentication to another trusted system.&lt;/p&gt;

&lt;p&gt;I also learned about seed phrases, which are usually 12 or 24 words used to recover a wallet. Initially I thought the wallet password was the important part, but I discovered the seed phrase is actually the real backup. The password only protects local access to the wallet app. Whoever has the seed phrase can fully restore the wallet and its private keys.&lt;/p&gt;

&lt;p&gt;Another important concept was understanding that Solana wallets do not store balances themselves. The blockchain stores all balances and account state. The wallet simply gives you the ability to sign transactions that interact with the blockchain. This changed how I think about ownership online.&lt;/p&gt;

&lt;p&gt;I also learned that Solana uses very small units called lamports instead of decimals internally. One SOL equals 1,000,000,000 lamports. This is similar to how payment systems like Stripe use cents instead of floating point dollar values. Using integers prevents rounding issues and ensures every validator on the blockchain computes balances exactly the same way.&lt;/p&gt;

&lt;p&gt;The biggest lesson for me was understanding that blockchain identity is portable. In Web2, identity is fragmented across platforms. You have separate accounts for GitHub, banking, social media, and games. On Solana, one wallet can interact with many applications without creating new accounts each time. Your identity belongs to you rather than to a company’s database.&lt;/p&gt;

&lt;p&gt;After this first week, I no longer see wallets as simple crypto apps. I see them as cryptographic identity systems that allow users to own accounts, assets, and interactions directly. As a beginner coming from Web2, that shift in perspective was probably the most important thing I learned.&lt;/p&gt;

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