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

推荐订阅源

C
Comments on: Blog
GbyAI
GbyAI
B
Blog RSS Feed
Microsoft Security Blog
Microsoft Security Blog
罗磊的独立博客
人人都是产品经理
人人都是产品经理
F
Full Disclosure
IT之家
IT之家
Know Your Adversary
Know Your Adversary
Engineering at Meta
Engineering at Meta
K
Kaspersky official blog
T
Tor Project blog
V
Visual Studio Blog
S
SegmentFault 最新的问题
P
Proofpoint News Feed
V
Vulnerabilities – Threatpost
T
True Tiger Recordings
H
Hackread – Cybersecurity News, Data Breaches, AI and More
The Hacker News
The Hacker News
MyScale Blog
MyScale Blog
Latest news
Latest news
Blog — PlanetScale
Blog — PlanetScale
Cyberwarzone
Cyberwarzone
Stack Overflow Blog
Stack Overflow Blog
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Apple Machine Learning Research
Apple Machine Learning Research
Project Zero
Project Zero
AWS News Blog
AWS News Blog
Martin Fowler
Martin Fowler
F
Fox-IT International blog
C
CXSECURITY Database RSS Feed - CXSecurity.com
Scott Helme
Scott Helme
C
Check Point Blog
博客园 - Franky
P
Proofpoint News Feed
S
Securelist
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
U
Unit 42
P
Privacy & Cybersecurity Law Blog
NISL@THU
NISL@THU
T
The Blog of Author Tim Ferriss
Google DeepMind News
Google DeepMind News
D
Docker
Hacker News - Newest:
Hacker News - Newest: "LLM"
WordPress大学
WordPress大学
李成银的技术随笔
A
Arctic Wolf
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
S
Schneier on Security
N
Netflix TechBlog - Medium

DEV Community

