5 soruda blok zinciri – 5: Neden tek bir zincir muteber?

Cem Say
5 soruda blok zinciri – 5: Neden tek bir zincir muteber?

Blok zinciri birbirine güvenmeyen binlerce öğeden oluşuyorsa, ödüllü “blok kurma bulmacası”nı ilk çözen bilgisayara diğerleri neden uyarak kendi belleklerindeki kütüklere onun duyurduğu bloğu eklesin?

Zincirin farklı kopyalarının oluşmasına engel olan nedir?

Blok zinciri yazı dizimizde geçtiğimiz haftalarda önemli işlem bilgilerini (sözgelimi, kimlerin kimlere hangi sırayla kaç para havale ettiğini) merkezî bir merciye bel bağlamadan tutup güncelleyebilmek için bir yöntem tarif etmiştik:


Veri tabanına yazılmak üzere dünyanın dört bir yanındaki kullanıcılarca ağdaki tüm bilgisayarlara duyurulan yeni işlemlerden birkaç tanesi “blok” adı verilen bir tür pakete konuluyor, bu yeni bloğun adının ne olacağının hesaplanması zor bir bulmacayı çözmeyi gerektirdiğinden birbiriyle yarışan binlerce hızlı “madenci” bilgisayardan biri bunu ortalama on dakika içinde başarıyor, “başardım” diyen bir madencinin ilan ettiği çözümü ağdaki herkes hızlıca kontrol ediyor, böyle bir çözümün doğru olduğunu gören herkesin de artık bu duyurulan bloğu zincirin kendi tuttuğu kopyasının ardına eklemesi ve bu bloğun içine yazılmış işlemleri paketleme hevesinden vazgeçip yeni duyurulan birkaç işlemle yeni bir blok yaratma hedefiyle yeni bir bulmacayla uğraşmaya başlaması bekleniyor.

Şimdi her biri başına buyruk binlerce farklı kişinin bu kurallara uyup kazananın hakkını teslim etmesini sağlayan gücün ne olduğunu göreceğiz. Ağdaki her bilgisayar blok zincirinin kendi tuttuğu kopyasının doğru ve güncel kopya olduğunu iddia edebilir tabii.

Blok zinciri oyununun ana kuralı, ortalıkta birden fazla (imza bilgileri doğru) zincir görülüyorsa muteber olanın (yani sizin de kullanıp güvenmeniz gerekenin) bunların en “emek yoğun” olanı (yani blokların art arda eklenmesi için en çok hesaplama gücünün harcanmış olması gerekeni) olduğunu söylüyor. (Daha önce gördüğümüz gibi her bloğun zorluğu adının başındaki 0’ların sayısıyla ilgili, böylece zincirin üretilmesinin toplam zorluğunu hesaplayabiliyoruz.) Duyurulan yeni blokları kendi zincir kopyasına eklemeyi ihmal edenlerin (zaten son değişiklikleri de içermeyen) zincirleri bu yüzden itibar görmüyor, kimse yüzlerine bakmıyor.

Bu yüzden kendi kopyasına inanılmasını isteyen herkes, en emek yoğun zinciri tutmak zorunda. (Para bir inanç işidir. Bitcoin, kimin kime kaç para verdiği bilgisinin en emek yoğun zincirde yazılı olduğuna inananlar arasında oynanan bir oyundur mesela.)

Peki mevcut zincir hangisiyse ondan daha emek yoğununu kendi bilgisayarımda (kendimi zengin edecek uydurma işlem bilgileriyle) kurup yayınlayamaz mıyım? Başkalarının adına hayali işlemler yapamam, sözgelimi bana para havale ettikleri yalanını uyduramam, çünkü gizli anahtarlarını bilmediğimden imzalarını atamam. Ama işlem gücüm yeterse “çifte harcama” yapabilirim:

