Tam Düğümler
Sistemin çekirdeği tam düğümlerden oluşur. Tam düğümlerin birkaç sorumluluğu vardır:
- Blok zincirinin bir kopyasını koruyun
- Blok zincirini doğrulayın
- Eş protokolü aracılığıyla ağ üzerinden yeni blokları, işlemleri ve kanıtları yayın
- (İsteğe bağlı) Cüzdan protokolü aracılığıyla hafif istemcilere (cüzdanlar) hizmet verin
- (İsteğe bağlı) Çiftçiler ve zaman çizelgeleri ile iletişim kurun
Tam düğümler hiçbir ödül veya ücret kazanmaz, ancak fikir birliği kurallarını ve sistemin güvenliğini korumak için önemlidir. Tam bir düğüm çalıştırmak, bir kullanıcının blok zincirinin tam durumu hakkında emin olmasını ve başkalarına güvenmekten kaçınmasını sağlar.
Tam düğümler her zaman ağdaki başka bir rastgele tam düğüm kümesine bağlanır.
Çiftçiler
Chia’nın çiftçileri, Bitcoin’in madencilerine benziyor. Herkesten önce geçerli bloklar oluşturmaya çalışarak blok ödülleri ve ücretleri kazanırlar. Çiftçiler, blok zincirinin bir kopyasını tutmazlar, ancak güncellemeleri sağlamak için tam bir düğüme güvenirler.
Çiftçiler, biçerdöver protokolü aracılığıyla biçerdöverlerle (arazileri gerçekten depolayan ayrı makineler) iletişim kurarlar.
Tam düğüm ve çiftçi, çiftçi protokolü aracılığıyla iletişim kurar.
Tek başına çiftlik yapmak isteyen kullanıcılar çiftçiyi, biçerdöver ve tam düğümü aynı makinede çalıştırabilir.
Çiftçiler, tam bir düğümden gelen güncellemeleri bekleyerek çalışırlar, bu da her yeni blok oluşturulduğunda onlara yeni meydan okuma_ kısaltmaları verir. Çiftçiler daha sonra tüm biçerdöverlerden alan kalitesinin kanıtını ister. Yineleme formülüne dayanan bu nitelikler, beklenen bir blok süresi ile sonuçlanır. Çiftçi, yakın zamanda bitmesi beklenen kanıtlar için hasat makinelerinden tam alan kanıtlarını almayı seçebilir. tam ispatlar daha sonra tam düğümlere çoğaltılabilir veya kısmi olarak bir havuza gönderilebilir.
Hasat makineleri
Hasat makineleri, bir çiftçi tarafından kontrol edilen bağımsız makinelerdir. Büyük bir çiftçilik operasyonunda, bir çiftçi birçok hasat makinesine bağlanabilir.
Hasatçılar, kaliteleri veya kanıtları diskten alarak gerçek çizim dosyalarını kontrol eder. Her çizim dosyası bir grafiğe karşılık gelir ve her rastgele 32 baytlık sorgulama için, beklenen bir alan kanıtı değeri vardır (bazen sıfır veya birden fazla olmasına rağmen). Standart HDD sürücülerinde, bir kalitenin elde edilmesi yaklaşık 8 rastgele disk araması veya 50 ms’ye kadar sürer, oysa bir kanıt getirmek yaklaşık 64 disk araması veya 500 ms’ye kadar sürer. Çoğu zorluk için nitelikler çok düşük olacaktır, bu nedenle tüm kanıtı getirmek gerekli değildir. Niteliklerin getirilmesi zaman aldığından, her sürücü için bir çizim sayısı üst sınırı vardır. Bununla birlikte, yineleme formülünde sabit bir faktör olduğundan (her bloğun en az 30 saniye kadar bir süre kanıtı olmalıdır), disk IO süreleri sorun olmamalıdır.
Son olarak, biçerdöverler ayrıca her parsel için özel bir anahtar saklar. Bu özel anahtar, aslında bloğu işaretleyen şeydir ve çiftçilerin / hasatçıların (havuzların aksine) bir bloğun içeriğini gerçekten kontrol etmesine izin verir.
Timelords
Timelords, bitmemiş blokların üzerinde sıralı zaman kanıtları oluşturarak (Doğrulanabilir Gecikme Fonksiyonlarını kullanarak) ağı destekler. Bu hesaplama sıralı olduğundan, hesaplamanın paralelleştirilebildiği iş sistemlerinin kanıtının aksine çok az enerji tüketilir. Timelords ayrıca tam düğümlere bağlanır. Zaman çizelgeleri hiçbir ödül kazanmasa da, blok zincirinin ilerlemesi için çevrimiçi olarak yalnızca bir dürüst zaman çizelgesi olması gerekir.
Daha hızlı bir zaman çizelgesine sahip olan biri, blokları diğer çiftçilerinkinden biraz daha hızlı biteceği için kendi alanından da daha fazla ödül kazanabilir.
Ayrıca, çok daha hızlı bir zaman çizelgesine sahip bir saldırgan, alanın% 51’inden daha azıyla ağa potansiyel olarak% 51 saldırabilir, bu nedenle VDF donanımının açık tasarımları blok zincirinin güvenliği için çok önemlidir.
Havuzlar
Havuzlar, çiftçilerin blokları kazanmaktan ziyade alan kısmi kanıtlarına dayanarak kazanarak ödüllerini yumuşatmalarına olanak tanır. Havuz ortak anahtarları grafiklerin içine gömülmelidir, bu nedenle tüm grafik yeniden oluşturulmadıkça bir havuz değiştirilemez.
Havuzlar , madeni para işlemleri oluşturur ve harcar , ancak Chia’nın havuz protokolünde aslında blokların içeriğini seçmezler . Bu, çiftçilere daha fazla güç verir ve böylece merkezi havuzların etkisini azaltır.
Çiftçiler periyodik olarak havuzlara boşluk kanıtı ve imza içeren parçalar gönderir.
Cüzdanlar
Cüzdanlar, cüzdan protokolü aracılığıyla tam düğümlerle iletişim kurabilir. Bu, Bitcoin’in SPV protokolüne benzer ve tam düğümlerin bant genişliği ve CPU gereksinimleri olmadan işlemlerin ve blok ağırlığının doğrulanmasına izin verir. Cüzdan düğümleri, ağdaki diğer eşlerle iletişim kuran sunucular oldukları için tam düğümlere benzer. Yaygın bir kullanım örneği, cüzdanın yalnızca tam düğüme bağlandığı bir tam düğüm ile birlikte yerel olarak bir cüzdanı çalıştırmaktır.
Cüzdan ayrıca özel anahtarların yönetilmesinden, işlemlerin üretilmesinden, depolanmasından ve gönderilmesinden sorumludur. Cüzdan, kullanıcı arayüzlerinin komutları yürütmek için kullanabileceği bir RPC HTTP websocket JSON API’sini açığa çıkarır.
Elektron GUI
Cüzdana ve tam düğüm RPC’lerine bağlanan bir referans elektron grafik kullanıcı arabirimi mevcuttur. Kullanıcılar bu kullanıcı arayüzünden işlemleri gerçekleştirebilir, bakiyeyi ve geçmişi görüntüleyebilir. Gelecekte çeşitli akıllı sözleşme özellikleri de eklenecektir.
Eğitimdeki bir sonraki belge Ağ Oluşturma ve Serileştirmedir .