2 ยกกำลัง 256 ใหญ่แค่ไหน?

เนื่องมาจากวันก่อนผม orange pilled เพื่อนสำเร็จ 555 กำลังสั่งซื้อ HWW ผมเตรียมจะอธิบายเรื่อง seed กับเลข 2^256 เลยเอามาเขียนลงไว้ด้วยดีกว่า

2^256 คืออะไร?

ไม่มีอะไรมาก แค่เอา 2 คูณกัน 256 ครั้งเท่านั้นเอง ซึ่งได้เท่ากับ
115792089237316195423570985008687907853269984665640564039457584007913129639936
ก็แค่นั้นเอง

ถ้าจะอ่านเป็นภาษาไทยก็ 1.16 แสนล้านล้านล้านล้านล้านล้านล้านล้านล้านล้านล้านล้าน เอง

ถ้าเทียบกับปริมาณอื่น ๆ ที่คนอาจจะคุ้นเคย

โอกาสถูกล็อตเตอรี่รางวัลที่ 1 เท่ากับ 1 ในล้าน --> 2^20

จำนวนคนไทย 70 ล้านคน --> 2^26

จำนวนคนทั้งโลก 8000 ล้านคน --> 2^33

จำนวนแมลงทั้งหมดบนโลกประมาณ 1 ล้านล้านล้านตัว --> 2^60

จำนวนเม็ดทรายบนโลกประมาณ 7.5 x 10^18 เม็ด --> 2^63

จำนวนอะตอมบนโลกประมาณ 1.33 x 10^50 อะตอม --> 2^166

จำนวนอะตอมทั้งหมดในจักรวาลเท่าที่เราสังเกตได้ โดยประมาณ 10^80 อะตอม --> 2^266

เรียกได้ว่า 2^256 ใหญ่เกือบจะเทียบเท่าอะตอมทั้งหมดที่เราจะสังเกตได้แล้ว เอาแค่ระดับอะตอมบนโลกจะมีกี่คนที่เลือกหยิบอะตอมเดียวกับเราได้

แล้วทำไมตัวเลขนี้ถึงสำคัญ

เมื่อเราสร้าง Hierarchical Deterministic (HD) wallet เราจะสุ่มสร้าง seed ซึ่งเป็นรหัสที่เป็นเลข 0 หรือ 1 ทั้งหมด 256 ตัว ซึ่งทำให้มีรูปแบบที่แตกต่างกัน 2^256 แบบ และสามารถเปลี่ยนไปเป็น Mnemonic Phrase 24 คำให้เราจำได้ง่าย ๆ (หรือ 2^128 แบบสำหรับ 12 คำ)

เท่ากับว่าถ้ามีใครซักคนพยายามจะเดา seed เราแบบไม่มีข้อมูลอะไรเลย โอกาสถูกเท่ากับ 1 ใน 1.16 แสนล้านล้านล้านล้านล้านล้านล้านล้านล้านล้านล้านล้าน

ต่อใน reply ⬇️

Reply to this note

Please Login to reply.

Discussion

แล้วถ้าคอมทุกเครื่องบนโลกหันมาสุ่มเพื่อหา seed เราล่ะ เค้าจะมีโอกาสเจอกันมั้ย มี youtube ช่อง 3Blue1Brown เคยทำอธิบายเลข 2^256 ไว้ประมาณนี้ครับ https://youtu.be/S9JGmA5_unY?si=TEQwcSim6LtRvhlM

เริ่มจาก 2^256 มันจะเท่ากับ 2^32 x 2^32 x 2^32 x 2^32 x 2^32 x 2^32 x 2^32 x 2^32

ซึ่ง 2^32 มันจะประมาณ 4 พันล้าน ก็คือ 4 พันล้านคูณกัน 8 ครั้ง

1. สมมติว่า GPU สามารถเดาได้ 4 พันล้านครั้งต่อวินาที

2. สมมติว่ามี server อยู่ 4 พันล้านเครื่อง ที่แรงเท่าข้อ 1

3. สมมติว่ามีคน 4 พันล้านคนบนโลกที่มี เครื่องจำนวนตามข้อ 2

4. สมมติว่ามีดาวอีก 4 พันล้านดวงในจักรวาล ที่มีคนแบบข้อ 3 อยู่

5. สมมติว่ามีอีก 4 พันล้านจักรวาล ที่มีดาวแบบข้อ 4

เท่ากับว่าจะมีการเดา 2^160 ครั้งต่อวินาที

6. ให้ทุกคนที่ว่ามามีอีก 4 พันล้านวินาที (126.8 ปี)

7. ให้เพิ่ม 126.8 ปีไปอีก 4 พันล้านรอบ (507 พันล้านปี นานกว่าอายุของจักรวาล 37 เท่า)

ก็ยังเหลือโอกาสถูก 1 ใน 4 พันล้านอยู่ดี

ทุกวันนี้ Hashrate ของ bitcoin อยู่ที่สูงสุด 465 EH/s (465 พันล้าน พันล้าน) เอาแทนข้อ 1.-2. ก็ยังเหลือ ๆ แถมข้อ 3.-5. เรา over estimate ไปเยอะมาก ๆ และจริง ๆ แล้วแค่ 2^128 หรือ Mnemonic Phrase 12 คำก็เยอะมากพอแล้ว

สุดท้ายความใหญ่ของเลขอาจจะไม่สำคัญ ถ้าตัวเลขที่เราสร้างไม่สุ่มจริง โอกาสในการเดาถูกอาจจะลดฮวบ ๆ เลยก็ได้ครับ…