Bunun için önce saf satıcı Saffet’e zincirin mevcut kopyasını inceleyen herkesin halen benim hesabımda olduğunu teyit edebileceği bir miktar para havale ettiğimi anons ederim. Başka bir madenci, Saffet’e yaptığım bu ödemenin bilgisini yeni bir blokta zincire eklemeyi başarıp bunu duyurur. Saffet de paranın artık kendi hesabına geçtiğini dünya alemin bildiğine güvenerek bana istediğim ürünü teslim eder. Bu noktada ben sanki az önceki anonsu yapmamışım gibi aynı parayı suç ortağım Veli’ye havale ettiğimi duyurur ve bir yandan da üstün güçlü bilgisayarımla Saffet’e yapılan havaleyi içeren bloğu yok sayarak zincirin eski haline onun yerine Veli’ye yaptığım havale bilgisini içeren bir blok, onun üstüne de bu sahte zincir daha emek yoğun olup kabul görsün diye bir tane blok daha üretmeyi başarabilirsem yeni muteber zincirde kendisine yapılmış bir ödeme bulunmayan, yani o paraya sahip olduğu kayıtlarda yer almayan Saffet hem ürününü elden çıkarmış, hem de karşılığında bir şey alamamış olur. Para bir cebimden diğerine geçmiş durumdadır. Bu yöntemle aynı parayı tekrar tekrar harcayabilirim.

Ama kaygıya gerek yok. Görüldüğü gibi böyle bir hileyi yapmak isteyen kişinin bilgisayarı (ya da bu iş için satın aldığı bilgisayarlar grubu) bu hileden çıkarı olmayan, tam tersine Saffet’e yapılan havaleyi kayda geçirerek ödülünü almak isteyen ağdaki tüm diğer bilgisayarlarla yarışıp onları bir değil, iki kez geçmek zorunda. Bunu başarmak için ağdaki toplam işlem gücünün yarısından çoğuna sahip olmak gerek. Blok zincirinin zayıf noktası bu. Gücün yarıdan fazlası bir grubun eline geçerse o grup çifte harcama yapabiliyor. Bu gasp, sisteme ne kadar çok kişi katılırsa o kadar zorlaşan bir iş. Dahası da var: Bu kadar ciddi işlem gücü olan birisi için “alnının teriyle” dürüstçe madencilik yapmak, yani zincire kurallara uygun yeni bir blok eklemek için yarışa girmek, mevcut blokları arkadan yetişip geçmekten daha kolay bir iş!

Madencilikte sürekli başarı da iyi para kazandıran bir iş olduğundan zinciri bozmanın parasal bir getirisi olmuyor. Bazen bulmacayı aynı anda, ya da birbirine çok yakın zamanlarda birden fazla madenci çözebilir. Haberin ağda komşudan komşuya yayılma düzenine göre böyle durumlarda ağın için de son blokları açısından farklı zincir kopyaları oluşabilir. İşte bu yüzden satıcıysanız size yapılan havalenin son blokta olmasıyla yetinmemek iyi bir fikir olabilir.

Yarış sürdüğünden ve bu zincirlerin sonraki bloklarının da aynı anlarda üretilme ihtimali sıfıra yaklaştığından birkaç adım sonra nasılsa bir zincir diğerleriyle boy (ve dolayısıyla emek yoğunluğu) açısından farkı açacaktır. Bu durumda kısa kalan zincirleri tutan bilgisayarlar için mantıklı hareket kendi kopyalarını bırakıp uzun zinciri benimsemektir. Ödemenizi içeren blok zincirin sondan altıncı konumuna vardığında başına böyle bir kaza gelmesi ihtimali rahatlıkla ürününüzü alıcıya verebileceğiniz kadar sıfıra yaklaşmış demektir, bu da Bitcoin’de yaklaşık bir saat sürer.

Cem Say / [email protected]

Cem Say

1987'den beri Boğaziçi Üniversitesi Bilgisayar Mühendisliği Bölümü'nde çalışıyor. Çalışmaları Yapay Zeka ve Kuramsal Bilgisayar Bilimi üzerine. Sahte dijital deliller üzerine incelemeleri var. Bilimkurgu, uzay yolculuğu, seçim hileleri ve başka bir çok konuya da meraklı.