Kripto para yatırımcılarının korkulu rüyası blockchain’de çift harcama nedir? Double Spending olarak da bilinen bu durum, kripto topluluğu için büyük bir endişe kaynağı olan önemli bir sorundur. Bu problem, kripto para birimlerinin dijital özelliklerinden yararlanmayı içerir. Çift harcama sadece kripto para ile sınırlı kalmayıp, tüm blok zinciri yapılarında da karşılaşılan bir sorundur.
Business 2 Community olarak bu yazımızda, çift harcamanın ne olduğunu, çift harcama saldırılarının nasıl meydana geldiğini, bunları önlemek için alabileceğiniz önlemleri sizler için hazırladık.
Blockchain’de Çift Harcama Nedir?
Blockchain, bir dizi işlem bloğundan oluşur ve her yeni blok, tüm genel işlem verilerini ve yeni bloğun eklenme tarihini içeren bir hash, yani kriptografik bir işlev bulundurmalıdır.
Blockhain’de çift harcama ise birinin aynı kripto parayı iki kez harcaması durumuna verilen isimdir. Başka bir deyişle, hizmetlerin bir nihai bloğu nihai olmayan bir blok olarak yanlışlıkla kabul etmesidir. Diğer nedenler arasında hizmetlerin işlemleri düzgün bir şekilde onaylamaması ve aynı miktarı istemeden birden fazla harcaması yer alır. Hatalı akıllı sözleşme mantığı da çift harcama sorunlarına yol açabilir. Çünkü sağlam bir imza doğrulaması olmadığında kullanıcılar aynı token’ları iki kez harcayabilir.
Çift harcama problemini daha iyi anlamak için şöyle bir örnek verebiliriz:
Metin, 1 ETH’e (Ethereum) sahip. X ve Y adlı iki satıcıdan hizmet almak istiyor. Aynı ETH’nin birçok kopyasını oluşturuyor ve bunları saklıyor. Metin, önce orijinal ETH’yi satıcı X’e gönderiyor ve karşılığında hizmet alıyor. Ardından, 1 ETH’nin bir kopyasını satıcı Y’ye gönderiyor. Bu işlem diğer madenciler tarafından onaylanmadığı için, satıcı Y ETH’yi kabul ediyor ve hizmeti sağlıyor. İşte burada kullanılan kripto geçersiz oluyor. Bu işleme de “Çift Harcama” (Double Spending) deniyor.
Ayrıca Bknz: Ethereum sanal makinesi nedir?
Çift Harcama Nasıl Yapılır?
Bitcoin ağında çift harcama gerçekleştirmek neredeyse imkansızdır. Bunun nedeni, her transfer işleminin blockchain üzerinde altı doğrulayıcı tarafından onaylanması ve zincire eklendikten sonra geri alınamamasıdır.
Kötü niyetli bir kullanıcının, daha önce yapılmış bir işlemi geçersiz kılarak aynı varlığı tekrar harcayabilmesi için zincir verilerini geri döndürmesi gerekir. Ancak bu, muazzam miktarda bir hash gücüne sahip olmayı gerektirir, ki bu da pratikte çok zor bir işlemdir.
Yarış Saldırısı
Çift harcama saldırıları farklı biçimlerde ortaya çıkabilir. Blockchain ağındaki işlemler sırasında, aynı varlığı aynı anda farklı kullanıcılara göndermek amacıyla çelişkili işlemler oluşturulabilir. Bu tür bir saldırıya Yarış Saldırısı (Race Attack) denir.
Örneğin, bir ticari işlemde kripto para ile ödeme alan kişi, onay sürecini beklemeden ürünün satışını tamamlarsa, çift harcama riskine maruz kalmış olur. Yeterli sayıda onay almamış ve bu nedenle blockchain’e kalıcı olarak eklenmemiş bir işlem reddedilebilir ya da geri alınabilir. Böyle bir durumda, transfer işlemi geçersiz sayılır ve kullanıcı aynı kripto parayı tekrar harcayabilir.
Q Saldırısı
%51 Saldırısı (%51 Attack) bir açık blockchain ağının hash gücünün yarısından fazlasının tek bir kişi ya da grup tarafından ele geçirilmesiyle gerçekleşir. Bu durumda işlemler manipüle edilebilir.
Örneğin, Bitcoin (BTC) ağına bakarsak, teorik olarak ağın hash oranının çoğunluğunu kontrol eden kişi, işlemleri onaylama gücüne sahip olur ve çift harcama yapabilir.
Ancak, pratikte Bitcoin ağına %51 saldırısı düzenlemek imkansıza yakındır. Bitcoin blockchain ağının büyüklüğü ve gerekli işlem gücünün astronomik seviyelerde olması, bu tür bir saldırıyı son derece zorlaştırmaktadır.
Finney Saldırısı
Finney Saldırısı (Finney Attack), bu zayıflığı fark eden geliştirici Hal Finney’den adını almıştır. Bu saldırıda saldırgan, bir madenci olarak hizmetler ya da ürünler satın almak için kullanılan meşru bir işlemi içeren bir bloğu elinde tutar. Saldırgan, işlemin daha sonra onaylanacağını varsayarak ürün ve hizmetleri alır.
Ardından saldırgan, gizli tuttuğu bloğu, çelişkili ve manipüle edilmiş bir işlem içerecek şekilde ağa yayınlar. Bu işlem, kripto parayı saldırganın kontrol ettiği bir adrese yönlendirir. Orijinal geçerli işlemi geçersiz kılmasına rağmen, saldırgan zaten ürün ve hizmetleri aldığı için, işlemi kendine yönlendirerek kriptoyu da elinde tutmuş olur.
Çift Harcama Nasıl Önlenir?
Peki, Bitcoin ile çift harcama nasıl önlenebilir? Bunun birkaç yöntemi var:
Ayrıca Bknz: Bitcoin işlemleri nasıl gerçekleşir?
Çift Harcama Nasıl Başarıyla Yönetilir?
Şirketler birçok güvenlik özelliği kullandığından, çift harcama büyük ölçüde azaltılmıştır. Kullanılabilecek bazı stratejiler şunlardır:
Sonuç
Bu yazımızda blockchain’de çift harcama nedir sorusunu cevaplamaya çalıştık. Özetle, blok zincirinde çift harcama, bir kişi aynı kriptoyu iki kez harcadığında ortaya çıkar. Üç ana biçimde gerçekleşmektedir: Yarış Saldırıları, %51 Saldırıları ve Finney Saldırıları şeklinde isimlendirilmiştir.
Ancak, bu kusurları önlemek için birçok strateji geliştirilmiştir. Bunlar Bitcoin’in Zaman Damgası, Ağ Katılımı ve PoW Mutabakatı ile önlediği stratejiler olarak literatüre geçmiştir.
Şirketlerin ve kullanıcıların kullanması gereken diğer stratejiler arasındaysa en az altı onay beklemek, spam postaları silmek, kimlik avı postalarından kaçınmak, donanım kaynaklarını güvende tutmak ve düzenli olarak yazılım güncelleyerek en son antivirüs programını kurmak yer almaktadır.