Bilgisayar bilimi açısından yapılan tanıma göre Bizans Generalleri Sorunu, tamamen başarısızlıktan kaçınmak için ilgili tarafların tek bir strateji üzerinde hemfikir olması gerekirken, tarafların bazılarının yozlaşmış ve yanlış bilgi yayması şeklinde açıklanabilir.
Bizans Generalleri Sorunu, Bitcoin’in proof-of-work konsensüs algoritmasının nasıl işlediğine ve bunun genel olarak diğer konsensüs algoritmalarını anlama kabiliyetini nasıl etkilediğinin çok önemli bir örneği olarak karşımıza çıkar.
Bizans Generalleri Problemi
Bir hikayeleştirme olarak şu şekilde anlatmak istersek:
Bir şehri kuşatmak için tam zamanında geldiniz ve şehrin kuşatmasını sağladınız. Ancak karmaşık bir lojistik sorunla karşı karşıya kaldınız. Düşman şehrinin her iki tarafında birer tane ordu ile hazırda bekliyorsunuz ve çift taraflı olarak saldırmanız gerekiyor. Şehir, ordularınızdan birine karşı kendini savunacak kadar güçlü. Ancak aynı zamanda ikisine karşı şehrini savunacak kadar güçlü değil. Eğer aynı anda saldırıyı gerçekleştiremezsiniz kaybedeceksiniz…
Bu nedenle, her ordunun generallerinin ne zaman saldırı yapacakları konusunda aynı fikirde olması gerekir. Düşman şehir içinde ileri geri bir elçi göndererek iletişim kurabilirsiniz. Örneğin, General A “Hey General B, Perşembe günü saldıracağız. Size de saldırmanız konusunda size güvenebilir miyiz?”. General B Perşembe günü saldıramayacaklarını Cuma günün uygun olduğunu dile getirir bunun üzerine haberci bu mesajı iletmek üzere tekrar şehirden geçerek karşı tarafa gider.
Ancak haberci şehirden geçerken yakalanabilir ve başka bir elçi ile yer değiştirmesi sağlanabilir. Bu da savaşı kaybetmenize sebep olur.
Mesajın gerçek olup olmadığını kontrol etmenin bir yolu yoktur. Peki, karadaki en iyi askeri stratejistler olarak, şehre saldırmada zafer kazandıran “güvenilir” bir sistemi nasıl yaratırsınız?
İşte bu, Bizans Generalleri Sorunu…
Bizans Generalleri Sorunu ve Bitcoin
Yukarıdaki ikilem mutlaka iki generalle sınırlı değildir. Bitcoin’inki gibi dağıtık bir ağda, tüm katılımcılar ve node’lar esasen eşit olarak hiyerarşiye sahiptir. Bu nedenle iki taraf arasında doğrulama ve anlaşmaya varmaya ihtiyaç duymak yerine, tüm katılımcıların, yozlaşmış veya yanıltıcı oyuncuları etkisiz hale getirirken aynı zamanda onaylamaları da gerekiyor. Bütün bu node’lar arasındaki anlaşma tahmin ettiğini gibi fikir birliği ile sağlanır.
Bizans Generalleri Sorununun çözümü hiçbir şekilde basit değildir. İletiyi doğrulamak için biraz hash, ağır hesaplama çalışmaları ve tüm node’lar (generaller) arasında iletişim gereklidir ve bu sorun Bitcoin’de madencilik ve hash işlemleriyle çözülür…
Bitcoin ve Blockchain teknolojisi hakkında daha detaylı teknik bilgi almak istiyorsanız bu makalemize göz atabilirsiniz.