Dijital dönüşümün önemli başlıkların olan blokzincir gündemde kalmaya devam ediyor. Blokzincirin tanımını yaptığım yazıdan sonra şimdi blokzincirin temel özellikleri nelerdir bunu detaylandırmak istiyorum. Büyük yazılım şirketlerinin ciddi bütçeler ayırdığı projelere konu olan blokzincir teknolojisini eşsiz kılan özelliklere göz atalım.
Blokzincir Nasıl Popülerleşti?
Blokzincir yazılım ve donanım alalında yaşan gelişmeler sonucu birden fazla tekniğin akıllıca yorumlandığı bir kavram olarak günümüze kadar evrildi. Özellikle kriptoloji ve uçtan uca kaynak paylaşımı (peer to peer) kavramları Blokzincir temellerini oluşturan iki teknoloji. Bitcoin Manifestosu yayınlandığında altında yer alan teknoloji olarak hayatımıza girmiştir. Fakat belli bir süre kripto para ilgiyi üzerinde tuttu (hala ilgi büyük). Bir süre sonra bu yıkıcı yeniliğin teknoloji kendisinden daha fazla konuşulur hale gelince Blokzincir de konuşulmaya başlandı. Şimdi ise bu teknolojiyi doğru ve yerinde uygulayan girişimler oldukça yıkıcı bir inovasyon ortaya koyuyor.
Blokzinciri Farklı Yapan Özellikler Nelerdir?
Blokzincir, bir varlığın kimde ne kadar olduğunu, kimin kime ne kadar varlık aktardığı bilgisini zincir formunda tutan bir yapıdır. Blokzincir tek bir merkezin olmadığı dağıtık bir ağdan oluşur. Ağdaki her birim birbiriyle belli kurallar çerçevesinde haberleşir.
Ağa bir işlem eklemek için sadece gönderenin (yani varlığa sahip olanın) bildiği gizli bir anahtarla imzalanmış ama ağdaki herhangi bir kişinin bu imzayı teyit edebileceği bir blok üretmeniz gerekir.
Ağa eklenen her işlem hemen dağıtılır. Bilgiyi alan birim hemen doğrulama yaparak “doğru” veya “hatalı” bilgisini yanındaki ağlarla paylaşır. Belli sayıda uç aynı cevabı üretirse artık bu işlem “kabul” veya “red” edilmiş olur.
Ağda kalabilmek için belli kuralları yerine getirmeniz gerekir. Size gelen talepleri kurallara uygun olarak işlemeli ve isteneni yapmalısınız. Bunu yapmazsanız sistem sizin güvenilmez bir birim olduğunuza kadar verip bunu ağa bildirir.
Blokzincirin Temel Özellikleri
Yukarıda anlattığım yapının bu kadar yıkıcı etki yaratan özelliklerini anlaşılır ve sade bir biçimde sıralamak istiyorum. Anlatım kolaylığı olması açısından bir örnek ele alalım:
Örnek İşlemler:
- İşlem1 : Ahmet, Burak’a 10 TL verdi.
- İşlem2 : Burak, Canan’a 5 TL verdi.
- İşlem3 : Canan, Ahmet’e 20 TL verdi.
Zincire Dahil Olan Birimler:
- A Birimi
- B Birimi
- C Birimi
1. Dağıtıklık
A Birimi‘nin 1 İşlem1‘i yaptığını düşünelim. Klasik yaklaşımlarda bu bilgi kendinde kalır. Fakat blokzincir teknolojilerinde A bu işlemi en yakındaki birimlere bildirmek zorundadır.
İşlemler akıllı bir protokolle tüm ağa hızlıca yayılır. Bu sayede tüm birimler aynı bilgiye dağıtık olarak sahip olur. Peki dağıtım sırasında bilgilerin değişmeden kalması nasıl sağlanıyor?
2. Değişmezlik
A Birimi işlemi birimlere bildirebilmek için kendisinde 10 TL olduğunu ispat edebilmek için sadece varlık sahibinde olan “gizli anahtar” ile işlemi imzalar. Bu imzada hem işlem hem de işlemin ekleneceği bloğa ait bir adres de yer alır.
Böylelikle işlemler birbirine bağlanarak bloklara işlenir. Zincire yeni bir blok eklenirken hangi bloğa ekleniyorsa o bloğun adresi mutlaka sonraki bloğun adresi oluşturulurken kullanılır (özet fonksiyonlar ile / hash functions). Böylece hep bir öncekine bağımlı bir adres üretme mantığı kullanılmış olur. Aradaki bir işlemi değiştirmek için ilgili işlemden sonra üretilen tüm blokların değiştirilmesi gerekir. Aradan bir bloğu farklılaştırmak isterseniz ondan sonraki tüm blok adresleri değişir.
Yapılan işlem ve blok bilgileri de dağıtıldığı için yenisini yaymak çok büyük bir çaba ister. Ağdaki birimlerin %51’ini elinizde tutarsanız bir ihtimal olabilir. Örneğin Bitcoin için ağın %51’ini ele geçirmek pek mümkün görünmemektedir.
3. Kesintisiz Çalışma
Blokzincirin çalışma yapısı merkezi olmadığı için ağdaki bir birimin çalışmaması sistemi kesintiye uğratmaz. Zaten açık bir blokzincirinde kuralları yerine getirenler ağa dahil olabilirler (örnek: bitcoin). Kurallara uymazsanız ağ sizi reddeder. Eğer uyarsanız siz de ağa işlem gönderebilirsiniz.
Dağıtık yapı sayesinde birimlerin büyük çoğunluğunu aynı anda çalışmaz hale getirmeden sistemi kesintiye uğratmanız çok zordur.
4. Uzlaşma
İyi tasarlanmış bir blokzinciri sağlam bir uzlaşma algoritmasına sahiptir. Uzlaşmayı bir oylama gibi düşünebiliriz. Bir birim sisteme bir işlem gönderiyor. En başta bu güvenilmez bir işlemdir. Örneğin A Birimi İşlem1′i ağa gönderdi. Uzlaşma algoritmasıyla B Birimi bu işlemi onaylayabilir veya onaylamayabilir. Eğer A’dan gelen işlem sahte ise onay algoritmasından geçemeyecektir. Eğer A gerçekten 10 TL’ye sahipse ve bu sahip olduğu varlığı transfer ediyorsa B‘den onayı alacaktır.
Fakat sadece B‘nin oy vermesi yetmez. Bu işlemi alan C‘nin de oyunu kullanması gerekir. Böylece ağda kaç birim varsa çoğunluğun kararı neticesinde bu işlem gerçek olur veya bu işlem reddedilir. Bu işlemin çok hızlı yapılabilen bir işlem olması gerekir. Örneğin Bitcoin uzlaşması şöyle olur; B’ye ulaşan imzalı işlem “açık anahtar” ile kontrol edilir ve sonuç dağıtılır.
Uzlaşma blokzincirin önemli özelliklerindendir. Uzlaşma yine kriptolojik metotlarla güvence altına alınır. Böylece kimsenin birbirini tanımadığı bir ortamda güven sağlanır.
5. Şeffaflık
İşlemlerin dağıtık, değişmez ve uzlaşılmış olarak kaydedilmesinin yanında; blokzincir ile bu yapılanların şeffaf olarak sunulmasını da sağlamak mümkün. Ahmet’in bağış yapan birisi ve Burak’ın da bağış alan birini temsil ettiğini düşünelim. Bu durumda yapılan transferlerin şeffaf olması oldukça önemli. Klasik yaklaşımlarda bu şeffaflığı sağlamak hiç de kolay değildir. Blokzincir protokolleriyle gerçekleşen işlemler dağıtıklık, değişmezlik ve uzlaşma özellikleri sayesinde şeffaf bir şekilde gözler önündedir.
Son Yorum
Blokzincir teknolojisi dönüşüm çağında kısa sürede unutup geçeceğimiz bir başlık gibi durmuyor. Daha çok konuşacağız anlaşılan.
Blokzincirin temel özellikleri olan dağıtık mimarı, değişmezlik, kesintisiz olmak, uzlaşma ve şeffaflık özelliklerini tek bir altyapıda birleştiren bu teknoloji farklı sektörlerde inovasyon sağlayamaya başladı. Daha yolun başında!