$EX5 ön satışı açık — Seed kademesi · 500M sabit arz · %50 yakım · KYC EX5 Exchange üzerindenKATIL →
21.04.2025

Bitcoin Script’e Giriş: Akıllı İşlem Mantığının Temelleri

İleri

Kısaca: Bitcoin Script nedir, nasıl çalışır ve hangi işlevleri görür? Bu ayrıntılı teknik rehberde Script dilinin yapısını ve gerçek dünyadaki kullanım alanlarını…

Bitcoin’de Programlanabilirlik: Script Neden Var?

Bitcoin yalnızca dijital bir para sistemi değil; işlemlerin içine belirli koşullu mantıkların gömülmesine de izin veren bir platform. Bu programlanabilirlik, Script adı verilen yüzey seviyesindeki bir dille sağlanır.

Script, Bitcoin işlemlerinin kilitleme ve kilit açma koşullarını tanımlar. Ethereum’un smart contract’ları kadar esnek olmasa da Bitcoin Script, çok daha yalın mekanizmalarla güçlü ve özelleştirilebilir bir mantık kurmayı mümkün kılar.

Script Nedir, Nasıl Çalışır?

Script, yığın (stack) tabanlı bir programlama dilidir. Komutlar (OP kodları) ya yığına veri iter ya da yığında duran öğeleri işler.

Script, bir Bitcoin işleminin iki temel bileşeninde karşımıza çıkar:

  • ScriptPubKey: Alıcı adresinin belirlediği kilitleme script’i.
  • ScriptSig: Gönderenin sağladığı kilit açma script’i.

Bu iki script birleştirilip birlikte çalıştırılır. Çalışma bittiğinde yığının tepesinde “true” kalıyorsa işlem geçerlidir.

Bitcoin Script’in Temel Özellikleri

  • Turing-complete değildir: Döngü ya da sonsuz çalışma yoktur; bu, bilinçli bir güvenlik tercihidir.
  • Deterministiktir: Aynı girdiler her zaman aynı çıktıları üretir.
  • Minimalisttir: Gereksiz karmaşıklıktan kaçınarak yalnızca çekirdek işlevler için tasarlanmıştır.
  • Yığın tabanlıdır: LIFO (son giren ilk çıkar) veri yapısıyla çalışır.

Yaygın Script Türleri

1. P2PKH (Pay-to-Public-Key-Hash)

Bitcoin’deki standart işlem biçimidir.

  • ScriptPubKey: OP_DUP OP_HASH160 <PubKeyHash> OP_EQUALVERIFY OP_CHECKSIG
  • ScriptSig: <Signature> <PublicKey>

Fonları yalnızca ilgili özel anahtarın sahibi çözebilir.

2. P2SH (Pay-to-Script-Hash)

Daha karmaşık script’lerin tek bir hash’lenmiş adres olarak temsil edilmesini sağlar.

  • ScriptPubKey: OP_HASH160 <ScriptHash> OP_EQUAL
  • ScriptSig: <Signature(s)> ... <RedeemScript>

Genellikle multisig ya da zaman kilitli ödemelerde kullanılır.

3. Multisig

Bir işlemin yetkilendirilmesi için birden fazla geçerli imza gerektirir.

Örnek: 2/3 multisig script’i:
OP_2 <PubKey1> <PubKey2> <PubKey3> OP_3 OP_CHECKMULTISIG

Tipik olarak bir P2SH yapısının içine gömülür.

Önemli OP Kodlarına Genel Bakış

Script, mantığı tanımlamak için OP (operation) kodlarını kullanır. Sık karşılaşılanlardan bazıları:

  • OP_DUP: Yığının tepesindeki öğeyi çoğaltır.
  • OP_HASH160: Önce SHA-256, ardından RIPEMD-160 uygular.
  • OP_EQUALVERIFY: İki değeri karşılaştırır; farklıysa hata verir.
  • OP_CHECKSIG: Dijital imzayı doğrular.
  • OP_CHECKLOCKTIMEVERIFY: Zamana bağlı harcama kısıtları uygular.

Script’ler bu kodları birleştirerek harcama koşullarını doğrulayan mantık zincirleri kurar.

Bitcoin Script’ten Teknik Örnekler

Temel P2PKH Örneği

  • ScriptSig: <Signature> <PublicKey>
  • ScriptPubKey: OP_DUP OP_HASH160 <PubKeyHash> OP_EQUALVERIFY OP_CHECKSIG

İkisi birlikte çalıştırıldığında yığın, her adımı işleyerek sahipliği doğrular ve ödemeyi yetkilendirir.

Zaman Kilitli Script

ScriptPubKey: <LockTime> OP_CHECKLOCKTIMEVERIFY OP_DROP <PubKey> OP_CHECKSIG

Fonlar, belirtilen zamana ya da blok yüksekliğine ulaşılana kadar harcanamaz. Emanet (escrow), miras aktarımı ya da kademeli fon serbest bırakma senaryolarında işe yarar.

Bitcoin Script ile Neler Kurulabilir?

  • Çoklu imzalı (multisig) cüzdanlar
  • Zaman kilitli ödemeler
  • Lightning Network’te kanal açma
  • Emanet (escrow) sistemleri
  • Kısıtlı harcama koşulları (örneğin tek kullanımlık çıktılar)

Script, sadelik ile yetenek arasında bir denge kurar; bu denge Bitcoin’in ilkeleriyle örtüşür.

Bitcoin Script Neden Önemli?

Bitcoin Script, Bitcoin’in dijital paradan ibaret olmadığını gösterir. İşlemlerin içine programlanabilir mantık yerleştirerek, güvenlikten ödün vermeden daha fazla esneklik ve karşı tarafa güven gerektirmeyen koşullar sağlar.

SSS: Bitcoin Script Hakkında Sık Sorulanlar

S: Bitcoin Script Turing-complete midir?
C: Hayır. Güvenlik gerekçesiyle döngülerden ve rastgelelikten bilinçli olarak kaçınır.

S: Bitcoin Script NFT ya da DeFi’yi destekler mi?
C: Yalnızca sınırlı biçimde. Token kontrolü ya da emanet gibi temel işlevler kurulabilir; tam kapsamlı DeFi mantığı kurulamaz.

S: Yeni OP kodları hâlâ ekleniyor mu?
C: Evet. SegWit ve Taproot gibi güncellemelerle yeni OP kodları geldi, yenileri de tartışılmaya devam ediyor.

Sonuç: Script, Bitcoin’in Akıllı Katmanı

Bitcoin Script, ağı çalıştıran işlem mantığını tanımlar. İleri düzey teknik bilgi gerektirse de geliştiriciler, güvenlik uzmanları ve protokol tasarımcıları için vazgeçilmez bir araçtır.

Bitcoin Script’i inceleyen kullanıcı sayısı arttıkça, Bitcoin’in ne kadar esnek, güvenli ve programlanabilir olduğu daha net görülüyor.

Öneriler:

  • Bitcoin Script’i güvenle denemek için testnet kullanmak.
  • ScriptSig ile ScriptPubKey arasındaki farkı iyice kavramak.
  • OP kodlarını gerçek script’ler üzerinde pratik yaparak öğrenmek.
  • Multisig ve zaman kilidi senaryolarını uygulayarak deneyim kazanmak.
  • Bitcoin Core belgelerini ve GitHub’daki BIP arşivini düzenli olarak takip etmek.