Thread

Zero-JS Hypermedia Browser

Relays: 5
Replies: 10
Generated: 05:39:14
🙋‍♂️ เมื่อวานได้ฟังพี่หลามอธิบายถึงโครงสร้างของข้อมูลแต่ละ Block ของบิตคอยน์ใน Right Tech EP.1 แล้วพบว่า... มันมหัศจรรย์มากกกกกก ผมเลยต้องกลับไปอ่านหนังสือ Mastering Bitcoin 2nd by Andreas M. Antonopoulos อีกรอบ 5555 😊 ❗️ซึ่งโพสต์นี้จะขอขยายความว่าเจ้าระบบบิตคอยน์ที่ทุกคนเคยได้ยินมาว่า "มันเปลี่ยนแปลงข้อมูลไม่ได้" หมายถึงอะไรกัน ? 🤔 . ➡️ จริง ๆ ต้องเกริ่นก่อนว่า.. Database ทุก ๆ ชนิดบนโลกมันสามารถ "เปลี่ยนแปลงข้อมูล" ได้ และ "Block chain" มันก็คือ Database ชนิดหนึ่งที่ใช้กระบวนการเก็บข้อมูลต่อเนื่องเรียงกันเป็น Block ต่อไปเรื่อย ๆ ไม่มีที่สิ้นสุด และสามารถเรียกดูข้อมูลจากอดีตถึงปัจจุบันได้ทั้งหมด (ต่างจาก Database บางระบบที่ใช้การบันทึกข้อมูล "ซ้ำ" ลงไปแทนที่ข้อมูลเดิม) ดังนั้น ข้อมูลในตัว Block Chain มันก็สามารถเปลี่ยนแปลงได้เช่นกัน ✅ . แต่‼️ ระบบบิตคอยน์นั้น ,, เราได้เพิ่มกระบวนการที่เรียกว่า "Cryptographic Hash Algorithm" มาประกอบการใช้งานกับ Block chain ซึ่งมันคือการ "เก็บลายนิ้วมือ" ของข้อมูลต่าง ๆ ที่มีอยู่ในบล็อกนั้น และมีการบรรจุ "ลายนิ้วมือ" อันนี้ลงไปในบล็อกถัดไปที่กำลังจะสร้างด้วย 👍 ✅ กระบวนการนี้จึงทำให้การเปลี่ยนแปลงข้อมูลในบล็อกก่อนหน้านั้น "ทำไม่ได้" เพราะว่าถ้ามีส่วนหนึ่งส่วนใดของข้อมูลในบล็อกก่อนหน้า "เปลี่ยนไป" แม้เพียงเล็กน้อย (เช่น การเพิ่มเว้นวรรค หรือตัวอักษรพิมพ์ใหญ่พิมพ์เล็กไม่เหมือนกัน) ก็จะส่งผลให้ "ลายนิ้วมือ" ของข้อมูลในบล็อกนั้น "เปลี่ยนไป" ทั้งหมด 😎 . image จากภาพประกอบจะเห็นได้ว่า ➡️ Block Height : 277,316 จะมีส่วนข้อมูล "ลายนิ้วมือ" จากบล็อก 277,315 ➡️ Block Height : 277,315 ก็จะมีส่วนข้อมูล "ลายนิ้วมือ" จากบล็อก 277,314 ➡️ Block Height : 277,314 ก็จะมีส่วนข้อมูล "ลายนิ้วมือ" จากบล็อก 277,313 ✅ และแน่นอนว่า Block Height : 277,317 ก็จะต้องนำ "ลายนิ้วมือ" จากบล็อก 277,316 ไปประกอบเป็นส่วนหนึ่งในข้อมูลของบล็อก ‼️ซึ่งข้อมูลต่าง ๆ ที่อยู่ใน Block Header นั้น ถูกคิดมาเป็นอย่างดีแล้วว่า "สำคัญ", "ประหยัดพื้นที่" และ "มีความรวดเร็วในการยืนยัน" ,, โดยเฉพาะส่วนของ Merkle Trees ซึ่งเป็นข้อมูล Hashing ของ Transaction ทั้งหมดในบล็อกนั้น (การใช้โครงสร้าง Merkle Trees นั้นจะช่วยให้การยืนยันข้อมูลธุรกรรมของ "Node" เป็นไปด้วยความรวดเร็ว และมีประสิทธิภาพมากที่สุด) . ดังนั้นจึงสรุปได้ว่า… ❗️ข้อมูลใน Block Chain มันสามารถ “เปลี่ยนแปลง” ได้ ✅ ‼️แต่ Block Chain ของระบบบิตคอยน์จะมีส่วนที่เรียกว่า Block Header Hash ซึ่งเปรียบเสมือน "ลายนิ้วมือ" ของข้อมูลในบล็อกก่อนหน้า ✅ เจ้าส่วนนี้แหละที่เป็นตัวทำให้การแก้ไขข้อมูลในบล็อกเป็นเรื่องที่ "เป็นไปไม่ได้" เพราะทันทีที่มีการแก้ไข.. ข้อมูลในบล็อกถัดมาก็จะ Invalid ทันที 🥷และหากใครที่อยากจะเปลี่ยนแปลงข้อมูลใด ๆ ในบล็อก.. ก็จำเป็นที่จะต้องสร้างบล็อกลำดับถัดไปด้วย "ตนเอง" และต้องทำด้วยอัตราเร่งที่เร็วกว่า 10 นาทีต่อบล็อก เพื่อให้ Block Chain ของคุณนั้น Valid และกลับมาอยู่ใน Bitcoin Network 🎉 . อ้อ.. ข้อมูลที่สามารถแก้ไขได้จะมีแค่ "ข้อมูลธุรกรรมของตัวคุณเอง" เท่านั้นนะ ,, คุณจะไปแก้ไขข้อมูลว่าเรามี 10,000 บิตคอยน์ “ไม่ได้”‼️ไม่ว่าจะโดยวิธีการใด ๆ ก็ตาม 😇 ป.ล.สินทรัพย์อื่น ๆ ทำได้มั้ยน๊าาาา 😎😘 #เวลามีค่าศึกษาบิตคอยน์ #Siamstr
2025-02-13 03:14:40 from 1 relay(s) 5 replies ↓
Login to reply

