惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

F
Fortinet All Blogs
WordPress大学
WordPress大学
The Cloudflare Blog
云风的 BLOG
云风的 BLOG
博客园 - Franky
D
Docker
小众软件
小众软件
阮一峰的网络日志
阮一峰的网络日志
H
Hackread – Cybersecurity News, Data Breaches, AI and More
Engineering at Meta
Engineering at Meta
MongoDB | Blog
MongoDB | Blog
U
Unit 42
M
MIT News - Artificial intelligence
B
Blog
GbyAI
GbyAI
C
Check Point Blog
P
Proofpoint News Feed
博客园 - 司徒正美
Hugging Face - Blog
Hugging Face - Blog
雷峰网
雷峰网
IT之家
IT之家
Google DeepMind News
Google DeepMind News
V
V2EX
Stack Overflow Blog
Stack Overflow Blog

DEV Community

Authentication Security Deep Dive: From Brute Force to Salted Hashing (With Java Examples) Why AI Systems Don’t Fail — They Drift Spilling beans for how i learn for exam😁"Reinforcement Learning Cheat Sheet" I Replaced Chrome with Safari for AI Browser Automation. Here's What Broke (and What Finally Worked) How Python Borrows Other People's Work The $40 Architecture: Processing 1 Billion API Requests with 99.99% Uptime Vibe Coding: A Workflow Guide (From Zero to SaaS) Most webhook security guides protect the wrong side. The scary part is delivery. Headless CMS for TanStack Start: Build a Blog with Cosmic EU Age Verification App "Hacked in 2 Minutes" — What Actually Happened Comfy Cloud’s delete function does not actually remove files Running AI Models on GPU Cloud Servers: A Beginner Guide Event-driven media intelligence with AWS Step Functions and Bedrock I scored 500 AI prompts across 8 quality dimensions — here's what broke How to Call Google Gemini API from Next.js (Free Tier, No Backend Needed) The Portal Protocol: Reclaiming Human Connection in the Age of AI How to Fix Your Team's Scattered Knowledge Problem With a Self-Hosted Forum Intro to tc Cloud Functors: A Graph-First Mental Model for the Modern Cloud Designing Multi-Tenant Backends With Both Ownership and Team Access I Built a Neumorphic CSS Library with 77+ Components — Here's What I Learned PostgreSQL Performance Optimization: Why Connection Pooling Is Critical at Scale Cómo construí un SaaS multi-rubro para gestionar expensas en Argentina con FastAPI + Vue 3 🚀 I Built an Ethical Hacking Scanner Tool – Open Source Project I Replaced /usage and /context in Claude Code With a Single Statusline A Pythonic Way to Handle Emails (IMAP/SMTP) with Auto-Discovery and AI-Ready Design I Collected 8.9 Million Polymarket Price Points — Here's What I Found About How Markets Really Move EcoTrack AI — Carbon Footprint Tracker & Dashboard Everyone's Using AI. No One Agrees How. 5 self-hosted ebook managers worth trying in 2026 Building Your First AI Agent with LangChain: From Chatbot to Autonomous Assistant
From Email & Passwords to Keypairs: Understanding Identit...
shen sandaru · 2026-04-30 · via DEV Community

If you’ve spent years building in Web2, identity probably feels straightforward: users sign up with an email, set a password, and your backend stores their credentials. Every app has its own system, and identity is fragmented across services.

Solana flips that model completely.

Instead of usernames and passwords, identity starts with a keypair — a cryptographic pair of keys generated locally. The public key is your address (visible to everyone), and the private key is your proof of ownership. There’s no central server, no account creation endpoint, and no password reset flow. If you hold the private key, you are the account.

The SSH key analogy (your mental bridge)

If you’ve used SSH, you already understand this.

You generate a keypair on your machine, place the public key on a server, and prove your identity by signing with your private key. Solana works the same way — except the “server” is the entire network.

That one keypair becomes your identity everywhere: across apps, tokens, and programs.

Creating identity (no signup required)

One of the most surprising things when you first touch Solana is this:

You don’t “register” an account — you generate it.
In a simple script, you can create a brand-new wallet instantly. No API call, no database, no approval. The address is derived mathematically from the private key using Ed25519, which means it’s valid on the network the moment it exists.
That’s a big shift from Web2:

  • Web2identity is issued by a platform
  • Solanaidentity is generated and owned by you

To interact with the network, you fund that address with test tokens (on devnet). Now your identity isn’t just theoretical — it can send transactions and hold value.

Persistence: identity you actually keep

At first, your keypair might live only in memory. Run the script again, and you get a completely new identity.

That’s not practical.

So the next step is persistence: saving the keypair to a file and reloading it later. Now your wallet behaves more like a real account — same address, same balance, same identity across runs.

This introduces a critical idea:

In Web2, platforms store and manage identity for you.
In Solana, you are responsible for storing it safely.

And that comes with consequences. If someone gets access to your private key, they control your account. There’s no “forgot password” option.

SOL vs lamports: thinking in precise value

Once your wallet is funded, you’ll see balances like “2 SOL.” But under the hood, everything works in lamports:

  • 1 SOL = 1,000,000,000 lamports This is similar to how payment systems like Stripe use cents instead of dollars. Blockchains avoid floating-point numbers entirely to guarantee precision. Every transaction must produce the exact same result across thousands of nodes — no rounding errors allowed.

So while users see SOL, your code works with integers. Send 1 instead of 1_000_000_000, and you’ve just transferred a billionth of what you intended.

Real users don’t manage keys — wallets do

Up to this point, you’ve been handling private keys directly. That’s fine for scripts, but it’s not how real users interact with apps.

Browser wallets like Phantom or Solflare

They store private keys securely, show confirmation popups, and expose a standard API your app can use. Your app never sees the private key. Instead, it asks the wallet to sign something, and the user approves or rejects it.

If you’ve used “Sign in with Google,” this feels familiar — except instead of a company verifying identity, the wallet proves it cryptographically.

This changes the security model completely:

  • The wallet is the security boundary
  • The user approves every action
  • Your app is untrusted by default

Not all wallets are the same

By now, you’ve likely interacted with multiple wallet types:

  • CLI wallet → a JSON file on disk (fast, scriptable, but exposed)
  • Browser wallet → encrypted storage + approval UI (balanced usability and safety)
  • Mobile wallet → adds biometric and device-level security

They all manage the same underlying thing — a keypair — but differ in how they protect it.

This introduces two useful mental models:

  • Hot vs cold: Is the key on an internet-connected device?
  • Custodial vs non-custodial: Who controls the key? There’s no single “best” wallet. Developers often use CLI wallets for testing, browser wallets for apps, and hardware wallets for storing real value.

So what is identity on Solana?

It’s not a username.
It’s not tied to a single app.
It’s not controlled by a company.

It’s a cryptographic keypair that:

  • Proves ownership through signatures
  • Holds tokens and pays fees
  • Interacts with programs
  • Works across every application on the network And most importantly, it’s yours.

When you move from Web2 to Solana, the biggest shift isn’t learning new APIs — it’s rethinking identity itself. Once that clicks, everything else starts to make sense.

100daysofsolana #solana #web3 #blockchain #beginners