Ana içeriğe geç

BTC Yeniden Stake (Babylon)

x/babylon modülü, Bitcoin'in proof-of-work sonlandırma garantilerini devralmak için QoreChain'i Babylon Protocol ile entegre eder. BTC yeniden stake yoluyla, QoreChain — Bitcoin protokolünün kendisinde herhangi bir değişiklik gerektirmeden — Bitcoin'in hash gücüyle desteklenen ikincil bir sonlandırma katmanı kazanır.

Genel Bakış

Babylon Protocol, proof-of-stake zincirlerinin bir zaman damgası ve kontrol noktası mekanizması aracılığıyla Bitcoin'in güvenliğinden yararlanmasını sağlar. QoreChain'in entegrasyonu şu şekilde çalışır:

  1. BTC stakerleri Bitcoin'i Babylon stake işlemlerinde kilitler ve pozisyonlarını QoreChain'e kaydeder.
  2. Epoch kontrol noktaları QoreChain'den periyodik olarak Babylon'a aktarılır ve Babylon bunları Bitcoin üzerinde zaman damgalar.
  3. Sonlandırma devralma: Bir QoreChain epoch'u Bitcoin üzerinde kontrol noktası alındığında, o epoch tarafından kapsanan durum Bitcoin'in proof-of-work sonlandırma garantilerini devralır.

Bu, yalnızca QoreChain'in kendi doğrulayıcı setine güvenmek yerine Bitcoin'in birikmiş hash gücüne dayanan, uzun menzilli saldırılara ve eşdeğerliğe (equivocation) karşı bir savunma sağlar.

BTC Stake Pozisyonları

Kullanıcılar, bir Bitcoin stake işlemine atıfta bulunan bir MsgBTCRestake işlemi göndererek QoreChain'de BTC stake pozisyonları kaydedebilir.

Kayıt Gereksinimleri

ParametreDeğerAçıklama
Minimum stake100.000 satoshi (0.001 BTC)Stake pozisyonu başına gereken minimum BTC
Çözme süresi144 BTC bloğu (~1 gün)Stake edilen BTC çekilmeden önceki bekleme süresi
Kontrol noktası aralığıHer 10 QoreChain epoch'undaDurumun Babylon'a ne sıklıkla kontrol noktası alındığı

Stake Pozisyonu Yapısı

Her BTC stake pozisyonu, aşağıdaki zincir üstü durumu izler:

AlanAçıklama
staker_addressStaker'ın QoreChain adresi (qor1...)
btc_tx_hashStake işleminin Bitcoin işlem hash'i
amount_satoshisSatoshi cinsinden stake edilen BTC miktarı
statusPozisyon yaşam döngüsü durumu: active, unbonding veya withdrawn
staked_atPozisyon kaydının zaman damgası
unbonding_heightÇözmenin başlatıldığı blok yüksekliği (varsa)
validator_addrBu stake'in devredildiği QoreChain doğrulayıcı adresi

Kayıt Akışı

  1. BTC stake işlemi oluştur — Bitcoin ağında, BTC stake işlemini oluşturun.
  2. QoreChain'de MsgBTCRestake gönder — QoreChain'de btc_tx_hash, amount ve validator ile MsgBTCRestake gönderin.
  3. Pozisyon kaydedildi — Pozisyon zincir üstünde "active" olarak kaydedilir.

Epoch Kontrol Noktaları

QoreChain'in epoch durum kökleri, Babylon aktarım zinciri aracılığıyla periyodik olarak Bitcoin'e kontrol noktası alınır.

Kontrol Noktası Akışı

  1. Kontrol noktası gönder — Bir QoreChain doğrulayıcısı, epoch numarasını, BTC blok hash'ini, BTC blok yüksekliğini ve QoreChain durum kökünü içeren bir MsgSubmitBTCCheckpoint gönderir.
  2. IBC aktarımı — Kontrol noktası verileri IBC aracılığıyla Babylon zincirine aktarılır.
  3. Bitcoin üzerinde zaman damgalama — Babylon, kontrol noktasını bir Bitcoin işlemine dahil ederek QoreChain'in durumunu Bitcoin'in blok zincirine bağlar.
  4. Onay — Bitcoin işlemi onaylandığında, sonlandırma Babylon aracılığıyla QoreChain'e geri akar.
  5. Sonlandırma — Kontrol noktası durumu pending'den confirmed'a, oradan finalized'a geçer.