Chat With Your Raspberry Pi — Control GPIO, Read Sensors, and Manage Services via Telegram Using Garudust Run OpenAI Codex CLI on Claude, Gemini, or Llama — in 50 lines of C# Token economics for AI agents: why workflow ownership matters more than task automation Why SMS Codes Are No Longer Enough for Business Security Communicate Ideas Visually: Let AI Run the Feedback Loop Building an Autonomous AI Hiring Agent with Multi-Agent Runtime Orchestration 🚀 Validating lists in Okyline: uniqueness, order, and cross-element rules Base64 encoding visualizer I Built a Browser Game Engine Inside WordPress Without Canvas or WebGL. Here's Why Designing Website Analytics for AI Crawlers Without Surveillance Usage-Based Billing for AI Agents with FastAPI and Kong 30 Days of AI Agents Buying From a Real WooCommerce Store. Here's What the Data Says. AWS - Identity and Access Management Explained for Beginners Token Saving, and Caveman How Superpowers Forces Skill Execution How I Stressed My SQLite Job Queue to 5,000 Continuous Tasks on an Android Phone (And Why It Outperformed the Cloud) Is the job market dead, or has the skill bar increased? Introducing PlanCollab: AI-Powered Cross-Agent Code Planning & Review No More Waiting in Line: How I Built a Web-Based Canteen Queue Management System with Flask and MongoDB Deploying Unbound Validating DNS Resolver on Ubuntu 24.04 Deploying Prometheus Metrics Collection Server on Ubuntu 24.04 AWS IAM Roles Anywhere Hands-On Deploying Grafana Metrics Visualization Platform on Ubuntu 24.04 Deploying Gogs Simple Git Hosting on Ubuntu 24.04 Deploying MongoDB NoSQL Document Database on Ubuntu 24.04 Deploying Passbolt Team Password Manager on Ubuntu 24.04 Deploying OpenWebUI Local AI Interface on Ubuntu 24.04 Deploying Bitwarden Password Management Vault on Ubuntu 24.04 Deploying GitLab CE DevOps Management Suite on Ubuntu 24.04 Panduan Praktis Pasca-Install Ubuntu 24.04 Desktop Agar Sistem Nyaman Dipakai Harian Deploying n8n Workflow Automation Engine on Ubuntu 24.04 Memory Cache: o bug invisível que só aparece quando sua aplicação precisa escalar horizontalmente "this" in JS is SIMPLE as a rock LoRaWAN has ~51 bytes per frame. Your JSON alert doesn't fit. Stop Avoiding Bitwise Operators ERP Product Tree Denormalization: The Maintenance and Scale Conundrum We Leaked 1,368 Customers into Our LIVE Stripe Account via E2E Tests Overlay Widgets vs Real WCAG Scanners: A 2026 Buyer’s Guide How an Accessibility SaaS Broke Its Own Landing (and How We Fixed It) Building the harness around our coding agents: eight failure modes, eight pillars LynxDB - I wanted Splunk's query language without Splunk RAG Is Not Always the Answer Anymore: How AI Agents Search Code in 2026 I Leaked API Keys Through My .env File — Here's What I Learned About Secret Management Score Big with Power Apps: A Step-by-Step Guide to Custom Football APIs IaC Drift Is Inevitable — Design for Detection, Not Prevention I Built a CLI Tool That Writes Better Git Commits Than I Do Adding Text Selection to Bash I Built an Android App With Zero Backend — Here's What Happened I built toklock — the only Anthropic rate-limit proxy that queues requests instead of crashing your agents The Hardest Part of Building an Encrypted Journaling App Wasn’t Encryption Replicate MySQL to ClickHouse with Sling Why I Think the Next Big Blockchains Will Be Built Around AI, Not With AI on Top How to use the Specification Pattern to Clean Up Query Logic in C#, .NET AI may already be turning translators into proofreaders. Coders could be next? One API, every social image - dynamic OG, Twitter, LinkedIn, Pinterest, YouTube AI Agents Need Artifacts, Not Activity. What I Learned Shipping 7 Mac Apps in 12 Months — The Honest Retrospective Being pro-developer in the AI age Circuit Breaker Now Supports LangGraph and Vercel AI SDK Where Does the Data Go? A Comprehensive Guide to Databases Node.js wants to ban AI-generated code. They should. 07/20: Layer 2 – The Data Link Layer: Frames, MAC Addresses & Switches 5 Python Features That Made Me a Better Developer Why "flex" breaks your email in Outlook (and how to catch it in VS Code) Most Organizations Don't Have an AI Problem, They Have an Integration Problem I Built a Privacy-First PDF Toolbox — Your Files Never Leave the Browser The EU AI Act Was Written for Models. Your Agents Need Runtime Compliance. Your AI Agent on Kubernetes Is Probably Exposed to the Internet Right Now 723 Cycles of Zero-Sleep Autonomy: What Running 24/7 for Weeks Actually Looks Like AI Automation vs AI Augmentation: Know Which One You Are Actually Building A .NET Dinosaur in Web3. Day 13 — Access Control Transaction Hooks: A General Primitive for Post-Commit Side Effects (Case Study: Queuert) Lines vs Blocks(CSS): Divide & Grid Explained The Business Context Problem: Why Vulnerability Severity Scores Lie "How I Cut My Go Markdown Linter's Benchmark by 81%" Casting Resurrection on a Dead D&D Table The Story Behind Java: From C++ Limitations to Platform Independence Keep Appium out of your test code: BasePage + lazy locators How I use agents for my personal projects I Built a Compliance Health Scanner for Indian Startups in 24 Hours - Here’s What I Learned What AMQP compatibility means for a local Azure emulator Why I stopped rotating active log files in Python I built a tiny runtime for resumable agent workers The Cost of Showing Up: What the Productivity Advice Does Not Tell You About Being Visible Python Why I Rebuilt My Portfolio with Astro I finally gave my AI agents a shared memory and a team #Crew44 Kimsuky (APT43) — Analysis of the New PebbleDash · AppleSeed Toolset shadcn/ui is Not a Component Library Scaling Monorepos with Turborepo Five Ways to Fail a Transport Terminal themes optimize for syntax highlighting; that's the wrong target Your Clean Domain Could Be Masking an Attack: The Underminr Vulnerability Explained AI Coding Standards at Scale: Versioned AI Rules for Cursor, Claude Code, and Beyond 🚀 Introduction to Express.js – the framework that changed Node forever Mini Shai-Hulud: A persistent supply-chain worm From Braces to Pipes How to Debug LLM-Driven Android Automation Runs Sharing my Mock Interview Experience - Part 1 Laying it all Out
Forget Usernames and Passwords: A Web2 Developer’s Guide to Solana Identity
Vinayak Kama · 2026-05-26 · via DEV Community

As a backend developer comfortable with Python, databases, and standard web servers, jumping into Web3 felt like entering an entirely different universe. I recently joined the MLH 100 Days of Solana challenge, and after finishing my first week, one massive realization completely rewrote how I think about software: Identity on a blockchain is fundamentally different from anything we build in Web2.

In a traditional application, user identity is scattered across disconnected silos. A user has a row in a PostgreSQL users table on my server, a profile inside GitHub's database, and a distinct account with their bank. They don't talk to each other unless someone manually builds a complex OAuth integration.

On Solana, identity starts with a single, elegant mathematical concept: The Cryptographic Keypair.


The SSH Analogy: How Identity is Born

If you are a developer who has ever deployed code to a Linux server, you already understand how a Solana wallet works. You generate an SSH key pair on your local machine. You leave the Public Key on the remote server, and you keep the Private Key deeply hidden on your local laptop. When you connect via terminal, your local private key mathematically proves who you are.

Solana functions exactly the same way, except the "server" is a global, decentralized ledger running across thousands of validator nodes.

Over my first few days of the challenge, I wrote TypeScript code utilizing the new @solana/kit SDK to generate these keys. When I ran my script, it printed out a random string of numbers and letters like Dg2vjhF3F8p2XkfPSDBeTdKgwyqQwkmtHqmV3q281v17.

This is my Public Key—my global username on the Solana network. It uses Base58 encoding, which deliberately strips away confusing characters like 0, O, I, and l to ensure developers don't make catastrophic typos when routing assets.


Cryptographic Ownership vs. Company Access

In the Web2 stacks I am used to building, a user "owns" their account simply because an administrator allows them to. If a user loses their password, they hit a "Reset Password" button, an email script fires off, and they modify a row in a database. If a company decides to lock a user out, their identity vanishes at the click of a button.

On a blockchain, there is no admin panel, no Customer Support team, and absolutely no password reset flow.

When I created my local wallet file (wallet.json) using Node's filesystem modules (node:fs/promises), it saved a raw array of numbers representing my Private Key.

In asymmetric cryptography, your public address is mathematically derived one-way from your private key. If you have the private key, you can always calculate the public address. If you lose that private key array, your identity and every asset attached to it are locked in the global state forever. Only the holder of that private key can authorize and sign state changes (transactions) for that account.


What a Global Identity Enables

This week, I connected my newly generated identity directly to a Phantom browser wallet and requested 1,000,000,000 lamports (which is exactly 1 testnet SOL) from the Devnet faucet. I was able to track my transaction history straight from my terminal using the Solana CLI:

solana transaction-history $(solana address) --limit 1

Seeing the raw transaction log pull down from a global network without logging into an API gateway or providing an API key was eye-opening. Because my identity is purely cryptographic and self-custodied, it works seamlessly across every single decentralized application (dApp) built on the network. I don't need to sign up for a new account when I visit a new platform; I just connect my keypair using the standard wallet protocol.

Wrapping Up Week 1

Moving from a classic backend architecture where data and logic live under one roof to Solana's model—where stateless programs modify independent data accounts—has challenged my assumptions about system engineering.

If you are a Web2 engineer sitting on the fence, I highly recommend stepping out of your comfort zone. The math under the hood is beautiful, the performance is lightning fast, and shifting your brain to think about identity as code instead of a row in someone else's database will make you a sharper engineer overall.

On to Week 2!