Technology

Blockchain

Teknolojinin gelişmesi sonucu artık veriyi merkezi sistemlere kaydetmek mecburiyetinde değiliz. İstediğimiz her veri kümesinin dilediğimiz sayıda kopyasını çıkartarak ve bu kopyaları dağıtarak saklamamız mümkün. Artık verinin büyüklüğü, kopyalanarak bir çok noktaya dağıtılması için bir engel de teşkil etmiyor zira çok yüksek hızlı iletişim ağlarına sahibiz. Aslında bu Blockchain dünyasına giriş için gereken birinci aşamayı bize sunuyor.

Aşama 1: Dijital Kayıtların Evrimi

Tekrarlayacak olursak; önce bir kaydın tek bir kopyasına sahiptik, daha sonra bu kaydı birkaç bilgisayara dağıttık, daha sonra bu kaydın bir çok kopyasını bir çok bilgisayara dağıttık, nihayet her bilgisayar ki burda bilgisayar ifadesinin içerisine artık akıllı cep telefonları ve internete bağlanabilen diğer elektronik cihazalar da girmektedir, işlemin bir kaydını tutacak hale geldi. Bunun ana nedeni ise maliyetlerin zaman içerisinde ciddi şekilde düşmesiydi.

Moore, Metcalfe, Reed hatta Bezos kanunları olarak ifade edilen yaklaşımlar temelde bizlere aynı şeyi söyler: dijital teknolojilerde gelişim süreci o kadar hızlıdır ki her birkaç senelik dönemde teknolojik ilerlemeye kıyasla maliyetler ters orantılı olarak düşüş gösterir.

Bu gelişim bizi son aşamaya; yani temel olarak verinin, ucuzlayan iletişim ağları üstünden, bir çok sayıdaki bilgisayarlara dağıtılmasını pratik açıdan mümkün olduğu noktaya getiriyor. Bu noktada kayıtlarımız tüm sistemlere kopyalanmış oluyor.

Bu yaklaşıma Dağıtık Kayıt Defteri (Distributed Ledger) adı verilmektedir. Bu kavramın yeni bir kavram olmadığını ve geçmişte eDonkey ya da Bittorrent gibi ağlarda kullanıldığını anlatmıştık. Ancak bu ağların ortak sorunu üstünde tutulan verinin genelde şifrelenmemiş olmasıdır. Bu nedenle dileyen herkes bu verilere erişebilir. Bu noktada verileri şifreleyerek (kriptografi) ile dağıtık kayıt defterlerine aktarmak mümkün olabilir ama bu durumda veriyi şifreleyen kişi/taraf dışında hiç kimse bu veriden fayda göremeyecektir. Üstelik herhangi bir biçimde ağ noktalarının birisinde veri üstünde bir değişiklik meydana gelirse verimiz şifrelenmiş olsa bile tutarsız durumlar ortaya çıkabilir. Bu durum bizi ikinci aşamaya taşır.

Aşama 2: Dağıtık Kayıt Defterinde Nitelikler ve Süreçler

Birden fazla tarafın bulunduğu bir sistemde, sisteme eklenmesi istenilen her verinin geçerli bir standarda sahip olması beklenir. Böylece sistemin bütünlüğü korunabilecektir. Ancak dağıtık yapılar birbirini tanımayan taraflardan oluşabileceği için sistemin geneli tarafından kabul edilmiş kurallara bağlı bir yapı kurgulamak gerekecektir. Bu kurallar belli bir amaca hizmet edecek sistemlerin tasarım esnasında belirlenir ve kurallar farklı ihtiyaçlara göre değişiklik gösterebilir. Bu kurallar manzumesinin yapısına ve çalışma sürecine, her bir uygulamanın kendine özel olmak üzere, “mutabakat yapısı” adını veriyoruz.

Belli bir mutabakat yapısıyla kurgulanan sistemler içinde, tüm paydaşların uyduğu kuralların işleyiş sürecine de “mutabakat süreci” adını veriyoruz.

Sınırlı sayıda birey bir araya geldiklerinde el sıkışarak sözlü ya da yazılı bir kayıt ile bir mutabakat sağlayabilirler. Dijital bir sistem üstünde mutabakat yapısının sağlanması için bunun yazılım kodları kullanılarak güvence altına alınması lazım. İşte tam bu noktada Blockchain teknolojisi ortaya çıkıyor ve diyor ki, “Ben tüm bu problemleri çözeceğim. Baştan mutabakat yapısı (kuralları) belirlenmiş şekilde veriyi kaydetmenizi sağlayacağım. Daha sonra bu kayıtları iletişim ağları üstünden, bir çok noktaya dağıtacağım. Bu süreç içinde verinin tüm noktalarda aynı kaldığına dair güven duyulan bir mutabakat süreci sağlayacağım. Hatta bununla da kalmayacağım tüm kullanıcıların verilerini şifreleyeceği bir çözüm de sunacağım.”

