Testnet Nedir? Nasıl Kullanılır?

Evrim Dönmezgel tarafından tarihinde yayınlandı

Testnet, adı üzerinde test için kullanılmak üzere tasarlanmış alternatif bir Bitcoin blok zinciridir. Testnet koinleri, gerçek bitcoinlerden farklıdır ve hiçbir değere sahip değildir. Testnet uygulama geliştiriciler için 10 numara bir platformdur. Gerçek para harcamadan istediğiniz kadar test yapabileceğiniz bir platformdur. Şimdi gelin detaylı bir şekilde testnet nedir, ne değildir bakalım.

Testnet Nedir?

Bitcoin Core’un eski versiyonlarında testnet için ayrı bir link bulunmuyordu. Manuel bir şekilde bir bat dosyası oluşturup -testnet flag’i eklemek gerekiyordu. Ya da bitcoind konfigürasyon dosyasında testnet=1 yazmak gerekiyordu. Yeni versiyon Bitcoin Core uygulamasında ise testnet için ayrı bir link bulunuyor. Direkt bu linke tıklayarak testnet blok zincirine  bağlanabilirsiniz.

Şu ana kadar üç nesil testnet oluşturuldu. Testnet2 genesis başlangıç bloğunun sıfırlandığı ilk testnet ortamı oldu, çünkü insanlar gerçek bitcoin karşılığında testnet koinlerinin ticaretine başlamıştı.

Testnet3, mevcut test ağıdır. 0.7 sürümü ile piyasaya sürüldü, üçüncü bir genesis bloğu ile tanıtıldı. Kullanıcılar testnet’te zorluk seviyesinin gereksiz yere çok yüksek olduğ undan ve işlem doğrulamalarının zaman aldığından şikayet ediyordu. Testnet3 ile birlikte bu problemler giderildi. 21 Aralık 2015 tarihinde, SegWit’i test etmek için SegNet hayata geçirildi.

Ana Bitcoin Blok Zinciri ile Testnet Blok Zinciri Arasındaki Farklar

  • Ana Bitcoin ağ protokolü 18333 portunu dinler. (8333 yerine)
  • Ana Bitcoin RPC bağlantısı 18332 portunu dinler. (8332 yerine)
  • Testnet protokolü farklı DNS seedleri kullanır.
  • Testnet üzerinde farklı bir ADDRESSVERSION alanı kullanılır. Böylece testnet adreslerinin Bitcoin ana zinciri üzerinde çalışması engellenir. (0x00 yerine, 0x6F)
  • Protokol mesajının header byte’ı da farklıdır. Testnet’te 0x0B110907 iken, Bitcoin’de 0xF9BEB4D9’dur.
  • Testnet’in zorluk seviyesi de ana Bitcoin ağına kıyasla daha düşüktür. Ayrıca, testnet üzerinde eğer her 20 dakikada bir blok bulunamazsa, zorluk seviyesi otomatik olarak tek bloğun çıkarılması için gereken minimum zorluk seviyesine düşürülür.
  • Testnet’te yeni bir genesis başlangıç bloğu vardır.
  • Testnet’te IsStandard() seçeneği aktif değildir. Böylece kullanıcılar standart dışı özellikleri de test edebilirler.

Genesis Başlangıç Bloğu

Daha önce de belirttiğim gibi testnet, ana Bitcoin ağından farklı bir genesis bloğu kullanır. Bu değişiklik 0.7 sürümüyle birlikte genel konsensüs üzerine Bitcoin ana geliştiricisi (artık değil) Gavin Andresen tarafından yapılmıştır. Testnet genesis bloğunu buradan görebilirsiniz.

Testnet Boyutu

Şubat 2018 itibariyle Bitcoin ana blok zincirinin boyutu yaklaşık 160GB civarındayken, testnet blok zincirinin boyutu 14GB civarındadır. Çünkü testnet üzerindeki işlemler ana Bitcoin ağı üzerindeki işlemlerden daha azdır. Dolayısıyla boyutu da daha küçüktür.

Testnet Madenciliği

Lokalde bitcoind kurmadan, testnet üzerinde madencilik yapmanıza izin veren solo.ckpool benzeri bazı madencilik havuzları vardır.

Faydalı Linkler

  • Testnet in a box (zorluk seviyesi çok düşük, ayrıca düşük boyutlu paket halinde bir testnet zinciri)
  • Bitcoin-testnet-box (Güncel, forklanmış bitcoin testnet paketi)

Cüzdanlar

Musluklar (Faucet)

Testlerini yaptıktan sonra, elinizdeki koinleri musluklara geri göndermek iyi bir davranıştır. Böylece başka geliştiriciler de bunları kullanabilirler.

Block Explorer

Testnet üzerindeki işlemleri görüntülemek için hazırlanan bazı explorer’lar var. Bunları kullanarak işlemlerinizi görüntüleyebilirsiniz.

Testnet nedir ne değildir ile ilgili söyleyebileceklerim bu kadar. Umarım özellikle blockchain öğrenmeye çalışan geliştirici arkadaşlara yardımcı olur.

Facebook Yorumları

Evrim Dönmezgel

"Satoshi" adlı ilk Türkçe Bitcoin kitabının yazarı Evrim Dönmezgel, Bitcoinlerim.com sitesinin yazarıdır. Kripto para ve blockchain teknolojileri sevdalısıdır.

Bir Cevap Yazın

This site uses Akismet to reduce spam. Learn how your comment data is processed.