สร้าง Digital Token (ERC-20) ของตัวเองแบบง่ายๆผ่าน Remix Ethereum IDE

สวัสดีครับในวันนี้ผมจะมาสอนให้ทุกคนได้สร้าง Digital Token ของตัวเองกันผ่าน Smart contracts โดยแทบไม่ต้องเขียนโค้ดเลยและจะพา deploy ตัว smart contract ขึ้น testnet อีกด้วยถ้าพร้อมแล้วไปเริ่มกันเล้ยย

Token คืออะไร

ก่อนอื่นมาทำความเข้าใจกันก่อน เหรียญที่เราเห็นกันนั้นแท้จริงแล้วถูกแบ่งออกเป็น 2 ประเภทดังนี้

  1. Coin เป็นเหรียญที่มีระบบเครือข่ายเป็นของตัวเองหรือก็คือเหรียญ Native ประจำเชนต่างๆ ยกตัวอย่างเช่น BTC ETH BNB SOL ADA TEZ เป็นต้น
  2. Token เป็นเหรียญเล็กๆที่อยู่ภายใต้ของเครือข่าย มักถูกสร้างมาใช้ภายในโปรเจคนั้นๆยกตัวอย่างหรียญใน game-fi เช่น SAND BCOIN AXS CCAR หรือพวก Governance token บน Defi เช่น CAKE UNI WAD เป็นต้น

นอกจากนี้แล้ว Token ยังสามารถแทนแต้มคะแนนได้อีกด้วยเช่นเราถือครอง Token นี้มากๆเราก็สามารถออกเสียงหรือลงคะแนนเพื่อกำหนดทิศทางของโปรเจคนั้นๆได้ บาง Token ก็ถูกสร้างมาเพื่อการลงทุนเมื่อเราถือครอง Token นั้นๆเราก็มีสิทธิ์ที่จะได้ปันผลหรือส่วนแบ่งรายได้ของโปรเจคนั้นๆอีกด้วย

เนื่องจากใครๆก็สามารถเขียน Smart contract ขึ้นไปในระบบได้การทำ Token เพื่อให้สามารถใช้ได้อย่างแพร่หลายนั้นจึงจำเป็นต้องมีมาตฐานหรือฟังก์ชั่นการทำงานพื้นฐานเพื่อให้ Token ทำงานร่วมกันได้ในระบบยกตัวอย่างบน Ethereum ก็มีสิ่งที่เรียกว่า ERC เป็นมาตรฐานสำหรับการสร้างเหรียญต่างๆ

ERC คืออะไร

Ethereum Request for Comments หรือเรียกสั้นๆว่า ERC เป็นมาตรฐานในการสร้าง Token บนเครือข่าย Ethereum โดยที่ไม่ได้มีแค่ ERC-20 เท่านั้นยังมี ERC-721 ERC-1155 ที่เอาไว้สำหรับสร้าง NFT อีกด้วย

ใน ERC ต่างๆนั้นจะมีชุดคำสั่งพื้นฐานสำหรับการพัฒนาเหรียญประเภทนั้นๆอยู่ทำให้นักพัฒนาไม่จำเป็นต้องเริ่มเขียนโค้ดเองทั้งหมดสามารถ Implement ต่อได้เลย

ERC-20

เป็นมาตรฐานสำหรับการสร้าง Token โดยจะมีชุดคำสั่งพื้นฐานดังนี้

ERC-20 หน้าตาแบบนี้

จะเห็นได้ว่ามี 6 function 2 event แต่ละ function มีรายละเอียดดังนี้

  • totalSupply() แสดงจำนวน token ทั้งหมด
  • balanceOf(account) แสดงจำนวน token ที่ address นั้นๆถือครอง
  • transfer(to, amount) โอน token ไปยัง address ปลายทางตามจำนวนที่ใส่เข้าไป trigger event Transfer
  • allowance(owner, spender) ดูจำนวน token ที่ owner อนุญาติให้ spender ถอนไปได้
  • approve(spender, amount) อนุญาติให้ spender ถอน token จากเราไปตามจำนวนที่ใส่ไป trigger event Approval

เมื่อเราทำ Smart Contract ของตัวเองเราก็สามารถ Inheritance ERC-20 ได้เลยแค่นี้ code ของเราก็จะมี function พื้นฐานสำหรับสร้าง token แล้ว

รู้จักกับ ERC-20 ไปแล้ว ถ้าเราอยากสร้าง token แต่ไม่รู้จะเริ่มยังไงผมมีตัวช่วยสิ่งนั้นก็คือ….

OpenZeppelin Contracts Wizard

ในเว็บนี้จะทำการ Generate smart contract สำหรับการสร้าง token ได้เลยเพียงแค่เรากรอกชื่อ ติ๊กคุณสมบัติที่เราต้องการเราก็จะได้ code ออกมาโดยที่เราไม่ต้องเขียนเองสักบรรทัดแถมมี ERC ให้เลือกหลายประเภทด้วยนะ