Bu noktada Blockchain teknolojisi, dijital dünyada artık kolaylıkla oluşturabildiğimiz, güncellediğimiz ve hatta silebildiğimiz veri kullanım şekline değişik bir bakış açısı getiriyor; “Ben dağıtık bir veri kayıt sistemiyim” diyor ve ekliyor: “Sunduğum çözümde kaydedilen bir veri sonsuza kadar değiştirilemez, bu şekilde güven duyulan bir yapı ortaya çıkar.”

Blockchain Kayıt Yapısı

Blockchain teknolojisinde veri daima belirli bir sıralama yaklaşımı ile kayıt altına alınır. Bunu çok daha iyi anlamak için kurgusal ama basit bir örnek verelim;

Elinizde üstünde bir deliği bulunan 5 tane minik karton etiketiniz ve bir adet yeteri kadar uzun bir ipiniz olsun. 5 arkadaşınız ile düzenlediğiniz bir parti esnasında bir oyun oynayacaksınız. Oyuna bir etiketin üzerine adınızı yazarak bir imza atarak başlıyorsunuz. Sonra bu etiketi ipinize geçirip, bir düğüm atıyorsunuz. Daha sonra yakın bir arkadaşınız bir diğer etikete adını yazarak imza atıyor ve aynı ipe geçirerek düğüm atıyor. Bu işlemi 5 arkadaşınızın hepsi tekrarlıyor. Artık elinizde belirli bir sıra ile ilerleyen, her birinin üzerinde bir kişinin adı ve imzası bulunan etiketlerin düğümlendiği bir ipiniz var.

Blockchain kayıt sistemi de temelde bu örneğe benzer. Etiketlerimizi yazdığımız isimlerimiz veriyi ifade eder. Verilerin belirli kurallar ile yazıldığı her bir etiket ise Blok adı verilen yapıları ifade eder. Her bir blok kendi özel imzasına sahiptir. Blockchain uygulamalarında imzalar, kitabımızın ikinci bölümünde ayrıntıları ile ele almış olduğumuz özel bir matematiksel uygulamayla üretilir. İpimizin Blockchain sisteminde karşılığı ise zaman akışıdır, her bir blok oluşturulduğu anda bloğun üzerine tarih ve saat bilgilerini içeren bilgi de eklenir (ipimizde attığımız düğüm). Böylece her biri kendi imzasına sahip, belirli bir zamanda kaydı oluşturulan veri blokları sıra ile arka arkaya dizilir ve bir blok zincirini oluşturur. Bu yapıda ilk kayıt başlangıç bloğu olduğu için bu bloğa özel olarak Genesis adı verilir.

Blockchain Sıra Yapısı

Etiketlerimiz ve ipimiz ile uyguladığımız örneğimizi ile yolumuza devam edelim. Bu ip üstündeki herhangi bir etiketi aradan çıkartmak için o etiketi yırtmanız veya o etikete kadar tüm düğümleri çözerek o etiketi aradan çıkarttıktan sonra diğer etiketleri tekrar ipe sırayla düğümlemeniz gerekecektir. Hatta aradan çıkarttığımız etiketin yerini de değiştirebiliriz. Süreç biraz zahmetli olabilir ancak bunu başarmak mümkün. Bu tehlikeyi fark ettikten sonra, ortadan kaldırmak için, etiket zincirimizi yeni bir kural daha ekleyerek “mutabakat yapısını” tekrar oluşturalım ve oyunumuzu tekrar baştan oynayalım.

Geçen sefer olduğu gibi adımızı bir etikete yazıp, imzamızı attıktan sonra ipimize geçirip yine düğüm atıyoruz. Bu sefer bir diğer arkadaşımızın kendi adını yazıp imzasını attığı etiketin altına biz de ilk etiketin sahibi olarak kendi imzamızı atalım ve bu biçimde ipe geçirip düğüm atalım. Üçüncü sırada adını yazıp imzasını atan arkadaşımızın etiketine ise ikinci etikete adını yazan arkadaşımız imzasını atsın. Süreç bu biçimde devam ettiğinde ilk etiket hariç olmak üzere her yeni etikette o etikete adını yazıp imza atan arkadaşımız dışında, bir önceki etiketin sahibinin de imzası eklenmiş olacak.

Artık bu yeni binada zahmetli bir biçimde ipimizdeki düğümleri açıp, aradan bir etiket çıkartsak ya da yerini değiştirsek bile her bir etiket oluşturulduğu esnada kendinden bir önceki etiketin imzasına da sahip olacağı için etiket zincirimiz dikkatli bir şekilde kontrol edildiğinde rahatlıkla sıranın bozulduğu anlaşılabilecektir.

