跳转到主要内容

快速访问

查看基础随机性示例:

GitHub

掷骰子示例仓库

VRF dApp

在链上掷骰子

委托式 VRF dApp

在链上 100 毫秒内完成掷骰

想在本机端到端运行 VRF?请使用 Local Validator Setup 指南,了解完整本地栈、Surfpool 替代方案以及本地 vrf-oracle 流程。

分步指南

任何 Solana 程序都可以使用 MagicBlock VRF SDK 在数秒内请求并消费链上可验证随机数。完成本指南后,你将得到一个使用可验证随机数掷骰子的可运行示例。
1

编写你的程序

像平常一样编写你的 Solana 程序。
2

添加请求和消费随机数的指令。

添加 CPI 钩子,通过已验证预言机的回调来请求并消费随机数。
3

将程序部署到 Solana

使用 Anchor CLI 部署你的 Solana 程序。
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 浏览器

查看你在 Solana 上的交易和账户信息:

Solana 浏览器

官方 Solana 浏览器

Solscan

浏览 Solana 区块链

Solana RPC 提供商

通过现有 RPC 提供商发送交易和请求:

Solana

Free Public Nodes

Helius

Free Shared Nodes

Triton

Dedicated High-Performance Nodes

Solana 验证器仪表板

查看 Solana 验证器基础设施的实时更新:

Solana Beach

Get Validator Insights

Validators App

Discover Validator Metrics

服务器状态订阅

订阅 Solana 和 MagicBlock 的服务器状态:

Solana Status

Subscribe to Solana Server Updates

MagicBlock Status

Subscribe to MagicBlock Server Status

MagicBlock 产品

Ephemeral Rollup(ER)

在 Solana 上安全执行实时、零手续费交易。

Private Ephemeral Rollup(PER)

通过隐私保护计算保护敏感数据。

私密支付 API

在 Solana 上以安全且合规的方式进行私密转账。

可验证随机函数(VRF)

直接在链上生成可证明公平的随机性。

价格预言机

获取适用于交易和 DeFi 的低延迟链上价格数据。