Ünite 10 / 11

Güvenlik-Kritik Denetim, Uzman Onayı ve Sorumlu Kullanım

Kazanimlar:

  • Blokzincirin güvenlik-kritik doğasını ve yapay zekanın özgün hatayı görememe, yanlış güvence verme, güncel olmama ve sorumluluk üstlenememe nedenlerini kavrayabilme
  • Her aşamaya insan doğrulama kapısı koyan katmanlı doğrulama ile tek bir hatanın canlıya sızmasını önleyebilme
  • Güvenlik-kritik son onayın yetkin uzmanda olduğunu ve insan sorumluluğu, savunma amacı, gizlilik, şeffaflık, dürüstlük ilkelerini benimseyebilme

Bu modülün en önemli ünitesi budur. Şimdiye kadar YZ'nin akıllı sözleşme yazımından on-chain analize, tokenomikten dolandırıcılık tespitine kadar nasıl hızlandırıcı olduğunu gördük. Bu ünitede bir adım geri çekilip meselenin özüne bakıyoruz: güvenlik-kritik işlerde YZ çıktısı, yetkin uzman onayının yerine neden geçemez? Ve bir uzman olarak YZ'yi sorumlu biçimde kullanmanın çerçevesi nedir? Blokzincir mühendisliği, hataların doğrudan ve geri alınamaz biçimde paraya dönüştüğü bir güvenlik-kritik alandır; bu ünite o gerçeğin gereklerini işler.

"Güvenlik-kritik" ne demek ve neden farklı

Bir alan güvenlik-kritiktir (safety/security-critical) eğer bir hatanın sonucu geri alınamaz ve ciddiyse: köprü mühendisliğinde can kaybı, tıpta yanlış tedavi, blokzincirde milyonlarca doların anında ve kalıcı kaybı. Bu alanlarda kabul edilen standart, sıradan yazılımdan tümüyle farklıdır:

  • "Muhtemelen çalışıyor" yeterli değildir; kanıtlanmış olmalıdır.
  • "Sonra düzeltiriz" geçersizdir; geri alınamazlık affetmez.
  • Son onay, mesleki ve hukuki sorumluluğu üstlenen yetkin bir uzmandadır.

YZ bir asistandır; sorumluluk üstlenemez, hesap veremez, sonucun ardında duramaz. Bir denetim raporu bir zafiyeti atlarsa, sorumluluk YZ'ye değil, imzayı atan uzmana aittir. "YZ öyle dedi" bir mühendislik savunması değildir.

YZ neden uzmanın yerine geçemez: dört temel neden

1. YZ özgün ve bağlamsal hatayı göremez. YZ, eğitim verisindeki kalıpları tanır. Yeni bir zafiyet, protokole özgü bir iş mantığı hatası veya bileşenlerin özgün etkileşimi, YZ'nin kör noktasıdır. En pahalı Web3 saldırıları tam da bu özgün açıklardan gelir.

2. YZ yanlış güvence verir. YZ, akıcı ve kendinden emin bir dille "bu kod güvenli görünüyor" diyebilir — hem de yanlışken. Bu "güvenli halüsinasyonu", güvenlik-kritik bir alanda en tehlikeli çıktıdır; çünkü yanlış bir güven duygusu yaratır.

3. YZ güncel değildir. YZ'nin bilgisi bir eğitim kesim tarihinde durur. En son saldırılar, en yeni kütüphane sürümleri, en güncel en iyi uygulamalar onun ufku dışındadır. Güvenlik sürekli değişen bir yarıştır; dünkü bilgi bugün yetersiz olabilir.

4. YZ sorumluluk üstlenemez. Bu belki en temel nedendir. Mühendislik onayı sadece teknik değil, hukuki ve etik bir taahhüttür. Bir makine bu taahhüdü veremez.

Dikkat: Güvenlik-kritik bir çıktıda soru "YZ ne dedi?" değil, "Bu çıktıyı doğrulayan, teyit eden ve arkasında duran yetkin insan kim?" olmalıdır. Uzman olmayan hiçbir onay -ne YZ'nin ne bir aracın- güvence sayılmaz.

