Unspent Transaction Output (UTXO)

Orta Seviye

Unspent transaction output (UTXO) yani harcanmamış işlem çıktısı, yeni bir işlemde girdi olarak kullanılabilen işlem çıktısını ifade etmek için kullanılır. UTXO'lar, her bir Blokzinciri işleminin nerede başladığını ve nerede bittiğini tanımlar. UTXO modeli, Bitcoin'in ve diğer birçok kripto para biriminin temel bir parçasıdır.


UTXO terimi, birinin bitcoin gibi bir kripto para birimi işlemi gerçekleştirdikten sonra kalan dijital para birimi miktarını ifade eder. Harfler, harcanmamış işlem çıktısını temsil eder. Her bitcoin işlemi, defteri dengelemek için kullanılan tokenlarla başlar. UTXO'lar sürekli olarak işlenir ve her işlemin başlatılmasından ve bitirilmesinden sorumludur. İşlemin teyidi harcanan paraların UTXO veritabanından çıkarılmasıyla sonuçlansa da, harcanan paraların bir kaydı hala defterde bulunur.


Kripto para birimi işlemleri girdi ve çıktılardan oluşur. Her işlem gerçekleştiğinde kullanıcılar bir veya daha fazla UTXO’yu girdi olarak kullanır. Daha sonra, kullanıcılar bu girdiyi onaylamak için dijital imzalarını kullanırlar ve bunun sonucunda da bir çıktı üretilmiş olur. Bu süreçte kullanılan UTXO'lar artık "harcanmış" olarak kabul edilir ve artık kullanılamaz hale gelir. İşlem sonucunda oluşturulan çıktılar yeni UTXO’lara dönüşür ve bunlar daha sonra harcanabilir hale gelirler.


UTXO Nasıl Çalışır?

UTXO veya harcanmamış işlem çıktıları kripto para işlemlerinde kullanılmaktadır. Bir kişinin mağazada nakit işlemi yaptıktan sonra aldığı değişime benzer şekilde, bir işlemi tamamladıktan sonra harcanmayan işlemlerdir.


Bir UTXO veritabanı, kripto para birimi işlemlerinden gelen değişiklikleri depolamak için kullanılır. Bu veritabanı veya defter, başlangıçta boş veya sıfır olarak ayarlanır. İşlemler çoğaldıkça, veritabanı çeşitli işlemlerden gelen değişiklik kayıtları ile doldurulur. Bir işlem tamamlandığında ve harcanmayan çıktılar olduğunda, bunlar daha sonraki bir tarihte yeni bir işlem için kullanılabilecek girdiler olarak bir veritabanına geri yatırılır. Bitcoin için kullanılanlar gibi kripto para işlemleri, kasiyer çeklerine benzer. Bunları özel tutarlarla değiştiremezsiniz ve bu veri baytında depolanan tutarın tamamını harcamanız gerekir.

 

Bitcoin gibi kripto para birimleri, işlemlerin kripto para biriminin kesirleri kullanılarak gerçekleştirilebilmesi açısından benzersizdir. Bu durum, harcamanın tek bir veri baytı kullanılarak yapılmadığı anlamına gelir. Bunun yerine, bir harcama talebini yerine getirmek için algoritma tarafından birden fazla Bitcoin kesiri alınır. Örneğin, 1 bitcoin değerindeki bir satın alma, bir bayttan 0,6 BTC ve diğerinden 0,4 BTC alabilir. Bu kesirlerin her birinden yapılan değişiklik daha sonra daha sonraki bir tarihte harcanmak üzere UTXO veritabanına gönderilir.


UTXO Örneği

Bir örnekle açıklamak gerekirse Ali’nin cüzdanında 0,45 BTC olduğunu varsayalım ancak bu miktar coinlerden değil iki adet UTXO’dan oluşmaktadır. Spesifik olmak gerekirse birinci UTXO 0,40 BTC değerinde ikinci UTXO ise 0,05 değerindedir. Ali’nin Ayşe’ye 0,3 BTC'lik bir ödeme yapması gerektiğini düşünelim. Ali’nin bu durumdaki tek seçeneği 0,4 BTC UTXO birimini parçalamak ve 0,3 BTC'yi Ayşe’ye ve kalan 0,1 BTC'yi kendisine geri göndermektir. Normalde işlem ücretinden dolayı Ali’ye 0,1 BTC’den daha az bir miktar kalacaktır ancak anlatımı basitleştirmek adına işlem ücretlerini hesaplamanın dışında tutacağız.


Bu işlemi gerçekleştirebilmek için Ali, ağ üzerinde şu şekilde bir işlem yapar: 

  • 0,4 BTC UTXO'yu girdi olarak alır 
  • 0,3 BTC'yi Ayşe’nin adresine gönderir 
  • 0,1 BTC'yi kendi adresine geri gönderir

Bu işlemlerden sonra 0,4 BTC artık kullanılmış bir çıktıdır ve tekrar kullanılamaz hale gelmiştir. Bu işlemin sonucunda 2 adet daha UTXO oluşacaktır: Ayşe’ye giden 0,3 BTC ve Ali’nin 0,1 BTC para üstü.


Yukarıdaki örnekte UTXO’lar ile bir ayrıştırma işlemi yapılmıştır. Eğer Ali’nin 0,42 BTC gibi bir miktar ödemesi gerekseydi, 0,40 BTC’lik UTXO’yu 0,05’lik olanla birleştirmemiz gerekirdi.


Özetle UTXO modeli, herhangi bir zamanda tokenların nerede olduğunu takip etmek için protokol mekanizması olarak görev yapmaktadır. Bir anlamda, çek mantığında çalıştığını söyleyebiliriz. Yani, belirli kullanıcılara veya daha doğrusu genel adreslere yöneliktir. UTXO'lar parça parça harcanamaz. Bunun yerine, eski UTXO harcandıktan sonra para üstü olarak yeni UTXO’lar oluşturulabilir.

 

Özel Durumlar

Bitcoin ağındaki küçük birimlerin bolluğu, bazı işlemlerin ekonomik olmamasına neden olmaktadır çünkü işlem yapmanın Bitcoin ile satın alınan ürünün gerçek maliyeti daha maliyetli olabilmektedir. Örneğin, Bitcoin ağındaki işlem ücreti kahvenin fiyatından yüksekse, 2 dolarlık bir fincan kahve satın almak mantıklı olmayacaktır. Önde gelen bitcoin geliştiricisi Jimmy Song tarafından yapılan araştırmaya göre, 13 milyon token, 50 Satoshi / bit değerinden daha fazla marjinal maliyete sahiptir.