Replying to Avatar Gracialo679

อธิบาย Automatic difficulty adjustment algorithm ด้วย code

คือ code มันเป็นแบบนี้นะพวก

Target adjustment limit

Set targetTimeSpan = expected time taken to mine a block (s) × difficulty readjustment interval

Set totalInterval = actual time taken to mine N blocks

iftotalInterval < targetTimeSpan then

totalInterval = targetTimeSpan / 4

end if

iftotalInterval > targetTimeSpan then

totalInterval = targetTimeSpan × 4

end if

Target adjustment limit คือกลไกในที่ช่วยให้มั่นใจได้ว่าบล็อกใหม่จะถูกขุดทุกๆ 10 นาที สิ่งนี้สำคัญเพราะช่วยรักษาเครือข่าย Bitcoin ให้เสถียรและปลอดภัย

Target adjustment limit ทำงานโดยเปรียบเทียบเวลาที่ใช้ในการขุด block จริงกับเวลาคาดการณ์

หากเวลาจริงน้อยกว่าเวลาคาดการณ์ ระดับความยากในการขุดจะลดลง ทำให้ง่ายต่อการขุด block ซึ่งจะช่วยเร่งความเร็วของเครือข่าย

ในทางกลับกัน หากเวลาจริงมากกว่าเวลาคาดการณ์ ระดับความยากในการขุดจะเพิ่มขึ้น ทำให้ยากต่อการขุด block ซึ่งจะช่วยชะลอความเร็วของเครือข่าย

Target adjustment limit ถูกตั้งค่าไว้ที่สูงสุด 4 เท่าของเวลาคาดการณ์ และต่ำสุด 1/4 ของเวลาคาดการณ์

สิ่งนี้ช่วยให้มั่นใจได้ว่าระดับความยากในการขุดจะไม่เปลี่ยนแปลงมากเกินไป จนทำให้เครือข่ายไม่เสถียร

กล่าวอีกนัยหนึ่ง Target adjustment limit ช่วยรักษาเครือข่าย Bitcoin ทำงานได้อย่างราบรื่น โดยมั่นใจได้ว่า block ใหม่จะถูกขุดด้วยอัตราที่สม่ำเสมอ

อธิบายให้เข้าใจง่ายขึ้นอีกหน่อย สมมติว่าเวลาคาดการณ์ในการขุด block คือ 10 นาที

หากใช้เวลาจริงในการขุด block น้อยกว่า 10 นาที ตัวอย่างเช่น 9 นาที ระดับความยากในการขุดก็จะลดลง ทำให้ block ใหม่ถูกขุดเร็วขึ้น

ในทางกลับกัน หากใช้เวลาจริงในการขุด block มากกว่า 10 นาที ตัวอย่างเช่น 11 นาที ระดับความยากในการขุดก็จะเพิ่มขึ้น ทำให้ block ใหม่ถูกขุดช้าลง

#thainostrich #siamstr

งงตรง ถ้าเวลาคาดการณ์คือ 10 นาที

แต่เวลาจริง น้อยกว่า เวลาคาดการณ์

ไม่ได้หมายความว่า ณ ตอนนั้นมันขุดง่าย ต้องมีการปรับการขุดให้ยากขึ้น เพื่อให้เวลาที่ใช้เพิ่มขึ้นขยับเข้าใกล้เป้าหมายหรอคะ

ทำไมเมื่อใช้เวลาน้อยกว่าเวลาคาดการณ์แล้วปรับความยากในการขุดให้ง่ายขึ้นอีก

Reply to this note

Please Login to reply.

Discussion

ถูกต้องตามนั้นเลย มันกลับด้านกัน ไม่ได้ดูให้ดี

อ่อ ขอบคุณค่ะ งงอยู่พักนึง

ว่าเอ๊ะ นี่เราเข้าใจสมการผิดมาตลอดหรอ 😂

ตั้งใจจะอธิบาย ส่วนของ Interval เลยไม่ได้ใส่ใจส่วนนั้นเลย

ขอโทษด้วย