Planning
Outline-text
ชื่อหัวข้อที่จะนำเสนอ
- EP 5 : Network
โครงสร้างของเนื้อหา
- หัวข้อที่ 1 : เกริ่นนำ > จาก EP ที่ผ่านมาตั้งแต่ EP 2 : ธุรกรรม (Transactions) EP 3 : เวลาที่บันทึก (Timestamp Server) และ EP 4 : Proof-of-Work หลาย ๆ คน อาจจะรู้สึกว่าไม่เห็นภาพกระบวนการทำธุรกรรม ของ Bitcoin ที่ชัดเจนเท่าไร ดังนั้นใน EP นี้จึงได้มีการอธิบายถึงระบบ “Network” ของ Bitcoin ขึ้นมาเพื่อให้ผู้อ่าน Bitcoin Whitepaper เข้าใจในระบบการทำงานของ Bitcoin มากยิ่งขึ้น
- หัวข้อที่ 2 : ระบบ Network ของ Bitcoin มีขั้นตอนยังไงบ้าง
- หัวข้อที่ 3 : ถ้า Node ในระบบเชื่อว่าสายโซ่ที่ยาวที่สุดเป็นสายโซ่ที่ถูกต้องเสมอและสร้าง Block ถัดไป ๆ จากสายโซ่นั้น ๆ ถ้าในกรณีที่มี Node 2 แห่งที่สามารถสร้าง Block ได้พร้อมๆ จะต้องทำอย่างไร
- หัวข้อที่ 4 : เวลาที่มีธุรกรรมใหม่เกิดขึ้นและกระจายไปในระบบ ธุรกรรมเหล่านั้นจำเป็นต้องกระจายไปถึง Node ทุก Node ไหม อย่างไร
- หัวข้อที่ 5 : ตั้งแต่ EP 1 จนถึง EP นี้ หลายคนอาจจะสงสัยว่า เราจะทำทั้งหมดนี้ไปเพื่ออะไร เราได้อะไรกลับมา หากอยากทราบติดตามต่อได้ใน EP 6 : Incentive (แรงจูงใจ, รางวัล) - Experimental / Content Board - Hashpire Community
ประเด็นสำคัญของบทความ
- ระบบ Network ของ Bitcoin
สิ่งที่ผู้อ่านจะได้รับจากบทความ
- เข้าใจกระบวนการทำงานภาพรวมของ Bitcoin
Outline-graphic
รูปแบบของกราฟฟิค + โครงสร้าง
คำถามที่รบกวนให้ Reviewer ช่วยตอบค่ะ
1. ต้องการรู้ประเด็นไหนเพิ่มเติมไหม เพราะอะไร
2. คิดว่าเรียงลำดับการนำเสนอได้ดีรึยัง ถ้าไม่ดี มีไอเดียอย่างไร
3. มีประเด็นไหนควรตัดทิ้งไหม เพราะอะไร
Content text + graphic
คำศัพท์ที่ควรรู้ก่อนอ่านบทความ
Node : ผู้ที่มีส่วนร่วมในเครือข่าย หมายถึงคอมพิวเตอร์หรืออุปกรณ์ที่เชื่อมต่อเข้ากับเครือข่าย Blockchain
Chain : สายโซ่ที่เชื่อมต่อ Block เข้าหากันในเครือข่าย Blockchain
Block : สิ่งที่ใช้ในการจัดเก็บข้อมูล
Double-spending : การทำธุรกรรมซ้ำ
Proof-of-Work : สามารถกลับไปอ่านได้ใน EP 4 : Proof-of-Work
Broadcast : การส่งข้อมูลธุรกรรมไปยัง Node อื่น ๆ ในเครือข่ายเพื่อตรวจสอบและส่งข้อมูลต่อไปจนกว่าจะถึง Node มากกว่าครึ่งหนึ่งในเครือข่าย
จาก EP ที่ผ่านมาตั้งแต่ EP 2 : ธุรกรรม (Transactions) EP 3 : การบันทึกเวลา (Timestamp Server) และ EP 4 : Proof-of-Work หลาย ๆ คน อาจจะยังรู้สึกว่าไม่เห็นภาพระบบการทำงานของ Bitcoin ที่ชัดเจน ดังนั้นใน EP นี้จึงเป็นการอธิบายถึงระบบ “Network” ของ Bitcoin เพื่อให้ทุกคนเข้าใจในระบบการทำงานของ Bitcoin มากยิ่งขึ้น
ระบบ Network ของ Bitcoin จะทำตามขั้นตอนดังนี้
- เมื่อมีการสร้างธุรกรรมใหม่ขึ้นมามันจะถูก Broadcast ไปหา Node อื่น ๆ
- แต่ละ Node จะรวบรวมธุรกรรมใหม่ที่ได้รับมาใส่ลงไปใน Block
- แต่ละ Node จะทำ Proof-of-Work ซึ่งคือการแก้โจทย์เพื่อหาค่าที่น้อยกว่าค่าความยาก (Difficult) ที่กำหนด เพื่อสร้าง Block ของตนเอง
- เมื่อ Node ทำ Proof-of-work สำเร็จ จะทำการ Broadcast Block ของตัวเองไปยัง Node อื่น ๆ
- Node อื่น ๆ ในเครือข่ายจะยอมรับ Block ที่ส่งมา ก็ต่อเมื่อทุกธุรกรรมใน Block นั้นถูกต้อง และไม่ใช่การทำ Double spending
- Node จะยอมรับ Block ที่ส่งมาและบันทึก Block นั้น ๆ ลงบน Chain ของตัวเอง โดยใช้ Hash ของ Block ดังกล่าวเป็น Hash ก่อนหน้า สำหรับใช้ในการสร้าง Block ถัดไป
Node จะเชื่อ Chain ที่ยาวที่สุดเท่านั้น
ในกรณีที่มี Node 2 แห่งสามารถสร้าง Block ได้พร้อมกันและ Broadcast Block ออกไป มีโอกาสที่ Node ปลายทางจะได้รับข้อมูลจาก Block แห่งใดแห่งหนึ่งก่อน ทำให้ข้อมูลแต่ละ Node นั้นแตกต่างกัน ซึ่งความแตกต่างของข้อมูลจะหายไปเมื่อมี Node แห่งหนึ่งที่สามารถสร้าง Chain ได้ยาวที่สุด ซึ่งทำให้ Node อื่นๆ ต้องย้ายมาใช้ Chain ที่ยาวที่สุดแทน
ประเด็นต่าง ๆ ที่อาจเกิดขึ้นในการทำ Broadcast
- เมื่อมีการสร้างธุรกรรมใหม่ขึ้นมาและ Broadcast ไปในระบบ ธุรกรรมเหล่านั้นไม่จำเป็นต้องกระจายไปถึงทุก Node ในเครือข่ายตราบใดที่มันยังถูกส่งไปยัง Node ส่วนใหญ่
- ถ้ามี Block ใดที่ถูกส่งมาซ้ำ Node จะปฏิเสธ Block นั้น
- เมื่อ Node ได้รับ Block ใหม่มาและทราบว่ามี Block ที่หายไป (ได้รับ Block ผิดลำดับ หรือข้ามไป) ก็จะทำการขอ Block นั้นจาก Node อื่น ๆ
เดินทางมาจนถึง EP 5 : Network กันแล้ว คิดว่าหลายคนน่าจะเข้าใจระบบการทำงานของ Bitcoin ที่ชัดเจนมากยิ่งขึ้นแล้วระดับหนึ่ง แต่!!! มันยังไม่จบเพียงเท่านี้ เพราะใน EP ต่อไปอาจจะเป็นเรื่องที่หลายคนให้ความสนใจและอยากรู้มากที่สุดเรื่องหนึ่ง หากอยากรู้ว่าเป็นเรื่องอะไร ติดตามต่อได้ใน Series : Bitcoin Whitepaper EP ต่อไป