อย่ารอที่จะเริ่มการเดินทางของคุณ
บทความนี้เก็บกู้มาจากคลังอินเทอร์เน็ต (Internet Archive) หลังเว็บไซต์เดิมถูกปิดไป

Public Key กับ Private Key แตกต่างหรือเกี่ยวข้องกันอย่างไร

2022-09-19

KEY TAKEAWAYS


บนโลกคริปโตเคอร์เรนซี และ Web3 หนึ่งในสิ่งสำคัญที่ทุกคนต้องใช้คือกระเป๋าเงินดิจิทัล โดยกระเป๋าเงินดิจิทัลนี้จะเป็นสิ่งที่แสดงที่อยู่กระเป๋าเงินของเรา โดยที่อยู่กระเป๋าเงินของเรานั้นเรียกกันว่า Public Key ส่วนสิ่งที่ใช้ยืนยันตัวตน หรือเป็นกุญแจในการใช้งานกระเป๋าเงินใบนั้น เราเรียกว่า Private Key นั้นหมายความว่า ถ้าเกิดมีคนที่รู้ Private Key ของคุณ แสดงว่าเขาก็สามารถเข้าถึงสินทรัพย์ภายในกระเป๋าเงินของคุณได้เช่นกัน

TABLE OF CONTENTS
  1. Public Key คืออะไร
  2. Private Key คืออะไร
  3. เทคโนโลยีเบื้องหลัง Public-Private Key
  4. ความสัมพันธ์ระหว่าง Public Key กับ Private Key

แล้วรู้หรือเปล่าว่า Public Key และ Private Key นั้นมีต้นกำเนิดมาจากเทคโนโลยีเดียวกัน แล้วทั้งสองอย่างเกี่ยวข้องกันยังไง ในบทความนี้เราจะพาไปดูกัน

Private Key vs Public Key
ความแตกต่างระหว่าง Private Key กับ Public Key

Public Key คืออะไร

กุญแจสาธารณะ (Public Key) คือ ชุดรวมของตัวเลขและตัวอักษรที่ใช้สำหรับรับหรือส่งข้อมูลธุรกรรมบนโลกคริปโตเคอร์เรนซี โดย Public Key แต่ละชุดไม่ได้มีความจำเป็นที่จะต้องถูกเก็บเป็นความลับ ผู้ใช้งานทุกคนบนโลกบล็อกเชนสามารถที่จะเห็นหรือรู้ Public Key ของใครก็ได้ แต่การที่จะใช้งาน Public Key ได้นั้นจำเป็นที่จะต้องมีกุญแจส่วนตัว (Private Key) ที่เป็นคู่กันด้วย

ตัวอย่าง Public Key บนกระเป๋า Metamask
ภาพตัวอย่างของ Public Key ที่แสดงบนกระเป๋า Metamask

Private Key คืออะไร

กุญแจส่วนตัว (Private Key) คือชุดตัวอักษรหรือตัวเลขจำนวนมากที่ถูกสร้างขึ้นมาเพื่อใช้ในการลงนามในธุรกรรมที่เราจะทำ นอกจากนี้ Public Key ยังถูกสร้างขึ้นมาโดยอิงจาก Private Key โดยใช้อัลกอริทึมลายเซ็นดิจิทัลที่เรียกว่า Elliptic Curve (Elliptic Curve Digital Signature Algorithm : ECDSA) โดย Private Key นั้นมีได้หลายหลายรูปแบบ ไม่ว่าจะเป็นชุดรหัสแบบไบนารียาว 256 ตัวอักษร, เลขฐานสิบหกจำนวน 64 หลัก, คิวอาร์โค้ด (QR Code) หรือ วลีช่วยจำ (Mnemonic Phrase)

ตัวอย่าง Private Key บนกระเป๋า Metamask
ภาพตัวอย่างของ Private Key ที่แสดงบนกระเป๋า Metamask

เราจำเป็นที่จะต้องมี Private Key เพื่อใช้ในการยืนยันความเป็นเจ้าของ Public Key และเป็นสิ่งสำคัญอย่างที่ Private Key จะต้องไปไม่ถูกนำไปแบ่งปันกับใคร เพื่อความปลอดภัยของกระเป๋าเงินของเรา

ตัวอย่างวลีช่วยจำบนกระเป๋า Metamask
ภาพตัวอย่างของ Mnemonic Phrase ที่แสดงบนกระเป๋า Metamask

