신규: Helius가 Light Protocol을 인수했습니다
Solana에서 SPL 토큰 다루기
블로그/개발

Solana 개발 101 - Solana에서 SPL 토큰 민팅하기

개발자 관계 책임자LinkedIn의 Hunter Davis
읽는 데 9분

프로젝트 개요

토큰은 디지털 경제의 기본 요소입니다. 블록체인의 잠재력을 온전히 이해하려면 토큰이 무엇이며 어떻게 다루는지 알아야 합니다. 이 글에서 그 방법을 소개합니다.

이 튜토리얼에서는 Solana Command-Line Interface(CLI)를 사용해 커스텀 Solana 토큰을 민팅하는 과정을 안내합니다. Solana에서 커스텀 토큰을 민팅하는 세 가지 주요 단계인 토큰 생성, 토큰 계정 생성, 토큰 공급량 민팅을 배웁니다. 튜토리얼을 마치면 직접 Solana 토큰을 만들고 Solana 블록체인을 실험하는 데 필요한 지식과 기술을 갖추게 됩니다.

CLI 외에도 커스텀 Solana 토큰을 빠르고 간편하게 민팅하는 세 가지 대안도 소개합니다. 선호 사항과 요구 사항에 맞는 다양한 방법 중에서 선택할 수 있습니다.

*JavaScript 또는 TS 환경에서 커스텀 민팅을 수행하는 방법은 다음 Solana 문서를 참고하세요: https://spl.solana.com/token

사전 요구 사항

토큰 민팅을 시작하려면 먼저 워크스테이션에 몇 가지 프로그램을 설치해야 합니다. 워크스테이션에서 터미널 앱을 열어 다음 명령어를 실행하세요. 이미 설치되어 있다면 이 단계를 건너뛰어도 됩니다.

  1. Rust 설치:
코드
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
  1. Solana CLI 설치:
코드
cargo install solana-cli

설치가 끝나면 다음 명령어를 실행해 Solana CLI가 설치되었는지 확인할 수 있습니다:

코드
solana --version

아래와 비슷한 결과가 반환되어야 합니다:

코드
solana-cli 1.15.2 (src:dea65f48; feat:1211687720, client:SolanaLabs)

설정이 완료되었습니다. 계속 진행하겠습니다!

환경 설정

먼저 다음 세 가지 항목으로 환경을 설정합니다.

  1. 사용할 기본 네트워크(Mainnet 또는 Devnet).
  2. 토큰 민팅에 사용할 기본 지갑.
  3. 테스트 자금으로 사용할 Devnet Solana.

1. 네트워크

이 단계에서는 표준 Solana RPC를 사용할 수 있습니다. Helius 개발자 포털에서 무료로 받을 수 있습니다. 여기에서 확인하세요.

사용할 수 있는 두 가지 옵션은 다음과 같습니다:

  1. Mainnet - https://rpc.helius.xyz/?api-key=<api_key>
  2. Devnet - https://rpc-devnet.helius.xyz/?api-key=<api_key> 

RPC를 준비했다면 다음 명령어를 사용해 환경에 설정할 수 있습니다:

코드
solana config set --url https://api.devnet.solana.com

테스트를 위해 CLI의 기본 네트워크가 Devnet으로 설정됩니다. 콘솔에 다음 내용이 표시됩니다:

코드
Config File: /Users/user/.config/solana/cli/config.yml
RPC URL: https://api.devnet.solana.com
WebSocket URL: wss://api.devnet.solana.com/ (computed)
Keypair Path: ./RwUUVWjmSycerjAFep7v9d1R1sioF45cYAUpeJtcQbZ.json
Commitment: confirmed

이 확인 메시지가 표시되면 다음 단계로 넘어갈 수 있습니다.

2. 지갑

이 단계에서는 테스트에 사용할 기본 지갑을 설정합니다. 테스트용 새 지갑을 만들고 Solana CLI의 기본 지갑으로 지정할 수 있습니다.

새 지갑을 만들려면 다음 명령어를 실행하세요:

