Blockchain’in ölümcül zayıf noktası nedir? Şeffaflık. Tüm düğümler tüm verileri görebilir, bu da gerçek bir rastgele sayının neredeyse imkansız olmasına yol açar.
Ama Web3 geliştiricilerinin buna acil ihtiyacı var—oyunlarda rastgele eşya düşmesi, piyangoda adil çekiliş, akıllı sözleşmelerde öngörülemez girişler gerekir. Güvenli zincir üstü rastgele sayı olmadan anahtarlar tahmin edilebilir, oyun sonuçları manipüle edilebilir.
Oasis bunu nasıl çözüyor?
İki hamleyle:
Birinci adım: Blok seviyesinde RNG üretimi
Sapphire (Oasis’in gizli EVM çalışma zamanı) anahtar yöneticisinden gizli anahtar alır
Kısa süreli anahtarlar (her epoch’ta yenilenir) ile RNG şifrelenir, eski anahtarlar kurtarılamaz
Bu anahtarlar yalnızca TEE’de (Güvenli Yürütme Ortamı) bulunur, dışarıdan gözlemlenemez
SHA-3 türev algoritmaları (TupleHash, KMAC256) ile bu entropiler işlenir ve her bloğa özel bir kök RNG üretilir
İkinci adım: İşlem seviyesinde RNG ayrıştırma
Her işlem kendi rastgele sayısına ihtiyaç duyar
Merlin transcript’leriyle kök RNG’den işlem seviyesinde RNG türetilir
İşleme özel verilerle rastgelelik özelleştirilir, mahremiyet, adalet ve öngörülemezlik sağlanır
✓ Karmaşıklık soyutlaması—geliştiricinin blockchain RNG’nin teknik detaylarını bilmesine gerek yok
✓ Anahtar döngüsü—her epoch’ta yeni anahtar, eski anahtar otomatik imha
✓ Gizlilik koruması—RNG durumu yalnızca TEE içinde görülebilir
✓ Doğrulanabilirlik—VRF ve kriptografik ilkelere dayalı, denetlenebilir
Bu hamleyle zincir üstü rastgelelik “neredeyse imkansız”dan “kutudan çıkar çıkmaz çalışan” seviyesine taşındı. NFT oyunları, zincir üstü piyango, merkeziyetsiz çekiliş gibi alanlar için çok önemli.
View Original
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
Zincir üstü rastgele sayı nasıl üretilir? Oasis cevabı verdi
Blockchain’in ölümcül zayıf noktası nedir? Şeffaflık. Tüm düğümler tüm verileri görebilir, bu da gerçek bir rastgele sayının neredeyse imkansız olmasına yol açar.
Ama Web3 geliştiricilerinin buna acil ihtiyacı var—oyunlarda rastgele eşya düşmesi, piyangoda adil çekiliş, akıllı sözleşmelerde öngörülemez girişler gerekir. Güvenli zincir üstü rastgele sayı olmadan anahtarlar tahmin edilebilir, oyun sonuçları manipüle edilebilir.
Oasis bunu nasıl çözüyor?
İki hamleyle:
Birinci adım: Blok seviyesinde RNG üretimi
İkinci adım: İşlem seviyesinde RNG ayrıştırma
Geliştirici nasıl kullanır?
Tek satır kodla:
bytes memory randomPad = Sapphire.randomBytes(32, “”);
Veya rastgele sayı ile imza anahtar çifti oluşturmak için:
bytes memory pk; bytes memory sk; (pk, sk) = Sapphire.generateSigningKeyPair( Sapphire.SigningAlg.Ed25519Pure, Sapphire.randomBytes(32, “”) );
Temel Avantajlar
✓ Karmaşıklık soyutlaması—geliştiricinin blockchain RNG’nin teknik detaylarını bilmesine gerek yok ✓ Anahtar döngüsü—her epoch’ta yeni anahtar, eski anahtar otomatik imha ✓ Gizlilik koruması—RNG durumu yalnızca TEE içinde görülebilir ✓ Doğrulanabilirlik—VRF ve kriptografik ilkelere dayalı, denetlenebilir
Bu hamleyle zincir üstü rastgelelik “neredeyse imkansız”dan “kutudan çıkar çıkmaz çalışan” seviyesine taşındı. NFT oyunları, zincir üstü piyango, merkeziyetsiz çekiliş gibi alanlar için çok önemli.