Replies (10)

ขอบคุณอาจารย์เอ็มมากครับช่วยขยายความได้ดีจากไลฟ์ใน EP แรก #Siamstr nostr:nevent1qqsqqq86pqtkzrx25fkqjsla3cewqjnxwcpv7fx0el3tgxp9wmsr3qsppemhxue69uhkummn9ekx7mp0qgsp40zqckd36g5rz39043r9ns7mhlq6rvn94w0vuu52pg2vdntqusgrqsqqqqqps2zsnx
2025-02-13 04:23:21 from 1 relay(s) ↑ Parent Reply
ง่าย ๆ มันก็คือการหาตำแหน่งพิกัด x,y ที่อยู่บนเส้นกราฟนี้ โดยเริ่มจากจุดเริ่มต้น G ซึ่งจะอยู่ตรงที่ตำแหน่ง x = 55066263022277343669578718895168534326250603453777594175500187360389116729240 y = 32670510020758816978083085130507043184471273380659243275938904335757337482424 image จากนั้นก็จะหาจุด x,y ที่เกิดจากการคูนด้วยตัวเลข Private Key (มันก็เด้งไปเด้งมาเหมือนในรูปตัวอย่างนี้แหละ แต่จำนวนที่มันเด้งไปเด้งมาก็ประมาณค่าของตัวเลข Private Key) เราก็จะได้ตำแหน่งของจุด x,y และนำมาคำนวนเป็น Public Key เพื่อทำเป็น Address ต่อ พอเข้าใจมะ ถ้ายังไม่เข้าใจลองอ่านบทความของครูเต้ครับวินหวี https://rightshift.to/2023/taetae2466/7207
2025-02-13 05:13:16 from 1 relay(s) ↑ Parent 1 replies ↓ Reply
เข้าใจว่าเป็นการเพิ่มความปลอดภัยครับ เช่น ถ้าในอนาคต SHA256 มีจุดอ่อนหรือช่องโหว่ การใช้ DoubleSHA256 ก็จะยังคงปลอดภัยอยู่ และการใช้ Double SHA256 เป็นการป้องกัน Length Extension Attack ที่อาจจะเกิดขึ้นได้ **Length Extension Attack เป็นการโจมตีที่อาศัยคุณสมบัติของฟังก์ชันแฮชที่ใช้โครงสร้าง Merkle–Damgård ซึ่งทำให้ผู้โจมตีสามารถ สร้างแฮชใหม่ที่ถูกต้องได้โดยไม่ต้องรู้ค่าเริ่มต้น https://crypto.stackexchange.com/questions/3978/understanding-the-length-extension-attack
2025-02-14 22:18:23 from 1 relay(s) ↑ Parent Reply