코드
solana-keygen new -o ${HOME}/token-wallet.json

홈 디렉터리 외부에 새로운 wallet-name.json 파일이 생성됩니다.

이제 콘솔에 다음 내용이 표시됩니다:

코드
Wrote new keypair to /Users/user/token-wallet.json
====================================================================================
pubkey: EbcgsUzSEgiZm61Ch66hKUWhoUg3DGvDaqwQBMLaBgTg
====================================================================================
Save this seed phrase and your BIP39 passphrase to recover your new keypair:
switch anchor code opera purpose easy squeeze enough steal pelican enroll switch
====================================================================================

이제 다음 명령어를 실행해 이 지갑을 기본 주소로 설정할 수 있습니다:

코드
solana config set --keypair ${HOME}/token-wallet.json

이제 다음 명령어를 실행해 공개 키가 올바르게 설정되었는지 확인할 수 있습니다.

코드
solana address

이 예시에서는 다음 결과가 표시됩니다:

코드
EbcgsUzSEgiZm61Ch66hKUWhoUg3DGvDaqwQBMLaBgTg

기본 지갑 설정을 마쳤으므로 테스트에 필요한 자금을 요청하겠습니다.

3. 테스트 자금

여기서는 Solana CLI를 통해 민팅에 필요한 Devnet Solana를 에어드롭받습니다.

터미널에서 다음 명령어를 실행해 필요한 금액을 받을 수 있습니다:

코드
solana airdrop 2

이제 다음 명령어를 실행해 지갑 잔액을 확인할 수 있습니다:

코드
solana balance

콘솔에 2 SOL이 표시되어야 합니다.

성공하지 못했다면 초기 요청이 실패했을 수 있으므로 몇 번 더 시도하세요. 그래도 작동하지 않으면 다시 시도해 보세요.

Devnet 지갑에 SOL이 들어오면 토큰 생성을 계속할 수 있습니다.

CLI로 민팅하는 단계

환경 설정을 마쳤으니 이제 실제로 토큰을 민팅해 보겠습니다! 여기까지 준비했다면 이후 설정은 매우 빠르게 끝납니다.

필요한 단계는 다음과 같습니다:

  1. 토큰을 생성합니다.
  2. 토큰 계정을 생성합니다.
  3. 토큰을 민팅합니다.

아래는 설정 구조를 보여주는 그림입니다:

조금 더 자세히 살펴보겠습니다:

  1. Token Program은 토큰을 생성하고 전송하며 추가로 민팅하는 데 사용됩니다.
  2. 사용자는 Token Program과 상호작용해 토큰을 생성합니다. 이 Token Program은 공급량을 추가로 민팅하고 토큰을 전송할 때도 사용됩니다.
  3. 토큰이 생성되면 토큰을 보관할 계정도 만들 수 있습니다.

‍‍이제 첫 번째 단계인 토큰 생성부터 시작하겠습니다.

1. 토큰 생성

다음 명령어를 실행해 토큰을 생성하세요:

코드
spl-token create-token

이 예시에서는 다음 결과가 표시됩니다:

코드
Creating token Ax3nE7fAEuZsbN9HHEpuBpoYeYy7NZ3dgjRG8GXdFqto under program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA

Address:  Ax3nE7fAEuZsbN9HHEpuBpoYeYy7NZ3dgjRG8GXdFqto
Decimals:  9

Signature: 56pRzvMBxJQqti4Fh5wPsa5Hb7KzJaWzEFNcAFYPaH7vN7a2CBmM1wbYxTvNVZr9Cvupy25X2oHtrGhhEhww9ug5

2. 토큰 계정 생성

이제 토큰 공급량을 보관할 계정을 생성할 수 있습니다.

토큰 주소를 전달해 터미널에서 다음 명령어를 실행하면 Ax3nE7fAEuZsbN9HHEpuBpoYeYy7NZ3dgjRG8GXdFqto 토큰용 계정을 설정할 수 있습니다:

코드
spl-token create-account Ax3nE7fAEuZsbN9HHEpuBpoYeYy7NZ3dgjRG8GXdFqto

