Vibecoding · 10-dars · 9-11 sinflar
Fan: IT / VibecodingПредмет: IT / VibecodingSubject: IT / Vibecoding
Hafta: 2Неделя: 2Week: 2
Xavfsizlik, Auth va .env
Dasturingiz qanchalik chiroyli bo'lmasin, himoyalanmagan bo'lsa uni xakerlar buzadi. Kiberxavfsizlik va maxfiy kalitlarni yashirishni o'rganamiz.
Real Xavf
Nega Xavfsizlik 1-O'rinda?
Har kuni internetda 30,000 dan ortiq veb-saytlar buzib kiriladi. Xakerlar nimalarni qidiradi?
1. Foydalanuvchilar
Telefon raqamlar, ismlar, parollar ombori (Database).
2. API Kalitlar
Kompaniyaning pullik OpenAI yoki to'lov tizimi kalitlari.
3. Server kuchi
Serveringizda kriptovalyuta qazib olish (mining) qilish.
Kimligingni Isbotla
Autentifikatsiya (Auth) nima?
Authentication (Auth) — foydalanuvchining haqiqatan ham shu akkaunt egasi ekanligini tekshirish jarayoni.
- Login / Parol: Eng klassik usul (Email va maxfiy so'z).
- 2FA (Ikki bosqichli himoya): SMS kod yoki Telegram orqali qo'shimcha tasdiqlash.
- OAuth (Social Login): "Google orqali kirish" yoki "Apple orqali kirish" tugmalari.
Kriptografiya
Parollar Qanday Saqlanadi? (Hashing)
Xavfsiz tizimlarda parollar hech qachon ochiq matnda (masalan: "parol123") saqlanmaydi! Ular Hash qilinadi.
Parol: "admin2026"
↓ (SHA-256 Hashing algoritmi)
Hash: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
Xaker bazani o'g'irlasa ham, bu tushunarsiz koddan haqiqiy parolni orqaga qaytara olmaydi!
Raqamli Pasport
API Key (Kalit) nima?
Avvalgi darsda ochiq bepul API ishlatdik. Lekin OpenAI (ChatGPT) yoki Google Maps kabi pullik xizmatlar maxfiy API Key beradi.
- Kredit Karta o'rnida: Bu kalit sizning hamyoningizga ulangan. Har bir so'rov uchun hisobingizdan pul yechiladi.
- Agar kimdir sizning API kalitingizni o'g'irlasa — sizning pulingizga o'z dasturini ishlatadi!
Katta Fojia
GitHub Botlari: 3 Soniyalik O'g'irlik
Dasturchilarning eng katta xatosi: Kod ichida API kalitini yozib, GitHub ga yuklash (Push qilish).
Qanday sodir bo'ladi?
Internetda maxsus xakerlik skaner-botlari 24/7 ishlab turadi. Ular GitHub ga yuklangan har bir kodni tahlil qilib, 3 soniya ichida kalitni o'g'irlaydi va bir kechada $5,000 hisob chiqarishi mumkin!
Maxfiy Seyf
Yechim: .env (Environment Variables)
Maxfiy kalitlar hech qachon JavaScript fayllari ichiga yozilmaydi. Ular alohida .env faylida saqlanadi:
# .env fayli ichida:
OPENAI_API_KEY=sk-proj-948194819481...
DATABASE_PASSWORD=SuperSecretPass2026!
- .gitignore: Ushbu fayl GitHub ga chiqmasligi uchun
.gitignore ro'yxatiga kiritiladi.
Chegara
Client-side vs Server-side Himoya
Frontend (Brauzer) — OCHIQ
HTML, CSS, JS brauzerga to'liq yuklanadi. Foydalanuvchi Ctrl + U bosib har qanday yozuvni ko'ra oladi. Bu yerda maxfiy kalit saqlash O'limga teng!
Backend (Server) — YASHIRIN
Server (Node.js, Python, Cloud) devor ortida turadi. Foydalanuvchi uning ichidagi kodni va .env faylni ko'ra olmaydi. Barcha pullik API chaqiruvlar shu yerda bo'ladi!
Kiberhujumlar
Keng Tarqalgan Hujumlar: XSS va Injection
- XSS (Cross-Site Scripting): Xaker input maydoniga o'zining zararli JavaScript kodini (masalan:
<script>steal()</script>) yozib yuborishi.
- Himoya: Har qanday foydalanuvchi kiritgan ma'lumotni ekranga chiqarishdan oldin tozalash (sanitize) kerak!
Oltin Qonun
Vibecoder Kiberxavfsizlik Qoidasi
🛑 HECH QACHON QILMANG:
- AI ga (ChatGPT, Claude, v0) o'zingizning haqiqiy parollaringizni yoki kompaniya API kalitlarini prompt sifatida tashlamang!
- AI o'rganish jarayonida bu ma'lumotlarni o'z bazasiga saqlab qolishi mumkin. O'rniga faqat "sk-test-..." deb placeholder bering.
Himoya Qatlami
Amaliy Vazifa: Profil va Login Modal
- 1. Valyuta konverterining yuqori burchagiga "Kirish / Profil" tugmasini qo'shish
- 2. Tugma bosilganda zamonaviy Login Modal oynasini ochish
- 3. Parol kiritilganda matnni yashirish (•••••) va ko'zcha (👁) orqali ko'rsatish
10 ballik mezon
Valyuta konverterining yuqori burchagiga "Kirish / Profil" tugmasini qo'shish3
Tugma bosilganda zamonaviy Login Modal oynasini ochish4
Parol kiritilganda matnni yashirish (•••••) va ko'zcha (👁) orqali ko'rsatish3
Jami10
Yakun
2-Hafta Xulosasi: Fullstack Sari Qadam
- Biz qayerga yetdik? Oddiy statik sahifadan -> Jonli API bilan ishlovchi, xotiraga ega (LocalStorage) va xavfsiz (Auth) ilovaga keldik!
- Keyingi qadam: 3-haftada biz yanada chuqurroq tizimlarga — Serverless, Database va AI Agentlarni mustaqil kod yozishga o'rgatishga o'tamiz!