顯示具有 川普幣 標籤的文章。 顯示所有文章
顯示具有 川普幣 標籤的文章。 顯示所有文章

10/04/2025

川普 金字碑 數位刺青

 對於自己想要永遠銘記的事情,刺青對某些人來說是個好選項,畢竟感覺上,刺青很像在自己身上刻碑。


在區塊鏈世界裡,有某種使用方式是,把交易的訊息當作「永遠留存的內容」,例如可以是一段字,一張圖。只是成本不低啊,以那個金字碑的碑文,小於200 bytes,放到ETH網路(以太坊)至少要7美元。所以那時候沒特別想嘗試。

不過前幾天,我發現原來川普幣,並不是基於ETH,而是Solana。稍微研究一下發現Solana的交易特別便宜,至少比ETH便宜很多。要把金字碑文刻在Solana上面,其實僅需要0.001146美金。 我們當然不知道川普是不是因為交易費便宜而選Solana,但看起來solana的規模確實因為川普的關係變大了一些。

當然要做這件事情,千萬不能買川普幣來做,如果用川普幣就不只0.001146美金,最便宜的是找便宜的迷因幣或者自己弄個幣。

這裡我們用 Solana 當例子,示範如何把金字碑文當成刺青寫到鏈上,並且搭配自己發行的代幣。整個過程會用 Python 腳本來實作。



整體流程

  1. 建立一個錢包帳號:這是你在 Solana 上的身分。

  2. 建立一個自己的 Token:假設發行 1000 個單位,當作我們的「刺青代幣」。

  3. 建立交易並加上 Memo:利用 Token 做交易時,在交易裡附帶 Memo 指令,這個 Memo 就是刺青內容,例如「life is great」。

  4. 查詢交易記錄:透過交易簽名(transaction signature),可以查到這筆交易,並讀到當初留下的文字。



範例程式

以下四個 Python 腳本都是在 Solana Devnet 測試網上執行。正式主網(mainnet-beta)使用方式相同,只是需要真實的 SOL。

a. 建立錢包帳號

from solana.keypair import Keypair


import json


kp = Keypair()


secret = list(kp.seed + kp.public_key.__bytes__())


with open("wallet.json", "w") as f:


    json.dump(secret, f)


print("wallet created")


print("Public Key:", kp.public_key)



b. 建立自己的 Sol Token(假設 1000 個)

import json


from solana.rpc.api import Client


from solana.keypair import Keypair


from spl.token.constants import TOKEN_PROGRAM_ID


from spl.token.instructions import initialize_mint, InitializeMintParams


from solana.system_program import CreateAccountParams, create_account


from solana.transaction import Transaction


client = Client("https://api.devnet.solana.com")


payer = Keypair.from_secret_key(bytes(json.load(open("wallet.json"))[:32]))


mint_kp = Keypair()


mint_rent = client.get_minimum_balance_for_rent_exemption(82)["result"]


tx = Transaction().add(


    create_account(CreateAccountParams(


        from_pubkey=payer.public_key,


        new_account_pubkey=mint_kp.public_key,


        lamports=mint_rent,


        space=82,


        program_id=TOKEN_PROGRAM_ID


    )),


    initialize_mint(InitializeMintParams(


        decimals=0,


        program_id=TOKEN_PROGRAM_ID,


        mint=mint_kp.public_key,


        mint_authority=payer.public_key,


        freeze_authority=payer.public_key


    ))


)


sig = client.send_transaction(tx, payer, mint_kp)["result"]


print("Token Mint Done:", mint_kp.public_key)



c. 建立交易並寫入 Memo(刺青)

import json


from solana.rpc.api import Client


from solana.keypair import Keypair


from solana.transaction import Transaction


from spl.memo.instructions import create_memo, MemoParams


client = Client("https://api.devnet.solana.com")


payer = Keypair.from_secret_key(bytes(json.load(open("wallet.json"))[:32]))


text = "雙旌遙向淡蘭來,此日登臨眼界開。大小雞籠明積雪,高低雉堞挾奔雷。穿雲十里連稠隴,夾道千章蔭古槐。海上鯨鯢今息浪,勤修武備拔良才"  # 其實就是三貂嶺金字碑


ix = create_memo(MemoParams(signers=[payer.public_key], memo=text.encode("utf-8")))


tx = Transaction().add(ix)


sig = client.send_transaction(tx, payer)["result"]


print("(signature):", sig)



d. 查詢交易,讀出刺青

from solana.rpc.api import Client


import base64


client = Client("https://api.devnet.solana.com")


sig = input("輸入交易簽名: ")


tx = client.get_transaction(sig, max_supported_transaction_version=0)["result"]


for ix in tx["transaction"]["message"]["instructions"]:


    if ix["programIdIndex"] == 1:  # Memo program


        data = base64.b64decode(ix["data"])


        print("找到刺青內容:", data.decode("utf-8"))



成本說明

在 Devnet 測試網路,所有 SOL 都是免費領取的,不需要真實支出。
但如果換成主網,成本主要來自兩個部分:


  1. 交易手續費

    • 每筆交易大約 5,000 lamports

    • 1 SOL = 1,000,000,000 lamports

    • 換算約 0.000005 SOL ≈ 0.0012 美元

  2. 帳戶租金 (rent-exempt)

    • Mint 帳戶約 0.002--0.01 SOL\

    • Token Account 約 0.002 SOL\

    • Metadata(若有)約 0.005 SOL\

    • 合計大約 0.5--2 美元 一次性存放


所以在主網發一個新代幣,並且刻下一個刺青,總成本大概就是 1 美元上下,取決於 SOL 當時的市價。




「數位刺青」是透過公開可信區塊鏈,我們可以把一句話,一張圖,甚至一段影片,永遠留在去中心化的帳本裡,任何人都能查證。