Katmanlı doğrulama: tek hatanın canlıya sızmasını önlemek

Sorumlu bir iş akışı, her aşamaya bir insan doğrulama kapısı koyar. Bir kapı geçilmeden diğerine geçilmez:

Aşama

YZ katkısı

İnsan doğrulama kapısı

Yazım

Taslak kod

Derleme + test + gözden geçirme

Tarama

Aday zafiyet

Statik analiz + denetçi teyidi

Denetim

İpucu, rapor taslağı

Yetkin denetçi imzası

Test

Senaryo taslağı

Testnet + fuzzing + simülasyon

Dağıtım

Kontrol listesi

Çok imzalı onay + kademeli çıkış

İzleme

Anomali işareti

İnsan müdahale planı

Bu katmanlı yapı, tek bir YZ hatasının mainnet'e kadar sızmasını engeller. Her kapının net bir geçiş koşulu vardır: test geçti mi, denetçi imzaladı mı, simülasyon dayandı mı?

Zayıf yaklaşım / Güclü yaklaşım

Zayıf yaklaşım:

YZ kodu üretti, temiz görünüyor, mainnet'e alalım.

Bu, geri alınamaz bir alanda felakete davetiyedir.

Güçlü yaklaşım:

1. YZ taslağı üretti → derledik, test ettik.2. Statik analiz + YZ taraması → denetçi teyit etti.3. Bağımsız güvenlik denetimi → imzalı rapor.4. Testnet + fuzzing + simülasyon → senaryolar dayandı.5. Çok imzalı, kademeli mainnet çıkışı + izleme.Her kapıda: geçiş koşulu karşılanmadan ilerleme yok.

Dört kopyalanabilir şablon

1) Doğrulama kapısı kontrolü:

Bu güvenlik-kritik çıktı için bir doğrulama kontrol listesi üret:hangi bağımsız adımlarla (derleme, statik analiz, denetim, test,simülasyon) teyit edilmeli? Her adımın geçiş koşulunu yaz. Biradım atlanırsa hangi risk doğar, belirt.

2) YZ çıktısı güven düzeyi etiketleme:

Aşağıdaki YZ üretimi çıktıyı gözden geçir ve her iddiayıişaretle: "doğrulandı / doğrulanmalı / YZ'nin zayıf olduğu alan".Özellikle iş mantığı ve özgün risk içeren, insan uzmanlığıgerektiren noktaları öne çıkar.

3) Uzman devri notu:

Bu çıktıyı bir yetkin uzmana devretmek için bir özet hazırla:YZ ne yaptı, hangi varsayımlarla, nerede emin değil, uzmanınözellikle nereyi teyit etmesi gerekiyor? Sorumluluğun uzmandaolduğunu açıkça belirt.

4) Olay müdahale hazırlığı:

Bu protokol için bir acil durum/olay müdahale taslağı üret:bir zafiyet canlıda sömürülürse hangi adımlar (durdurma yetkisi,iletişim, fon koruma) devreye girer? Bu bir taslaktır; ekip veuzman kalibre etmeli.

Üç mini vaka (sayılarla)

Vaka 1 — Kapı atlamak felaket getirdi. Bir ekip zaman baskısıyla bağımsız denetimi atlayıp YZ + kendi testlerine güvenip mainnet'e çıktı. 11 gün sonra bir iş mantığı açığından ~$4M çekildi. Bir denetim kapısı, muhtemelen bunu yakalardı. Ders: güvenlik-kritik alanda kapı atlanmaz.

Vaka 2 — Katmanlı doğrulama kurtardı. Başka bir ekip her kapıyı işletti: YZ taslağı → statik analiz → denetim → testnet → simülasyon. Denetim aşamasında bir reentrancy, simülasyonda bir oracle riski yakalandı. İkisi de mainnet öncesi kapandı. Ders: katmanlar tek hatanın sızmasını önler.

