มองให้ไกลกว่ามุกตลก Bn Coin เครือข่าย Ethereum เพื่อการศึกษา

by lew
2 April 2018 - 07:56

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

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

Bn Coin เป็นเครือข่าย Ethereum ที่เซ็ตอัพมาแบบ private network เราสร้างไฟล์ genesis.json ของเราเองโดยมีสร้างโครงสร้างพื้นฐานไว้ให้ผู้ใช้ทุกคน ได้แก่

  1. หน้าเว็บ bncoin.info สำหรับดูสถานะเคริอข่ายในปัจจุบัน
  2. node สำหรับเริ่มต้นเครือข่าย มี 3 node เป็น 1 bootnode และ 2 full node

กระบวนการกระจายเงิน Bn Coin จะมีดังนี้

  1. ผู้ที่ขอ Bn Coin ไว้ในข่าวแรกเมื่อวานนี้ จะได้รับคนละ 100ETH โดยตอนนี้โอนไปทั้งหมดแล้ว
  2. Writer ทุกคนจะได้รับอีเมล wallet คนละหนึ่งไฟล์ มูลค่า 1000ETH ภายใน 2-3 วันนี้ รหัสผ่าน wallet คือ "bncoinpasswordisnotsafe" ตามประกาศแรก เมื่อได้รับแล้ว ควรรีบโอนเงินออกจากบัญชีโดยเร็ว (เพราะผมรู้ทั้งรหัสผ่าน และมีไฟล์ wallet)
  3. ทุกคนยังคงขอ Bn Coin ได้เรื่อยๆ โดยผมจะตามมาโอนให้คนละ 10ETH โดยแจ้งเลขบัญชีไว้เช่นเดิม
  4. สำหรับผู้ที่จะใช้เพื่อการศึกษา เช่น ต้องการแจกนักเรียนในห้องเพื่อวิชาเรียน ต้องใช้อีเมล ac.th สมัคร Blognone และคอมเมนต์ระบุว่าจะใช้เพื่อการศึกษา พร้อมกับแจ้งเลขบัญชี ผมจะส่งให้ 1000ETH เช่นกัน

เครือข่าย Bn Coin ไม่เหมาะกับการใช้งานจริงด้วยเหตุผลหลายอย่าง

  1. พลังขุดรวมมีไม่มากนัก การโจมตี 51% สามารถทำได้ง่ายอย่างยิ่ง
  2. ผมและ mk ถือบัญชีไว้คนละ 5,000 ล้านล้านล้าน ETH หากมีใครซื้อขายจริง ไม่น่าจะมีใครได้กำไรใดๆ
  3. เครือข่ายถูกเซ็ตอัพขึ้นมาแบบทดลอง แม้ผมจะดูแลอยู่บ้าง แต่ก็มีความเสี่ยงว่าเซิร์ฟเวอร์อาจจะถูกแฮกสักวัน

โดยตัวโครงสร้างของ Bn Coin ทาง Blognone จะบำรุงรักษาไว้ให้ช่วงเวลาหนึ่ง 2 fullnode จะอยู่ไปอีกอย่างน้อย 3 เดือน ส่วน bootnode และเว็บ จะอยู่ไปอีก 1 ปี

สำหรับผู้ที่ต้องการทดลองใช้งานบล็อคเชนและ Smart Contract ผมแนะนำการทดลองดังต่อไปนี้

  1. ทดลองสร้าง node สำรวจเงินบัญชีคนอื่นจากเครื่องของตัวเอง
  2. สร้าง node จากไคลเอนต์อื่นนอกจาก geth เช่น parity หรือ cpp-ethereum
  3. ขุดเหมือง โดยตอนนี้น่าจะขุดด้วยพีซีธรรมดาได้ไม่ยากนัก (อย่าใช้เครื่องแรงมาก เดี๋ยว difficulty สูงแล้วคนอื่นขุดไม่ได้)
  4. เขียน Smart Contract อย่างง่าย เช่น การสร้าง Coin หรือบัญชีแบบหลายเจ้าของ
  5. สร้าง ICO ของตัวเองบนเครือข่าย Bn Coin ตามมาตรฐาน ERC20

ข้อมูลสำหรับการเชื่อมต่อ Bn Coin

ดาวน์โหลดไฟล์ genesis.json ได้จาก GitHub

sudo apt-get install software-properties-common
sudo add-apt-repository -y ppa:ethereum/ethereum
sudo apt-get update
sudo apt-get install ethereum
cd bncoin
geth --datadir ./ init genesis.json
geth --datadir ./ --networkid 131094043 --bootnodes enode://8426d41749f37b78bd418c0fed92abfd10801243b0056edbb1b1070c4780fcc91ec32e1696f9843c5b91d96f8d619bc54d6167b0a289bdbe4326ba9191e584f6@35.197.141.41:30301,enode://5b515b3f1bd5f4fdb186cf87b53eeea2d060a2dbb61e759850ee03c47ec2eece7696e5829bedd83ff4f91f1d6db8b914b397dcce247896025d2f4a1a5b350964@52.221.204.171:30303,enode://f5116864f6846c4a7ce3e644ff65c02c6ed7178ecf964adc52b5917186504dc04a343afc118d1c734ebc52d785a9756e1dfc5dacd7cb3c832fbe2c0662ee26db@52.199.224.140:30303 console
Blognone Jobs Premium