İçindekiler
- Blockchain'i Anlama
- Çift Harcama ile Başa Çıkma
- İş Kanıtı ve 'Madencilik'
Herhangi bir kripto para birimi geliştiricisinin temel endişelerinden biri çift harcama meselesidir. Bu, bir kişinin birden fazla kez bu kripto para biriminin bakiyesini harcayarak, harcama kaydı ile mevcut kripto para birimi miktarı ve dağıtılma şekli arasında etkili bir eşitsizlik yaratan insidansını ifade eder.
Çifte harcama konusu, paranın sahip olmadığı bir sorundur; bir sandviç için 10 $ fatura ile ödeme, bu tasarıyı sandviç üreticisi için ters çevirerek, geri dönüp aynı 10 $ başka bir yerde geçirmek olamaz. Bununla birlikte, bitcoin gibi dijital bir para birimi kullanan bir işlem tamamen dijital olarak gerçekleşir. Bu, işlem ayrıntılarının kopyalanıp aynı BTC'nin tek bir sahip tarafından birden çok kez harcanabileceği şekilde yeniden yayınlanabileceği anlamına gelir. Aşağıda, kripto para birimi geliştiricilerinin çift harcama yapamayacağından nasıl emin olduklarını inceleyeceğiz.
Önemli Çıkarımlar
- Dijital para kavramı ile ortaya çıkan teknik bir sorun, birisinin dijital parayı çoğaltma ve aynı anda iki veya daha fazla yerde harcaması yeteneğidir.Bu Bitcoin gibi blockchain tabanlı kripto para birimlerinde bu 'çift harcama' sorunu önlenir İş kanıtı (PoW) olarak bilinen bir konsensüs mekanizması kullanarak bu PoW, sadece blok zincirinin defteri üzerindeki geçmiş işlemlerin sadakatini sağlamakla kalmayıp aynı zamanda çift harcamaları tespit eden ve önleyen merkezi olmayan bir 'madenciler' ağı tarafından gerçekleştirilir..
Blockchain'i Anlama
Bitcoin gibi dijital bir para biriminin altını örten blok zincir, kendi başına çift harcama yapmayı engelleyemez. Aksine, ilgili kripto para birimini içeren tüm farklı işlemler blok zincirine gönderilir ve burada bir doğrulama işlemi ile ayrı olarak doğrulanır ve korunurlar. Bitcoin ve diğer birçok kripto para birimi durumunda, bu şekilde onaylanan işlemler geri döndürülemez hale gelir; kamuya açık olarak gönderilir ve süreklilik korunur.
Bitcoin, çift harcama sorununu çözen ilk büyük dijital para birimiydi. Bunu, bu onay mekanizmasını uygulayarak ve ortak, evrensel bir defter sistemini koruyarak gerçekleştirdi. Bu şekilde, bitcoin blok zinciri, 2009 yılında kripto para biriminin kuruluşuna kadar giden zaman damgalı işlemlerin kayıtlarını tutar.
Bitcoin terimleriyle, "blok" kalıcı olarak kaydedilmiş verilerin bir dosyasıdır. Tüm son işlemler, bir borsadaki hisse senedi işlem defteri gibi bloklara yazılır. Bloklardan gelen bilgiler birkaç dakikada bir deftere eklenir; ağdaki tüm düğümler blockchain defteri kaydının bir kopyasını tutar. Kullanıcılar bitcoin için blockchain'de gezinebilir ve işlemleri sadece miktar açısından gözden geçirebilir. Herhangi bir işlemde alıcı ve satıcının kimlikleriyle ilgili ayrıntılar, defteri defteri dış kaynakların kurcalanmasını da önleyen yüksek düzeyli şifreleme ile korunur. Blockchain defteri defteri güncellendiğinde, tüm bitcoin cüzdanları da güncellenir.
Çift Harcama ile Başa Çıkma
1 BTC'niz olduğunu ve iki ayrı işlemde iki kez harcamaya çalıştığınızı düşünün. Aynı BTC'yi iki ayrı bitcoin cüzdan adresine göndererek bunu yapmaya çalışabilirsiniz. Bu işlemlerin her ikisi de daha sonra onaylanmamış işlemler havuzuna girecektir. İlk işlem, onay mekanizması aracılığıyla onaylanacak ve daha sonra sonraki bloğa doğrulanacaktır. Ancak, ikinci işlem onay süreci tarafından geçersiz olarak kabul edilir ve doğrulanmaz. Her iki işlem de aynı anda onay için havuzdan alınırsa, en fazla sayıda onay içeren işlem blok zincirine dahil edilirken, diğeri atılır.
Bu, çift harcama konusunu etkin bir şekilde ele alırken, sorunları olmadan değil. Örneğin, ikinci (başarısız) işlemin hedeflenen alıcısının işlemin bir parçası başarısız olmaz ve yine de bu kişi beklediği bitcoin'i alamaz. Birçok satıcı, bir işlemin en az 6 onayını bekler (yani, söz konusu işlemden sonra blok zincirine sonraki 6 işlem bloğunun eklendiği). Bu noktada, satıcı güvenli bir şekilde işlemin geçerli olduğunu varsayabilir.
Bu sistemde, çift harcama saldırılarının gerçekleşmesine izin verebilecek başka güvenlik açıkları bulunmaktadır. Örneğin, bir saldırgan bir şekilde ağın gücünün en az% 51'ini kontrol edebiliyorsa, çift harcama yapabilir. Bir saldırgan bir şekilde bu hesaplama gücünün kontrolünü ele geçirebilseydi, işlemleri tersine çevirebilir ve ayrı, özel bir blok zinciri oluşturabilirdi. Bununla birlikte, bitcoinin hızlı büyümesi, bu tür bir saldırının imkansız olduğunu neredeyse garanti etmiştir. (Daha fazla bilgi için, bkz. Bu Beş Bitcoin Dolandırıcılığına Dikkat Edin)
İş Kanıtı ve 'Madencilik' Açıklaması
Şimdi biraz daha teknik olalım. Kullanıcıların pratikte çift harcama yapma girişimi gibi kurcalamayı algılama şekli, karma değerler, iş kanıtı olarak görev yapan uzun sayı dizileri (PoW). Belirli bir veri kümesini bir karma işlevi aracılığıyla yerleştirin (bitcoin SHA-256 kullanır) ve yalnızca bir karma oluşturur. Bununla birlikte, "çığ etkisi" nedeniyle, orijinal verilerin herhangi bir kısmında küçük bir değişiklik bile tamamen tanınmayan bir karma ile sonuçlanacaktır. Orijinal veri kümesinin boyutu ne olursa olsun, belirli bir işlev tarafından oluşturulan karma aynı uzunlukta olacaktır. Karma, tek yönlü bir işlevdir: orijinal verileri elde etmek için kullanılamaz, yalnızca karma oluşturan verilerin orijinal verilerle eşleşip eşleşmediğini kontrol etmek için kullanılamaz.
Bir dizi bitcoin işlemi için herhangi bir karma oluşturmak modern bir bilgisayar için önemsiz olacaktır, bu nedenle süreci "işe" dönüştürmek için bitcoin ağı belirli bir "zorluk" seviyesi belirler. Bu ayar, yaklaşık 10 dakikada bir yeni bir blok "mayınlanacak" - geçerli bir karma oluşturarak blok zincirine eklenecek şekilde ayarlanır. Zorluk belirleme, karma için bir "hedef" oluşturarak gerçekleştirilir: hedef ne kadar düşükse, geçerli karmalar kümesi o kadar küçüktür ve bir tane oluşturmak o kadar zordur. Pratikte bu, uzun bir sıfır dizesiyle başlayan bir karma anlamına gelir: örneğin # 429818 bloğu için karma 000000000000000004dd3426129639082239efd583b5273b1bd75e8d78ff2e8d. Bu blok, 1.000'den fazla bitcoin içeren 2.012 işlem ve bir önceki blokun başlığını içerir. Bir kullanıcı bir işlem tutarını 0.0001 bitcoin değiştirirse, sonuçtaki karma tanınmaz ve ağ sahtekarlığı reddeder.
Belirli bir veri kümesi yalnızca bir karma oluşturabildiğinden, madenciler hedefin altında bir karma oluşturduğundan nasıl emin olurlar? Bunlar, nonce ("bir kez kullanılan sayı") adı verilen bir tamsayı ekleyerek girdiyi değiştirirler. Geçerli bir karma bulunduğunda, ağa yayınlanır ve blok blockchain'e eklenir.
Madencilik rekabetçi bir süreçtir, ancak bir yarıştan ziyade bir piyangodur. Ortalama olarak, birisi her on dakikada bir kabul edilebilir bir çalışma kanıtı üretecektir, ancak bunun kim olacağını tahmin edecektir. Madenciler, işlem ücretleri ve sınırlı bir süre için yeni oluşturulan bitcoinlerin ödülünü oluşturan madencilik blok şanslarını artırmak için bir araya toplanırlar.
İş kanıtı, blockchain'in herhangi bir yönünü değiştirmeyi son derece zorlaştırır, çünkü böyle bir değişiklik sonraki tüm blokların yeniden madenciliğini gerektirecektir. Ayrıca, bir kullanıcı veya kullanıcı havuzunun ağın bilgi işlem gücünü tekelleştirmesini zorlaştırır, çünkü karma işlevlerini tamamlamak için gereken makine ve güç pahalıdır.