Ax3nE7fAEuZsbN9HHEpuBpoYeYy7NZ3dgjRG8GXdFqto 토큰을 보관할 계정이 생성되며, 다음 결과가 표시됩니다: 

코드
Creating account 7jZDrZqRkVzu5ADtKvNGsTyPcCpcMVkxorMRJvCaUAD

Signature: EkR353vt9ST3ktyRsCRtYFqVvARaUBmUpWLfgFtsojBRbW66dK1yaCpW1NtphCQTkcGqzVQZg4Ld2abZ3bhsjA3

이제 민팅을 시작할 토큰 계정이 준비되었습니다!

3. 토큰 민팅

이제 토큰을 민팅하고 공급량을 설정할 준비가 되었습니다. Devnet에서 진행 중이므로 토큰 100만 개를 민팅해 Solana의 진정한 성능을 확인해 보겠습니다.

spl-token mint 명령어 뒤에 토큰 주소를 넣고 다음 명령어를 실행하세요:

코드
spl-token mint Ax3nE7fAEuZsbN9HHEpuBpoYeYy7NZ3dgjRG8GXdFqto 1000000

터미널에 다음 내용이 표시됩니다:

코드
Minting 1000000 tokens
  Token: Ax3nE7fAEuZsbN9HHEpuBpoYeYy7NZ3dgjRG8GXdFqto
  Recipient: 7jZDrZqRkVzu5ADtKvNGsTyPcCpcMVkxorMRJvCaUAD

Signature: 4EjB9bDC18Cut66frGWVHAxVQ3YrddaUCQcFZZsXbKXLziCAUtdh5r41tVhvP7yH1dZ5TBUaFXHpm2upaNCw3sMe

이제 다음 명령어를 실행해 토큰이 민팅되었는지 확인할 수 있습니다:

코드
spl-token supply Ax3nE7fAEuZsbN9HHEpuBpoYeYy7NZ3dgjRG8GXdFqto

다음 결과가 반환됩니다:

코드
1000000

이제 Solana CLI를 사용해 Solana에서 토큰 100만 개를 민팅했습니다.

결과

정리하면 Solana CLI의 spl-token 도구를 통해 토큰 100만 개를 민팅했습니다. Solana CLI 명령어 세 개로 완료했습니다.

  1. 토큰 생성.
  2. 토큰 계정 생성.
  3. 토큰 민팅.

토큰 1,000,000개를 민팅한 후 Solana 지갑 잔액을 확인하려면 다음 명령어를 실행하세요:

코드
solana balance

처음에 2 SOL을 에어드롭받았다면 다음 결과가 반환됩니다:

코드
1.99647912 SOL

이것으로 끝입니다!

Solana에서는 토큰 공급량을 확장하면서도 비용을 매우 낮게 유지할 수 있습니다.

이 단계를 모두 완료했다면 이제 Solana CLI의 spl-token 도구를 사용해 토큰을 만들 수 있습니다.

토큰 민팅에 사용할 수 있는 도구

앞서 말씀드린 대로 메타데이터가 포함된 토큰을 지금 바로 매우 저렴하게 생성할 수 있는 도구를 몇 가지 소개합니다. 각 예시에서는 Monopoly Money로 토큰을 만들고, 이후 사용할 수 있는 배포 옵션을 보여드립니다.

1. Famous Fox Federation

이 도구는 출시된 지 약 6개월 되었으며 사용 비용은 .03 SOL입니다. 다른 블록체인에서 토큰 수백만 개를 만드는 비용과 비교하면 매우 저렴합니다.

FFF의 구성을 살펴보겠습니다:

  1. 여기서 SPL 토큰이 선택되어 있는지 확인하세요.
  2. 소수 자릿수를 0으로 설정하면 WL 토큰 표준이 생성됩니다.
  3. 여기서 향후 공급량 민팅을 비활성화할 수 있습니다. 비활성화하지 않으면 계속 열려 있습니다.
  4. 그런 다음 Foxy Share 같은 도구를 사용해 저렴하게 토큰을 배포할 수 있습니다. 이 예시에서는 테스트 토큰을 만든 후 토큰 섹션을 사용해 다음 대상으로 전송합니다:

