Kripto Para Al
Piyasa
Spot
Vadeli
Finansal
Etkinlik
Dahası
reward-centerYeni Başlayanlar
AkademiSözlüklerAyrıntılar
Ethereum
Smart Contracts

Calldata

Tanım

Calldata, Ethereum üzerinde bir akıllı sözleşmeyle etkileşimde bulunurken bir işlemle birlikte gönderilen, salt okunur bir veri türüdür. Bir akıllı sözleşmenin bir işlevi yürütmek için ihtiyaç duyduğu talimatları ve girdi değerlerini içerir, ancak sözleşme tarafından kalıcı olarak değiştirilemez veya depolanamaz.

Basitçe söylemek gerekirse, calldata bir akıllı sözleşmeye ne yapması gerektiğini ve hangi bilgilerle yapması gerektiğini söyleyen mesajdır.

Calldata Ne İçin Kullanılır?

Calldata esas olarak akıllı sözleşmelere bilgi aktarmak için kullanılır. Bu şunları içerir:

  • Hangi işlevin çağrılacağı
  • Bu işlevi çalıştırmak için gereken parametreler
  • Kullanıcılardan veya uygulamalardan kodlanmış işlem verileri

Calldata, sözleşme deposunda kaydedilmediği için kalıcı depolamadan daha ucuzdur, bu da yürütme sırasında geçici veri sağlamak için verimli bir yol olmasını sağlar.

Calldata Nasıl Çalışır

Bir kullanıcı bir akıllı sözleşmeye bir işlem gönderdiğinde, işlem gerçekleştirilecek eylemi belirten calldata'yı içerir. Ethereum Sanal Makinesi (EVM) bu veriyi okur, istenen işlevi yürütür ve yürütme tamamlandıktan sonra calldata'yı atar.

Örneğin, bir kullanıcı merkeziyetsiz bir borsada token takas ettiğinde, işlemin calldata'sı token adresi, takas edilen miktar ve alıcı adresi gibi ayrıntıları içerir. Akıllı sözleşme bu bilgiyi okur, takası tamamlar ve sonrasında calldata'yı saklamaz.

Ethereum Ölçeklendirmesinde Calldata

Calldata, Ethereum ölçeklendirmesinde, özellikle rollup'lar için önemli bir rol oynar. Rollup'lar, sıkıştırılmış işlem verilerini calldata kullanarak Ethereum'a gönderir, böylece herkes gerektiğinde zincir dışı işlemleri doğrulayabilir.

Ancak, büyük miktarda veri gönderildiğinde calldata pahalı hale gelebilir. Bu nedenle, maliyetleri düşürmek için veri blobları ve harici veri kullanılabilirlik katmanları gibi yeni çözümler geliştirilmektedir.

Calldata vs Depo ve Bellek

Calldata, Ethereum'daki diğer veri konumlarından farklıdır:

Calldata : Salt okunur, geçici ve işlev girdileri için kullanılır.

Bellek : Yürütme sırasında geçici ve değiştirilebilir.

Depo : Blok zincirinde kalıcı olarak kaydedilen veriler ve kullanımı en pahalı olanıdır.

Neden Önemli

Calldata'yı anlamak, kullanıcıların ve geliştiricilerin akıllı sözleşmelerin talimatları nasıl aldığını ve işlem maliyetlerinin neden değiştiğini kavramalarına yardımcı olur. Ayrıca, rollup'ların şeffaflık için neden calldata'ya güvendiğini ve veri kullanımını optimize etmenin Ethereum'un ölçeklenebilirliği için neden kritik olduğunu açıklar.

Calldata çoğu kullanıcı için görünmez olabilir, ancak akıllı sözleşmelerin ve ölçeklendirme çözümlerinin Ethereum'da nasıl çalıştığının temel bir yapı taşıdır.