Geliştirici başvuru kaynağı
Burası başvuru katmanıdır: bir şey satın alırken değil, Bitcoin kodunu okurken veya ham bir işlemi çözümlerken karşılaştığınız P2P mesaj türleri, betik işlem kodları, RPC alan adları ve protokol yapıları.
Var olmasının nedeni şudur: bu terimlerin çoğunun hâlâ arandığı yer olan Bitcoin Core geliştirici sözlüğü 2021'den beri neredeyse hiç değişmedi ve bazı maddeleri artık yazılımı anlatmıyor. Belgelediği BIP70 ödeme protokolü Bitcoin Core'dan 0.20.0 sürümünde silindi. Bloom filtresi maddeleri, Core'un 0.19.0 sürümünde varsayılan olarak sunmayı bıraktığı bir mekanizmayı anlatıyor. Bunların her biri burada, kodun şimdi yaptığına göre yeniden kuruldu ve düzeltme sessizce uygulanmak yerine açıkça belirtildi.
Terimler gruplara ayrılır. inv, getdata ve MSG_FILTERED_WITNESS_BLOCK gibi mesaj türleri eşler arası protokole aittir. OP_RETURN ve OP_CHECKSIG gibi işlem kodları Script'e aittir. İmza hash bayrakları, sequence numaraları ve locktime, bir imzanın gerçekte neyi taahhüt ettiğini belirler. X509 ve ödeme isteği maddeleri tarihîdir ve bunu belirtirler.
Okurların çoğunun bu bölüme hiç ihtiyacı olmayacak ve bu gayet normal. Tam bir alan adı aramasının tek satırlık bir taslağa değil onu doğru biçimde açıklayan bir sayfaya düşmesi için buradadır.
47 terim. Son inceleme: 24 Eylül 2026.
Terimler: Geliştirici başvuru kaynağı
- Ara sertifikaAra sertifika, bir kök sertifika ile bir uç sertifika arasında yer alır; kök tarafından imzalanır ve uç sertifikayı imzalar, böylece kök sertifikanın özel anahtarı çevrim dışı ve kullanılmadan kalabilir.
- Bitcoin Scriptayrıca ScriptBitcoin Script, her Bitcoin çıktısının taşıdığı ve o bitcoinlerin yeniden harcanabilmesi için birinin yerine getirmesi gereken koşulları belirleyen küçük, yığın tabanlı dildir.
- Bitcoin URIayrıca BIP21Bitcoin URI, tıklanabilir tek bir dizede bir ödemenin ayrıntılarını toplar; bitcoin: ile başlar ve bir adres, bir tutar ve bir etiket taşıyabilir.
- CompactSizeayrıca Compact size unsigned integer, VarIntCompactSize, Bitcoin'in serileştirilmiş verilerde adet ve uzunlukların önüne eklediği değişken uzunluklu tam sayıdır; 253 altındaki değerler için bir bayt, geri kalanı için en fazla dokuz bayt tutar.
- Dahili bayt sırasıDahili bayt sırası, Bitcoin'in serileştirilmiş yapılar içinde kullandığı düzendir: tam sayılar en az anlamlı bayt önce gelecek şekilde yazılır, hash özetleri ise SHA-256 işlevinin ürettiği sırayla yazılır.
- Descriptor sağlama toplamıDescriptor sağlama toplamı, bir çıktı descriptor'ında kare işaretinden sonra gelen sekiz karakterlik koddur; bir cüzdan yanlış anahtarları içe aktarmadan önce yazım ve kopyalama hatalarını yakalayan bir BCH kodudur.
- EtiketBitcoin URI'sindeki etiket, ödeme yapılan kişinin veya işletmenin adını belirtir; cüzdanda ise bir adrese ya da işleme eklediğiniz özel nottur.
- İmza betiğiayrıca scriptSig, Kilidi açma betiği, Signature scriptİmza betiği, bir girdinin harcadığı çıktının genel anahtar betiğini karşılamak için taşıdığı kilidi açma verisidir ve modern SegWit girdilerinde boştur.
- Kök sertifikaKök sertifika, bir sertifika zincirinin en üstünde yer alan ve kendini imzalayan güven çapasıdır; ona güvenilmesinin tek nedeni, işletim sisteminizin veya tarayıcı üreticinizin onu oraya koymuş olmasıdır.
- MakbuzBitcoin'de makbuz, bir ödemenin gerçekleştiğine dair sakladığınız her türlü kanıttır: BIP70 içinde bu, satıcıdan gelen imzalı bir teyitti ve pratikte işlem kimliğidir.
- MSG_BLOCKMSG_BLOCK, bir düğümün bir eşe tam bir bloğu hash değeriyle istemek için getdata mesajına koyduğu kod olan 2 envanter türüdür.
- MSG_CMPCT_BLOCKMSG_CMPCT_BLOCK, bir envanter türü olan 4 numaralı tür, yalnızca istek üzerine kullanılan bir koddur: hiçbir zaman bir duyuruda yer almaz ve yalnızca önce bunu kabul etmiş bir eşe gönderilen getdata mesajı içinde geçerlidir.
- MSG_FILTERED_WITNESS_BLOCKFiltrelenmiş tanık bloğu türü, BIP144'ün ayrılmış listesinde ve Bitcoin Core kaynak kodundaki enum içinde yer alır; her iki yerde de arkasında bir uygulama yoktur.
- MSG_TXMSG_TX, bir envanter kaydını işlem olarak işaretler, tür kodu 1, ve onaylanmamış ödemenizin, hiçbir eş henüz içeriğini görmeden önce eşlere duyurulması bu şekilde olur.
- MSG_WITNESS_BLOCKTanık bloğu (witness block) envanter türü, SegWit destekli bir düğümün, her imza çıkarılmak yerine eklenmiş haldeyken genişletilmiş serileştirmede bir bloğu nasıl istediğini gösterir.
- MSG_WITNESS_TXgetdata olarak gönderilen bir tanık işlem isteği, bir eş düğüme adı geçen işlemi imza verileri çıkarılmadan, imzaları ekli hâlde geri göndermesini söyler.
- Nokta fonksiyonuNokta fonksiyonu, özel anahtarı secp256k1 üretici noktasını bu sayıyla çarparak genel anahtara dönüştürür ve her Bitcoin adresinin üzerine kurulduğu tek yönlü adım budur.
- OP_CHECKMULTISIGOP_CHECKMULTISIG, bir grup imzayı tek adımda bir genel anahtar listesine karşı doğrular ve Taproot harcamaları bunu hiç kullanamaz, çünkü toplu doğrulamayı engeller.
- OP_CHECKSIGOP_CHECKSIG yığından bir genel anahtar ile bir imza alır ve imzanın bu işleme bağlı olduğunu doğrular; bitcoinlerin size ait olduğunu gerçekten kanıtlayan kontrol budur.
- OP_DUPOP_DUP, yığının en üstündeki öğeyi iki kez kullanılabilmesi için kopyalar; standart pay-to-public-key-hash betiğinin hem genel anahtarınızın hash'ini hesaplayıp hem de ona karşı doğrulama yapabilmesinin nedeni budur.
- OP_EQUALOP_EQUAL, yığının en üstündeki iki öğeyi bayt bayt karşılaştırır ve doğru ya da yanlış bir sonucu yığına iter; her pay-to-script-hash çıktısındaki son opcode budur.
- OP_EQUALVERIFYOP_EQUALVERIFY yığının en üstündeki iki öğeyi karşılaştırır ve bunlar farklıysa betiği anında sonlandırır; eski tip bir harcamanın doğru genel anahtarı sunduğunu kanıtlaması da bu şekilde olur.
- OP_HASH160OP_HASH160, yığının en üstündeki öğe üzerinde SHA-256, ardından bu sonuç üzerinde RIPEMD-160 çalıştırır ve 20 baytlık bir özet bırakır; bu, 1 veya 3 ile başlayan her adresin içinde taşınan aynı parmak izidir.
- OP_RETURNOP_RETURN, bir işlem çıktısını kanıtlanabilir biçimde harcanamaz kılan işlem kodudur; bu sayede canlı coin kümesini şişirmeden blok zincirine az miktarda keyfi veri yazılabilir.
- OP_VERIFYOP_VERIFY, yığının en üstündeki öğeyi çıkarır ve bu öğe doğru değilse tüm betiği iptal eder; böylece Bitcoin Script içindeki her test katı bir koşula dönüşür.
- Opcodeayrıca Veri iten opcode, Veri itmeyen opcodeOpcode, Bitcoin Script'in tek bir baytıdır ve doğrulama yapan bir düğüme sırada ne yapacağını, yani veriyi yığına mı iteceğini yoksa yığında zaten bulunan veri üzerinde tek bir işlem mi gerçekleştireceğini söyler.
- Ödeme protokolü (BIP70)ayrıca Ödeme protokolü, Payment protocol, BIP70Ödeme protokolü (BIP70), Bitcoin'in çıplak adreslerin yerine imzalı ve sertifikayla desteklenen ödeme taleplerini koyma girişimiydi ve Bitcoin Core, 0.20.0 sürümünde buna verilen son desteği kaldırdı.
- PaymentDetailsPaymentDetails, bir ödemeyi gerçekte tanımlayan BIP70 mesajıydı: hangi çıktılara ödeme yapılacağı, ne kadar ödeneceği, talebin ne zaman sona ereceği ve imzalı işlemin nereye gönderileceği.
- PaymentRequestPaymentRequest, BIP70 dış zarfıdır: serileştirilmiş bir PaymentDetails ikili verisini bir sertifika zinciri ve bir imzayla birlikte sarar, böylece ödeme yapan taraf isteği kimin gönderdiğini kontrol edebiliyordu.
- PKIayrıca Açık anahtar altyapısıPKI, yani açık anahtar altyapısı, bir yazılımın bir genel anahtarın gerçekten kendisine bağlanan ada ait olup olmadığına karar vermesini sağlayan sertifika otoriteleri, sertifikalar ve güven depoları sistemidir.
- PP amountPP amount, bir BIP70 çıktısı içinde satoshi cinsinden tutulan ve ödeyenin ne kadar göndereceğini seçmesini isteyen satıcı tarafından sıfıra ayarlanan alandı.
- PP expiresPP expires, bir BIP70 PaymentDetails mesajında, o an geçtikten sonra cüzdanın isteği artık yerine getirmemesini söyleyen isteğe bağlı Unix zaman damgasıydı.
- PP memoPP memo, BIP70'te bir satıcının, ödeme yapanın veya ödemeyi onaylayan bir sunucunun bir insanın okuması için ödemeye ekleyebildiği UTF-8 serbest metin notuydu.
- PP merchant dataPP merchant data, BIP70 ödeme isteğinde satıcının eklediği ve hiç değiştirilmeden geri aldığı opak bir bayt dizisiydi; böylece gelen bitcoinler bir siparişle eşleştirilebiliyordu.
- PP pki dataPP pki data, bir BIP70 ödeme talebinde satıcının sertifikalarını taşıyan alandı: DER ile kodlanmış, önce yaprak sertifika, arkasında varsa ara sertifikalar, kök sertifika ise dışarıda bırakılmış.
- PP pki typePP pki type, bir BIP70 ödeme talebinde satıcının onu nasıl imzaladığını belirten tek kelimelik dizeydi: none, SHA-256 ile x509 veya SHA-1 ile x509.
- PP scriptPP script, ödeyicinin yeniden üretmesi gereken ham kilitleme script'ini barındıran BIP70 çıktısında zorunlu alandı; bir işlem çıktısında son bulan baytların aynısı.
- Pubkey scriptayrıca scriptPubKey, Kilitleme scriptiPubkey script, her işlem çıktısına eklenen ve o çıktıdaki bitcoinlerin yeniden hareket edebilmesi için karşılanması gereken koşulları belirten kısa Bitcoin Script parçasıdır.
- R parametresiR parametresi, bir Bitcoin URI'sine BIP72 ile eklenen ve ödeme adresinin yerine, cüzdanınızın imzalı bir isteği çekmesi beklenen bir URL koyan ektir.
- Redeem scriptayrıca redeemScriptRedeem script, bir pay-to-script-hash çıktısının arkasında gizlenen tam harcama sözleşmesidir; harcayan tarafından imza betiğinin sonunda sunulur ve eşleştiğini kontrol etmek için hashlenir.
- RPC bayt sırasıRPC bayt sırası, Bitcoin yazılımının 32 baytlık hash'leri görüntülerken kullandığı ters sıradır ve bir cüzdandan ya da blok gezgininden kopyaladığınız her işlem kimliğinin biçimidir.
- Sertifika zinciriSertifika zinciri, bir sunucunun sunduğu sertifikayı cihazınızın zaten güvendiği bir kök sertifikaya bağlayan sıralı sertifika listesidir ve her halka bir sonraki tarafından imzalanır.
- SSL imzasıSSL imzası, bir PaymentRequest mesajını bir web sunucusunun sertifika anahtarıyla imzalayan baytlara BIP70 tarafından verilen addır ve bu ad yazıldığı anda bile yanlış bir adlandırmaydı.
- URI QR kodURI QR kod, bir bitcoin: URI'sini kodlayan kare siyah beyaz desendir; böylece bir kamera, normalde yazılacak adresi ve tutarı okuyabilir.
- Witness scriptWitness script, bir P2WSH çıktısının gerçek harcama koşullarını taşır ve witness içinde yer alır; burada baytları olağan maliyetin dörtte biri ağırlığında sayılır.
- X.509 sertifikasıayrıca X509 sertifikalarıX.509 sertifikası, bir genel anahtarı bir ada ve bir geçerlilik dönemine bağlayan imzalı bir dosyadır ve bir borsaya yaptığınız her HTTPS bağlantısının arkasındaki biçimdir.
- Yaprak sertifikaYaprak sertifika, gerçekte bağlandığınız sunucunun sunduğu uç varlık sertifikasıdır ve bir alan adının kontrolünü kanıtlar, arkasındaki kişiler hakkında hiçbir şey kanıtlamaz.
Diğer 13 bölüm
- Temel kavramlarBitcoin'in ne olduğu, satoshi'nin ne olduğu ve sözlüğün geri kalanının dayandığı birkaç temel fikir.
- Adresler ve anahtarlarCoinlerin nereye gönderildiği, özel anahtarın gerçekte neyi denetlediği ve tek bir kurtarma ifadesinin binlerce adresi nasıl ürettiği.
- Cüzdanlar ve saklamaSıcak, soğuk, saklamalı ve çoklu imzalı cüzdanlar ve her birinin coinlerinizi kimin hareket ettirebileceğini nasıl değiştirdiği.
- Gizlilik ve güvenlikİnsanların Bitcoin'lerini çalan saldırılar ve bunları durduran alışkanlıklarla araçlar.
- İşlemler ve ücretlerBir Bitcoin işleminin nelerden oluştuğu, neden o kadar tuttuğu ve takılı kalanın nasıl çözüleceği.
- Satın alma ve borsalarEmir türleri, makas ve ücret tarifeleri: bir borsanın sizden ücret keserken kullandığı sözcük dağarcığı.
- Piyasalar ve yatırımPiyasa değeri, oynaklık ve spot ETF'ler. Fiyat tahmini olmadan fiyatın dili.
- Madencilik ve konsensüsYeni blokların nasıl üretildiği, zorluğun neyi ayarladığı ve başında kimse olmadan kuralların neden geçerli kaldığı.
- Protokol ve güncellemelerSegWit, Taproot, soft fork'lar ve BIP'ler: Bitcoin'in nasıl değiştiği ve buna kimin karar verdiği.
- Lightning ve katman 2Ödeme kanalları, faturalar ve yönlendirme: bir blokta yer için ödeme yapmadan Bitcoin taşımanın yolu.
- Düzenleme ve vergiKYC, Travel Rule, MiCA ve sermaye kazancı: hesabınıza ve vergi beyannamenize ulaşan kurallar.
- Kültür ve tarihMt. Gox, genesis bloğu, HODL ve insanların Bitcoin'den söz ediş biçimini şekillendiren olaylarla argo.
- Düğümler ve yazılımBitcoin Core, tam düğümler, budama ve RPC: kuralları uygulatan yazılım.
Sık sorulan sorular
Bu bölüm kimin için?
Bitcoin'in kaynak kodunu okuyan, ham bir işlemi çözümleyen ya da P2P protokolü ve RPC arayüzüyle çalışan herkes için. Satın alma katmanı değil başvuru katmanıdır ve Bitcoin'e sahip olmak ya da harcamak için bunların hiçbirine gerek yoktur.
Bitcoin Script nedir?
Bir coinin harcanıp harcanamayacağına karar veren, yığın tabanlı küçük dildir. Bilerek döngüsü yoktur; bu da her betiğin maliyetini çalışmadan önce öngörülebilir kılar. İşlemlerin çoğu bir avuç standart kalıptan birini kullanır.
Bayt sıraları neden sürekli değişiyor?
Çünkü Bitcoin hash'leri sakladığı sıranın tersiyle gösterir. İç bayt sırası protokolün kullandığıdır; RPC çıktısı ve blok gezginleri ise onu tersine çevirir. İkisini karıştırmak klasik ilk hatadır.
Yetkili belgeler nerede duruyor?
Herhangi bir tek sitede değil, kaynak kodda ve BIP'lerde. Buradaki maddeler, varsa şartnameyi anar ve eski geliştirici belgelerini tekrarlamak yerine, güncelliğini yitirdikleri yerde düzeltir.