2. Squads

Squads는 매우 저렴하게 이용할 수 있는 또 다른 프런트엔드입니다. Squad 계정에 로그인한 후 다음 단계에 따라 토큰을 생성하세요:

  1. 개발자 탭으로 이동한 다음 —> 토큰 관리자로 이동합니다.

     2. 토큰 추가를 선택한 다음 토큰 생성을 선택하고 토큰 세부 정보를 입력합니다. 공급량은 나중에 추가합니다.

    3. 이제 토큰 소수 자릿수를 입력합니다. 이 테스트에서는 9를 사용합니다:

    4. Squads에서 트랜잭션을 승인하고 실행하면 다음과 비슷한 설정이 표시됩니다:

    5. 민팅을 선택한 후 생성할 공급량을 입력합니다. 아래 예시를 참고하세요:

    6. 이제 Squads에서 승인할 트랜잭션이 하나 더 표시됩니다. 승인되면 아래와 같이 설정한 토큰 공급량을 확인할 수 있습니다:

이제 Squads를 사용해 공급량이 100만 개인 토큰을 생성했습니다!

그런 다음 “TX Builder” 섹션에서 커스텀 트랜잭션을 설정해 토큰을 전송할 수 있습니다. 다만 자세히 설명하려면 내용이 길어지므로 여기서는 다루지 않겠습니다.

이 방법의 민팅 비용은 약 0.00561672 SOL로, Solana CLI 방식과 같습니다.

3. Strata Protocol

Solana에서 토큰을 민팅하는 또 다른 방법을 소개합니다.

  1. “새 토큰 생성” 옵션을 선택하고 다음을 눌러 시작합니다:

     2. 관리 옵션에서 **“직접 관리”**를 선택합니다:‍

      3. 이제 Solana 지갑을 연결해 트랜잭션에 필요한 자금을 제공하고 아래에 토큰 세부 정보를 입력합니다:

토큰 100만 개를 만드는 이 트랜잭션의 완료 비용은 .00458 SOL에 불과합니다. Solana의 일부에 해당하는 매우 낮은 비용이며 경쟁 서비스와도 대등합니다. 보유한 SHDW Storage 토큰이 없다면 스왑을 시도합니다.

Strata 추가 기능:

Strata의 메인 페이지에는 다음과 같이 유용한 도구가 몇 가지 더 있습니다:

  1. 토큰 관리자 - 공급량을 늘리고 각 토큰의 민팅 및 동결 권한을 업데이트할 수 있습니다.
  2. 기존 토큰 판매 - 판매할 토큰의 가격을 설정하거나 가격 탐색을 진행할 수 있습니다.
  3. 모금 - 특정 목적을 위한 자금을 모으고 토큰으로 기여도를 나타낼 수 있습니다.

결론

이제 Solana에서 토큰을 민팅할 수 있는 몇 가지 방법을 알게 되었습니다. 비용과 필요한 토큰 수 모두 확장할 수 있습니다. 이러한 예시를 실제로 확장하더라도 자산을 온체인에 올리고 배포할 준비를 마치는 비용은 크게 달라지지 않습니다.

소개한 모든 예시는 Solana 사용의 진정한 성능을 보여줍니다. 크리에이터가 생각만큼 높은 기술 역량을 갖추지 않아도 사용할 수 있습니다.

일반 사용자도 세 단계로 구성된 간단한 CLI를 통해 Solana에서 토큰을 민팅할 수 있습니다. 또는 비슷하게 저렴하면서 상호작용을 간소화하는 추가 기능을 제공하는 여러 도구를 이용할 수 있습니다.

질문이 있거나 문제가 발생하면 언제든 Helius Discord에 참여하세요!

‍

Helius 구독하기

최신 Solana 개발 소식을 확인하고 새 게시물 알림을 받아보세요

확대 이미지