İçeriğe geç
parazade
Kripto

Bitcoin Script Nedir?

Yayın: · Son güncelleme:

Bitcoin Script Nedir? Kısaca

Bitcoin Script, bir Bitcoin çıktısının hangi koşullarla harcanabileceğini tanımlayan, yığın (stack) tabanlı ve kasıtlı olarak sınırlı tutulmuş programlama dilidir. Çoklu imza ve zaman kilidi gibi özellikler bununla yapılır.

Bitcoin Script nedir?
İçindekiler
  1. Bitcoin Script nedir?
  2. Neden sınırlı?
  3. Neler yapılabilir?

Bitcoin Script, Bitcoin işlemlerinde paranın hangi koşullarda harcanabileceğini belirleyen basit bir programlama dilidir. Her Bitcoin çıktısı küçük bir "kilit" betiği taşır; bu çıktıyı harcamak isteyen kişi, kilidi açan "anahtar" verisini sunmak zorundadır.

Bitcoin Script nedir?

Script, yığın tabanlı bir dildir: Veriler bir yığının üstüne konur ve işlem kodları (opcode) bu verileri alıp işler. Doğrulama sırasında harcama verisi ile kilit betiği birlikte çalıştırılır; sonuç geçerli çıkarsa harcama kabul edilir.

En yaygın örnekte kilit şunu söyler: "Bu parayı, şu açık anahtarın hash'ine sahip anahtarla geçerli bir imza atan harcayabilir." Harcayan kişi de imzasını ve açık anahtarını sunar.

Neden sınırlı?

Bitcoin Script kasıtlı olarak Turing-complete değildir; yani döngü içermez. Bunun nedenleri:

  • Her betiğin kısa sürede bitmesini garanti etmek,
  • Ağı kilitleyebilecek sonsuz döngüleri engellemek,
  • Saldırı yüzeyini küçük tutmak.

Bu yüzden Ethereum'daki gibi karmaşık akıllı sözleşmeler doğrudan yazılamaz; ancak sınırlı ama güçlü yapılar kurulabilir.

Neler yapılabilir?

  • Çoklu imza: Örneğin 3 anahtardan 2'sinin imzası gerektiren cüzdanlar.
  • Zaman kilidi: Belirli bir tarih ya da blok yüksekliğinden önce harcanamayan çıktılar.
  • HTLC: Lightning Network'ün temelindeki, gizli bir değere ve süreye bağlı koşullu ödemeler.

SegWit ve Taproot gibi güncellemeler Script'in verimliliğini ve gizliliğini artırmıştır. Sıradan kullanıcı Script yazmaz; cüzdan yazılımları bunu arka planda halleder.

Sıkça Sorulan Sorular

Bitcoin Script ile akıllı sözleşme yazılabilir mi?

Sınırlı ölçüde. Çoklu imza, zaman kilidi ve koşullu ödemeler gibi yapılar kurulabilir, ancak Ethereum'daki gibi genel amaçlı programlar yazılamaz.

Bitcoin Script neden döngü içermiyor?

Her betiğin öngörülebilir sürede bitmesi ve ağın sonsuz döngülerle kilitlenmemesi için. Bu tasarım güvenliği önceliklendirir.

İlgili terimler

Çoklu İmza(Multisignature)Çoklu imza (multisignature, multisig), bir kripto cüzdanından işlem yapılabilmesi için tek bir özel anahtar yerine, önceden belirlenmiş sayıda farklı anahtarın imzasının gerekli olduğu güvenlik düzenidir.Zaman Kilidi(Timelock)Zaman kilidi (timelock), bir kripto işlemin ya da varlığın belirli bir tarih, blok yüksekliği veya süre dolmadan harcanamamasını sağlayan mekanizmadır. Ödeme kanallarında, vesting'de ve yönetişim gecikmelerinde kullanılır.HTLC(Hash Time-Locked Contract)HTLC (Hash Time-Locked Contract), alıcının belirli bir süre içinde gizli bir değeri açıklaması şartıyla ödemeyi almasını, aksi hâlde paranın gönderene dönmesini sağlayan koşullu sözleşmedir. Lightning Network ve atomik takaslarda kullanılır.TaprootTaproot, Kasım 2021'de etkinleştirilen ve Bitcoin'e Schnorr imzalarını ve daha esnek harcama koşullarını getiren soft fork güncellemesidir. Karmaşık işlemleri daha verimli ve daha gizli hâle getirmeyi amaçlar.BitcoinBitcoin (BTC), 2009'da Satoshi Nakamoto takma adlı kişi ya da grup tarafından başlatılan, merkezi bir otoriteye bağlı olmadan iş ispatı ile çalışan ve toplam arzı 21 milyonla sınırlı olan ilk kripto paradır.Akıllı Sözleşme(Smart Contract)Akıllı sözleşme, blokzincir üzerinde çalışan ve önceden belirlenmiş koşullar gerçekleştiğinde kendiliğinden işlem yapan bir programdır; aracıya ihtiyaç duymadan kuralları uygular, ancak kodundaki hatalar da aynen çalışır.SegWit(Segregated Witness)SegWit (Segregated Witness), 2017'de etkinleştirilen ve Bitcoin işlemlerindeki imza verisini ana işlem verisinden ayıran bir soft fork güncellemesidir. İşlem şekil değiştirme sorununu çözdü ve blok kapasitesini artırdı.