Skip to main content

Быстрый доступ

Ознакомьтесь с базовым примером генерации случайности:

GitHub

Репозиторий с примером броска кубика

VRF dApp

Бросьте кубик на блокчейне

Делегированный СДИ dApp

Бросок кубика на блокчейне за 100 мс

Пошаговое руководство

Любая программа на Solana может запрашивать и использовать проверяемую случайность (verifiable randomness) в сети за считанные секунды с помощью MagicBlock VRF SDK. К концу этого руководства у вас будет рабочий пример, который бросает кубик с использованием проверяемой случайности.
1
Пишите вашу программу на Solana как обычно.
2
Добавьте CPI-хуки, которые запрашивают и используют случайность через обратный вызов от проверенного оракула.
3
Разверните вашу программу на Solana с помощью Anchor CLI.
4
Отправляйте транзакции для генерации и использования случайности в сети.

Пример «Бросок кубика»

Roll Dice GIF Могут потребоваться следующие пакеты программного обеспечения, другие версии также могут быть совместимы:
Программное обеспечениеВерсияРуководство по установке
Solana2.3.13Установите Solana
Rust1.85.0Установите Rust
Anchor0.32.1Установите Anchor
Node24.10.0Установите Node

Фрагменты Кода

Простая программа «Бросок кубика», где игрок инициализирует аккаунт состояния для хранения, запроса и использования случайности:
pub const PLAYER: &[u8] = b"playerd";

#[program]
pub mod random_dice {
    use super::*;

    pub fn initialize(ctx: Context<Initialize>) -> Result<()> {
        msg!(
            "Initializing player account: {:?}",
            ctx.accounts.player.key()
        );
        Ok(())
    }

    // ... Additional instructions will be added here
}

/// Context for initializing player
#[derive(Accounts)]
pub struct Initialize<'info> {
    #[account(mut)]
    pub payer: Signer<'info>,
    #[account(init_if_needed, payer = payer, space = 8 + 1, seeds = [PLAYER, payer.key().to_bytes().as_slice()], bump)]
    pub player: Account<'info, Player>,
    pub system_program: Program<'info, System>,
}

/// Player struct
#[account]
pub struct Player {
    pub last_result: u8,
}
⬆️ Вернуться к началу

Solana Explorer

Получайте информацию о ваших транзакциях и аккаунтах в сети Solana:

Solana Explorer

Официальный обозреватель Solana

Solscan

Обозреватель блокчейна Solana

Провайдеры Solana RPC

Отправляйте транзакции и запросы через существующих RPC-провайдеров:

Solana

Бесплатные публичные ноды

Helius

Бесплатные общие ноды

Triton

Выделенные высокопроизводительные ноды

Панель валидаторов Solana

Следите за обновлениями инфраструктуры валидаторов Solana в реальном времени:

Solana Beach

Аналитика по валидаторам

Validators App

Метрики валидаторов

Статус серверов

Подпишитесь на обновления статуса серверов Solana и MagicBlock:

Solana Status

Подписка на обновления статуса серверов Solana

MagicBlock Status

Подписка на статус серверов MagicBlock

Продукты MagicBlock

Эфемерный роллап (ЭР)

Выполнение транзакций в реальном времени без комиссий и с высокой безопасностью в сети Solana.

Приватный эфемерный роллап (ПЭР)

Защита конфиденциальных данных с помощью приватных вычислений.

Проверяемая функция случайности (СДИ)

Генерация доказуемо честной случайности напрямую в блокчейне.