บล็อคเชนคืออะไร?
บล็อคเชนคือฐานข้อมูลสาธารณะ คลิปวีดีโออธิบาย Blockchain#1
ฐานข้อมูลกระจาย (Distributed Ledgers)
บล็อคเชนถือเป็น Distributed Ledger รูปแบบหนึ่ง ฐานข้อมูลประเภทนี้จะเก็บข้อมูลชุดเดียวกันไว้หลายๆฐานเพื่อใช้เปรียบเทียบกัน
ข้อตกลงร่วมในระบบ (Consensus Mechanism)
Consensus Mechanism คือข้อตกลงที่ใช้ร่วมกันระหว่าง node ในการทำให้ข้อมูลทั้งหมดเป็นชุดเดียวกัน
การขุดเหรียญคริปโต (Mining)
เราเรียกกระบวนการในการเขียนข้อมูลเพิ่มลงบนบล็อคเชนว่า เป็นการต่อบล็อคใหม่ การขุดเหรียญคริปโต คือกระบวนการในการค้นหาผู้มีสิทธิ์เพียงคนเดียวที่จะสามารถเขียนข้อมูลใหม่ 1 บล็อคลงบนบล็อคเชนได้
บล็อคเชนสาธารณะและบล็อคเชนส่วนตัว
ส่วนมากบล็อคเชนส่วนตัวจะเป็นที่นิยมใช้กันเองระหว่างองค์กรประเภทธนาคารการเงินที่มีการทำธุรกรรมร่วมกัน โดยทั่วไปจะเรียกตามชื่อเทคโนโลยี เช่น Hyper Ledger เป็นต้น จะไม่เรียกว่าบล็อคเชน นิยาม ในกรณีทั่วไปแล้ว บล็อคเชน จะหมายถึงบล็อคเชนสาธารณะเท่านั้น
คุณสมบัติบล็อคเชน
คุณสมบัติที่สำคัญในการนิยามเทคโนโลยีนี้
ข้อดีของแอพบล็อคเชน
จุดเด่น 5 ประการในการเอาบล็อคเชนเข้ามาประยุกต์ใช้ในธุรกิจ
ความเข้าใจผิดเกี่ยวกับบล็อคเชน
เทคโนโลยีบล็อคเชนยังถือว่าใหม่มาก หลายคนที่ไม่เข้าใจในเทคโนโลยีนี้ทำให้เกิด ความเข้าใจผิดไปต่างๆมากมาย เช่น บล็อคเชนเป็นภาพลวงตา เป็นแหล่งฟอกเงิน เป็นแชร์ลูกโซ่หลอกลวง
บล็อคเชนทำงานอย่างไร?
บล็อคเชนคือสมุดจดบันทึกที่แก้ไขบรรทัดที่จดไปแล้วไม่ได้
การอนุญาตและสิทธิ์ในการเข้าถึงข้อมูล (public key)
การรับส่งข้อมูลในที่สาธารณะจำเป็นต้องใช้ Public and Private Keys เพื่อความปลอดภัยจากผู้ดักฟัง
เมอร์เคิลทรี (Merkle tree)
เมอร์เคิลทรีเป็นวิธีการเก็บข้อมูลรูปแบบหนึ่งซึ่งมีคุณสมบัติ what is Merkle tree
โครงสร้างของบล็อคเชน
โครงสร้างของบล็อคเชนเป็นเมอร์เคิลทรีกิ่งเดียว (แยกกิ่งเวลามีการ fork)
ฐานข้อมูลบล็อคเชน (nodes)
node ในบริบทบล็อคเชนคือ ฐานข้อมูล 1 จุด มีหน้าที่ร่วมเป็นส่วนหนึ่งในการตรวจสอบสิทธิ์การเขียนข้อมูล และสามารถขอสิทธิ์เขียนข้อมูลได้ตามเงื่อนไขของแต่ละบล็อคเชน full node จะหมายถึง node ที่เก็บข้อมูลทั้งหมดตั้งแต่บล็อคแรกของบล็อคเชน light node จะเก็บข้อมูลเพียงบางส่วน Blockchain Nodes
การอัพเดทระบบบล็อคเชน (fork)
โดยทั่วไปแล้วการ fork จะเกิดขึ้นเมื่อนักพัฒนาเห็นตรงกันว่าระบบควรอัพเดทเพื่อให้มีประสิทธิภาพดีขึ้น เมื่อระบบมีการเปลี่ยนแปลง คนขุดเหรียญ(คนต่อบล็อค)ก็จำเป็นต้องแก้ไขระบบตามเพื่อให้ตรงกันกับระบบปัจจุบัน การเปลี่ยนแปลงดังกล่าวทำให้เกิดการแยก(fork)บล็อคออกมาอีกสาย โดยถ้าสายเก่าไม่มีคนใช้ก็จะถูกปล่อยคาทิ้งไว้ตามเดิม Blockchain Forks Explained
Ethereum คืออะไร
ปัจจุบัน(มีนาคม 2562)อีเธอเรียมเป็นบล็อคเชนที่มี community ใหญ่ที่สุดในบรรดาบล็อคเชนทุกตระกูล มีนักพัฒนาทั่วโลกช่วยกันคิดผลิตเครื่องมือต่างๆเพื่อผลักดันให้เทคโนโลยีนี้สามารถเข้ามามีบทบาทเปลี่ยนยุคสมัยของคนทุกคนบนโลกในวันข้างหน้า บทความอธิบาย Ethereum
บัญชีบนบล็อคเชน (accounts)
บัญชีหรือ accounts เป็นพื้นฐานการทำงานของระบบอีเธอเรียม
การเชื่อมต่อข้อมูลบนบล็อคเชน (transactions)
ลักษณะข้อมูลบนอีเธอเรียม Ethereum transaction
ค่าธรรมเนียมแก๊ส
ค่าธรรมเนียม ในการเขียนข้อมูลลงบนบล็อคเชนคือรายได้ของนักขุดเหมืองเหรียญคริปโตนั่นเอง
โครงสร้างอีเธอเรียม
อีเธอเรียมเป็นบล็อคเชนสาธารณะ แปลว่าใครก็ได้สามารถเปิด node ขึ้นมาเพื่อรับข้อมูลเชนทั้งหมดมาเก็บไว้ ใครก็ได้สามารถเปิด node มาเพื่อขุดเหรียญ(ต่อบล็อค)อีเธอเรียมตามระเบียบที่วางไว้ได้เช่นกัน a gentle introduction to Ethereum
Smart Contract
เครื่องมือต่างๆ ที่ใช้เขียนสมาร์ทคอนแทรค
Tools และ Frameworks ต่างๆที่ใช้เขียนสมาร์ทคอนแทรค What are the development tools for Ethereum?
ขั้นตอนการเขียนสมาร์ทคอนแทรค
เรียนรู้การเขียนสมาร์ทคอนแทรคจากศูนย์ Create a Hello World Contract in Ethereum
การออกแบบและพัฒนาแอพบล็อคเชน
การเขียน UI ด้วย web3.js
web3.js เป็น framework ที่เชื่อมข้อมูลจากอีเธอเรียมมาเป็น JavaScript
การเรียกใช้ MetaMask
การจัดการกระเป๋าเงิน MetaMask ในโค้ด
การเรียกใช้งาน events
จุดประสงค์และวิธีใช้ events ในโค้ดเพื่อความง่ายในการดูแล
การยกเลิก contracts
การจัดการและยกเลิก contracts ที่ปล่อยออกไปแล้ว
Infura
ปกติแล้วการจะ deploy smart contracts ลงอีเธอเรียมนั้นเราจะต้องเปิด node ตัวเองเพื่อเข้าร่วมระบบบล็อคเชน Infura ช่วยทำหน้าที่ตรงนี้ให้