Bitcoin Hangi Problemi Nasıl Çözüyor? Bölüm 1
Birbirine güvenmeyen ve merkezi bir otoritesi bulunmayan binlerce bilgisayar, aynı veri üzerinde nasıl %100 uzlaşıya varabilir? Bitcoin ve Blockchain teknolojisinin arkasındaki bilgisayar bilimleri mucizesini keşfetmeye hazır mısınız?
Bu videoda; bilgisayar bilimlerinin en klasik ve çözülmesi en zor problemlerinden biri olan İki General Problemi ile başlıyor, ağdaki hainlere rağmen güvenliği sağlayan Bizans Generalleri Problemi'ne geçiyoruz. Merkeziyetsiz sistemlerin en büyük tehditlerinden biri olan Sybil (Klon/Kimlik) Saldırıları'nın mantığını inceliyor; dağıtık sistemlerin neden deterministik (kesin) değil, probabilistik (olasılıksal) bir mutabakat mekanizmasına ihtiyaç duyduğunu matematiksel ve mantıksal çerçevede masaya yatırıyoruz.
Sadece kripto para dünyasını değil, modern dağıtık sistem mimarisini ve geleceğin ağ yapılarını anlamak isteyenler için derinlemesine bir rehber!
Videonun Amacı
Bitcoin genellikle fiyat hareketleri ve parasal niteliği üzerinden tartışılıyor. Bu videoda ise işin teknik tarafı ele alınıyor: Bitcoin'in arkasındaki blockchain teknolojisi tam olarak hangi problemi çözüyor, bu problem neden daha önce çözülememişti ve mekanizma nasıl işliyor? Anlatım, sayısal altyapısı olmayan birinin de takip edebileceği, tarihsel bir sırayla ilerliyor.
Konu görünüşte iktisadi olsa da çözüm bilgisayar bilimleri ve matematik alanından geliyor.
Ortada hiçbir merkezi yapı olmadan milyonlarca insan birbirine para gönderecekler. Birbirlerinin defterlerini tutacaklar. Ama merkezi bir yer bunu kaydetmeyecek. Bu güvenilirlik nasıl sağlanır?Bölüm 01:38
Merkezi Defterden Dağıtık Deftere
Bir köy düşünelim: bakkalın bir defteri var, köydeki herkesin borç-alacak kaydı bu tek defterde tutuluyor. Merkez Bankası, bankalar ve para transferleri de aynı mantıkla çalışır; tüm kayıtlar merkezdeki defterde durur.
Bu yapı güveni sağlar ama tek bir noktaya bağımlıdır:
- Merkezdeki tek bir hata tüm işlemleri bozabilir
- Kayıtlar silinebilir, yok olabilir veya yanlış işlenebilir
- Sistemin tamamı tek bir aktörün doğruluğuna emanettir
Merkezi kaldırıp herkesin kendi defterini tuttuğu dağıtık sisteme geçtiğimizde ise yeni sorunlar doğar:
- Herkesin defteri nasıl aynı anda senkron kalacak?
- Biri defterine sahte kayıt yazarsa bunu kim doğrulayacak?
- İki defter çeliştiğinde taraflar nasıl anlaşacak?
Karışıklık yalnızca kötü niyetten değil, sıradan hatalardan da kaynaklanabilir.
Konsensüs (Mutabakat) Nedir?
Bu problemi çözmek için konsensüs algoritmaları geliştiriliyor. Konsensüs, yani mutabakat, üç şart gerektirir:
- Uzlaşma: Herkesin kayıtların ne olduğu konusunda ortak fikre varması
- Geçerlilik: Deftere yalnızca belirli formatta (alıcı, satıcı, miktar, tarih, açıklama) geçerli kayıtların girebilmesi
- Sonluluk: Tartışmanın bir noktada bitip "defterin son hali budur" denebilmesi
Analoji: 10 kişilik bir arkadaş grubu akşam nerede yemek yiyeceğine karar verecek. WhatsApp grubu varsa merkez vardır, herkes herkesin oyunu görür, güven %100 sağlanır. Grup yoksa ve herkes birbiriyle ayrı ayrı mesajlaşıyorsa sistem dağıtıktır. Üstelik birinin interneti yavaştır, biri bodrum katındadır, mesajlar geç gider geç gelir. Kaotik bir tablo çıkar ama yine de saat 6'ya kadar karar verilmesi gerekir.
İki General Problemi
İki general birbirini görmüyor, sadece ulakla haberleşebiliyor ve şehre aynı anda saldırmaları gerekiyor.
- Birinci general "şafakta saldıralım" mesajını gönderir, ama mesajın ulaştığından emin olamaz
- İkinci general "mesajını aldım, okey" der; bu kez o, onayının ulaşıp ulaşmadığından emin olamaz
- "Okeyini aldım" mesajı gönderilir; aynı belirsizlik yine devam eder
- Bu döngü sonsuza kadar sürebilir
Mesaj sayısı arttıkça kesinlik %50'den %70'e, oradan %98'e çıkar; fakat asla %100 olmaz. Bir noktada taraflar yüksek olasılıkla yetinip harekete geçmek zorundadır.
Doğrudan birbiriyle iletişimi olmayan, bir mesaj kanalı vasıtasıyla iletişimi olan iki kişi hiçbir zaman %100 kesinlikte bilgi gönderemezler.Bölüm 12:05
Günlük hayattaki karşılığı: SMS ile "akşam 6'da buluşuyoruz" yazarsınız, cevap gelmez. Meşgul müdür, mesaj gitmemiş midir, görüp onaylama ihtiyacı mı duymamıştır? Emin olmak mümkün değildir.
Bizans Generalleri Problemi
Bu kez 5 general bir şehri kuşatmış durumda ve ya hep birlikte saldıracaklar ya da hep birlikte çekilecekler. Bir kısmı saldırıp bir kısmı çekilirse ordu bertaraf olur; verilebilecek en kötü karar budur.
Herkes dürüstse oy çokluğu işe yarar: dört "saldır", bir "geri çekil" oyu varsa tüm generaller saldırı kararına ulaşır.
Ama aralarında hain varsa iş değişir. Hain, grubun bir kısmına "saldır", bir kısmına "geri çekil" der; kendi sabit bir fikri yoktur, amacı kuvveti bölmektir. İki hain olduğunda oylar dengelenir, dürüst generaller tereddütte kalır ve ordu dağılır.
Aynı durum komutan–teğmen kurgusuyla da anlatılabilir: komutan "saldır" der, hain teğmen diğerine "komutan bana geri çekil dedi" der. Dürüst teğmen ulakta mı hata var, ortada hain mi var ayırt edemez.
Problemin matematiksel sonucu şu formüldür:
N ≥ 3h + 1
Yani 1 hain varsa sistemde en az 4 dürüst düğüm gerekir.
Hainler sistemin 1/3'ünden fazlaysa güven kesinlikle tesis edilemez.Bölüm 21:02
Blockchain'in teknik dokümanlarında sürekli karşımıza çıkan "1/3" oranının kaynağı budur.
FLP İmkansızlığı (1985)
Asenkron sistem, mesajların farklı zamanlarda, farklı uzaklıklardan, herhangi bir takvim olmadan geldiği sistemdir. Dağıtık mimariler doğası gereği asenkrondur.
FLP teoremi şunu matematiksel olarak ispatlar:
Bir tane düğümün çökmesi deterministik karar almayı imkansız kılar.Bölüm 22:41
Deterministik karar demek kesin karar, 0 veya 1, evet veya hayır demektir. Asenkron bir ağda tek bir düğüm çöktüğü anda yalnızca probabilistik, yani olasılıksal karar alınabilir.
Telefon analojisi: karşı taraftan ses gelmiyor. Hat mı koptu, mikrofonu mu bozuldu, adam mı susuyor? Biraz daha bekleyebilirsiniz, ama beklemenin sınırını kesin olarak bilemezsiniz. Süre uzadıkça güven derecesi olasılıksal olarak azalır.
Sonuç: dağıtık sistemler hiçbir zaman kesinliğe ulaşamaz, her zaman olasılıkla çalışır.
Konsensüs Algoritmaları ve PBFT
1999'da geliştirilen PBFT (Practical Byzantine Fault Tolerance), üç turlu oylama yöntemiyle mutabakat sağlar. Temel kural yine aynıdır: hain sayısı 1/3 ve altındaysa sistem yüksek olasılıkla (%90-98 bandında) konsensüse ulaştırılabilir.
Ancak burada kritik bir kısıt vardır: bu problemlerin tamamı kapalı devre sistemler için tanımlanmıştır.
- Oyuncu sayısı bellidir
- Kimin katıldığı bellidir
- 1/3 hesabı sabit bir tabana göre yapılabilir
Açık internette ise durum tamamen farklıdır: her an yeni bir düğüm girer, çıkar, offline olur, elektriği kesilir. Sürekli bir dinamizm vardır ve 1/3 oranını sabitlemek mümkün değildir.
Sybil Saldırısı
Adını çoklu kişilik bozukluğu olan bir hastadan alır; kendini farklı zamanlarda 11 ayrı kişilik gibi yaşayan bu vaka, tek bir aktörün çok sayıda kimliğe bürünmesini iyi anlatır.
Açık bir sistemde saldırı şöyle işler:
- Sisteme giriş maliyeti düşüktür
- Saldırgan çok sayıda düğüm, sunucu veya bilgisayarı sisteme sokar
- Hain oranı hızla 1/3'ü aşar
- Sistem artık mutabakata erişemez
Analoji: internete açık "yılın en iyi öğretmeni" anketi. Bir kişi 100 tane mail hesabı açıp 100 oy kullanabilir; 10 dakikalık geçici e-posta siteleriyle bu maliyet neredeyse sıfırdır. Biraz zaman ve kaynak ayıran biri sonucu doğrudan manipüle eder.
Bitcoin'in Çözümü: Proof of Work
Madencilerin çok enerji harcaması, çok elektrik tüketmesi ve ağır algoritmik işlemler yapması tesadüf değil. Bunun adı proof of work ve varlık sebebi doğrudan Sybil saldırısıdır.
Sisteme giriş maliyetini yükseltmek istemiş Bitcoin ki Sybil atağına uğramasın.Bölüm 31:30
Sisteme saldırmak isteyen birinin yapması gerekenler:
- Çok pahalı madencilik makineleri satın almak
- Bu makineleri kurmak ve işletmek
- Tüm ağın harcadığı elektriğin 1/3'ünden fazlasını harcamak
Bu maliyet milyarlarca doları bulduğu ve karşılığında elde edilecek kazanç bunu karşılamadığı için saldırı ekonomik olarak mantıksız hale gelir. Bitcoin, Sybil problemini kriptografiyle değil ekonomik maliyetle çözer.
Özet ve Sonraki Adım
Blockchain'in çözmesi gereken iki işi vardır:
- Sybil saldırısını engellemek
- Hızlı ve güvenilir bir konsensüs algoritması kurmak
Bu videoda problemler tanımlandı. Hash algoritmaları, kriptografinin nasıl kullanıldığı ve proof of work'ün detayları bir sonraki videoda ele alınacak.
00:00Selamünaleyküm. Rabbi yessir ve la
00:02tuassir. Rabbi tenvin bilhar. Allah'ım
00:05zorlaştırma, kolaylaştır, işlerimi
00:07hayırla sonuçlandır.
00:10Bugünkü videoda blockchain ve Bitcoin
00:13üzerine bazı konuşmalar yapacağım. Çünkü
00:16Bitcoin genel olarak parasal niteliği
00:18bakımından, borsadaki fiyat
00:20hareketliliği bakımından vesaire bu tarz
00:23yönlerinden, iktisadi yönlerinden çokça
00:26tartışılıyor, konuşuluyor, biliniyor.
00:29Fakat işin teknik kısmından veya normal
00:32paraya göre Bitcoin aslında nasıl bir
00:34devrim yarattı? İçerisinde nasıl bir
00:37teknoloji var? Ve bu teknoloji neden
00:39daha önce yoktu? Tam olarak neyi
00:42çözüyor? Nasıl çözüyor? Buna dair
00:45açıklayıcı ama herkesin de
00:47anlayabileceği bir video yapma kararı
00:49aldım. Bu videoda aslında Bitcoin'in
00:51çalışma mantığını arkasındaki esas
00:53teknoloji olan blockchain'in nasıl
00:56çalıştığını, hangi sorunları çözdüğünü,
00:59nasıl bir mekanizmaya sahip olduğunu
01:01[homurdanır] herkesin anlayabileceği bir
01:03dilde aşırı teknik detaya kaçmadan
01:06sayısalcı birisinin rahatlıkla aa demek
01:09ki problem buymuş, bunu çözüyormuş,
01:11faydası buymuş. Olay da demek ki bu
01:13şekildeymiş diye tüm kavramları
01:15anlayabileceği tarihi bir şekilde
01:18anlatacağım bir video olacak. Aslında
01:21burada eee bilgisayar bilimleri denilen
01:23işte computer science diye de geçen
01:26bilim dalının yani bilgisayardaki bu
01:28algoritmalar, yazılımlar eee bunun
01:30üzerine t önceden beri makaleleri var,
01:33çalışmaları var. Matematikle de iç içe
01:35geçen bir konu bu. Çünkü burada aslında
01:38problem şu. Ortada hiçbir merkezi yapı
01:42olmadan milyonlarca insan birbirine para
01:46gönderecekler. Birbirlerinin
01:47defterlerini tutacaklar. Ekonomik
01:49hareketlilik yapacaklar ama merkezi bir
01:51yer bunu kaydetmeyecek. Bu güvenilirlik
01:54nasıl sağlanır? Bu aslında iktisadi bir
01:57soru gibi gözükse de bilgisayar
01:59bilimlileri ve matematiğin konu alanına
02:01giriyor ve buralardan zaten çözümler
02:04çıkmış durumda. İmkansız gibi görünen bu
02:06problemi blockchain ve Bitcoin
02:09birleşerek çözdüler. Biz de burada
02:11aslında önce problemi tanımlayacağız.
02:13Daha sonra da nasıl çözüldüğünü aşama
02:15anlatacağız. Şimdi öncelikle
02:17mesela bir köy düşünelim.
02:21Burada bir bakkal olsun değil mi? Bakkal
02:24nesi vardır? Şu da defteri olsun.
02:28Şimdi bakkalın bir defteri vardır. D
02:30olsun ismi. Köyde bir sürü eee insanlar
02:34var. Köyde bir sürü kişi var. Böyle
02:37insanlar var.
02:42Şimdi normalde ne oluyor? Bu insanlar
02:46tüm defterlerini, tüm kayıtlarını
02:47merkezi bir yer olan bakkalda
02:50tutuyorlar. Yani bakkal aslında kimin
02:53bana ne kadar borcu var, benim kime ne
02:55kadar borcum var? Merkezi bir yerde bunu
02:58tutabiliyor. Bunu farklı örneklerle de
03:00anlatabiliriz. Devletler içer içinde
03:03mesela Merkez Bankası bu kayıtları
03:05tutuyor veya bankalar içinde biz tüm
03:08para transferlerimizi bankalar üzerinden
03:11yapıyoruz. Birilerine parayı bankadan
03:13gönderiyoruz. Maaşımızı oradan alıyoruz
03:14vesaire. Tüm bu kayıtlar nerede
03:16tutuluyor? Bankanın merkezindeki
03:18defterde tutuluyor. Aslında böyle bir
03:21analoji yapabiliriz. Dolayısıyla merkezi
03:23bir yerden bir defter tutma durumu var
03:26ve bu güveni genel olarak sağlıyor. Ama
03:30hataya açık bir sistem. Neden? Tek bir
03:32merkeze bağlıyız. Merkezdeki herhangi
03:34bir hata tüm bu işlemlerin yanlış
03:38olmasına veya yok olmasına, silinmesine
03:41çeşitli problemlere sebep olabilir.
03:44Çünkü tek bir merkezde olduğu için. Peki
03:48biz bu merkezi dağıtmak istersek nasıl
03:51olacak? Yani ben merkezin bu hata yapma
03:57olasılığına karşı merkezi kaldırmak
03:59istiyorum. O zaman ne yapabilirim?
04:01Merkezi kaldıracağım. Merkez olmasın. O
04:03zaman bu defterlerin birilerinde durması
04:05lazım. O zaman dedik ki herkes kendi
04:08defterine sahip olsun. Herkes kendi
04:10defterini kendisi tutsun. Dağıtık sistem
04:12bu demek. Yani herhangi bir merkezi
04:14olmayacak. Herkes kendi defterini
04:16kendisi tutacak. Ben Ahmet'ten Ali'ye
04:18işte para gönderdim. Defterlerini herkes
04:21işleyecek. Tamam da herkesin defteri
04:23nasıl aynı senkronlukta olacak? Veya ben
04:26defterime herkes bana işte Ahmet bana
04:28100 lira verdi, Veli bana 100 lira
04:30verdi, Ayşe bana 100 lira verdi diye
04:32sahte kayıtlar da yazabilirim. Daha
04:34sonra bunu kim doğrulayacak? Ayşe
04:37geldiğinde aa benim defterimde bu
04:38yazmıyor. Sen senin defterinde benim
04:41sana borcum yazıyor ama bende yazmıyor
04:43deyip nasıl anlaşacaklar? Herkes kendi
04:45dfterini tutsun. dağıtık olsun, merkezde
04:47olmasın. Tamam ama burada bir
04:49güvenilirlik sorunu var ve karışıklık
04:52çıkma ihtimali var. Bu karışıklık kötü
04:54niyetten de kaynaklanıyor olabilir. E
04:56herhangi birisinin yaptığı hatadan
04:58kaynaklanıyor da olabilir. Bu problem
05:00nasıl çözülecek? Aslında temelde
05:02problemin tanımı bu. Dağıtık
05:04sistemlerdeki bilgi güvenliği, herkesin
05:07eşit bilgiye sahip olması, herkesin
05:10senkron bilgiye sahip olması nasıl
05:12çözülebilir? Bunun için konsensus
05:15algoritmaları geliştiriliyor. Konsensüs
05:18dediğimiz şey nedir? Mutabakattır
05:20aslında.
05:24Konsensus
05:27yani
05:32mutabakat. Bunun için ne gerekiyor? Bir
05:35kere uzlaşma gerekiyor.
05:38Yani herkes diyecek ki, eee, bu kayıt
05:42defterlerimize olduğu konusunda
05:44uzlaşıyoruz. Yani bir ortak fikir
05:45birliğine varmaları lazım ki herkesin
05:47defterinde aynı kayıtlar olabilsin.
05:50Geçerlilik
05:51yani defterde saçma sapan şeyler, kimisi
05:54işte resim çizer, kimisi şarkı sözü
05:57yazar, öyle şeyler değil kardeşim. Bu
05:58defter sadece ticari kayıtlar için
06:00kullanılacak. Geçerli bir kayıt ve bu
06:02kayıt formatı şu şekilde olacak. alıcı,
06:04satıcı, miktar, tarih ve e gönderim
06:07açıklaması gibi bir format. Sadece bu
06:09formatta yazılır. Dolayısıyla geçerli
06:10olup olmadığı eee sadece geçerli şeyler,
06:13kayıtlar bu defterlerde yer alabilmeli
06:17ve sonlu olması yani bitebilmesi
06:21gerekiyor. Bu da şu demek. Hepimiz şimdi
06:24aynı kayıtlar üzerinde uzlaşmamız
06:25gerekiyor. Ya uzlaşmak için konuşmamız
06:27gerekiyor. Eee birbirlerin birbirimizde
06:29sende bu var mı, bende bu var mı dememiz
06:31gerekiyor. Ama bir noktada da karar
06:32vermemiz lazım. Yani defterin final
06:34halini tamam burada anlaştık artık
06:35dememiz lazım. Yıllarca, yüzyıllarca bu
06:38karar vermeden devam etmemeli bir
06:39noktada. Tamam defterin son hali budur,
06:41kayıtlar budur, karar verdik şeklinde.
06:44Eee sonunu bitebilmesi lazım bu
06:46kararların. Değilse hep askıda kalır,
06:48hep havada kalır. Defter hiçbir zaman
06:49stabil duruma geçemez. Şey gibi
06:51düşünebiliriz. Bir analiz yapacak
06:52olursak mesela bir WhatsApp'tan
06:54arkadaşlarla biz 10 kişilik bir grubuz.
06:56Bir eee yemeğe gideceğiz. Normalde bir
06:58grubumuz olsaydı merkezi bir yer oluyor
07:01değil mi? grup WhatsApp grubunda merkezi
07:03bir yer oluyor. Eee gruptan yazıyoruz
07:05arkadaşlar yemeğe hangi restorana
07:07gidelim? Balık restoranına mı gidelim?
07:09Et restoranına mı gidelim diye
07:10soruyoruz. Mesela merkezden grupta
07:12herkes birbirinin yazdığını gördüğü için
07:14tıpkı bakkal örneğindeki gibi, tıpkı
07:16banka örneğindeki gibi güvenilirlik %100
07:18sağlanabiliyor. Herkes oyunu veriyor.
07:20Herkes ortak gruptan görüyor. İşte et
07:22restoranına gidiyoruz. Peki grubumuz
07:24yoksa ama 10 tane de arkadaşsak yani
07:26herkes birbiriyle özel olarak
07:28mesajlaşacak. Böyle bir durumda yani
07:31dağıtık sistem olmuş oluyor. Merkezde
07:32bir grubumuz yok. Herkes birbiriyle
07:34bağımsız mesajlaşabilir
07:36ve farklı zamanlarda ve istediği
07:37zamanlarda mesajlaşabilir. E bu durumda
07:40biz hangi restorana gideceğimize nasıl
07:42karar vereceğiz? Buradaki sonlu
07:45bitebilmesi demek yani bizim bu akşam bu
07:47restorana gitmemiz lazım. Böyle yani bu
07:49karar verme aşaması günlerce, haftalarca
07:52hatta yıllarca sürmemesi lazım. Bu
07:53akşama kadar en geç saat 6'ya kadar
07:56akşam bu kararın verilmesi gerekiyor.
07:58Sonluğu demek o demek. geçerlilik demek.
08:00Yani bu konu üzerinde fikir beyan
08:01edilmesi lazım. Gidip arkadaşlar konsere
08:04ha nereye gidiyoruz değil yani şu an biz
08:06bu akşama kadar bir an önce hangi
08:08restoranda yemek yiyeceğimize karar
08:09vermemiz lazım. O yüzden geçerli
08:11mesajlaşmalar yapmamız gerekiyor.
08:12Uzlaşmada en son bir noktada da
08:14çoğunluğun kararına göre de bir uzlaşma
08:16yaşamamız gerekiyor. İşte böyle bir
08:18analoji ile durumu anlayabiliriz. Bu
08:20arkadaş grubu mesajlaşarak nasıl doğru
08:23sonuca güvenilir bir şekilde ulaşabilir?
08:26Problem bu aslında. Bu arkadaş grubunda
08:28bir de şey düşünün. İşte interneti yavaş
08:30olan, e işte dağlık bir bölgede şu an
08:32olan veya işte internetin çekmediği bir
08:34bodrum katında olan, orada çalışan bir
08:37arkadaş düşünün. İş yerine internetin e
08:39zar zor çektiği, onun mesajı geç
08:40gidiyor, geç geliyor. Bu tarz
08:42problemleri de hesaba kattığımızda tam
08:44bir kaotik durum söz konusu. Bu
08:46arkadaşların bir şekilde güvenilir bir
08:47şekilde uzlaşmasını sağlamamız lazım.
08:49Çözmemiz gereken problem bu.
08:51Blockchain'in Bitcoin'in de çözdüğü
08:53problem bu aslında. Şimdi bu problemi
08:55parçalara bölelim. Yavaş yavaş
08:57ilerlemeye çalışalım. İki general
08:59problemi denilen bir problem var.
09:04Şimdi bu iki general probleminde
09:06olay şu.
09:10İki tane generalimiz var.
09:14Birbirlerini görmüyorlar. Sadece
09:17eee ulakla birbirlerine mesaj
09:19gönderebiliyorlar. Şimdi böyle bir
09:21durumda bir karar almaları gerekiyor.
09:24İkisi de şehre aynı anda saldırmaları
09:27gerekiyor. Bunun için de ortak hareket
09:29etmeleri gerekiyor. İşte şafakta mı
09:31saldıracağız, akşam mı saldıracağız,
09:32öğlen mi saldıracağız? Yani bunun bir
09:34kararının verilmesi gerekiyor. Bu iki
09:37general acaba güvenilir bir şekilde
09:39nasıl mesajlaşabilirler?
09:42E problemin tanımı bu. Şimdi mesela bu
09:45generalimiz mesaj gönderir. Örneğin
09:50Şafak'ta saldıralım.
09:52Tamam. Eee mesajı gönderdi ama mesajın
09:55gidip gitmediğinden hiçbir zaman emin
09:57olamaz. Değil mi? Acaba yolda başına bir
09:59şey mi geldi? Ulan eee mesaj doğru gitti
10:01mi? Ya da yolda belki düşmanlar
10:04tarafından adamım öldürüldü veya mesajı
10:06değiştirildi. Farklı bir mesaja
10:07çevrildi. Bundan bundan hep şüphe
10:09duyacak. Hiçbir zaman kesin emin
10:11olamayacak mesajın ulaşıp ulaşmadığına.
10:13Peki tamam. O zaman mesajın oluşup
10:15oluşmadığından emin olması için buradaki
10:16arkadaş buna bir mesaj daha yollasın.
10:20Mesajını aldım.
10:23Okey desin mesela. Yani şafakta
10:24saldıracağının mesajını aldım. Okey
10:26desin. Bu sefer de bu arkadaş acaba
10:29benim eee bu okeyleme mesajımı diğer
10:32general aldı mı? Yolda ulağın başına bir
10:34şey geldi mi? İşte yolda şey kesildi mi?
10:37Yani çünkü okeyi almadıysa bu sefer bu
10:39arkadaş tam emin olamayacağı için yine
10:42saldırmayabilir. Çünkü bu arkadaşın
10:44saldırması için karşıdan okey mesajının
10:46gelmesini beklediğini biliyor ya değil
10:49mi? O zaman mesela bu arkadaş okeyini
10:51aldım sorun yok atsın. Okeyini aldım.
10:56Okey.
10:58Bu sefer yine bu mesajın tam olarak
11:00gidip gitmediğinden emin olamayacak. Bu
11:01da okeyini aldım. Okeyi aldıktan sonra
11:03saldırırım ben. Sorun yok diye düşündü.
11:05düşünüyorsa mesela aralarında böyle
11:06anlaştılarsa gitmeden önce bu sefer bu
11:09mesaj kesin geldi mi gitti mi o belli
11:12değil. Bu sefer onu tekrar
11:15okeyini aldım. Okeyini aldım.
11:19Okey. Ya bu sonsuza kadar bu şekilde
11:22gidebilir ve hiçbir zaman iki generalde
11:24tam olarak %100 bir şekilde karşının
11:27mesajı alıp almadığına emin olamıyor.
11:29Yani buradaki problemin tanımı şu. %100
11:32bir şekilde kesin eminim karşısı mesajı
11:34aldı. Şafak'ta %100 saldırıyoruz.
11:36Buradaki kesinliğin %100 olması yani eee
11:40ikinciden sonra 3üncü 5 6 7 mesaj 8
11:43mesajdan sonra artık bir sürü mesajlar
11:45gidip gelmiş. Ya dersin ki demek ki ha
11:48mesaj gidip gelmesinde çok problem
11:50olmuyor. Çünkü 3 4 5 defa bayağı mesaj
11:51yolladık birbirimize. Demek ki
11:53iletişimde problem yok. %98
11:56eee biz birbirimizin mesajını
11:58alabiliyoruz ve sorun yok deyip
11:59saldırabilirler. Bakın ama %98 hiçbir
12:02zaman %100 değildir. Her zaman
12:03ihtimaldir. Bu problemin tanımı şudur.
12:05Doğrudan birbiriyle iletişimi olmayan
12:07bir mesaj kanalı vasıtasıyla iletişimi
12:10olan iki kişi hiçbir zaman %100
12:12kesinlikte bilgi gönderemezler. Mesaj
12:15sayısı arttıkça olasılığı artar. Mesela
12:17bir mesajda sadece şu mesajda mesela
12:19olasılık %50 iken bir okey mesajı
12:22geldiğinde %70'e çıkarır. Birkaç defa
12:24daha yaptıklarında %98'lere doğru
12:27olasılık çıkar ama hiçbir zaman %100
12:28olmaz. E problemin tanımı bu. Yani yine
12:31WhatsApp üzerinden gidecek olursak
12:32arkadaşınıza mesela yazıyorsunuz.
12:35WhatsApp yokken eskiden SMS'lerle
12:37yazılıyordu. Mesela yazıyorsun akşam
12:396'da buluşuyoruz planladığımız gibi.
12:42Sorun yok. Eee değil mi yazıyorsun
12:44karşıdaki cevap vermiyor. Şimdi burada
12:45ne düşünebilirsin? Ya yoğun olduğu için
12:47cevap vermemiş olabilir. Mesaj gitmemiş
12:49olabilir. Görmüş ama eee okeylememe
12:52ihtiyacı hissetmemiş olabilir. Emin
12:54olamıyorsun değil mi? Bu sefer evet
12:56yazıyor mesela ama senin onu görüp
12:58görmediğinden yine emin olamaz.
13:00Muhtemelen gördüğünü düşünüyordur. SMS'e
13:02güvendiği için öyle düşünüyordur ama sen
13:04hala onu görmemiş olabilirsin. Yani e
13:07mantık aynı. Hiçbir zaman %100 bir
13:10eminlikte olamayız. Her zaman bir
13:12olasılığa razı olmak zorundayız. Yüksek
13:14bir olasılık olabilir bu ama günün
13:15sonunda bu bir olasılıktır. Şimdi bir
13:17problem daha var.
13:20O da Bizans
13:24generalleri problemi denilen bir
13:26problemimiz daha var. Şimdi buradaki
13:28problem şu. Bir sürü Bizans
13:31generali olduğunu 5 tane mesela general
13:35var
13:36diye düşünelim. Ortada da bir şehir var.
13:39Bu Bizans generalleri bu şehri
13:43kuşatmışlar. Şehrin surları var vesaire.
13:47Şimdi bunların eee bir karar vermesi
13:49gerekiyor. Şehre saldıralım mı yoksa
13:52geri mi çekilelim? Yani uzlaşarak bir
13:55karar vermeleri gerekiyor. Aynı kararı
13:57da uygulamaları gerekiyor. Eğer bir
13:59kısmı saldırırsa, bir kısmı geri
14:00çekilirse ordu bertaraf olur.
14:02Verebilecek en kötü karar budur. En
14:04yanlış karar da budur. Dolayısıyla
14:06herkes uzlaşıyla ya saldıracaklar ya
14:08geri çekilecekler. Toplu şekilde bunu
14:10nasıl yapabilirler? Yine birleriyle
14:11sadece e ulaklar vasıtasıyla eee
14:14haberleşme yapabiliyorlar. Aynı mantık
14:17buralarda da devam ediyor.
14:22Acaba bu konsensusa nasıl varabilirler
14:25ve aralarında hainler varsa acaba ne
14:30olur? Kaç tane haine bu sistem
14:33direnebilir? Bu problemin çözmeye
14:35çalıştığı şey bu. Şimdi düşünelim.
14:37Mesela herkesin bir kendi kararı var
14:39değil mi burada? Eee, öncelikle onları
14:41yazalım. Mesela bu saldır diyor. Örneğin
14:44kendi kararı bu. Yani bunun saldır
14:47desin, bu, saldır desin.
14:50Bu da saldır desin. Bu geri çekil desin
14:53mesela.
14:54Değil mi? Normalde yani herkese diğer
14:57dört generalden mesaj gelecek. Herkesin
15:00elinde diğer dört generalden gelen mesaj
15:02olacak. Değil mi? Buna gelen mesajlar ne
15:04olacak? Saldır. Saldır. Bakın buradan
15:06saldır geldi. Buradan saldır geldi. Bir
15:09saldırı daha geldi. Öbüründen de geri
15:11çekil mesajı geldi. Bunun elindeki
15:13mesajlar böyle. Hepsinin elindeki
15:14mesajları yazalım. Bu saldır geldi.
15:17Saldır saldır geri çekil geldi. Aynı
15:19mesajlar. Bu saldır saldır saldır geri
15:21çekil. Bu saldır saldır saldır geri
15:24çekil. Bu saldır saldır saldır saldır.
15:28Diğerlerinden saldır geldi. Kendi kararı
15:30da geri çekildi. Şimdi hepsi oy çopuna
15:32göre kararını verecek. Bakıyor. O
15:34saldırmamız gerekiyor. Oy çotuna göre
15:35bakıyor. Kendi kararına dahil ediyor.
15:37Beş tane oy var. Saldırmam gerekiyor.
15:39Saldırmam
15:40gerekiyor. Hepsi
15:42bakın saldırması gerektiğini anlıyorlar
15:44ve şehre saldırıyorlar. Tamam. Buraya
15:47kadar sorun yok. Peki şöyle bir durumda
15:50ne olur diyor. Bu problemin tanımlamaya
15:53çalıştığı şey de bu. Ben
15:56bazı generalleri hain yaparsam mesela bu
15:59iki general hain olsun. Hain ne yapar?
16:03hain grubun bir kısmına saldır der. Bir
16:06kısmına geri çekil der. Böylece ordunun
16:09bir kısmına saldırıp bir kısmını geri
16:10çekerek kuvveti böler ve ordunun
16:13dağılmasına yol açar. Hainin yapacağı
16:15şey budur. Peki diyorlar ki kaç tane
16:19hain olursa sistem dayanabilir? Şimdi
16:21öncelikle mesela hain eee senaryosunu da
16:24biz bu yaptığımız örnekte inceleyelim.
16:27Bu hain dolayısıyla bir kısmına saldır
16:29diyecek. Bir kısmına da geri çekil
16:31diyecek.
16:33eee 4 tane kişiye mesaj attığı için şu
16:36ikisini eee mesela geri çekil desin.
16:40Şunlar kalsın ama bunlara da saldır
16:43desin mesela. Buna saldır buna da saldır
16:45dedi. Değil mi? Değiştirdi fikrini.
16:47Çünkü yarısına öyle yarısına böyle dedi.
16:49Kendi fikri yok. Duruma göre bakacak.
16:52Peki bu arkadaş eee ne yapıyor? Bu da
16:56aynısını yapacak. Normalde kendi fikri
16:57artık yok. E saldır diyordu buna. saldır
17:02demiş olsun. Buna saldır demiş olsun ama
17:03bunlara da geri çekil demiş olsun.
17:13Şimdi ne oldu bu? Baktı iki tane geri
17:16çekili var. 3 tane saldırı var. Allah
17:17Allah. Biraz arada kaldı. Oy çokluğu
17:19gibi düşünüyor ama eee geri çekilme şeyi
17:21de fazla. Şimdi bu bakıyor. Aynı şekilde
17:23geri çekil. Bu full saldırma modunda.
17:25Yani herkes saldırı demiş. Harika diyor.
17:27Tam orduları hazırlıyor. Bu ikisi de
17:29duruma göre bakılar. Mesela geri
17:31çekiliyor. Bu bu kendisi. Bu da geri
17:33çekiliyor. Ordu dağılıyor görüldüğü
17:35gibi. Ya burada bu problemin tanımladığı
17:38şey şu. Ben kaç tane haine karşı hala
17:44doğru karar, güvenilir karar bu şekilde
17:46arada kalmalı değil de daha konsensüa
17:48dayalı eee güvenilir bir karar
17:50verebilirim. Şu şekilde de bir analoji
17:53kuruluyor buna.
17:56İşte komutan var ve iki tane de teymeni
17:59var. Komutan
18:01eee bir karar alacak.
18:04Teymenlere kararı verecek. Teymenler de
18:07kendi arasında konuşuyorlar değil mi?
18:11Şimdi bu sistem diyor ki eğer teymenin
18:13bir tanesi hainse
18:17mesela komutan ne dedi? Diyelim ki
18:19saldır saldır
18:22emrini verdi. Ama bu teymen buna
18:25diyor ki komutan bana
18:28geri çekil dedi diyor.
18:33Komutan bana geri çekil dedi diyor buna.
18:38E bu diyor ki Allah komutan saldır dedi
18:40bana ama diğer teymen geri çekil
18:43dediğini diyor. Acaba aradaki ulak mı
18:45hata yaptı yoksa bir hain mi var? Bir
18:48şey mi var? Yani tereddütte kalacak. Eee
18:51tam olarak doğru kararı veremeyecek
18:54değil mi? Mesela bunu şeye çevirelim.
18:59Eee yine 5'e çevirelim. 4 teymen e bir
19:03komutan gibi düşünebiliriz. Yine bir
19:05tane mesela hain olsun. Şimdi bu bu
19:09arkadaşa diğerlerinden gelen haber ne?
19:14Saldırı gelecek şu arkadaştan. Diğer
19:16dürüst arkadaştan da saldırı gelecek.
19:17Bir tanesinden de hain arkadaştan da
19:19geri çekil diye bir şey gelecek. Bu
19:21diyecek ki Allah komutan saldır diyor
19:23ama bir tane geri çekil haberi geldi.
19:25Eee acaba o ulakta mı problem var? Yani
19:28saldır haberinin çokluğuna göre bu
19:30diyecek ki ha bir tanesinde sadece geri
19:32çekiliyor. Demek ki onun ulağı
19:33problemli. E veya onan haber yanlış
19:36gitti. Sorun yok. Çoğunluk saldırı
19:37dediğine göre ben galiba e saldıracağım
19:40diye düşünebilir. Yani bu bir güven
19:41derecesi. Bir tane daha geri çekili
19:43olsaydı ama burada iki saldırı iki geri
19:44çekili olsaydı
19:46e örneğin bir tane daha hain olsaydı
19:50bu sefer ne olacaktı? Eee tereddütte
19:52kalacaktı değil mi? İki saldır iki geri
19:54çekil. Aa acaba bir problem mi var?
19:57Şimdi komutandan böyle geldi. Diğer
19:58arkadaşlar komutanın böyle söylediğini
20:00söylüyor. Eee hiçbir zaman emin
20:02olamayacaktı. çok tereddütte kalmış
20:04olacaktı. İşte bu eee
20:07[boğazını temizler] Bizans generalleri
20:08problemi matematiksel olarak şu formülü
20:13üretti.
20:14N> = 3h + 1. Şimdi bu ne demektir? Bu şu
20:20demek.
20:22H hain sayısı
20:25benim bu formüle göre yani güvenilir bir
20:28sistem kurabilmem için en azından
20:30olasılıksal olarak kesinlik zaten hiçbir
20:32zaman olmadığını söylemiştik ama
20:34olasılıksal olarak yüksek oranda
20:36güvenilir bir sistem kurabilmem için
20:39hain sayısını şuraya yazıyoruz. Mesela
20:41bir hainin olduğu sistemde 3 x 1 + 1 kaç
20:44yapıyor? 4 eee dör tane dürüst adama
20:48ihtiyacım var demek oluyor. Yani
20:51kısacası
20:52şöyle de söylüyor. Hainler sistemin
20:571/3'ünden
20:59fazlaysa
21:02güven kesinlikle tesis edilemez.
21:07Formülün söylediği şey bu. O yüzden eee
21:09tüm bu blockchain eee teknik
21:11dokümanlarında her yerde bu tarz güvene
21:14dayalı bu bu problemlerde dağıtık
21:16sistemlerde 1/3 ibaresini göreceğiz.
21:18Çünkü 1/3
21:20hain varsa güven tesis edilemiyor. Bu
21:241/3'ü matematiksel olarak bu
21:27Bizans generalleri probleminden bulunmuş
21:30bir oran. Şimdi bir diğer
21:33konseptimize geçiyoruz.
21:38PLP imkansızlığı denilen bir kuramı
21:42ortaya attılar 1985'te.
21:46Bu ne demek? Bu aslında matematiksel
21:48olarak bir şeyin ispatı. O da şu.
21:51Asenkron bir a'da asenkron a ne demek?
21:54Üstten örnek verelim. Şimdi ben
21:56birbirimle eee sürekli mesajlaşıyorum
21:59ya. Bunlar hep birbirleriyle aslında
22:01mesajlaşıyorlar. Birbirlerine mesaj
22:03gönderiyorlar.
22:04eee dağıtık sistemlerde böyle olur değil
22:06mi? Herkes birbirine e her şekilde
22:08mesajlarını gönderir.
22:11Şimdi böyle asenkron demek de şu ya
22:13herkes farklı zamanlarda çünkü
22:14uzaklıkları farklı aralarındaki mesajın
22:16gideceği zaman farklı, mesajı tam
22:18gönderme zamanları farklı, asenkron yani
22:19senkron hareket etmiyorlar. Farklı
22:21zamanlarda farklı uzaklıklara mesajlar
22:24göndermeye çalışıyorlar. Farklı
22:25zamanlarda geliyor dolayısıyla mesajlar.
22:28Bu FLP teoremi diyor ki bu tarz asenkron
22:32bir sistemde bir tane düğümün çökmesi
22:35düğüm dediği işte bir general veya bir
22:37insan veya sistemdeki [homurdanır]
22:39dağıtık e mimarideki bir sunucu, bir
22:41oyuncu düğüm denilen şey bu oluyor. Bir
22:44tane düğümün çökmesi deterministik karar
22:48almayı imkansız kılar. Şimdi bu ne
22:51demek? Deterministik eee karar ne demek?
22:54Yani deterministik karar demek kesin
22:56karar demek. 0 ve 1 demek. Evet ve hayır
22:59demek. Tam demek. Doğru demek. Yani ben
23:01asenkron bir sistemdeysem bir düğüm
23:04çöktüğü anda artık deterministik karar
23:06alamıyorum. Probabilistik yani
23:08olasılıksal karar alabilirim yalnızca.
23:11Çünkü şöyle bir şey var. Şimdi bu bir
23:13düğüm olsun.
23:15Bu da bir düğüm olsun.
23:17Şimdi asenkron olduğu için bir zaman
23:19kıstası bir sınırım yok değil mi? Bu
23:21mesaj bir saniyede de gidebilir, bir
23:23günde de gidebilir, bir yılda da teknik
23:25olarak gidebilir. Şimdi ben şöyle
23:27düşünürsem işte telefon açtık. Analoji
23:30yapacak olursak konuşuyoruz,
23:32konuşuyoruz. Telefonda ben
23:33konuşuyorum, konuşuyorum işte mesajı
23:35yolluyorum, yolluyorum değil mi?
23:36Konuşmam. Karşı tarafa mesaj yollamak.
23:37Yolluyorum, yolluyorum, yolluyorum
23:39karşıdan çıt çıkmıyor. Konuşmuyor abi
23:41adam. Adamdan ses alamıyorum. Bir süre
23:43sonra derim ki Allah hat mı koptu? Adama
23:46mı bir şey oldu? Mikrofonu mu bozuldu?
23:49Bir problem mi var? şey yapamam. Emin
23:52olamamaya başlarım değil mi? Bir süre
23:53sonra karşıdan bana haber gelmeye
23:56başlamayınca. Dolayısıyla süre arttıkça
23:59eee benim güven derecem olasılıksal
24:02olarak azalır karşıya. Yani bilgimin
24:04karşıya gidip gitmediğine emin olamam.
24:06Ya işte biraz daha bekleyeyim belki
24:08cevap gelir. Biraz daha bekliyorum
24:09mesela cevap verir belki diye. Biraz
24:11daha bekliyorum. Biraz daha bekliyorum.
24:12Yani bu
24:13beklemenin sınırı ne? Nerede beklersem
24:16cevap gelecek kadar beklemiş olurum?
24:18Bunu hiçbir zaman deterministik olarak,
24:20kesin olarak bilemem, değil mi?
24:22Deterministik demek şu demek işte. E
24:24mesela saat 13.30'da bana cevap
24:26geleceğini biliyorum. Yani belirli
24:28olması demek bir şeyin belirli olması,
24:30kesin olması yani eee bir plan dahilinde
24:33olması, bir bir takvim dahilinde olması,
24:36bir zaman çizelgesinin olması anlamına
24:38geliyor. Determistik olması burada
24:40olasılıksal. Biraz daha beklesem cevap
24:42gelebilir. Evet, gelmeye debilir ama
24:44yani hiçbir zaman bundan emin olamam.
24:46İşte FLP imkansızlığı bunu söylüyor.
24:49Dağıtık sistemde
24:52bir düğüm bile sorun yaşasa,
24:56çökse e ulaşılamasa
24:59ona deterministik
25:02hesaplama
25:06imkansızdır.
25:08Her şey olasılık
25:11hesabına döner diyor. Matematiksel
25:15olarak bunun ispatları var. işte
25:16ispatını yapıyor. Daha sonrasında bizim
25:18buradan anlayacağımız şey şu. Bizim
25:20sistemimizde
25:21dağıtık bir sistem olduğu için bu
25:23şekilde ve mesajlar asenkron olduğu için
25:26farklı zamanlarda belli bir çizelge
25:27dahilinde olmadığı için herkes mesaj
25:29geldiğinde başkasına yayınlıyor mesajı.
25:31Farklı zamanlarda, farklı uzaklıklarda
25:32dünyanın farklı yerlerindeki farklı
25:34internet hızlarında bu oluyor. O zaman
25:37asenkron bir ağdayız. E bir düğüm bile
25:41bir internet problemi yaşasa, bir
25:42offline olsa, bir elektrikleri gitse,
25:43bir şey olsa demek ki benim sistemim
25:46deterministik olamaz. Yani bu tarz
25:48dağıtık sistemler eee bir çizelge, bir
25:50takvime, bir kesinliğe asla ulaşamaz.
25:52Her zaman olasılıksal hareket ederler ve
25:54her zaman eee sonuç olasılıksaldır. Bunu
25:57matematiksel olarak ifade eden bir
25:58teorem bu. Şimdi gelelim konsensus
26:01algoritmalarına.
26:04Konsensus neydi? Fikir birliğine bak.
26:07Varma, uzlaşı sağlama. Şimdi bu
26:08problemleri çözmeye çalışan çeşitli
26:10algoritmalardan bahsedeceğiz. Buna
26:13PBFT
26:15denilen 1999'da
26:17bir çözüm bulal failure tolerant diye
26:20bir e algoritma. Bu temelde burada da şu
26:241/3
26:26ve daha az hain varsa sistemi ben
26:30mutabakata
26:32bağlayabiliyorum
26:34dedi. Bunu da üç turlu
26:38oylama algoritması denilen bir şeyle
26:41yaptı. Şimdi algoritmanın çok
26:41detaylarına gerek yok. Yani şunu dedi.
26:44Hala 1/3 kuralı geçerli. Bu tüm
26:47algoritmalarda geçerli. 1/3 ve daha az
26:50hain varsa ben bir şekilde yüksek
26:52olasılıkta işte 95 neyse 98 90 üzeri eee
26:56olasılıklarda
26:58mutabakatı sağlıyorum. Konsensusa
27:00vardırıyorum dedi. Tamam. Peki ama şöyle
27:04bir problemimiz var. Bizim burada
27:05tanımladığımız tüm problemler kapalı
27:08devre sistemler. Yani oyuncu sayısı
27:11belli. Ne diyoruz? İşte 7 kişinin olduğu
27:13bir ortamda iki kişi hainse filan. Yani
27:16kişi sayısı belli, ortam belli, her şey
27:19belli. Yani sistem kapalı devre. Peki
27:22açık internette nasıl olacak bu?
27:26Her an
27:29bir düğüm
27:31sisteme katılabilir,
27:34çıkabilir.
27:38Tamamen serbest ortam değil mi? Açık
27:41internet. Ben bu algoritmamı internete
27:43açtığım zaman
27:45dağıtık mimari yeni bir cüzdan açılır.
27:48Yeni bir düğüm hemen girer çıkar. Yani 5
27:50kişi var, 7 kişi var. Şu an sistemde.
27:51İşte 500.000 kişi var. 1 milyon madenci
27:54var. Madenciler de bir düğümdür. İşte bu
27:56dağıtık sistemdeki her bir oyuncu
27:58aslında bir düğüm olmuş oluyor.
28:00İstenilen kadar düğüm girer, çıkar,
28:02offline olur, elektriği gider. Yani
28:03sürekli dinamizm var, değil mi? Hep bir
28:05dinamizm var. Ben 1/3'ü geldi mi çıktı
28:08mı ya onu hesap etme onu şey yapma. eee
28:11sağlama tüm algoritmamı ona göre yazma
28:13şansım yok. Açık internette ben eee bu
28:17şeyi nasıl çözeceğim? Şimdi burada bir
28:19zaten önce atak eee tanımı var. Önce onu
28:22tanımlayalım. Cible attack denilen
28:25bir atak türü var. Cle demek ya cible
28:27bir psikolojik hastanın ismi.
28:30Bu hasta çoklu kişilik bozukluğuna
28:33sahipmiş. kendisini 11 farklı çeşit kişi
28:35gibi çeşitli zamanlarda eee rol alıyor.
28:38Yani role play gibi yapıyor ama bu kendi
28:40hissediyor bunu. Sürekli karakter
28:42değiştiriyor. Yani bir çok iyi biri
28:44oluyor, bir çok kötü biri oluyor, bir
28:46çok neşeli biri oluyor. Yani bambaşka
28:48insanlara eee evriliyor her gün gibi.
28:50Buna dair filmler vardı. Glass diye bir
28:52film vardı veya işte 46 yok olan diye de
28:54bir dizi vardı. Orada da adam iki farklı
28:56karaktere bürünüyordu. İşte gündüz
28:57farklı, akşam farklı falan gibi.
28:59İzlediyseniz bilirsiniz. Yani sibil hata
29:01şu demek aslında. Buradan geliyor ismi
29:02bu farklı karakterlerden.
29:04Abi internete açık sistem bu. Doğru. O
29:08zaman ben yeterince
29:12serbest değil mi? İstediğim kadar hemen
29:13düğün bulurum, sunucu bulurum, eee işte
29:16bilgisayar bulurum, bir şey bulurum.
29:18yeterince fazla
29:20yani
29:21sisteme giriş maliyeti düşük olduğundan
29:26yeterince fazla
29:28düğüm ile sisteme girip
29:321/3
29:36hain çokluğuna hemen ulaşır.
29:42sistemin mutabakata,
29:46konsensusa erişmesini engelleyebilirim.
29:51Atağın olayı bu. Bu atak temelde bunu
29:55söylüyor. Sisteme giriş maliyetim
29:59eee çok düşük veya ben bir sürü
30:01bilgisayar sistemde 100 bilgisayar var
30:03değil mi? Ben hemen 50 tane bilgisayar
30:05bulup sisteme sokup, açık internet
30:07değilim ya, e maliyetim de düşük, 50
30:09tane bilgisayar bulup hemen sisteme
30:10sokup hain sayısına 1/3 hain sayısından
30:13fazla olabildiğim için sistemin artık
30:15konsensüa erişmesini, mutabakata
30:16erişmesini engelleyebiliyorum. Buna
30:18sivil hata deniliyor. Şey gibi
30:20düşünebiliriz. Şimdi analoji vermemiz
30:21gerekirse yine mesela işte yılın en iyi
30:24öğretmeni anketi yapılıyor arkadaşlar.
30:25Herkes oy versin. İnternete açık bir
30:27anket yapılıyor. Hemen ne yapılıyor?
30:29İşte bu Tesla falan da hangi ile Tesla
30:31süper Chararjer kuralım diye bir anket
30:33yayınlamıştı mesela. Bu tarz online
30:34anketlerde Türkler ne yapıyor? Yani
30:36sadece mail hesap açıp hemen oy
30:39verebiliyorsun ya. Bir kişi 100 tane
30:40mail açıp 100 tane oy kullanabiliyor.
30:42İşte bu civil atak. Yani normalde senin
30:44bir oy kullanman lazım. Ama sisteme
30:46giriş maliyeti o kadar düşük ki hatta
30:48işte 10 dakikalık geçici email siteleri
30:51falan var değil mi? Oradan bir email
30:52alıyorsun hemen kaydolup oy veriyorsun.
30:54Bizdekiler işte yüzlerce bir kişi
30:56yüzlerce binlerce oy verebiliyor.
30:58Ayıracağı vakte göre değişir. Bu sivil
31:00hata. Sisteme girmek kolay. Herhangi bir
31:01maliyeti yok. Birazcık zaman ayırarak,
31:03birazcık kaynak ayırarak sistemi direkt
31:05manipüle edebiliyorum ve bozabiliyorum.
31:08Bunun analojisi bu. Buna sivil hatağı
31:09deniliyor. Bizim bu dağıtık sistemlerde
31:11bu sivil atağını da çözmemiz gerekiyor.
31:14Ve eee Bitcoin bu sivil atağına karşı
31:17mesela madencilik. Bu madenciler ne
31:19yapıyor? Çok fazla enerji harcıyor
31:20diyoruz değil mi? çok elektrik
31:21tüketiyor. Çok fazla böyle algoritmik
31:23işlemler yapıyor. Bu neden var? Buna
31:25proof of work deniliyor. Bu neden var?
31:28Aslında ön bilgi veriyorum şu anda.
31:30Proof of work deniliyor. Bu neden
31:31oluyor? Çünkü sisteme giriş maliyetini
31:33yükseltmek istemiş Bitcoin ki sivil
31:35atağına uğramasın. Yani sibil atağını
31:36böyle çözüyor. Senin sistemin 1/3 hain
31:39çokanna ulaşabilmen için bir sürü eee
31:42çok pahalı Bitcoin madencilik
31:44makinelerından alman lazım. Onlardan
31:46kurman lazım. Ve yetmiyor. Elektrik
31:49harcaman gerekiyor. Sistemin, tüm
31:51sistemin harcadığı elektriğin 1/3'ünden
31:53daha fazlasını senin harcaman gerekiyor.
31:55Bu zaten milyarlarca dolar yaptığı için
31:57ama karşılığında o kadar fazla bir şey
31:59alamayacağın eee için feible olmamaya
32:02başlıyor. Sibil hatağını da bu şekilde
32:04engellemiş oluyor Bitcoin. Bu videoyu
32:06burada sonlandırmış olalım çok uzamaması
32:09için. Eee, aslında temel bilgi problemi,
32:14dağıtık sistemlerdeki olasılıksal
32:17problemler bunlar. Bitcoin'in şimdi
32:19bunlara ve blockchain'i bunlara
32:20çözümleri bir sonraki eee, videoda
32:22verebiliriz. İşte burada e hash
32:24algoritmaları, kriptografi nasıl
32:26kullanılıyor?
32:28İşte demin bahsettiğim, ön bilgi
32:30verdiğim proof of work algoritmalarıyla
32:32sibil atakları nasıl engelleniyor?
32:33Burada olay şu. Sibil hatağını
32:35engelleyeceksin. Bir de hızlı bir
32:37konsensusa varma, mutabakata varma
32:39algoritması geliştireceksin ve bunu
32:41güvenilir bir şekilde inşa edeceksin. Bu
32:44problemi bu şekilde çözüyor blockchain e
32:47ve Bitcoin. Diğer videolarda da bunlara
32:49değiniriz. Teşekkür ederim. Yeah.