สำหรับวันนี้เราจะสร้าง ERC-20 token แบบง่ายๆกัน รายละเอียดคร่าวๆก็มีดังนี้

โล่งๆมีอะไรให้ติ้กเยอะไปหมด
  • Name, Symbol: ชื่อเหรียญและตัวย่อของเหรียญ
  • Permint: จำนวนของเหรียญที่จะทำการสร้างในครั้งแรกที่ deploy
  • Mintable: สามารถ Mint เพิ่มได้
  • Burnable: สามารถ Burn เหรียญได้
  • Pauseable: สามารถกำหนดช่วงเวลาในการหยุดทำ transaction ของเหรียญได้
เสร็จแล้วจะได้หน้าตาแบบนี้ครับ

ใส่ชื่อของเหรียญที่เราจะสร้างใส่จำนวนในการ mint เหรียญตอนแรก ในบทความนี้จะขอติ๊กแค่ Mintable, Burnable, และ Pausable ก่อนนะครับ เสร็จแล้วเราก็กด ตรง Open in remix ได้เล้ยยย

กดตรงนี้เล้ย

Remix Ethereum IDE

Remix เป็น online IDE ที่ให้เราสามารถเขียนและ compile smart contracts ได้รองรับทั้งภาษา Solidity และ Yul อีกทั้งยังสามารถ Deploy ขึ้น Blockchain ได้อีกด้วย

ในบทความนี้เราจะให้ลอง deploy ขึ้น Rinkeby network ใครยังไม่มี ETH ใน network สามารถไปรับฟรี 0.1 ETH ได้ที่ link นี้เล้ย

code ที่เรา gen มา

ต่อจากข้างบนที่เรากดมาจาก OpenZeppelin Contracts Wizard พอเราได้ code มาเสร็จเลือก Compile version ให้ตรงกับของเราเสร็จแล้วก็กด Compile ได้เล้ย

เชคให้เรียบร้อยก่อน deploy

เสร็จแล้วเลือกที่ tab Deploy ตรง environment ให้เลือก Injected Web3 แล้วจะมีหน้าต่างของ MetaMask มาให้ connect เลือก network ที่เราจะ deploy ในที่นี้ผมเลือกเป็น Rinkeby ส่วนตรง Contract ให้เลือกเป็น ไฟล์ที่เราสร้างขึ้นมา (ชื่อไฟล์จะเป็นชื่อเดียวกับเหรียญของเรา) เสร็จแล้วกด Deploy ได้เลย

จ่าย gassssss

จ่ายค่า gas เสร็จแล้วก็รอสักแปปนึงให้ transaction complete แค่นี้ในกระเป๋าเราก็จะมีเหรียญที่เราสร้างแล้วครับ

สามารถเอา address เหรียญไป import ใน MetaMask ได้นะ

ต่อไปเรามาดูตัว smart contract ของเราดีกว่าว่ามี function อะไรบ้าง

function กดแล้วใช้ได้เล้ยย

จากรูปเราจะเห็น function เยอะแยะไปหมดสีส้มคือ write function ถ้าเรียกใช้ต้องจ่ายค่า gas เพราะเป็น function ที่จะบันทึกข้อมูลลงใน Blockchain ส่วนสีเขียวแก่ๆจะเป็น read function เรียกใช้ไม่เสีย gas เพราะเป็นการอ่านข้อมูลเฉยๆ ต่อจากนี้เพื่อนๆก็ลองเล่น function ต่างๆได้เลยหรือจะลองโอนไปให้คนอื่นก็ได้นะครับผม

พอเพื่อนๆเข้าใจคำสั่งพื้นฐานก็ลองไปปรับใช้กันนะครับยังมีหลายอย่างให้ลองเล่นอีกเยอะแยะเลยครับ

ก็จบไปแล้วสำหรับการสร้าง Token ERC-20 ง่ายใช่ไหมครับการสร้างน่ะมันง่ายแต่การจะเอาไปใช้ให้เกิดประโยชน์ให้มันมีมูลค่าน่ะมันยากมากๆใครสนใจสามารถตามไปอ่านบทความเรื่อง Tokenomic ของพี่โน็ตได้ ที่นี่ เลยจ้า

ใครอยากสนับสนุนผมสามารถเข้าไปดูผลงาน NFT ทั้งหมดของผมได้โดยการคลิกปุ่มข้างล่างเลยครับ

ไม่อยากพลาดบทความใหม่ๆ กดติดตามเพจ MildSpace ได้เลยครับ

ใส่ความเห็น

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  เปลี่ยนแปลง )

Twitter picture

You are commenting using your Twitter account. Log Out /  เปลี่ยนแปลง )

Facebook photo

You are commenting using your Facebook account. Log Out /  เปลี่ยนแปลง )

Connecting to %s