Vaka 3 — "Güvenli halüsinasyonu." Bir geliştirici YZ'ye kodu sordu; YZ "önemli güvenlik sorunu görünmüyor" dedi. Ekip yine de denetime gönderdi ve iki yüksek düzey bulgu çıktı. YZ'ye güvenip durulsaydı ikisi de canlıya çıkacaktı. Ders: YZ'nin güven ifadesi bir teyit değildir.

Sorumlu kullanımın ilkeleri

Bu modülün özünü altı ilkeye indirgeyebiliriz:

  1. İnsan sorumluluğu: Güvenlik-kritik son onay yetkin uzmandadır; YZ hesap veremez.
  2. Katmanlı doğrulama: Her aşamada bir insan kapısı ve geçiş koşulu.
  3. Savunma amaçlı kullanım: Bilgi korumak ve denetlemek için; sömürmek/tuzak kurmak için değil.
  4. Gizlilik: Müşteri kodu ve verisi izinsiz açık araçlara verilmez.
  5. Şeffaflık: YZ kullanımı raporda dürüstçe belirtilir; abartı ve yanlış güvence verilmez.
  6. Dürüstlük: Yatırımcı ve kullanıcı yanıltılmaz; risk gizlenmez, tavsiye maskelenmez.
İpucu: Kendinize her güvenlik-kritik kararda tek soru sorun: "Bu yanlışsa ve para kaybolursa, arkasında duracak ve sorumluluğu üstlenecek yetkin insan doğrulaması yapıldı mı?" Cevap "hayır, YZ öyle dedi" ise, süreç eksiktir.

Sık yapılan hatalar

  • Bağımsız denetim kapısını atlamak. Geri alınamaz alanda affetmez.
  • YZ'nin güven ifadesini teyit sanmak. "Güvenli halüsinasyonu" en tehlikelidir.
  • Sorumluluğu YZ'ye yüklemeye çalışmak. Sorumluluk imzayı atan uzmandadır.
  • Güncellik varsaymak. YZ eğitim kesim tarihinden sonrasını bilmez.
  • Zaman baskısıyla kapıları kısaltmak. En pahalı hatanın kaynağı.
  • Olay müdahale planı olmadan çıkmak. Sızıntı olunca hazırlıksız kalınır.

Özetle

  • Blokzincir güvenlik-kritiktir; hatalar geri alınamaz ve doğrudan paraya dönüşür.
  • YZ özgün hatayı göremez, yanlış güvence verir, güncel değildir ve sorumluluk üstlenemez.
  • Bu yüzden güvenlik-kritik son onay daima yetkin uzmandadır.
  • Katmanlı doğrulama, her aşamaya insan kapısı koyarak tek hatanın canlıya sızmasını önler.
  • Sorumlu kullanım: insan sorumluluğu, savunma amacı, gizlilik, şeffaflık ve dürüstlük.

Uygulama görevi

Bir akıllı sözleşme projesi hayal edin (veya gerçek bir örnek alın). Fikirden mainnet'e kadar tüm yolculuk için katmanlı bir doğrulama planı yazın: her aşamada YZ ne yapar, hangi insan kapısı vardır, geçiş koşulu nedir? Sonra bir "zaman baskısı" senaryosu ekleyin: hangi kapıyı atlamak en tehlikeli olurdu ve neden? Bir olay müdahale taslağı da ekleyin.

Kontrol listesi

  • [ ] Güvenlik-kritik son onayın uzmanda olduğunu kabul ettim.
  • [ ] Her aşamaya bir insan doğrulama kapısı koydum.
  • [ ] YZ'nin güven ifadesini teyit olarak saymadım.
  • [ ] Bağımsız denetim kapısını atlamadım.
  • [ ] Güncellik varsaymadım; son bilgileri insanla teyit ettim.
  • [ ] Sorumluluğu YZ'ye yüklemedim.
  • [ ] Bir olay müdahale planı hazırladım.