0Pricing
Cryptology Academy · Ders

Bitcoin Betiği ve UTXO İmza Doğrulama

Pay-to-public-key-hash (P2PKH) betiklerini ve ECDSA imzalamayı izleyin.

Bitcoin Betiği ve UTXO İmza Doğrulama, CoddyKit'te ücretsiz bir Cryptology Academy dersidir. Bu, 4 dersinin 4. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Cryptology Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Cryptology Academy kursu toplamda 4 dersten oluşur.

UTXO Modeli

Bitcoin, Harcanmamış İşlem Çıktılarını (UTXO'lar) kullanır. Her UTXO, kilitleme betiğine (scriptPubKey) sahip bir madeni paradır. Harcamak için harcayan taraf, kilitleme betiğini karşılayan bir kilit açma betiği (scriptSig) sağlar. UTXO'lar atomiktir — ya harcanmıştır ya da harcanmamıştır; hiçbir zaman kısmen harcanmaz.

Bitcoin Betiği

Bitcoin Betiği, yığın tabanlı ve Turing-tam olmayan bir dildir. Betikler, veri iterek ve işlem kodlarını çalıştırarak yürütülür. Döngü yoktur, özyineleme yoktur — betikler her zaman sonlanır. Bu kasıtlı sınırlama, hizmet engelleme saldırılarını önler ve betik doğrulamasının betik uzunluğuna göre O(n) olmasını sağlar.

P2PKH: Açık Anahtar Özetine Ödeme

En yaygın çıktı türüdür. scriptPubKey: OP_DUP OP_HASH160 OP_EQUALVERIFY OP_CHECKSIG. scriptSig: . Yürütme: imzayı ve açık anahtarı yığına it, açık anahtarı çoğalt, hash160 işlemini uygula, gömülü özetle karşılaştır ve ECDSA imzasını doğrula. Tüm adımlar başarılıysa madeni para harcanabilir.

P2PKH Yürütme İzi

P2PKH için yığın izleme kaydı: 'yi it; 'i it; OP_DUP → kopyayı it; OP_HASH160 → üstteki öğeye hash160 uygula; 'i it; OP_EQUALVERIFY → iki öğeyi çıkar, eşit değilse başarısız ol; OP_CHECKSIG → imzayı ve pubKey'i çıkar, ECDSA'yı doğrula, TRUE/FALSE it. Betik TRUE ise başarılıdır.

Bitcoin'de ECDSA

Bitcoin, secp256k1 üzerinde ECDSA kullanır (Koblit eğrisi, y^2 = x^3 + 7 mod p). Özel anahtar d ∈ [1, n-1]. Açık anahtar Q = d*G. İmzala(m): k rastgele seçilir; r = (k*G).x mod n; s = k^{-1}(H(m)+r*d) mod n. İmza = (r, s). scriptSig içinde DER biçiminde kodlanır.

SIGHASH Türleri

Bitcoin imzaları, işlemin belirli bölümlerini kapsar: SIGHASH_ALL (varsayılan): tüm girdileri+çıktıları imzalar. SIGHASH_SINGLE: yalnızca karşılık gelen çıktıyı imzalar. SIGHASH_NONE: hiçbir çıktıyı imzalamaz (tehlikelidir). SIGHASH_ANYONECANPAY: yalnızca kendi girdisini imzalar — ortak işlemlere olanak tanır.

P2SH: Betik Özetine Ödeme

P2SH, karmaşık harcama koşullarının bir özetin arkasında gizlenmesine olanak tanır. scriptPubKey: OP_HASH160 OP_EQUAL. scriptSig: . Yürütme: hash(redeemScript) == scriptHash olduğunu değerlendir, ardından redeemScript'i çalıştır. Koşullar harcama anına kadar açıklanmadığı için çoklu imzayı mümkün kılar.

Çoklu İmza (2'de 3)

redeemScript: OP_2 OP_3 OP_CHECKMULTISIG. scriptSig: OP_0 . OP_0, OP_CHECKMULTISIG içindeki fazladan bir yığın öğesini çıkaran hatayı telafi eder. 2'de 3 çoklu imza, 3 imzadan herhangi 2'sini gerektirir.

SegWit ve P2WPKH

Ayrıştırılmış Tanık (SegWit, BIP-141), imzaları scriptSig'den çıkarıp ayrı bir tanık alanına taşır. İşlem değiştirilebilirliğini düzeltir (scriptSig değişirse ID de değişir). P2WPKH scriptPubKey: OP_0 <20-byte pubKeyHash>. Tanık: [ ].

Taproot (P2TR)

Taproot (BIP-340/341/342), Schnorr imzalarını ve Merkleleştirilmiş Soyut Sözdizimi Ağaçlarını (MAST) kullanır. Varsayılan harcama: anahtar yolu harcamasından ayırt edilemeyen tek bir Schnorr imzası. Karmaşık koşullar bir Merkle ağacında gizlenir ve yalnızca kullanıldıklarında açıklanır. Gizlilik ve verimlilik sağlar.

Kodda Betik Doğrulaması

Bitcoin Core, betikleri bir yığın yorumlayıcısında doğrular. CheckSig, birleşik scriptSig+scriptPubKey'i çalıştıran VerifyScript'i çağırır. Her CHECKSIG işlem kodu için, secp256k1 kullanarak işlem özetine karşı DER kodlamalı (r,s) değerini doğrulayan CheckECDSASignature'ı çağırır.

Hızlı Kontrol

P2PKH betiğinde OP_CHECKSIG neyi doğrular?

Özet

UTXO'lar yığın tabanlı Bitcoin Betiğini kullanır. P2PKH: en yaygın harcama modeli — bir açık anahtarı özetleyip doğrular, ardından ECDSA imzasını kontrol eder. SegWit değiştirilebilirliği düzeltir; Taproot Schnorr ve MAST ekler. Sıradaki konu: diferansiyel kriptanaliz.

Sıkça Sorulan Sorular

“Bitcoin Betiği ve UTXO İmza Doğrulama” dersi ücretsiz mi?

Evet — “Bitcoin Betiği ve UTXO İmza Doğrulama” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Cryptology Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Cryptology Academy kursu toplamda 4 dersten oluşur.

“Bitcoin Betiği ve UTXO İmza Doğrulama” dersinde ne öğreneceğim?

Pay-to-public-key-hash (P2PKH) betiklerini ve ECDSA imzalamayı izleyin. Cryptology Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Cryptology Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Cryptology Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 4. dersidir.

“Bitcoin Betiği ve UTXO İmza Doğrulama” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Cryptology Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Cryptology Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Özet Zincirleri ve Blok Bağlama
  2. Merkle Ağaçları: Ölçekli İşlem Bütünlüğü
  3. İş İspatı: Madencilik ve Zorluk Ayarlaması
  4. Bitcoin Betiği ve UTXO İmza Doğrulama
← Cryptology Academy Sayfasına Dön