Bitcoin: Bir Eşten Eşe Elektronik Nakit Sistemi
Satoshi Nakamoto
31 Ekim 2008
Özet
Bir kapalı çevrim içi ödeme yöntemi, finansal bir kurumu geçmeden doğrudan bir partiden diğerine gönderilebilecek elektronik nakit bir sistem sunacaktır. Dijital imzalar çözümün bir parçasını sağlar, ancak güvenilir üçüncü bir parti gereksizse ana faydalar kaybolur. İkili harcama sorununa bir çözüm öneriyoruz ve bunu bir eşler arası ağ kullanarak çözüyoruz. Ağ, işlemleri zaman damgası atarak, onları birbirine karma iş kanıtı zinciri oluşturarak kaydeder ve bu kayıtın iş yapılmadan değiştirilmesini engeller. En uzun zincir sadece tanık olunan olayların sırasının kanıtı olarak hizmet etmez, aynı zamanda en büyük CPU gücü havuzundan geldiğinin de kanıtı olur. Bir çoğunluk CPU gücünün ağı saldırmak için işbirliği yapmayan düğümler tarafından kontrol edildiği sürece, en uzun zincir saldırganları geçer ve geride bırakır. Ağ kendisi minimum düzen gerektirir. Mesajlar en iyi çaba temelinde yayınlanır ve düğümler istedikleri zaman ağı terk edebilir ve tekrar katılabilir, geri geldiklerinde en uzun iş kanıt zincirini yok eder.
1. Giriş
İnternet üzerindeki ticaret neredeyse tamamen elektronik ödemeleri işlemek üzere güvenilir üçüncü taraflar olarak hizmet veren finansal kuruluşlara dayanmaya başladı. Sistem çoğu işlem için yeterince iyi çalışıyor olsa da, güvene dayalı modelin içsel zayıflıklarından muzdarip. Tamamen geri döndürülemez işlemler gerçekte mümkün değil, çünkü finansal kurumlar anlaşmazlıklara arabuluculuk yapamaz. Arabuluculuğun maliyeti işlem maliyetlerini artırır, minimum pratik işlem boyutunu sınırlar ve küçük rastgele işlemlere olanak tanımaz, ve geri döndürülemez hizmetler için geri döndürülemez ödemeler yapma yeteneğini kaybeder. Geri dönme olasılığı olduğundan, güven ihtiyacı yayılır. Tüccarlar müşterilerinden şüpheli olabilir ve onlardan daha fazla bilgi istemek zorunda kalabilirler. Kaçınılmaz olarak belirli bir yüzde dolandırıcılık kabul edilir. Bu maliyetler ve ödeme belirsizlikleri yüz yüze gelinerek fiziksel para kullanılarak atlatılabilir, ancak güvenilir bir üçüncü parti olmadan bir haberleşme kanalında ödemelerin yapılmasını sağlayacak bir mekanizma mevcut değildir.
Gereken şey, güven yerine şifreleme kanıtına dayalı bir elektronik ödeme sistemidir ve bu da güvenilir üçüncü bir işbirlikçiye gerek kalmadan iki istekli tarafın doğrudan birbirleriyle işlem yapmasına olanak tanır. Tersine çevirmesi hesaplama açısından mümkün olmayan işlemler satıcıları dolandırıcılıktan koruyacak ve güvenilir firma mekanizmaları kolayca uygulanabilir ve alıcıları korumak için. Bu makalede, işlemlerin kronolojik sırasını hesaplama amaçlı bir eşler arası dağıtılmış zaman damgası sunucusu kullanarak ikili harcama sorununa çözüm öneriyoruz. Sistem, dürüst düğümler toplu olarak düşman düğümler grubundan daha fazla CPU gücünü kontrol ettiği sürece güvenlidir.
2. İşlemler
Bir elektronik madeni para zinciri olarak dijital imzaları tanımlıyoruz. Her sahip, önceki işlemin karma işaretini dijital olarak imzalayarak ve bunları parçaya ekleyerek bir sonraki sahibin genel anahtarını dijital olarak imzalar ve madeni parayı iletim eder. Bir alıcı, imzaları doğrulayarak sahiplik zincirini doğrulayabilir.
TABİKİ sorun, alıcı önceki sahiplerden birinin parayı çift harcandığından emin olamaz. Yaygın bir çözüm, her işlemi ikili harcamayı kontrol etmek için güvenilir bir merkezi otorite veya kalıntı gibi tanımaktır. Her işlemden sonra, parça yeni bir parça yaymak için kalıntıya geri dönmeli ve yalnızca kalıntıdan çıkarılan parçalara güvenilir durup çift harcandığından emin olmalıdır. Bu çözümün sorunu, bütün para sisteminin şirketi çalışmasına bağlı olmasıdır, her işlemin onlardan geçmek zorunda kalması, tamamen bir banka gibi.
Alıcının önceki sahiplerin daha önceki işlemleri imzalamadığından emin olması gerekir. Amacımız için, en erken işlem önemlidir, bu yüzden sonraları çift harcamalarla ilgilenmiyoruz. Bir işlemin yokluğunu doğrulamanın tek yolu tüm işlemleri bilmektir. Dağıtılmış damgalama sunucusu modelinde, kalıntı tüm işlemleri bilmiş ve hangisinin önce geldiğine karar vermişti. Güvenilir bir parti olmadan bunu başarmak için, işlemlerin halka açık olarak duyurulması gerekmektedir[1] ve katılımcıların, aldıkları sırada alınan sıra birliği üzerinde tek bir geçmiş üzerinde anlaşmaları için bir sistem gereklidir. Alıcı, her işlemin alındığı zamanın çoğunluğu düğümlerinin ilk alındığına dair kanıta ihtiyaç duyar.
3. Zaman Damgası Sunucusu
Önerdiğimiz çözüm, bir zaman damgası sunucusu ile başlar. Bir zaman damgası sunucusu, zaman damgası atılacak öğelerin bloğunun bir karma alarak çalışır ve bu karmayı geniş bir şekilde yayınlar, örneğin bir gazete veya Usenet gönderisinde[2-5]. Zaman damgası veri olmasının gerektiğini doğrular, açıkça, karma içine girmek için zaten var olmak zorundadır. Her zaman damgası, önceki zaman damgasını kendi karma içine ekleyerek, zincir olarak birleştirilir, her ek zaman damgası öncesindekileri güçlendirir.
4. İş Kanıtı
Eşler arası bir dağıtılmış zaman damgası sunucusunu uygulamak için, gazete veya Usenet gönderileri yerine Adam Back'in Hashcash benzeri bir iş kanıtı sistemini kullanmamız gerekecek[6]. İş kanıtı, SHA-256 gibi bir değer arayarak işlemek için gereken işi ifade eder, karma başka bir değer ile başlayarak sıfır bit sayısına sahip olur. Gerekli sıfır bit sayısının sayısına göre ortalama işlem gereksinimi sıfır bit üzerinden tükenir ve bir tek karma çalıştırılarak doğrulanabilir.
Zaman damgası ağımızda, iş kanıtını bloktaki bir özel kanıt çalışması bulana kadar bloktaki bir belirteçte bir değeri arttırarak gerçekleştiririz ve zorunlu sıfır bitlere sahip olmasını sağlarız. CPU çabası ile iş kanıtını tatmin edecek hâle getirildiğinde, blok yürütü ile herhangi bir iş yapılmadan değiştirilemez. Sonraki bloklar ondan sonra zincirlenmiş olduğunda bloğu değiştirmenin işi onu yeniden yapmak zorunda kalan tüm blokları içerir.
İş kanıtı aynı zamanda çoğunluk karar alma temsili sorununun belirlenmesi problemini çözer. Eğer çoğunluk bir-IP-adresi-bir-oy mantığına dayalı olsaydı, birçok IP'ye atanabilen herkes tarafından alt edilebilirdi. İş kanıtı temelinde bir-CPU-bir-oy anlamına gelir. Çoğunluk kararı, en uzun zincir tarafından temsil edilir, en büyük iş kanıtı çabasının yatırıldığı zincirde en büyük çabayı da gösterir. Eğer çoğunluk CPU gücü dürüst düğümler tarafından kontrol ediliyorsa, dürüst zincir en hızlı büyüyecek ve rekabet eden zincirleri geride bırakacaktır. Geçmiş bir bloğu değiştirmek için saldırgan birinin bloğun iş kanıtını yeniden yapması, hemen sonra gelen tüm blokları ve dürüst düğümlerin işini yakalamalı ve onları aşmalıdır. Sonraki bloklar eklenmeye başladıkça daha yavaş bir saldırganın yakalama olasılığının aşağılara düştüğünü göstereceğiz.
Donanım hızı artarken ve zamanla düğümlerin çalıştırılmasına olan ilginin değişmesiyle kompanse etmek için, iş kanıtı zorluğu saatteki ortalama blok sayısına hedefleyen bir hareketli ortalama ile belirlenir. Eğer bloklar çok hızlı oluşturulursa, zorluk artar.
5. Ağ
Ağı çalıştırmak için adımlar şunlardır:
- Yeni işlemler tüm düğümlere yayınlanır.
- Her düğüm yeni işlemleri bir blokta toplar.
- Her düğüm bloğu için zor bir iş kanıtı bulmaya çalışır.
- Bir düğüm bir iş kanıtı bulduğunda, bloğu bütün düğümlere yayınlar.
- Düğümler, bloktaki tüm işlemlerin geçerli ve zaten harcanmadığından emin ise bloğu kabul eder.
- Düğümler bloğu kabul ederek, bir sonraki bloğu oluşturmak için çalışır. Kabul edilen bloğun önceki karma olarak önceki karma yöntemi kullanarak.
Düğümler her zaman en uzun zinciri doğru olanı kabul eder ve genişletmeye çalışır. Eğer iki düğüm aynı anda farklı sürümleri yayınlarsa, bazı düğümler birini ya da diğerini alabilir. Bu durumda, aldıkları ilk sürüm üzerinde çalışırlar, ancak diğer yolun bir süre daha uzun hale gelebileceğini kaydederler. Kırılma noktası, bir sonraki iş kanıtı bulunduğunda ve bir şube daha uzun hale geldiğinde olacak ve diğer sekmeler üzerinde çalışan düğümler daha sonra daha uzun olanı üzerine geçecektir.
Yeni işlem yayınlarının tüm düğümlere ulaşması gerekmez. Birçok düğüme ulaşsalar, kısa zamanda bir bloğa ulaşacaklardır. Blok yayınları, düşürülen mesajlara da dayanıklıdır. Bir düğüm bir blok almadığında, bir sonraki bloğu aldığında ve bir bloku almadığını fark ettiğinde, isteğini yapacaktır.
6. Teşvik
Gelenekleşmiş olarak, bir bloktaki ilk işlem, bloğun yaratıcısına ait yeni bir parayı başlatan özel bir işlemdir. Bu, düğümlerin ağı desteklemesine teşvik sağlar ve aynı zamanda sikülasyonda ilk önce paraları dağıtan bir yol sunar, çünkü dağıtacak merkezi bir otorite yoktur. Sürekli olarak sabit miktarda yeni paraların eklenmesi, sirkülasyona altın çıkarmak için kaynak harcayan altın madencileri ile benzerdir. Bizim durumumuzda, harcanan kaynak CPU süresi ve elektriktir.
Teşvikler aynı zamanda işlem ücretleriyle finanse edilebilir. Bir işlemin çıkış değeri, giriş değerinden düşükse, fark, işlemi içeren bloğun teşvik değerine eklenen bir işlem ücretidir. Belirlenmiş bir sayıda madeni para dolaşıma girdikten sonra, teşvik tamamen işlem ücretlerine geçiş yapabilir ve tamamen enflasyonsuz olabilir.
Teşvik, düğümlerin dürüst kalmasını teşvik edebilir. Eğer aç gözlü bir saldırgan tüm dürüst düğümlerden daha fazla CPU gücü toplayabilirse, ödemelerini geri çekerek insanları dolandırmayı seçmeli ya da yeni paralar yaratmak için kullanmayı seçmek durumunda kalacaktır. Kurallara uymak, ona diğer herkesten daha fazla yeni para veren kurallar gibi, özellikle de sistemi ve kendi servetinin geçerliliğini zayıflatmak yerine, sistemi ve kendi servetinin doğruluğunu zayıflatmak üzere en iyi seçim olacaktır.
7. Disk Alanını Geri Kazanma
Bir koindeki en son işlem yeterince blokla gömülmeden önce, ondan önceki harcanan işlemler disk alanını korumak için atılabilir. Bloğun karma bölünmeden bozulmadan bu değişikliği sağlamak için, işlemler bir Merkle Ağacı’
Satoshi Nakamoto
31 Ekim 2008
Özet
Bir kapalı çevrim içi ödeme yöntemi, finansal bir kurumu geçmeden doğrudan bir partiden diğerine gönderilebilecek elektronik nakit bir sistem sunacaktır. Dijital imzalar çözümün bir parçasını sağlar, ancak güvenilir üçüncü bir parti gereksizse ana faydalar kaybolur. İkili harcama sorununa bir çözüm öneriyoruz ve bunu bir eşler arası ağ kullanarak çözüyoruz. Ağ, işlemleri zaman damgası atarak, onları birbirine karma iş kanıtı zinciri oluşturarak kaydeder ve bu kayıtın iş yapılmadan değiştirilmesini engeller. En uzun zincir sadece tanık olunan olayların sırasının kanıtı olarak hizmet etmez, aynı zamanda en büyük CPU gücü havuzundan geldiğinin de kanıtı olur. Bir çoğunluk CPU gücünün ağı saldırmak için işbirliği yapmayan düğümler tarafından kontrol edildiği sürece, en uzun zincir saldırganları geçer ve geride bırakır. Ağ kendisi minimum düzen gerektirir. Mesajlar en iyi çaba temelinde yayınlanır ve düğümler istedikleri zaman ağı terk edebilir ve tekrar katılabilir, geri geldiklerinde en uzun iş kanıt zincirini yok eder.
1. Giriş
İnternet üzerindeki ticaret neredeyse tamamen elektronik ödemeleri işlemek üzere güvenilir üçüncü taraflar olarak hizmet veren finansal kuruluşlara dayanmaya başladı. Sistem çoğu işlem için yeterince iyi çalışıyor olsa da, güvene dayalı modelin içsel zayıflıklarından muzdarip. Tamamen geri döndürülemez işlemler gerçekte mümkün değil, çünkü finansal kurumlar anlaşmazlıklara arabuluculuk yapamaz. Arabuluculuğun maliyeti işlem maliyetlerini artırır, minimum pratik işlem boyutunu sınırlar ve küçük rastgele işlemlere olanak tanımaz, ve geri döndürülemez hizmetler için geri döndürülemez ödemeler yapma yeteneğini kaybeder. Geri dönme olasılığı olduğundan, güven ihtiyacı yayılır. Tüccarlar müşterilerinden şüpheli olabilir ve onlardan daha fazla bilgi istemek zorunda kalabilirler. Kaçınılmaz olarak belirli bir yüzde dolandırıcılık kabul edilir. Bu maliyetler ve ödeme belirsizlikleri yüz yüze gelinerek fiziksel para kullanılarak atlatılabilir, ancak güvenilir bir üçüncü parti olmadan bir haberleşme kanalında ödemelerin yapılmasını sağlayacak bir mekanizma mevcut değildir.
Gereken şey, güven yerine şifreleme kanıtına dayalı bir elektronik ödeme sistemidir ve bu da güvenilir üçüncü bir işbirlikçiye gerek kalmadan iki istekli tarafın doğrudan birbirleriyle işlem yapmasına olanak tanır. Tersine çevirmesi hesaplama açısından mümkün olmayan işlemler satıcıları dolandırıcılıktan koruyacak ve güvenilir firma mekanizmaları kolayca uygulanabilir ve alıcıları korumak için. Bu makalede, işlemlerin kronolojik sırasını hesaplama amaçlı bir eşler arası dağıtılmış zaman damgası sunucusu kullanarak ikili harcama sorununa çözüm öneriyoruz. Sistem, dürüst düğümler toplu olarak düşman düğümler grubundan daha fazla CPU gücünü kontrol ettiği sürece güvenlidir.
2. İşlemler
Bir elektronik madeni para zinciri olarak dijital imzaları tanımlıyoruz. Her sahip, önceki işlemin karma işaretini dijital olarak imzalayarak ve bunları parçaya ekleyerek bir sonraki sahibin genel anahtarını dijital olarak imzalar ve madeni parayı iletim eder. Bir alıcı, imzaları doğrulayarak sahiplik zincirini doğrulayabilir.
TABİKİ sorun, alıcı önceki sahiplerden birinin parayı çift harcandığından emin olamaz. Yaygın bir çözüm, her işlemi ikili harcamayı kontrol etmek için güvenilir bir merkezi otorite veya kalıntı gibi tanımaktır. Her işlemden sonra, parça yeni bir parça yaymak için kalıntıya geri dönmeli ve yalnızca kalıntıdan çıkarılan parçalara güvenilir durup çift harcandığından emin olmalıdır. Bu çözümün sorunu, bütün para sisteminin şirketi çalışmasına bağlı olmasıdır, her işlemin onlardan geçmek zorunda kalması, tamamen bir banka gibi.
Alıcının önceki sahiplerin daha önceki işlemleri imzalamadığından emin olması gerekir. Amacımız için, en erken işlem önemlidir, bu yüzden sonraları çift harcamalarla ilgilenmiyoruz. Bir işlemin yokluğunu doğrulamanın tek yolu tüm işlemleri bilmektir. Dağıtılmış damgalama sunucusu modelinde, kalıntı tüm işlemleri bilmiş ve hangisinin önce geldiğine karar vermişti. Güvenilir bir parti olmadan bunu başarmak için, işlemlerin halka açık olarak duyurulması gerekmektedir[1] ve katılımcıların, aldıkları sırada alınan sıra birliği üzerinde tek bir geçmiş üzerinde anlaşmaları için bir sistem gereklidir. Alıcı, her işlemin alındığı zamanın çoğunluğu düğümlerinin ilk alındığına dair kanıta ihtiyaç duyar.
3. Zaman Damgası Sunucusu
Önerdiğimiz çözüm, bir zaman damgası sunucusu ile başlar. Bir zaman damgası sunucusu, zaman damgası atılacak öğelerin bloğunun bir karma alarak çalışır ve bu karmayı geniş bir şekilde yayınlar, örneğin bir gazete veya Usenet gönderisinde[2-5]. Zaman damgası veri olmasının gerektiğini doğrular, açıkça, karma içine girmek için zaten var olmak zorundadır. Her zaman damgası, önceki zaman damgasını kendi karma içine ekleyerek, zincir olarak birleştirilir, her ek zaman damgası öncesindekileri güçlendirir.
4. İş Kanıtı
Eşler arası bir dağıtılmış zaman damgası sunucusunu uygulamak için, gazete veya Usenet gönderileri yerine Adam Back'in Hashcash benzeri bir iş kanıtı sistemini kullanmamız gerekecek[6]. İş kanıtı, SHA-256 gibi bir değer arayarak işlemek için gereken işi ifade eder, karma başka bir değer ile başlayarak sıfır bit sayısına sahip olur. Gerekli sıfır bit sayısının sayısına göre ortalama işlem gereksinimi sıfır bit üzerinden tükenir ve bir tek karma çalıştırılarak doğrulanabilir.
Zaman damgası ağımızda, iş kanıtını bloktaki bir özel kanıt çalışması bulana kadar bloktaki bir belirteçte bir değeri arttırarak gerçekleştiririz ve zorunlu sıfır bitlere sahip olmasını sağlarız. CPU çabası ile iş kanıtını tatmin edecek hâle getirildiğinde, blok yürütü ile herhangi bir iş yapılmadan değiştirilemez. Sonraki bloklar ondan sonra zincirlenmiş olduğunda bloğu değiştirmenin işi onu yeniden yapmak zorunda kalan tüm blokları içerir.
İş kanıtı aynı zamanda çoğunluk karar alma temsili sorununun belirlenmesi problemini çözer. Eğer çoğunluk bir-IP-adresi-bir-oy mantığına dayalı olsaydı, birçok IP'ye atanabilen herkes tarafından alt edilebilirdi. İş kanıtı temelinde bir-CPU-bir-oy anlamına gelir. Çoğunluk kararı, en uzun zincir tarafından temsil edilir, en büyük iş kanıtı çabasının yatırıldığı zincirde en büyük çabayı da gösterir. Eğer çoğunluk CPU gücü dürüst düğümler tarafından kontrol ediliyorsa, dürüst zincir en hızlı büyüyecek ve rekabet eden zincirleri geride bırakacaktır. Geçmiş bir bloğu değiştirmek için saldırgan birinin bloğun iş kanıtını yeniden yapması, hemen sonra gelen tüm blokları ve dürüst düğümlerin işini yakalamalı ve onları aşmalıdır. Sonraki bloklar eklenmeye başladıkça daha yavaş bir saldırganın yakalama olasılığının aşağılara düştüğünü göstereceğiz.
Donanım hızı artarken ve zamanla düğümlerin çalıştırılmasına olan ilginin değişmesiyle kompanse etmek için, iş kanıtı zorluğu saatteki ortalama blok sayısına hedefleyen bir hareketli ortalama ile belirlenir. Eğer bloklar çok hızlı oluşturulursa, zorluk artar.
5. Ağ
Ağı çalıştırmak için adımlar şunlardır:
- Yeni işlemler tüm düğümlere yayınlanır.
- Her düğüm yeni işlemleri bir blokta toplar.
- Her düğüm bloğu için zor bir iş kanıtı bulmaya çalışır.
- Bir düğüm bir iş kanıtı bulduğunda, bloğu bütün düğümlere yayınlar.
- Düğümler, bloktaki tüm işlemlerin geçerli ve zaten harcanmadığından emin ise bloğu kabul eder.
- Düğümler bloğu kabul ederek, bir sonraki bloğu oluşturmak için çalışır. Kabul edilen bloğun önceki karma olarak önceki karma yöntemi kullanarak.
Düğümler her zaman en uzun zinciri doğru olanı kabul eder ve genişletmeye çalışır. Eğer iki düğüm aynı anda farklı sürümleri yayınlarsa, bazı düğümler birini ya da diğerini alabilir. Bu durumda, aldıkları ilk sürüm üzerinde çalışırlar, ancak diğer yolun bir süre daha uzun hale gelebileceğini kaydederler. Kırılma noktası, bir sonraki iş kanıtı bulunduğunda ve bir şube daha uzun hale geldiğinde olacak ve diğer sekmeler üzerinde çalışan düğümler daha sonra daha uzun olanı üzerine geçecektir.
Yeni işlem yayınlarının tüm düğümlere ulaşması gerekmez. Birçok düğüme ulaşsalar, kısa zamanda bir bloğa ulaşacaklardır. Blok yayınları, düşürülen mesajlara da dayanıklıdır. Bir düğüm bir blok almadığında, bir sonraki bloğu aldığında ve bir bloku almadığını fark ettiğinde, isteğini yapacaktır.
6. Teşvik
Gelenekleşmiş olarak, bir bloktaki ilk işlem, bloğun yaratıcısına ait yeni bir parayı başlatan özel bir işlemdir. Bu, düğümlerin ağı desteklemesine teşvik sağlar ve aynı zamanda sikülasyonda ilk önce paraları dağıtan bir yol sunar, çünkü dağıtacak merkezi bir otorite yoktur. Sürekli olarak sabit miktarda yeni paraların eklenmesi, sirkülasyona altın çıkarmak için kaynak harcayan altın madencileri ile benzerdir. Bizim durumumuzda, harcanan kaynak CPU süresi ve elektriktir.
Teşvikler aynı zamanda işlem ücretleriyle finanse edilebilir. Bir işlemin çıkış değeri, giriş değerinden düşükse, fark, işlemi içeren bloğun teşvik değerine eklenen bir işlem ücretidir. Belirlenmiş bir sayıda madeni para dolaşıma girdikten sonra, teşvik tamamen işlem ücretlerine geçiş yapabilir ve tamamen enflasyonsuz olabilir.
Teşvik, düğümlerin dürüst kalmasını teşvik edebilir. Eğer aç gözlü bir saldırgan tüm dürüst düğümlerden daha fazla CPU gücü toplayabilirse, ödemelerini geri çekerek insanları dolandırmayı seçmeli ya da yeni paralar yaratmak için kullanmayı seçmek durumunda kalacaktır. Kurallara uymak, ona diğer herkesten daha fazla yeni para veren kurallar gibi, özellikle de sistemi ve kendi servetinin geçerliliğini zayıflatmak yerine, sistemi ve kendi servetinin doğruluğunu zayıflatmak üzere en iyi seçim olacaktır.
7. Disk Alanını Geri Kazanma
Bir koindeki en son işlem yeterince blokla gömülmeden önce, ondan önceki harcanan işlemler disk alanını korumak için atılabilir. Bloğun karma bölünmeden bozulmadan bu değişikliği sağlamak için, işlemler bir Merkle Ağacı’
2 users upvote it!
0 answers