Kontrol Noktası Yapısı

AlanAçıklama
epoch_numKontrol noktası alınan QoreChain epoch numarası
btc_block_hashKontrol noktasını içeren Bitcoin blok hash'i
btc_block_heightBitcoin blok yüksekliği
state_rootEpoch sınırındaki QoreChain durum kökü
submitted_atKontrol noktası gönderiminin zaman damgası
statusKontrol noktası durumu: pending, confirmed veya finalized

Epoch Anlık Görüntüleri

Her kontrol noktası sınırında, bir epoch anlık görüntüsü toplu ağ durumunu yakalar:

AlanAçıklama
total_stakedTüm pozisyonlarda stake edilen toplam BTC (satoshi)
active_positionsAktif stake pozisyonu sayısı
validator_countBTC destekli devirlere sahip doğrulayıcı sayısı
block_heightAnlık görüntüdeki QoreChain blok yüksekliği

İkincil Sonlandırma Katmanı

Babylon entegrasyonu, QoreChain'in yerel konsensüs sonlandırmasını tamamlayan bir ikincil sonlandırma garantisi sağlar:

Sonlandırma KatmanıKaynakHızGüvenlik
BirincilQoreChain Konsensüs Motoru~5 saniyeQOR stake + PQC imzaları tarafından desteklenir
İkincilBabylon + Bitcoin~60 dakikaBitcoin'in kümülatif hash gücüyle desteklenir

İkincil katman özellikle şunlar için değerlidir:

  • Uzun menzilli saldırı önleme: Bir saldırgan önemli miktarda QOR stake biriktirse bile, Bitcoin üzerinde kontrol noktası alınmış geçmişi yeniden yazamaz.
  • Çapraz zincir köprü güvenliği: Büyük değerler içeren köprü işlemleri, fonları serbest bırakmadan önce Bitcoin seviyesinde sonlandırma için bekleyebilir.
  • Kurumsal güven: Bitcoin zaman damgası, QoreChain'in durum geçmişinin bağımsız olarak doğrulanabilir bir kanıtını sağlar.

Yapılandırma

ParametreVarsayılanAçıklama
enabledfalseBTC yeniden stake özellikleri için ana anahtar
min_stake_amount100.000 satoshiStake pozisyonu başına minimum BTC
unbonding_period144 BTC bloğuBTC cinsinden çözme süresi
checkpoint_interval10 epochBabylon kontrol noktaları arasındaki epoch'lar
babylon_chain_idbbn-1Bağlı Babylon ağının zincir kimliği

Olaylar

Modül aşağıdaki zincir üstü olayları yayar:

Olay TürüÖzniteliklerAçıklama
btc_restakestaker, btc_tx_hash, amount, validatorYeni BTC stake pozisyonu kaydedildi
btc_unbondstaker, amountBTC stake pozisyonu çözmeye girdi
btc_checkpointepoch, checkpoint_idEpoch kontrol noktası Babylon'a gönderildi
babylon_epoch_completeepochBabylon epoch'u Bitcoin zaman damgasıyla sonlandırıldı

API Uç Noktaları

REST

YöntemUç NoktaAçıklama
GET/babylon/v1/staking/{address}Bir adres için BTC stake pozisyonlarını al
GET/babylon/v1/checkpoint/{epoch}Belirli bir epoch için kontrol noktası verilerini al
GET/babylon/v1/paramsModül yapılandırma parametrelerini al

JSON-RPC

YöntemParametrelerAçıklama
qor_getBTCStakingPositionaddress (string)Belirli QoreChain adresi için BTC stake pozisyonunu döndürür

CLI Komutları

Sorgu Komutları

# Query BTC restaking configuration
qorechaind query babylon config

# Query a staking position by address
qorechaind query babylon position <staker-address>

İşlem Komutları

# Register a BTC restaking position
qorechaind tx babylon restake \
--btc-tx-hash <hash> \
--amount-satoshis <amount> \
--validator <qorvaloper1...> \
--from <key-name>

# Submit a BTC checkpoint
qorechaind tx babylon submit-checkpoint \
--epoch <epoch-number> \
--btc-block-hash <hash> \
--btc-block-height <height> \
--state-root <root> \
--from <key-name>