Aday Blok - Candidate Block

Orta Seviye

Aday blok (candidate block), bir madencinin blok ödülü almak için madencilik yaptığı bloktur. Bu açıdan aday blok, ağ tarafından doğrulanacak ya da reddedilecek geçici bir blok olarak tanımlanabilir. Bilindiği gibi madenciler, bir sonraki bloğu doğrulamak ve blok zincirine eklemek için birbirleriyle rekabet halindedir. Ancak bu madencilik yarışına katılmak için önce bir aday blok oluşturmaları gerekmektedir. 

Aday Blok - Candidate Block

Aday bloklar, madenciler tarafından, bellek havuzundaki birden fazla onaylanmamış işlemin toplanması ve organize edilmesiyle oluşturulur. Daha sonra bu işlemler, Merkle ağaç yapısını oluşturmak için hash haline getirilir. Ardından bu ağaç yapısı Merkle köküne dönüşecektir. Merkle kökü, o ağacın önceki tüm hash'lerini ve dolayısıyla ilgili bloka dahil olan tüm işlemleri temsil eden tek bir hashdir.

Kök hash, önceki blokun hash’i ve nonce olarak adlandırılan rastgele bir sayıyla birlikte blokun başlığına konur. Bunun ardından blok başlığı madenci tarafından hash edilir. Böyece kök hash, önceki bloğun hash'i ve nonce dahil blok bileşenlere dayalı bir çıktı oluşturulur. Ortaya çıkan çıktı, blok hash’i dediğimiz şeydir ve yeni oluşturulan aday blokun benzersiz tanımlayıcısı olarak görev yapacaktır.

Blok hash'inin geçerli olarak kabul edilmesi için, protokol tarafından tanımlanan hedef değerden daha az olmak üzere belirli sayıda sıfırla başlaması gerekir. Bu da madencilerin nihayetinde geçerli bir blok hash'i üretebilmek için deneme yanılma yöntemiyle ve birden fazla nonce değeriyle birkaç kere hashing işlemi uygulaması demektir.

Bir madenci geçerli bir blok hash'i bulduktan sonra madencinin aday bloku, ağ üzerinde bulunan diğer madencilerle veya düğümlerle paylaşılır. Diğer madenciler veya düğümler, bu hash'in doğruluğunu doğrular. Eğer doğrulama gerçekleşirse aday blok, blok zincirine kaydedilecektir. Daha sonra ağ üzerindeki her düğüm, yeni bir bloğun blok zincirine eklenmesiyle birlikte kendi blok zincir kopyasını günceller.