เทคโนโลยีเบื้องหลัง Public-Private Key

Public-Private Key Cryptography (PKC) เป็นเทคโนโลยีที่มักจะใช้ในการตรวจสอบความถูกต้องของข้อมูลด้วยวิธีการเข้ารหัสแบบอสมมาตร (Asymmetic Encryption) โดยในตอนแรกนั้น PKC ถูกใช้งานครั้งแรกในการเข้ารหัสและถอดรหัสข้อความในการคำนวณแบบเดิม

ต่อมาในยุคของคริปโตเคอร์เรนซี ก็ได้ใช้เทคโนโลยีนี้ในการเข้ารหัสและถอดรหัสธุรกรรม ซึ่งหากไม่มี PKC เป็นเทคโนโลยีเบื้องหลังนั้น การใช้งานสกุลเงินดิจิทัลและคริปโตเคอร์เรนซีก็แทบจะเป็นไปไม่ได้เลย

ส่วนสำคัญของระบบ PKC นั้นก็คือฟังก์ชั่นประตูกล (Trapdoor Function) ซึ่งเป็นฟังก์ชั่นคณิตศาสตร์ที่สามารถแก้ไขแบบทางเดียวได้อย่างง่ายดาย (One-way Solve) แต่ซึ่งเป็นไปไม่ได้เลยที่จะมีการแก้ไขแบบย้อนกลับ แต่คุณก็อาจจะแก้ไขมันได้นะ ถ้าคุณมีซุปเปอร์คอมพิวเตอร์ และมีเวลาสักพันปี

ความสัมพันธ์ระหว่าง Public Key กับ Private Key

Private Key นั้นมีไว้ใช้งานคู่กับ Public Key โดยในการที่เราจะทำธุรกรรมใดๆ นั้น เราจะเป็นที่จะต้องใช้ Private Key ที่เข้าคู่กับ Public Key เพื่อทำการยืนยันต่อบล็อกเชนว่าเราเป็นเจ้าของสินทรัพย์หรือเป็นเจ้าของกระเป๋าเงินนี้จริงๆ

ลองคิดถึงการใช้งานอีเมล์ ทุกคนสามารถส่งอีเมล์ให้กับใครก็ได้ ขอเพียงแค่มีที่อยู่อีเมล์ (Public Key) ของคนๆ นั้น แต่การที่จะเข้าไปอ่านอีเมล์ที่ถูกส่งเข้ามาในกล่องจดหมาย คนๆ นั้นจำเป็นที่จะต้องมีรหัสผ่าน (Private Key) เพื่อแสดงความเป็นเข้าของ และทำการเข้าถึงกล่องจดหมายดังกล่าว

เมื่อมาอยู่บนโลกบล็อกเชน Public Key ก็คือที่อยู่กระเป๋าเงิน อย่างเช่น ที่อยู่กระเป๋าเงินของเราบนบล็อคเชน Ethereum ก็จะขึ้นต้นด้วย 0x และมีความยาว 40 ตัวอักษร และ Private Key ก็จะเป็นแบบ Mnemonic Phrase ที่เราต้องทำการจดไว้เมื่อตอนที่เราเริ่มสร้างกระเป๋าขึ้นมา

จะเห็นได้ว่าทั้ง Public Key และ Private Key มาจากเทคโนโลยีเดียวกัน มีความเกี่ยวข้องกัน แต่ว่าทำหน้าที่กันคนละส่วน สามารถสรุปอย่างง่ายได้ว่า Public Key คือที่อยู่กระเป๋าเงิน ส่วน Private Key คือกุญแจสำหรับเข้าใช้กระเป๋าเงิน ทั้งสองสิ่งนี้ทำงานร่วมกันบนโลกบล็อกเชนนั้นเอง

สิ่งสำคัญที่สุดที่ควรจำเอาไว้ให้ขึ้นใจก็คือ ห้ามแบ่งปัน Private Key ให้กับใครก็ตาม มิเช่นนั้นกระเป๋าเงินของคุณ อาจจะตกอยู่ในอันตราย

References : Gemini(1), Gemini(2), Messari(1), Messari(2)


Credits
Content Creator : สิรภพ วรมิศร์
Graphic Designer : ศุภัชฌา ใช้สติ
Admin : ณิชากร วิทยาวิวัฒน์สกุล
Editor : ประเสริฐ หงษ์สุวรรณ