Blockchain yapısında da benzer bir yaklaşım kullanılır. İlk oluşturulan blok kendinden önce bir blok olmadığı için Genesis, yani başlangıç, bloğu olarak isimlendirilir ve yalnızca kendi dijital imzasını taşır ancak ardından gelen her bir blok kendisininki ile beraber, bir öncekinin de benzersiz imzasını içinde taşıyacaktır. Böylece sıralı bir kayıt yapısı dijital dünyada mümkün duruma gelir.

Blockchain Dağıtık Yapısı

Etiket örneğimizde arkadaşlarımız gönül rahatlığı ile eşsiz eserimizin sonsuza dek bir hatıra olarak kalacağını düşünerek evlerine gidebilirler ama son sıraya düşen arkadaşımız bu durumdan alınmıştır ve bizim çok iyi bir imza taklitçisi olduğumuzu bildiği için farklı düşünceleri olabilir 🙂

Teorik olarak bu olasılık imkansız değil. Özellikle dijital dünyada bir kaydın rahatlıkla kopyasının çıkartılabileceğini düşünürsek bu sıra değiştirme işi çok daha kolay olabilir. Bu nedenle oluşturmuş olduğumuz kayıtların yeni bir “mutabakat süreci” yapısına ihtiyacı var.

Neyse ki etiket oyunumuza başlarken bizim imza kopyalama yeteneğimizi bilen bir diğer arkadaşımız bu konuyu gündeme getirmiş ve “mutabakat sürecimizi” eşsiz bir hale dönüştürecek bir tavsiye yapmıştır.

Yeni yaklaşımda artık boş etiketler ve ip parçası yalnızca bizde değil, tüm arkadaşlarımıza dağıtılacaktır. Biz adımızı bir etikete yazıp imzaladıktan ve ipe geçirip düğüm attıktan sonra, herkes elindeki bir diğer boş etikete bizim adımızı yazacak ve bizden bu etiketi imzalamamızı isteyecektir. Daha sonra bunu kendi iplerine geçirip düğüm atacaktır. İkinci arkadaşımız kendi adını kendi etiketine yazıp imzaladıktan sonra bizlere imzalatacak ve ipine geçirerek düğüm atacaktır. Diğer herkes ellerindeki bir boş etikete ikinci arkadaşımızın adını yazıp bu arkadaşımız ile beraber ilk etiketi oluşturmuş olduğumuz için bizlere de imzalattıktan sonra ipe geçirip düğüm atacaktır. Bu şekilde 5 kişi sıralı şekilde baştan belirlemiş olduğumuz kurallara uyarak her seferinde bir birinin aynı sıraya sahip etiket zincirini oluşturacaktır.

Artık belirli bir kayıt “mutabakat yapısı” ve sıraya “mutabakat süreci” sahip ve üretilen zincirin kopyalarının herkese dağıtıldığı bir yapıya sahibiz. Bu durumda herhangi bir kişinin sıralama üstünde gerçekleştireceği bir manipülasyon ya da hile artık manasını kaybedecektir zira çoğunluk ellerindeki kayıtları bir biri ile karşılaştırıp çoğunluğun mutabık kaldığı yapıya güvenmeye devam edebilecek ve hile hurda yapmaya çalışanları oyundan atabilecektir.

Blockchain teknolojisi de tam olarak bize aynı yapıyı sunmaktadır. Veri yalnızca bir merkez ya da bir merkez grubu tarafından değil, sisteme dahil olan herkes tarafından kayıt altına alınmaktadır. Burada tarafların bir birini tanıması gerekmediği gibi güveni sağlamayı başaran şey kişiler arasındaki ilişkiler değil sistemin ilk başta belirlenen kuralları ve bu kurallar dahilinde üretilen kayıt zincirinin herkese dağıtılmasıdır.

Blok zinciri kayıtlarının dağıtıldığı tüm noktalar kendi aralarında iletişim halinde kalarak sistemin bozulmadığının teyidini gerçekleştirirler. Eğer veri kayıt zinciri yapısında aradan bir halka çıkarsa ya da değişirse zincir kırılır ve sistemin geneli kırık/bozuk halkaya sahip noktayı dağıtık kayıt defteri ağından çıkarır. Böylece geriye kalanlar zincirin kırılmadan devam ettiği noktasında mutabık kalarak sistemi kullanmaya devam eder.

Yazar

mrtkbilisim

Yorum bırak

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

İletişim
Merhaba Size Nasıl Yardımcı Olabiliriz ?