Kamer Elciyar yayınladığı Medium yazısında blockchain teknolojisi ile hayatımıza giren merkeziyetsizlik kavramından ne anlamamız gerektiğini anlatıyor. Okuyucularımıza aktarıyoruz.
Kripto paraların hayatımıza girmesiyle beraber merkeziyetsizlik kavramı da sıklıkla duyduğumuz kelimelerden biri oldu. Blockzincir teknolojisinden ve kripto paralardan bahsederken bu teknolojilerin merkeziyetsiz olmasını övüyoruz. Blokzincir dünyasında gün aşırı merkeziyetsiz bir uygulamanın çıktığını duyuyor ve çoğunlukla bundan mutluluk duyuyoruz. Bir çoğumuzun merkeziyetsiz internete dönüş gibi büyük hayalleri var. Peki ya bu kavramın üzerine yeterince düşündük mü? Merkeziyetsizliğe gerçekten ihtiyacımız var mı? Merkeziyetsizliği başarabildik mi? Bunu başarmak gerçekten mümkün mü?
Dünyayı şekillendireceğini düşündüğümüz bu teknolojinin vaadettiği yenilikleri iyice ölçüp tartmamız gerektiğini düşünüyorum. En azından bu yeniliklere gerçekten ihtiyacımız olup olmadığını bilirsek projelerin etiketlerinden çok hayatımıza getireceği faydaya göre değerlendirebiliriz. Yoksa adının başında decentralized yazan veya etiketinde dApp olan her proje bize güzel görünür.
Merkeziyetsizlik nedir?
Öncelikle merkeziyetsizliği anlayalım. Bu kavram Türkçede de İngilizcede de merkezin olmayışıyla kendine bir tanım bulduğu için önce merkezi olmayı tanımlayıp ondan sonra merkeziyetsizliği anlamaya çalışmak daha doğru. Bir örnekle başlayacağım. Örneğin markete gittiniz ve kasada kredi kartınızı uzattınız. Kasiyer bakiyenizin yetersiz olduğunu söyleyerek sizden başka bir kart vermenizi veya nakit ödeme yapmanızı rica etti. Fakat hesabınızda yeterli para olduğuna kesin eminsiniz. Böyle bir olayın gerçekleşme olasılığı çok düşük fakat kartı ATM’ye taktığınızda da 0 TL bakiye gördünüz. Bu durumda ne yapmanız gerekiyor? Paranızın var olduğuna emin olmanız yeterli değil, kasiyeri ikna etmeniz de anlamsız. Paranızın gerçekten var olabilmesi için bankanın ikna olması gerekiyor. Çünkü banka sistemi merkezi bir sistemdir. Yani tepedeki bir sistemin kendi altında bulunan sistemleri yönettiği, bir bilginin geçerli olmasının tek koşulunun hiyerarşinin tepesindeki aktörün bu bilgiyi doğrulaması olduğu bir sistem. Daha sıra dışı bir örnek vereyim. Bir gün yolda giderken GBT sorgusuna takıldınız ve sorguyu yapan polis memuru, sistemde TC kimlik numaranızın bulunmadığını söyledi. Yıllardır taşıdığınız bir kimlik, siz kendinizden eminsiniz fakat bu durumda sizin emin olmanız bir şey ifade etmez. Sizin, ailenizin, arkadaşlarınızın veya sizi tanıyan herkesin bu bilgiyi doğrulaması da bu bilgiyi geçerli yapmaz. Devletin, yani merkezi olan bu sistemin doğrulamadığı tüm bilgiler geçersizdir.
Merkeziyetsiz bir sistemden bahsettiğimiz andan itibaren merkezi sistemde uygulanan yukarıdan-aşağıya(top-down) doğrulama hiyerarşisi yerine yatay bir karar verme mekanizması devreye girer. Yani paranızın olduğunu ispat etmeniz gereken merkez ortadan kalkar, bunun yerine yeterli sayıda insanın sizin paranız olduğuna ikna olması gerekir. Aynı şekilde kimliğinizi doğrulamak için arkadaşlarınızın, ailenizin, sizi tanıyan kişilerin kefil olması yeterli olabilir.
Merkeziyetsizlikle karıştırılan bir kavram var, dağıtıklık. (distribution) Dağıtık bir sistemde, bilgi veya sistemin hesaplama gücü, sistemdeki düğümler arasında paylaştırılır. Buna örnek olarak DNA analizinin gerektirdiği yüksek işlem gücünün bir ağdaki bilgisayarlar arasında paylaştırılmasını verebiliz. Dolayısıyla bir sistem hem merkezi hem de dağıtık olabilir. Aynı şekilde bir sistem hem merkeziyetsiz hem de dağıtık olabilir.
Merkeziyetsizlik tanımını bitirmeden değinmek istediğim bir konu var. Ethereum’un kurucusu olan Vitalik Buterin, “The Meaning of Decentralization” adıyla yayınladığı bir yazısında üç tip merkeziyetsizlikten bahsediyor.
1. Mimari Merkeziyetsizlik (Architectural decentralization ): Sistemdeki bilgisayar sayısıyla ve sistemin devre dışı kalan düğümlerden kaçını tolere edebileceğiyle ilgilidir.
2. Yönetimsel Merkeziyetsizlik (Political decentralization ): Sistemdeki bilgisayarları yöneten kişi ve kurum sayısını belirtir.
3. Mantıksal Merkeziyetsizlik: Sistemi iki veya daha fazla parçaya böldüğümüzde sistemin buna vereceği tepkiyi ve sistemin tek bir büyük bilgisayar gibi davranıp davranmadığını kapsar.
Public blokzincirler yönetimsel merkeziyetsizdir. Çünkü herhangi kişi ve kurumun sistemi yönetme yetkisi yoktur. Aynı zamanda mimari merkeziyetsizdir çünkü mimari olarak tek hata noktası (single point of failure) yoktur. Sisteme bağlı birden fazla cihaz olduğu için her düğüm kayıt defterinin bir kopyasını tutar. Ancak tek bir bilgisayar gibi davrandığı için mantıksal merkeziyetsiz değildir.
Merkeziyetsizlik bize ne vadediyor?
Blokzincirle beraber hayatımıza daha çok giren merkeziyetsizlik kavramının dünyanın büyük çoğunluğunu heyecanlandırdığını kabul etmek lazım. Bence bunda iki büyük etken var. Birincisi merkeziyetsizliğin bize vadettikleri. Zira vadettiği şeyler birçok soruna çözüm buluyor. Diğeri ise şu, yakın zamanda Deniz Özgür’ün de ifade ettiği gibi merkeziyetsizlik kavramının içi boşaltılıyor. Çünkü birçok kişi merkeziyetsizliği sindirmeden süslü cümlelerle merkeziyetsizliği övüyor. Amaç, merkeziyetsizliğin bize vadettikleri olması gerekirken merkeziyetsizliğin kendisi bir amaç haline dönüşüyor ve ürünün sunduklarından çok tam olarak uygulanıp uygulanmadığından emin olmadığımız bir teknoloji bizi tatmin ediyor. Bu yazıda anlatmaya çabaladığım şey de bu aslında. Merkeziyetsizliğin bir araç olduğunun bilincine varmak ve bu aracın hangi sorunları çözebileceği üzerine düşünebilecek altyapıyı hazırlamak. Peki merkeziyetsizlik bize ne vadediyor?
Hata Toleransı
Karşımıza en çok çıkan argüman muhtemelen bu. Mantığı da gayet basit ve sistemin dağıtık olmasının sağladığı bir avantaj. Teknik alana çok fazla girmeden bir örnekle açıklayacağım. İnternette bir dosyayı indirmek istediğinizde sunucuda bir noktaya HTTP isteği gönderirsiniz. İletişime geçtiğiniz tek bir nokta vardır. Eğer o an o sunucu size cevap veremezse hata alırsınız. Bu hatayı telafi etmenin bir yolu yoktur. Ama merkeziyetsizliğin örneklerinden biri olan ve 2004 yılında kurulmuş olan BitTorrent, dosya paylaşımı için daha farklı bir yaklaşım kullanır. Ağdaki her cihaz aynı zamanda birer sunucudur. Dolayısıyla bir dosya indirmek için birden fazla sunucuya istek gönderirsiniz ve dosyayı bu sunuculardan parçalar halinde indirirsiniz. Eğer ağda herhangi bir sunucu dosya aktarımı sırasında ağdan düşerse başka bir sunucuya istek gönderilir. Sistemde o dosyayı barındıran hiçbir sunucu kalmayıncaya kadar indirme işlemi devam eder. Böylece yüksek oranda hata toleransı sağlar.
Buraya kadar hiçbir sorun yok. Ama hata toleransını sağlamak elbette bu kadar kolay değil. Örneğin sadece Türkiye’de kullanılan ve ülke vatandaşlarına yönelik merkeziyetsiz bir uygulama düşünün. Ülke çapında oluşabilecek bir internet kesintisinde sistem devre dışı kalacaktır. Böyle bir kesinti daha önce oldu. Dolayısıyla 82 milyon düğümlük dağıtık bir sistem dahi olsa hata toleransını başaramama ihtimali mevcut. Bu sadece ihtimallerden biri. Kısa bir beyin fırtınası ile birçok senaryo çıkarılabilir.
Saldırı Dayanıklılığı
Merkezi bir sistemde genellikle saldırı yapacağınız hedef bellidir. Bir veya birkaç sunucuya saldırı yapacaksınızdır. Dolayısıyla elinizdeki kaynakları ona uygun olarak düzenleyebilirsiniz. Örneğin herhangi bir sisteme saldırmaya yetecek kaynağınız yoksa zaafiyetlerini ararsınız ve minimum maliyetle maksimum zafiyeti yaratacağınız bir nokta ararsınız. Bu, hassas bilgilerin tutulduğu bir yer olabilir, kritik işlemlerin yapıldığı bir yer olabilir, hayal gücünüze kalmış. Fakat merkeziyetsiz bir sistemde böyle bir nokta yoktur. Eğer saldırmanız gereken bir hedef varsa bu hedef, ağın tamamı olur. Dolayısıyla saldırı dayanaklılığı büyük ölçüde artar.
Hileli İş Birliği Direnci (Collusion Resistance)
Bu başlığın Türkçe karşılığını bulmak zor olduğundan İngilizce’sini de ekledim. Hileli işbirliğinden kasıt ise şu, bir topluluğun içinde bu topluluğun çıkarlarına uygun hareket etmeyen kötü niyetli bazı gruplar olabilir. Bu oluşuma collusion diyoruz. Örnek vermek gerekirse 4054 Sayılı Rekabetin Korunması Hakkında Kanunun amaçlarından biri piyasada oluşabilecek hileli iş birliklerini(collusion) önlemektir. Buna yönelik olarak ülke sınırları içinde faaliyet gösteren ve piyasaları olumsuz etkileyecek nitelikte her türlü teşebbüsü engelleyici düzenlemeler yapar. Hileli iş birliği kelimesinin neyi kastettiğini açıklığa kavuşturduktan sonra bunu bir de merkeziyetsiz sistemler bağlamında inceleyelim.
Fikir birliği (consensus) algoritmalarında genellikle yapılan işlemin geçerli sayılabilmesi için gereken bir çoğunluk olur. 51 saldırıları da adını buradan alır. Yani ağdaki bilgisayar gücünün yüzde 50’sinden fazlasına sahip olduğunuzda sistemde double-spending yapabilirsiniz. Hatta 21 Nisan 2019’da yayınlanan bir makaleye göre Ethereum ağında 25%’lik bir işlem gücüne sahip olmanız durumunda sistemde selfish-mining zafiyetini kullanabiliyorsunuz. Yani Ethereum ağında kötü maksatlar ile bir araya gelen yüzde 25’lik bir çoğunluk ağı zafiyete uğratabiliyor. Yani merkeziyetsiz sistemlerin bu konuda tam bir dirence sahip olduğunu söyleyemeyiz. Ama bu direnç merkezi sistemlere göre daha iyi durumdadır. Dağıtıklık ne ölçüde artarsa bu iş birliğine karşı direnç o ölçüde artar. Merkezi sistemlerde ise zaten sistemde söz hakkı olan aktörlerin sayısı az veya tek olduğundan bu iş birliğine karşı direnç yok denecek kadar azdır.
Merkeziyetsizliği başarabildik mi?
Merkeziyetsizliğin bize vadettiği şeylerin bir kısmını olası eksik yönleriyle beraber inceledik. Peki şu anda merkeziyetsizliği başardık mı? Biraz da bunun üzerine kafa yoralım.
Öncelikle şunu belirtmekte fayda görüyorum. Merkezi veya merkeziyetsiz olmak siyah-beyaz gibi net bir ayrıma sahip değil. Değerlendirme yaparken “ne kadar merkezi?” veya “ne kadar merkeziyetsiz?” gibi soruları sormak daha doğru olacaktır. Bitcoin’i ele alalım. Zira merkeziyetsizlik deyince aklımıza ilk gelen örnek genelde Bitcoin oluyor. 2014 Mayıs ayında, yani bundan tam 5 sene önceki hashrate dağılımına baktığımızda GHash %32 ile başı çekiyor. Arkasından F2Pool 13%, BTC Guild 12% ile takip ediyor. Yani üç büyük aktör toplamda 57%’lik bir hashrate’e sahip. Elimizdeki en güncel veri olan 2019 Nisan verilerine baktığımızda ise 16% ile BTC.com ilk sırada. Arkasından AntPool 12%, F2Pool 11% ile takip ediyor. Yani ağdaki üç büyük aktörü topladığımızda hashrate’in yüzde 39’unu teşkil ediyor. Bu açıdan baktğımızda hashrate’in dağıtık olması açısından olumlu bir ilerleme var. Ama hayal ettiğimiz türden bir merkeziyetsizlik değil. Peki bitcoin’e ulaşma araçlarımız? Üçüncü parti bir aracıya, merkezi bir sisteme başvurmadan Bitcoin alan/alabilen kaç kişiyiz? Bu soruların cevapları aslında tam merkeziyetsizlikten henüz uzak olduğumuzu gösteriyor. Paramızı merkezi bir banka yerine merkezi bir borsada tutmamız gerçekten mantıklı mı? Kaçımız kripto varlıklarını merkezi olmayan bir yerde tutuyor? Bu sayı gün geçtikçe kesinlikle artıyor ama tatmin edici bir sayıya ulaşana kadar tam merkeziyetsiz bir sisteme sahip olduğumuzu söylemek güç. Teoride merkeziyetsiz olabilir ama pratikte merkezi sistemlere ihtiyacımızı azaltamıyorsak merkeziyetsizliğin vadettiği yeniliklerden uzağız demektir.
Kısaca toparlamak gerekirse merkeziyetsizliği başarmış sistemler var. Fakat tam anlamıyla hayal ettiğimiz seviyede değiller. Bu ivmeyle yükselen bir teknolojinin hayal ettiğimiz günlere gelmesi işten bile değil. Sadece merkeziyetsizlik fikrinin arkasında yatan sebepleri iyice sindirmemiz lazım. Bu da ancak üzerine kafa yorarak olur. Bir teknolojinin felsefi temellerinden bağımsız olarak yayılması beklenemez.
Madem merkeziyetsizlik yenilikler sunuyor, kurumlar neden merkeziyetsiz sistemlere geçiş yapmadı?
Merkeziyetsizliğin bize sunduğu yenilikleri düşündüğümüzde bu yaklaşımın hayatımızın daha çok içinde olmasını bekleriz. Fakat pratikte çok da fazla değişikliğin olduğu söylenemez. Bu da doğal olarak bir soruyu getiriyor, kurumlar neden merkeziyetsiz sistemlere geçiş yapmadı?
Merkeziyetsizlik ve blokzincir üzerine konuşulanları gözlemlediğimizde insanların sık sık yanılgıya düştüğü bir konuyla karşılaşıyoruz. Birçok kişi sırf merkeziyetsizlik fikrini benimsediği için her sektöre ve ihtiyaca uygulanabileceğini düşünüyor. Ancak durum öyle değil. Bu fikir bizi yazının başlarında bahsettiğim teknolojiyi araç yerine amaç olarak kullanma sorununa getiriyor. Eğer sistem içinde aktörlerin birbirine karşı veya aktörlerin sistem dışındaki aktörlere karşı şeffaflık ihtiyacı yoksa, gizlilik ihtiyacı yoksa, bilginin tüm aktörler arasında güncel ve doğru olması önemli değilse, bilgiyi oluşturma ve yazma yetkisi yalnızca bir merkezdeyse, aktörler arasında karşılıklı bir güven ilişkisine ihtiyaç yoksa blokzincir kullanarak merkeziyetsizlik uygulamanıza gerek yok. Biraz da blokzinciri hayatımızda neden daha fazla görmediğimize bakalım.
- Bir kurumun blokzincir kullanmasının genelde üç temel sebebi olur. Hız, düşük maliyet ve merkeziyetsizlik. Fakat bu teknolojinin nispeten yeni bir teknoloji olmasından dolayı bu üç isteği de karşılamak kolay değil.
- Büyük kurumlar genellikle saniyede yüzlerce işlem kapasitesine ihtiyaç duyarlar. Bunun için ölçeklenebilirliği yüksek bir zincire ihtiyaç var. Bu da blokzincirin en büyük sorunlarından biri.
- Binlerce, milyonlarca lira yatırımları bir sisteme yatıracak yöneticiler bu teknolojiye tamamen güvenebilmeli. Kendini tamamen ispat edecek seviyeye gelmesine zaman olan ve yeterince olgunlaşmayan bir teknolojiye yatırım yapacak cesarete sahip olmak için bu fikri sindirebilmek lazım.
Sonuç
Bu yazıda merkeziyetsizlik ve biraz da blokzincir üzerine düşüncelerimi aktarmaya çalıştım. Bu iki kavram beni de heyacanlandırıyor fakat eleştirmeden ve eksik yanlarını aramadan bu teknolojiyi daha iyi bir seviyeye getiremeyiz. Bu sebeple biraz eleştirel yaklaşmaya çalıştım. Bir cümle ile yazdıklarımı özetlemek gerekirse, merkeziyetsizlik fikri günümüzde birçok sorunun çözümüne götürüyor bizi. Bu, bizi sorunlara tozpembe bakmaya götürmemeli. Ancak doğru değerlendirmeler yaparak bu aracı bizi doğru amaçlara götürmesi için kullanabiliriz.