Temel kavramlar

Akıllı kontrat (smart contract)

Diğer adı: akıllı sözleşme · smart contract

Tanım

Akıllı kontrat (smart contract), bir blockchain üzerinde çalışan ve önceden yazılmış koşullar gerçekleştiğinde kimsenin onayına gerek kalmadan otomatik olarak işlem yapan bir programdır.

Akıllı kontrat nasıl çalışır

Akıllı kontratı bir otomat makinesine benzetebilirsiniz: doğru miktarı yatırırsanız ürün otomatik olarak düşer, araya kimse girmez. Blockchain'deki kontrat da örneğin belirli bir token yatırıldığında karşılığında başka bir token gönderebilir.

Ethereum bu fikri yaygınlaştırdı; bugün BNB Chain, Solana, Avalanche ve birçok layer 2 de akıllı kontrat çalıştırır. Merkeziyetsiz borsalar, borç verme protokolleri, stablecoin'ler ve NFT'ler bu kontratlar üzerine kuruludur. Bir kontratla etkileşime girmek gas ücreti gerektirir.

Kontrat kodu yayımlandıktan sonra çoğu zaman değiştirilemez; bir hata varsa saldırganlar bunu kullanabilir. Bazı kontratlar ise yönetici anahtarıyla güncellenebilir, bu da başka bir risk demektir. Denetim (audit) raporu bir güvence sağlar ama hatasızlık garantisi değildir. Bir kontrata token harcama izni (approval) verirken de dikkatli olmanız gerekir.

Örnek

Bir DEX'te 3.000 USDC karşılığında ETH almak istediğinizi varsayalım. Cüzdanınız önce kontratın sizin adınıza 3.000 USDC harcamasına izin vermenizi (approval) ister, ardından takas işlemini gönderirsiniz. Kontrat, havuzdaki oranı kullanarak yüzde 0,3 havuz ücretini (9 USDC) likidite sağlayıcılara ayırır ve kalan 2.991 USDC karşılığında, ETH 3.000 USDC iken yaklaşık 0,997 ETH gönderir. Bu iki işlem için ayrıca gas ödersiniz. Tüm adımlar kontrat kodu tarafından otomatik yapılır; ne bir çalışan ne de bir aracı müdahale eder.

Sık yapılan hatalar

  • Tanımadığınız bir sitedeki kontrata sınırsız token harcama izni vermek.
  • Denetim raporu olan her kontratın tamamen güvenli olduğunu düşünmek.
  • Kontratla etkileşimde başarısız olan işlemlerin de gas ücreti tükettiğini bilmemek.

Öğrenin ve deneyin

Sık sorulan sorular

Akıllı kontrat hukuki bir sözleşme mi?

Genellikle hayır. Akıllı kontrat bir yazılımdır; adındaki sözleşme kelimesi otomatik uygulanan kuralları ifade eder. Hukuki statüsü ülkeden ülkeye değişir.

Akıllı kontratlar değiştirilebilir mi?

Bazıları değiştirilemez, bazıları ise yükseltilebilir (upgradeable) şekilde tasarlanır. Yükseltilebilir kontratlarda kimin değişiklik yapabildiğini bilmek önemlidir.