Replying to Avatar Gracialo679

Automatic difficulty adjustment algorithm แบบย่อ

คือเรื่องมันเป้นอย่างนี้นะพวก

ถ้าจะมีอะไรใน Bitcoin ที่ผมคิดว่างดงามที่สุด ผมก็ขอยกให้กับ Automatic difficulty adjustment algorithm

Automatic difficulty adjustment algorithm ใน Bitcoin เป็นส่วนสำคัญของกลไกการทำงานของ Bitcoin Network\t\t\t\nหน้าที่หลักของ difficulty adjustment algorithm คือการปรับความยากในการคำนวณการหาค่า target เพื่อปิด block

เพื่อให้ความถี่ในการปิดblockอยู่ในระดับที่เหมาะสมตามปริมาณกำลังขุด (hashing power) ของเครือข่ายในแต่ละช่วงเวลา\t\t\t\nโดยจะทำการปรับความยากในทุกๆ 2016 block (ประมาณ 2 สัปดาห์)

Automatic difficulty adjustment algorithm ใช้เพื่อให้เกิดบล็อกใหม่ในเครือข่ายโดยประมาณทุกๆ 10 นาที ไม่ว่าจะมีผู้ขุดเพิ่มขึ้นหรือลดลงมากน้อยเพียงใดก็ตาม

หากมีการปิด block เร็วเกินไป (ต่ำกว่า 10 นาทีต่อblock) ความยากในการหาค่า target จะถูกปรับขึ้น เพื่อลดความถี่ในการปิด block

และในทางกลับกันหากมีการปิดblockช้าเกินไป (มากกว่า 10 นาทีต่อblock) ความยากในการหาค่า target จะถูกปรับลดลง เพื่อเพิ่มความถี่ในการปิด block

Algorithm ที่ใช้ในการปรับความยากในการคำนวณนี้มีขั้นตอนดังนี้

1.การคำนวณค่า target ปัจจุบัน: ในทุกๆ 2016 Block(หรือประมาณ2สัปดาห์) ค่า target ปัจจุบันจะถูกคำนวณโดยใช้ค่า target ก่อนหน้านี้และเวลาที่ใช้ในการปิด block ตามกฎการทำงานของ network

2.การคำนวณค่า target ใหม่: ค่า target ใหม่จะถูกคำนวณโดยใช้ค่า target ปัจจุบัน และเวลาที่ใช้ในการปิดblockในช่วงเวลานั้นๆ ซึ่งจะประมวลผลความยากในการคำนวณให้สอดคล้องกับปริมาณการขุดในช่วงเวลาก่อนหน้า

3.การปรับความยากในการคำนวณ: ค่า target ใหม่ที่คำนวณได้จากขั้นตอนที่ 2 นี้จะถูกนำไปใช้ในblockใหม่ที่ขุดต่อมา ทำให้ความยากในการคำนวณblockต่อไปเพิ่มขึ้นหรือลดลง ขึ้นอยู่กับปริมาณการขุดของnetworkในช่วงเวลาที่ผ่านมา

ค่า target เป็นค่าที่กำหนดให้อยู่ใน Block header และใช้เพื่อตรวจสอบความยากในการคำนวณของ Block นั้นๆ

ค่า target ที่เหมาะสม จะกำหนดให้blockที่ถูกขุดมีค่า hash น้อยกว่าหรือเท่ากับค่า target เท่านั้น

ในกรณีที่ค่า hash ของblockมีค่าน้อยกว่าค่า target จะถือว่าการคำนวณสำเร็จ และblockนั้นจะถูกยอมรับโดย network

difficulty adjustment algorithm นี้เป็นส่วนหนึ่งที่ช่วยให้ Network ของ Bitcoin ทำงานอย่างมีความเสถียร

ค่า target เป็นองค์ประกอบหนึ่งที่ช่วยให้เกิดการขุดblockใหม่ในปริมาณและเวลาที่เหมาะสม ทำให้blockถูกขุดใหม่ทุกๆ 10 นาทีเหมือนที่ระบบได้กำหนดไว้

ไม่ว่าจะมี miner เข้ามาร่วมหรือออกจากระบบไปมากน้อยแค่ไหน

#thainostrich #siamstr

ติดตามผลงานนะครับ

Reply to this note

Please Login to reply.

Discussion

No replies yet.