Ana içeriğe geç

İş akışı

PIVX Adlandırma Hizmeti (PiNS), kullanıcıların insanlar tarafından okunabilen alan adlarını (myname.pivx gibi) kaydetmesine, güncellemesine, listelemesine ve aktarmasına ve bunları güvenli bir şekilde PIVX shielded (Sapling) adresleriyle eşlemesine olanak tanır.

PIVX, genel amaçlı akıllı sözleşmelere sahip olmayan UTXO tabanlı bir blok zinciri olduğundan, etki alanı kaydı gibi karmaşık bir veritabanı sistemini yerel olarak çalıştıramaz. Bunu çözmek için PiNS, işlemleri zincir dışında yürüten, verileri PIVX üzerinde depolayan ve güvenliği Arbitrum'a bağlayan Toplama tarzı bir Mimari kullanır.

Sistem birbirine bağlı beş bileşenden güç alır:

1. PIVX Blockchain: Veri Kullanılabilirliği Katmanı

Bir kullanıcının gerçekleştirdiği her eylem (bir adın kaydedilmesi (REG), bir adresin güncellenmesi (UPD), mülkiyetin aktarılması (CHG), piyasada listelenmesi (LST), listeden çıkarılması (ULT) veya satın alınması (BUY)) yerel bir PIVX işlemi olarak başlar. İşlem, işlem notu alanında yapılandırılmış bir metin komutu içerir (örn. PiNS:1:REG:domain:address:pubkey:nonce:signature).

  • PIVX zinciri gerçeğin kaynağıdır. Her etki alanı komutunu kalıcı olarak saklar. Kaydedilmiş bir PIVX işlemi olmadan hiçbir durum değişikliği gerçekleşemez.

2. Kayıt Şirketi Düğümü: Sıralayıcı

Otomatik bir kayıt şirketi düğümü PIVX blok zincirini tarar. Etki alanı komutlarını okur, kullanıcının doğru işlem ücretini ödediğini doğrular ve işlemleri sıraya alır. Kayıt şirketi her 10 dakikada bir bu işlemleri tek bir Grup halinde birleştirir.

3. SP1 zkVM: Sıfır Bilgi Motoru (Succinct tarafından)

İşlem toplu işlemi SP1 Sıfır Bilgi Sanal Makinesine (zkVM) gönderilir. zkVM, sıkı bir protokol hakemi olarak görev yapan özel bir Rust misafir programını yürütür. Prover, gruptaki her işlemi kontrol eder:

  • İmzalar geçerli ve gerçek alan adı sahipleri tarafından imzalanmış mı?
  • Tekrar saldırılarını önlemek için nonce'lar kesinlikle artıyor mu?
  • Alan önekleri doğru biçimlendirilmiş mi?
  • Bir BUY işlemi, LST işleminde belirtilen fiyatın tamamını öder mi?
  • REG0__ matematiksel Merkle kanıtlarını kullanarak REG1__'ye doğru bir şekilde geçiş yapıyor mu?

Tüm kurallar karşılanırsa zkVM bir ZK-SNARK şifreleme kanıtı oluşturur (Groth16'yı kullanarak). Bu kanıt, matematiksel olarak şunları bildiren küçük bir sertifikadır: "Durum kökü A ile başlayarak, bu geçerli işlem kümesi uygulandıktan sonra yeni durum kökü B'dir."

Bu konuk programının derlenen her sürümü, Doğrulama Anahtarı (vkey) adı verilen benzersiz bir şifreleme tanımlayıcı sağlar. REG2__, derlenmiş konuk programının yapısının 32 baytlık bir karmasıdır. Doğrulama kodunun tek bir satırı bile değiştirilse program tamamen farklı bir REG3__'ye derlenir.

4. Arbitrum Akıllı Sözleşmesi: Çapa

Oluşturulan ZK kanıtı ve genel girişleri Arbitrum'daki PiNSANchor akıllı sözleşmesine gönderilir. Sözleşme, uzlaşma ağ geçidi görevi görür.

  • Kriptografik Bağlama: Akıllı sözleşmenin içinde REG4__ (konuk programının beklenen 32 baytlık karma değeri) zincir üzerinde depolanır. Bir kanıt gönderildiğinde sözleşme, kanıtı ve REG5__'yi Succinct SP1 Verifier Gateway'e iletir.
  • Anahtar Kilidi Doğrulaması: Doğrulama ağ geçidi, kanıtı yalnızca kayıtlı REG6__ ile eşleşen tam konuk programı tarafından oluşturulmuşsa onaylayacaktır.
  • Kanıt geçerliyse ve kayıtlı REG7__ ile doğrulandıysa, sözleşme resmi, küresel olarak kabul edilen durum kökünü REG8__ olarak günceller ve geçmişine kaydeder.
  • Tek bir kural ihlal edildiyse veya kanıt, değiştirilmiş bir konuk programı kullanılarak oluşturulduysa (ki bu, farklı bir REG9__ üretecektir), sözleşme, yetkisiz durum geçişlerini önleyerek işlemi reddeder.

5. Dağıtılmış Dizin Oluşturucular: Çözümleyiciler

Herkes bağımsız bir Dizin Oluşturucu Düğümü çalıştırabilir. Dizinleyiciler, etki alanı işlemleri için PIVX blok zincirini tarar ve doğrulanmış kök kontrol noktaları için Arbitrum sözleşmesini tarar. İşlemleri yerel olarak uygularlar, kendi Merkle Ağacını hesaplarlar ve yerel köklerinin Arbitrum kontrol noktasıyla eşleştiğini doğrularlar.

  • Bu, nerede çalıştırılırsa çalıştırılsın tüm dizin oluşturucuların etki alanlarını her zaman tamamen aynı hedef adrese çözümlemesini sağlar (dağıtılmış uçlarda tek bir birleşik durumu korur).