Maison  >  Article  >  Comment créer de nouveaux jetons sur la chaîne Solana

Comment créer de nouveaux jetons sur la chaîne Solana

全网都在看
全网都在看original
2024-04-30 14:47:27934parcourir

Les étapes pour créer un token sur la chaîne Solana comprennent : l'obtention d'un portefeuille Solana, la création d'un compte, l'obtention de SOL, l'utilisation d'Anchor Framework, la création d'un projet, la définition d'un programme de tokens, le déploiement d'un programme, la création d'un Token, la frappe de tokens, et distribuer des jetons. Les étapes spécifiques sont les suivantes : Obtenez un portefeuille Solana (Phantom ou Solflare). Créez ou importez un compte Solana. Obtenez testnet SOL. Installez Anchor Framework. Créez un nouveau projet Anchor. Définissez le programme de jetons. Programme de déploiement. Créez un jeton. Jetons de menthe. Distribuez des jetons.

Comment créer de nouveaux jetons sur la chaîne Solana

Créez un nouveau token sur la chaîne Solana

Étapes :

  1. Obtenez un portefeuille Solana : Installez un portefeuille compatible Solana comme Phantom ou Solflare.
  2. Créer un compte : Créez ou importez un compte Solana dans votre portefeuille.
  3. Obtenez testnet SOL : À des fins de test, obtenez du SOL auprès du robinet Solana testnet.
  4. Utilisation d'Anchor Framework : Installez Anchor Framework, une boîte à outils pour créer des programmes Solana.
  5. Créer un projet : Utilisez anchor init pour créer un nouveau projet Anchor. anchor init 创建一个新的 Anchor 项目。
  6. 定义代币程序:programs/my_token/src/lib.rs 中定义代币程序。
  7. 部署程序:使用 anchor buildanchor deploy 部署程序。
  8. 创建 Token:使用 anchor new 创建 Token 实例。
  9. 铸造代币:使用 approvetransfer 功能铸造代币。
  10. 分配代币:将代币分配给其他帐户。

详细步骤:

获取 Solana 钱包:

  • 下载并安装 Phantom 或 Solflare 钱包。
  • 创建或导入一个 Solana 帐户。

创建项目:

  • 安装 Anchor Framework:cargo install --git https://github.com/project-serum/anchor anchor-cli
  • 创建一个新的 Anchor 项目:anchor init my_token

定义代币程序:

  • programs/my_token/src/lib.rs 中添加以下代码:
#[program]
pub mod my_token {
    use anchor_lang::prelude::*;

    #[state]
    #[derive(Accounts)]
    pub struct CreateToken {
        #[account(init, payer = authority, space = 8 + 96)]
        pub token: AccountInfo,
        #[account(mut)]
        pub authority: Signer,
        pub system_program: Program,
        pub token_program: Program,
    }

    impl CreateToken {
        pub fn new(ctx: Context<self>, name: String, symbol: String, amount: u64) -> Result {
            let token_account = &mut ctx.accounts.token;
            let authority = &ctx.accounts.authority;
            let token_program = &ctx.accounts.token_program;

            let create_token_ix = anchor_lang::solana_program::system_instruction::create_account(
                &authority.key(),
                &token_account.key(),
                ctx.accounts.system_program.key(),
                &token_program.key(),
                8 + 96,
            );

            let init_token_ix = anchor_lang::solana_program::token::instruction::initialize_mint(
                &token_program.key(),
                &token_account.key(),
                &authority.key(),
                None,
                0,
            );

            let mint_ix = anchor_lang::solana_program::token::instruction::mint_to(
                &token_program.key(),
                &token_account.key(),
                &authority.key(),
                None,
                amount
            );

            anchor_lang::solana_program::program::invoke(
                &token_program.to_account_info(),
                &[
                    create_token_ix,
                    init_token_ix,
                    mint_ix,
                ],
                &[
                    authority.to_account_info(),
                    token_account.to_account_info(),
                    token_program.to_account_info(),
                    system_program.to_account_info()
                ],
            )?;

            Ok(())
        }
    }
}</self>

部署程序:

  • 构建程序:anchor build
  • 部署程序:anchor deploy

创建 Token:

  • 使用 anchor new 创建 Token 实例:anchor new my_token

铸造代币:

  • 使用 approvetransfer 功能铸造代币:

    anchor approve my_token --amount 100
    anchor transfer my_token --amount 10 --recipient <recipient_address></recipient_address>

分配代币:

  • 使用 transfer

  • Définissez le programme de jetons :
Définissez le programme de jetons dans programs/my_token/src/lib.rs. 🎜🎜🎜Déployeur : 🎜Utilisez anchor build et anchor déployer pour déployer le programme. 🎜🎜🎜Créer un jeton : 🎜Utilisez anchor new pour créer une instance de jeton. 🎜🎜🎜Fraiser des jetons : 🎜Utilisez les fonctions approuver et transférer pour frapper des jetons. 🎜🎜🎜Allouer des jetons : 🎜Allouer des jetons à d'autres comptes. 🎜🎜🎜Étapes détaillées : 🎜🎜🎜🎜Obtenez le portefeuille Solana : 🎜🎜
    🎜Téléchargez et installez le portefeuille Phantom ou Solflare. 🎜🎜Créez ou importez un compte Solana. 🎜🎜🎜🎜Créer un projet : 🎜🎜
      🎜Installer Anchor Framework : cargo install --git https://github.com/project-serum/anchor Anchor-cli. 🎜🎜Créez un nouveau projet Anchor : anchor init my_token. 🎜🎜🎜🎜Définir le programme de token : 🎜🎜
        🎜Ajoutez le code suivant dans programs/my_token/src/lib.rs : 🎜🎜
anchor transfer my_token --amount 10 --recipient <recipient_address></recipient_address>
🎜🎜Déployer le programme : 🎜🎜
    🎜 Programme de construction : construction d'ancre. 🎜🎜Programme de déploiement : anchor déployer. 🎜🎜🎜🎜Créer un jeton : 🎜🎜
      🎜Utilisez anchor new pour créer une instance de jeton : anchor new my_token. 🎜🎜🎜🎜 Jetons Mint : 🎜🎜
        🎜🎜 Jetons Mint utilisant les fonctions approuve et transfert : 🎜rrreee🎜🎜🎜🎜Distribuer les jetons : 🎜🎜
          🎜🎜Utilisez la fonction transfert pour attribuer des tokens à d'autres comptes : 🎜rrreee🎜🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn