วันเสาร์, พฤศจิกายน 17

รู้ให้ลึกรู้ให้จริงกับ Ethereum ตอนที่ 2 (Messages and Transactions)

หลังจากที่เรารู้แล้วว่าแต่ละโหนดในวง Ethereum จะประกอบไปด้วยข้อมูลบัญชี (Account) เพื่อใช้ในการระบุตัวตนสำหรับการทำรายการต่างๆในระบบ โดยรายการต่างๆในวงเน็ตเวิร์คจะเรียกว่า Transaction หรือ Message ซึ่งจะมาดูนิยาม Transaction และ Message กันครับ

นิยามของ Transactions

Transaction ในโลกของ Ethereum นั้นจะหมายถึงก้อนข้อมูลที่ถูกทำ digitally sign ซึ่งบรรจุข้อความ (Message) ที่จะถูกส่งหากันไปมาระหว่าง account หนึ่งถึง account หนึ่ง โดยที่ภายใน Transaction นั้นจะประกอบไปด้วย

  • ที่อยู่ของผู้รับ Message โดยเป็นเลขฐาน 16 ขนาด 20 ไบท์
  • Digital signature ที่ผู้ส่งทำการ digitally sign Message อันนี้มา
  • เงินที่ถูกส่งมาจากผู้ส่ง
  • ข้อมูลอื่นๆ ซึ่งสามารถเป็นข้อมูลอะไรก็ได้ทั้งตัวเลข, ตัวอักษร รวมถึงไฟล์ต่าง โดยจะอยู่ในรูปแบบเลขฐาน 16
  • STARTGAS – ค่าตัวเลขสูงสุดของ step การประมวลผล transaction ที่จะให้ miner ทำการประมวลผลซึ่งมีขึ้นเพื่อป้องกันการเกิดปัญหา miner ทำงานใน transaction แบบไม่รู้จบ
  • GASPRICE – ค่าธรรมเนียมที่ผู้ส่งจะต้องจ่ายเพื่อให้ miner ทำงานใน transaction นี้

ตัวอย่างข้อมูล Transaction จาก Etherscan

นิยามของ Messages

สำหรับ  Message นั้น คือข้อความที่ส่งไปมาหากันระหว่าง Contract โดยที่จะไม่ถูกนำเข้าไปใน chain และจะอยู่แค่เฉพาะส่วนตอน miner กำลังประมวลผลคำสั่งของ contract เท่านั้น โดยภายใน message จะประกอบไปด้วย

  • ที่อยู่ของคนส่ง Message โดยเป็นเลขฐาน 16 ขนาด 20 ไบท์
  • ที่อยู่ของผู้รับ Message โดยเป็นเลขฐาน 16 ขนาด 20 ไบท์
  • จำนวนเงินที่แนบมาใน Message
  • ข้อมูลอื่นๆ ซึ่งสามารถเป็นข้อมูลอะไรก็ได้ทั้งตัวเลข, ตัวอักษร รวมถึงไฟล์ต่าง โดยจะอยู่ในรูปแบบเลขฐาน 16
  • STARTGAS – ค่าตัวเลขสูงสุดของ step การประมวลผล transaction ที่จะให้ miner ทำการประมวลผลซึ่งมีขึ้นเพื่อป้องกันการเกิดปัญหา miner ทำงานใน transaction แบบไม่รู้จบ

โดยพื้นฐานแล้ว Message จะมีความคล้ายคลึงกับ Transaction  ต่างกันแค่ Message จะสร้างมาจาก Contract ในขณะที่ Transaction สร้างมาจากคน ซึ่ง Message นั้นจะถูกสร้างตอน Contract มีการใช้คำสั่ง CALL

ตัวอย่างข้อมูล Message ที่ถูกสร้างตอน Contract มีการใช้คำสั่ง CALL จาก Etherscan

Facebook Comments