Bitcoin, 2009 yılında Satoshi Nakamoto tarafından başlatılan merkeziyetsiz bir kripto para birimidir. Bitcoin Core, Bitcoin ağının temel yazılımıdır ve geliştiriciler tarafından sürekli olarak güncellenmektedir. RPC (Remote Procedure Call) sunucusu, diğer yazılımların Bitcoin ağındaki işlemleri ve verileri sorgulamasına ve yönetmesine olanak tanır. Bu blog yazısında, Bitcoin Core RPC sunucusunun kurulumunu ve kullanımını adım adım açıklayacağız.
Bitcoin Core RPC Sunucusu Nedir?
Bitcoin Core RPC sunucusu, Bitcoin ağını kontrol etmenize ve yönetmenize olanak tanıyan bir arayüzdür. RPC sunucusu üzerinden, cüzdanınızı yönetebilir, blok zinciri verilerini sorgulayabilir ve Bitcoin ağına ait birçok işlemi gerçekleştirebilirsiniz. Bu arayüz, geliştiricilere ve kullanıcılarına büyük esneklik sağlar.
Bitcoin Core RPC Sunucusunun Kurulumu
1. Adım: Bitcoin Core’u İndirme ve Kurma
Öncelikle, işletim sisteminize uygun Bitcoin Core yazılımını indirip kurmanız gerekmektedir. Bu yazılım, Bitcoin.org üzerinden indirilebilir.
Bitcoin Core yazılımı ağ ile bilgisayarınız arasında senkronizasyon yapmaya başlayacaktır.
2. Adım: Bitcoin Core’u Yapılandırma
Bitcoin Core yazılımını kurduktan sonra, bitcoin.conf
dosyasını düzenlemeniz gerekmektedir. Bu dosya, Bitcoin Core’un davranışını ve RPC sunucusunun ayarlarını kontrol eder.
Ayarlar
> Seçenekler
menüsünden Yapılandırma Dosyasını Aç
sonra bitcoin.conf
dosyasına erişiminiz gerçekleşecektir.
server=1
rpcbind=0.0.0.0
rpcallowip=127.0.0.1
rpcport=8332
rpcuser=bayramalacam
rpcpassword=cfc0e11ebe4a86ff0a6a5b165493a8ff
txindex=1
Kendinize göre düzeltmeler yaparak bu şekilde bitcoin.conf
dosyasını kaydedin ve Bitcoin Core yazılımını yeniden başlatın.
Bitcoin Core RPC Sunucusunun Kullanımı
Bitcoin Core RPC sunucusu, çeşitli komutlar aracılığıyla etkileşim kurmanıza olanak tanır. Bu komutları kullanarak, blok zincirine dair bilgileri sorgulayabilir, cüzdanınızı yönetebilir ve çeşitli işlemleri gerçekleştirebilirsiniz.
Temel RPC İsteği Yapma
İlk olarak, RPC sunucusuna bir istek göndermek için cURL komutunu kullanabiliriz. Aşağıdaki örnek, blok zinciri hakkında bilgi almak için getblockchaininfo
komutunu kullanırız. Bu komut, JSON formatında bir istek oluşturur ve Bitcoin Core RPC sunucusuna gönderir.
curl --user bayramalacam:cfc0e11ebe4a86ff0a6a5b165493a8ff --data-binary '{"jsonrpc": "2.0", "method": "getblockchaininfo", "params": [] }' -H 'content-type: application/json;' http://127.0.0.1:8332/
Yukarıdaki cURL komutu çalıştırıldığında, sunucu JSON formatında bir yanıt döndürecektir. Yanıt, blok zinciri hakkında çeşitli bilgiler içerecektir.
{
"result": {
"chain": "main",
"blocks": 845225,
"headers": 845225,
"bestblockhash": "0000000000000000000222ea957f3d30fdf857fc7a699f4695dcb8b98dc4734e",
"difficulty": 84381461788831.34,
"time": 1716719950,
"mediantime": 1716717704,
"verificationprogress": 0.9999942229226099,
"initialblockdownload": false,
"chainwork": "00000000000000000000000000000000000000007b70dc91f36a1c62b8a76ddc",
"size_on_disk": 652546053598,
"pruned": false,
"warnings": ""
},
"error": null,
"id": null
}
Cüzdan Yönetimi
1. Adım: Bakiye Sorgulama
Cüzdanınızdaki bakiyeyi sorgulamak için getbalance
komutunu kullanabilirsiniz.
curl --user bayramalacam:cfc0e11ebe4a86ff0a6a5b165493a8ff --data-binary '{"jsonrpc": "2.0", "method": "getbalance", "params": [] }' -H 'content-type: application/json;' http://127.0.0.1:8332/
Bu komut, cüzdanınızdaki mevcut bakiyeyi döndürecektir.
{
"result": 0.00000000,
"error": null,
"id": null
}
2. Adım: Yeni Adres Oluşturma
Yeni bir Bitcoin adresi oluşturmak için getnewaddress
komutunu kullanabilirsiniz.
curl --user bayramalacam:cfc0e11ebe4a86ff0a6a5b165493a8ff --data-binary '{"jsonrpc": "2.0", "method": "getnewaddress", "params": [] }' -H 'content-type: application/json;' http://127.0.0.1:8332/
Bu komut, cüzdanınız için yeni bir adres oluşturacaktır.
{
"result": "bc1qaww3nft6afcurpnfxtn62va9yxhzwqrk2lc6fj",
"error": null,
"id": null
}
İşlem Yapma
1. Adım: Bitcoin Gönderme
Bitcoin göndermek için sendtoaddress
komutunu kullanabilirsiniz. Aşağıdaki örnek, belirtilen adrese belirli bir miktar Bitcoin gönderir.
curl --user bayramalacam:cfc0e11ebe4a86ff0a6a5b165493a8ff --data-binary '{"jsonrpc": "2.0", "method": "sendtoaddress", "params": ["adres", miktar] }' -H 'content-type: application/json;' http://127.0.0.1:8332/
Bu komut, belirtilen adrese Bitcoin gönderir ve işlemin txid’sini döndürür.
{
"result": "4d295fa145d6f38c7a66044fd6f2df110a2255f5bca0b88b54a1d63e87e15e58",
"error": null,
"id": "1"
}
Blockchain Verileri
1. Adım: Belirli Bir Bloğu Sorgulama
Belirli bir bloğun detaylarını sorgulamak için getblock
komutunu kullanabilirsiniz. Öncelikle, blok hash’ini öğrenmek için getblockhash
komutunu kullanın.
curl --user bayramalacam:cfc0e11ebe4a86ff0a6a5b165493a8ff --data-binary '{"jsonrpc": "2.0", "method": "getblockhash", "params": [100000] }' -H 'content-type: application/json;' http://127.0.0.1:8332/
{
"result": "00000000f01df1dbc52bce6d8d31167a8fef76f1a8eb67897469cf92205e806b",
"error": null,
"id": null
}
Ardından, blok detaylarını almak için getblock
komutunu kullanın.
curl --user bayramalacam:cfc0e11ebe4a86ff0a6a5b165493a8ff --data-binary '{"jsonrpc": "2.0", "method": "getblock", "params": ["00000000f01df1dbc52bce6d8d31167a8fef76f1a8eb67897469cf92205e806b"] }' -H 'content-type: application/json;' http://127.0.0.1:8332/
{
"result": {
"hash": "00000000f01df1dbc52bce6d8d31167a8fef76f1a8eb67897469cf92205e806b",
"confirmations": 835227,
"height": 10001,
"version": 1,
"versionHex": "00000001",
"merkleroot": "ff2fecc4c36854112c9481cadbfda5524320012b41725200f2dd3ef8e72bf4c7",
"time": 1238989442,
"mediantime": 1238985246,
"nonce": 1163845665,
"bits": "1d00ffff",
"difficulty": 1,
"chainwork": "0000000000000000000000000000000000000000000000000000271227122712",
"nTx": 1,
"previousblockhash": "0000000099c744455f58e6c6e98b671e1bf7f37346bfd4cf5d0274ad8ee660cb",
"nextblockhash": "000000007136b5c4ca15a77d461c5e6c6a8291adf71ca82c386e1c9a2e8b1259",
"strippedsize": 216,
"size": 216,
"weight": 864,
"tx": [
"ff2fecc4c36854112c9481cadbfda5524320012b41725200f2dd3ef8e72bf4c7"
]
},
"error": null,
"id": null
}
Sonuç
Bitcoin Core RPC sunucusunu cURL kullanarak kontrol etmek, blok zinciri ve cüzdan yönetimi üzerinde tam kontrol sağlar. Bu rehberde, temel cURL komutları ile Bitcoin Core RPC sunucusunu nasıl kullanacağınızı öğrendiniz. Bu komutlar, geliştiricilere ve kullanıcılarına büyük esneklik ve güç sunar.
Bir yanıt yazın