Ethereum işlemleri nasıl çalışır?

İçindekiler

Ethereum hesap tabanlı blockchain kullanıyor. Ethereum’da iki tür hesap vardır: Dıştan Yönetilen Hesap (Externally-Owned Account) ve Sözleşme Hesabı (Contract Account).

Dıştan Yönetilen Hesap (Externally-Owned Account - EOA)

EOA’ı dış dünyadaki bireysel kullanıcı olarak görebiliriz. Ethereum ağında bir kullanıcı 20 byte’lik (160 bit) adresi ile temsil edilir, yani kullanıcı özel anahtarı (private key) ile 20 byte’lik bir adres oluşturur.

Ethereum ağı içerisinde kullanılan kripto para birimi, ether’dir. Ethereum ağında işlem yapılırken ether işlem ücreti olarak veya hizmet bedeli olarak kullanılıyor (buna Ethereum’da gas denir). Başka bir adrese ether göndermek gibi basit işlemler genellikle fazla gas gerektirmez. Akıllı bir sözleşme yapmak gibi daha karmaşık işlemler daha fazla gas gerektirir. Her EOA kendi durumuna göre ether miktarı saklar. Bu hesap, her hangi bir işlem başlattığında gas belirlenir ve sonra belirlenen miktar Ethereum ağında harcanır. 

Dıştan kontrol edilen bir hesap:

  • ether dengesine sahiptir,

  • işlem gönderebilir (ether işlemleri veya sözleşme kodu),

  • özel anahtar ile kontrol edilir,

  • ortak anahtarı yoktur.

Sözleşme Hesabı

  • ether dengesine sahiptir,

  • ortak anahtarı vardır, şöyle ki, bir işlem için topluluğun belli bir yüzdesinin mutabakatı alınır,

  • kodun icrası diğer sözleşmelerden gelen mesajlar veya işlemler ile başlatılır,

  • başka sözleşmelere yardımcı olur,

  • kullanıcılar arasındaki anlaşmaları yönetir,

  • bir uygulamanın bilgilerini veya sonuçlarını kendinde tutar.

İşlem nedir?

Transaction, yani işlem, blokzincirde bir dıştan yönetilen hesap (EOA) tarafından başka bir hesaba gönderilen mesajı saklayan veri paketine denir.

İşlemler (transaction) aşağıdakileri kapsar:

  • mesajın alınması,

  • alıcıya blockchain'de gönderilen mesajın maksadını kanıtlayan ve gönderiyi tanımlayan dijital imza,

  • değer alanı, yani, göndericiden alıcıya transfer edilen wei (ether’in en küçük birimi) değeri, 

  • bir sözleşmeye gönderilebilen mesajı kapsayan isteğe bağlı veri alanı,

  • gas, gönderenin hizmet bedeli olarak ödemeye razı olduğu ücreti temsil eden değer,

  • işlemin gerçekleşmesine izin veren gas.

Mesaj nedir?

Ethereum’da, sözleşmeler diğer sözleşmelere mesaj gönderebiliyorlar. Bu mesajlar sadece Ethereum içerisinde var olan, hiçbir zaman seri olarak yayınlanmayan sanal nesnelerdir. Mesajlar işlev çağrıları olarak algılanmalıdır.

Mesajlar aşağıdakileri kapsar:

  • mesaj göndericisi (gizli),

  • mesaj alıcısı,

  • değer alanı, yani ileti ile birlikte sözleşme hesabına gönderilecek wei değeri,

  • sözleşmenin güncel veri girdisi için seçenekli veri alanı, 

  • maksimum gas miktarı ile sınırlanan değer alanı.

Temelde, mesajlar da işlemlere benzerler. Farkı şudur ki, mesajı sözleşmeler gönderir, müdahale edilemez, işlemleri ise (transaction) kişiler gönderir. 


Kaynaklar:

https://medium.com/coinmonks/transactions-in-ethereum-e85a73068f74

https://ethdocs.org/en/latest/contracts-and-transactions/account-types-gas-and-transactions.html

https://ethereum.stackexchange.com/questions/3667/difference-between-call-callcode-and-delegatecall?noredirect=1&lq=1

bfmedia/data

BTC $ 7194.997
XRP $ 0.219
ETC $ 3.82201
ETH $ 145.011
ADA $ 0.03647
LTC $ 43.727
USDT $ 0.99804
TRX $ 0.0138