Digital Signature(ลายเซ็นดิจิทัล) คืออะไร?
Digital Signature(ลายเซ็นดิจิทัล) คือสิ่งที่คุณสามารถใช้เพื่อที่จะแสดงให้เห็นว่าคุณรู้ว่า Private Key เชื่อมต่อกับ Public key โดยที่ไม่ต้องเปิดเผย Private Key จริงๆ
เพราะฉะนั้นหากมีใครถามว่าคุณมี Private key สำหรับ Public Key เฉพาะ คุณสามารถมอบลายเซ็นดิจิทัล (Digital Signature) ให้พวกเขาตรวจสอบได้
ทำไมเราต้องใช้ลายเซ็นดิจิทัล (Digital Signature) ใน Bitcoin?
เพราะว่าเมื่อคุณสร้างรายการธุรกรรม คุณต้องปลดล็อก Output ที่คุณพยายามที่จะใช้ การกระทำนี้สำเร็จโดยการแสดงข้อมูล Output “ของตัวคุณเอง” และคุณจะสามารถทำได้โดยการแสดงให้เห็นว่าคุณรู้ข้อมูล Private key ของที่อยู่ที่ข้อมูล Output ถูกล็อกเอาไว้
แต่คุณสามารถเอา Private Key ของคุณวางไว้ใน Transaction data ได้ เพื่อให้ทุกคนในเครือข่ายสามารถเห็นมัน
และหากมีใครได้ Private Key ของคุณไป พวกเขาสามารถใช้มันในการปลดล็อกและใช้ข้อมูล Output อื่นๆ ที่ถูกล็อกไว้ในที่อยู่เดียวกันได้
เพราะฉะนั้นเราจะปลดล็อกข้อมูล Output โดยไม่ต้องมอบ Private Key ของเราให้กับคนอื่นล่ะ?
กรอกลายเซ็นดิจิทัล (Digital Signature) ของเราเข้าไป
ลายเซ็นดิจิทัล (Digital Signature) สามารถใช้ในการปลดล็อกข้อมูล Output เพราะว่ามันแสดงให้เห็นว่าเรารู้ข้อมูล Private Key ของ address นี้
แต่สิ่งที่ดีที่สุดก็คือ การใช้ลายเซ็นดิจิทัล (Digital Signature) หมายความว่าเราจะไม่มอบ Private Key ของเราให้กับใครทั้งสิ้นบนเครือข่าย
นี้คือสาเหตุว่าทำไมเราถึงใช้ลายเซ็นดิจิทัล (Digital Signature) แทนที่จะใส่ Private Key ของเราเข้าไปในข้อมูลรายการธุรกรรมโดยตรง
ทำไมคนอื่นไม่ใช้ ลายเซ็นดิจิทัล (Digital Signature) เพื่อที่จะปลดล็อกข้อมูล Output อื่นๆ ใน address ของเรา?
เป็นคำถามที่ดีมาก หาก Private Key จะปลดล็อกข้อมูล Output ใดๆ ของที่อยู่ ทำไมคนอื่นไม่อาจจะเอาข้อมูลลายเซ็นดิจิทัล (Digital Signature) ไปใช้เหมือนกันได้ล่ะ?
คำตอบก็คือ ลายเซ็นดิจิทัล (Digital Signature) ทุกๆ ลายเซ็นไม่อาจจะลอกเลียนแบบได้และใช้ได้สำหรับรายการธุรกรรมนั้นๆ เท่านั้น
หมายความว่า ไม่ใช่แค่คุณสามารถใช้ Private Key ของคุณในการสร้างลายเซ็นดิจิทัล (Digital Signature) คุณจะต้องใช้ทั้ง Private Key และรายการทำธุรกรรมนั้นๆ ด้วย
หลังจากนั้น ลายเซ็นดิจิทัล (Digital Signature) แต่ละลายเซ็นถูกผูกไว้กับรายการธุรกรรมที่ถูกใช้ด้วยกัน
หากมีใครสักคนพยายามที่จะใช้ลายเซ็นดิจิทัล (Digital Signature) ในรายการธุรกรรมอื่นๆ ก็จะเกิดความขัดแย้งกันในข้อมูลรายการธุรกรรมที่อยู่ในลายเซ็นดิจิทัล (Digital Signature) และ Node บนเครือข่าย Bitcoin จะไม่ยอมรับมัน
ลายเซ็นดิจิทัล (Digital Signature) ทำงานอย่างไร?
เป็นหลักการทางคณิตศาสตร์นะหนุ่มน้อย
- คุณรวม Private Key + Transaction Data และใช้การคำนวณทางคณิตศาสตร์เพื่อที่จะสร้างลายเซ็นดิจิทัล (Digital Signature)
- จากนั้นคุณจะสามารถใช้ Digital Signature + Transaction data + Public key เพื่อที่จะคำนวณทางคณิตศาสตร์กับพวกมันและจากนั้นผลลัพธ์จะยืนยันว่า Private Key นั้นถูกต้องเหมาะสมที่จะใช้ในการสร้างลายเซ็นดิจิทัล (Digital Signature) หรือไม่
โปรดจำเอาไว้ว่าเพราะว่าเป้าหมายของการสร้างลายเซ็นดิจิทัล (Digital Signature) ก็คือการพิสูจน์ว่าคุณเป็นเจ้าของ Public Key จริงๆ ใน Bitcoin