Ethereum ve OP Mainnet Farklılıkları
OP Mainnet, EVM’ye (Sanal Ethereum Makinesi) eşdeğer olacak şekilde tasarlanmıştır ve Ethereum protokolüne mümkün olduğunca az değişiklik getirmektedir. Bununla birlikte, Ethereum ve OP Mainnet’in davranışları arasında geliştiricilerin farkında olması gereken bazı küçük farklılıklar vardır.
Adres Takma İşlemi
Adres takma, akıllı sözleşmeler tarafından L1'den L2'ye gönderilen işlemlerin davranışını etkileyen önemli bir güvenlik özelliğidir. Zincirler arası işlemlerle çalışıyorsanız bu bölümü dikkatle okuduğunuzdan emin olun. CrossChainMessenger sözleşmelerinin adres takma işlemini kullanıcı adına dahili olarak gerçekleştireceğini unutmayın.
İşlemler Katman 1'den Katman 2'ye Harici Olarak Sahip Olunan Hesap tarafından gönderildiğinde, L2'deki işlemin göndericisinin adresi L1'deki işlemin göndericisinin adresine ayarlanacaktır. Ancak, işlem L1'deki bir akıllı sözleşme tarafından tetiklenmişse, L2'deki bir işlemin göndericisinin adresi farklı olacaktır.
CREATE işlem kodunun davranışı nedeniyle, hem Katman 1 hem de Katman 2 üzerinde aynı adresi paylaşan ancak farklı bayt koduna sahip bir sözleşme oluşturmak mümkündür. Bu sözleşmeler aynı adresi paylaşıyor olsalar da temelde iki farklı akıllı sözleşmedir ve aynı sözleşme olarak değerlendirilemezler. Sonuç olarak, bir akıllı sözleşme tarafından Katman 1'den Katman 2'ye gönderilen bir işlemin göndericisi Katman 1'deki akıllı sözleşmenin adresi olamaz ya da Katman 1'deki akıllı sözleşme Katman 2'deki akıllı sözleşmeymiş gibi hareket edebilir (çünkü iki sözleşme aynı adresi paylaşır).
Bu tür bir taklitçiliği önlemek için, bir işlem Katman 1'den Katman 2'ye bir akıllı sözleşme tarafından gönderildiğinde işlemin göndericisi biraz değiştirilir. Katman 2 işlemi, gerçek Katman 1 sözleşme adresinden gönderilmiş gibi görünmek yerine, Katman 1 sözleşme adresinin “takma” bir versiyonundan gönderilmiş gibi görünür. Bu takma adres, gerçek Katman 1 sözleşme adresinden sabit bir ofset değeridir, öyle ki takma adres Katman 2'deki başka bir adresle asla çakışmaz ve orijinal Katman 1 adresi takma adresten kolayca kurtarılabilir.
Gönderici adresindeki bu değişiklik yalnızca Katman 1 akıllı sözleşmeleri tarafından gönderilen Katman 2 işlemlerine uygulanır. Diğer tüm durumlarda, işlem gönderen adresi Ethereum tarafından kullanılan aynı kurallara göre ayarlanır.
İşlemler ve İşlem Ücretleri
OP Mainnet işlemleri, Ethereum’da beklediğiniz standart yürütme gazı ücretine ek olarak bir L1 veri ücreti ödemelidir. Daha fazla bilgi için OP Mainnet İşlem Ücretleri kılavuzuna bakın.
EIP-1559 Parametreleri
OP Mainnet’teki temel ücret, Ethereum gibi, EIP-1559 mekanizması aracılığıyla hesaplanır. OP Mainnet tarafından kullanılan EIP-1559 parametreleri Ethereum tarafından kullanılanlardan aşağıdaki gibi farklılık gösterir.
Bellek Havuzu Kuralları
Ethereum’un aksine, OP Mainnet büyük bir genel bellek havuzuna sahip değildir. OP Mainnet Denetleyicisi bellek havuzu şu anda yalnızca Denetleyici tarafından görülebilir. Sıralayıcı, bellek havuzundaki işlemleri öncelikli ücret sırasına göre (önce en yüksek ücret) yürütür.