วิธีใช้งาน PGP

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

บทเรียน PGP นี้จะพาคุณผ่านทุกขั้นตอน ตั้งแต่การสร้างคู่คีย์แรกไปจนถึงการส่งและรับข้อความที่เข้ารหัส หากคุณเป็นมือใหม่ในเรื่องการเข้ารหัสแบบกุญแจสาธารณะ ลองอ่านPGP คืออะไร?หรือPGP สำหรับผู้เริ่มต้นก่อน


สิ่งที่คุณต้องมีก่อนเริ่มต้น

ก่อนที่จะเข้ารหัสข้อความแรกด้วย PGP คุณต้องมีแอปพลิเคชัน PGP:

  • เว็บแอป KeychainPGP — เปิดเครื่องมือ PGP ออนไลน์ในเบราว์เซอร์สมัยใหม่ ทุกอย่างทำงานในเครื่องผ่าน WebAssembly ที่คอมไพล์จาก Rust ไม่ต้องติดตั้ง ไม่ต้องสมัครสมาชิก ไม่มีข้อมูลถูกส่งไปยังเซิร์ฟเวอร์
  • แอปเดสก์ท็อป KeychainPGP — ดาวน์โหลดแอปเนทีฟสำหรับ Windows, macOS, Linux หรือ Android จากหน้า releases ของ GitHub แอปเดสก์ท็อปเพิ่มปุ่มลัดทั่วระบบ System Tray การล้างคลิปบอร์ดอัตโนมัติ และซิงค์ผ่าน QR code
  • CLI KeychainPGP — CLI keychainpgp มีคำสั่งสำหรับสร้างคีย์ เข้ารหัส ถอดรหัส ลงลายเซ็น ตรวจสอบ และจัดการพวงกุญแจ เหมาะสำหรับสคริปต์และระบบอัตโนมัติ
  • GnuPG (GPG) — เครื่องมือบรรทัดคำสั่งแบบดั้งเดิม มีพลังแต่ต้องคุ้นเคยกับเทอร์มินัล ดูPGP เทียบกับ GPGสำหรับการเปรียบเทียบโดยละเอียด

เคล็ดลับ: หากคุณแค่อยากลองการเข้ารหัส PGP ตอนนี้โดยไม่ต้องติดตั้งอะไร ให้เปิดเครื่องมือ PGP ออนไลน์แล้วทำตามบทเรียนนี้


ขั้นตอนที่ 1: สร้างคู่คีย์ PGP

คู่คีย์ PGP ประกอบด้วยคีย์สองตัวที่เชื่อมโยงกันทางคณิตศาสตร์:

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

สร้างคีย์ใน KeychainPGP

  1. เปิด KeychainPGP (เว็บแอปหรือแอปเดสก์ท็อป)
  2. ไปที่แท็บคีย์
  3. คลิกสร้างคีย์ใหม่
  4. ป้อนชื่อและอีเมลของคุณ
  5. คลิกสร้าง KeychainPGP จะสร้างคู่คีย์ Ed25519 + X25519 — อัลกอริทึมที่ทันสมัยและปลอดภัยที่สุดที่มีใน OpenPGP

สร้างคีย์ด้วย GPG (บรรทัดคำสั่ง)

gpg --full-generate-key

เลือกประเภทคีย์ (RSA หรือ ECC) ขนาด และระยะเวลาหมดอายุ สำหรับความปลอดภัยสมัยใหม่ เลือก Ed25519 หาก GPG เวอร์ชันของคุณรองรับ


ขั้นตอนที่ 2: แชร์กุญแจสาธารณะของคุณ

กุญแจสาธารณะของคุณเป็นบล็อกข้อความในรูปแบบ ASCII-armored คุณสามารถแชร์ได้ทุกที่:

  • อีเมล — วางในเนื้อหาอีเมลหรือแนบเป็นไฟล์ .asc
  • แอปส่งข้อความ — ส่งผ่าน Signal, WhatsApp, Matrix หรือแพลตฟอร์มแชทใดก็ได้
  • เว็บไซต์ของคุณ — เผยแพร่บนเว็บไซต์ส่วนตัว โปรไฟล์ GitHub หรือประวัติ Twitter
  • เซิร์ฟเวอร์คีย์ — อัปโหลดไปยังเซิร์ฟเวอร์คีย์สาธารณะเช่น keys.openpgp.org

สำคัญ: แชร์เฉพาะกุญแจสาธารณะของคุณ อย่าแชร์กุญแจส่วนตัวกับใครเด็ดขาด ไม่ว่ากรณีใด


ขั้นตอนที่ 3: นำเข้ากุญแจสาธารณะของผู้ติดต่อ

ก่อนที่จะส่งข้อความที่เข้ารหัสถึงใครสักคน คุณต้องมีกุญแจสาธารณะของเขา ขอให้ผู้ติดต่อส่งกุญแจสาธารณะแบบ ASCII-armored ของเขามาให้ หรือค้นหาบนเซิร์ฟเวอร์คีย์

นำเข้าคีย์ใน KeychainPGP

  1. คัดลอกบล็อกกุญแจสาธารณะของผู้ติดต่อไปยังคลิปบอร์ด
  2. เปิด KeychainPGP แล้วไปที่แท็บคีย์
  3. คลิกนำเข้าคีย์แล้ววางคีย์
  4. ผู้ติดต่อจะปรากฏในรายการคีย์พร้อมชื่อและอีเมล

ขั้นตอนที่ 4: เข้ารหัสข้อความ

เข้ารหัสใน KeychainPGP (เว็บหรือเดสก์ท็อป)

  1. ไปที่แท็บเข้ารหัส
  2. พิมพ์หรือวางข้อความที่คุณต้องการเข้ารหัส
  3. เลือกผู้รับจากรายการคีย์ของคุณ
  4. คลิกเข้ารหัสไปยังคลิปบอร์ด ข้อความที่เข้ารหัสจะถูกคัดลอกไปยังคลิปบอร์ด
  5. วางข้อความที่เข้ารหัสในอีเมล แชท หรือช่องทางการสื่อสารอื่น

เข้ารหัสด้วยปุ่มลัดเดสก์ท็อป

ด้วยแอปเดสก์ท็อป KeychainPGP กระบวนการจะเร็วยิ่งขึ้นด้วยเวิร์กโฟลว์คลิปบอร์ด:

  1. พิมพ์ข้อความในแอปพลิเคชันใดก็ได้
  2. เลือกและคัดลอกข้อความ (Ctrl+C)
  3. กด Ctrl+Shift+E — KeychainPGP เข้ารหัสเนื้อหาในคลิปบอร์ด
  4. วางข้อความที่เข้ารหัส (Ctrl+V)

ขั้นตอนที่ 5: ถอดรหัสข้อความ

ถอดรหัสใน KeychainPGP (เว็บหรือเดสก์ท็อป)

  1. คัดลอกบล็อกข้อความที่เข้ารหัสทั้งหมด
  2. ไปที่แท็บถอดรหัสของ KeychainPGP
  3. วางข้อความที่เข้ารหัส
  4. คลิกถอดรหัส ข้อความต้นฉบับจะปรากฏทันที

ถอดรหัสด้วยปุ่มลัดเดสก์ท็อป

  1. เลือกและคัดลอกบล็อกข้อความที่เข้ารหัส (Ctrl+C)
  2. กด Ctrl+Shift+D — KeychainPGP ถอดรหัสเนื้อหาในคลิปบอร์ด
  3. ข้อความต้นฉบับจะแทนที่ข้อความที่เข้ารหัสในคลิปบอร์ด วางได้ที่ไหนก็ตามที่คุณต้องการ

แอปเดสก์ท็อปยังมีการล้างคลิปบอร์ดอัตโนมัติ: หลัง 30 วินาที ข้อความที่ถอดรหัสจะถูกลบออกจากคลิปบอร์ดโดยอัตโนมัติ


ขั้นตอนที่ 6: ลงลายเซ็นข้อความ

ลายเซ็นดิจิทัล PGP พิสูจน์สองสิ่ง:

  1. ความถูกต้อง — ข้อความถูกเขียนโดยเจ้าของคีย์ลงลายเซ็น
  2. ความสมบูรณ์ — ข้อความไม่ได้ถูกแก้ไขตั้งแต่ลงลายเซ็น

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

เมื่อไหร่ควรลงลายเซ็นข้อความ

  • ประกาศเวอร์ชันซอฟต์แวร์หรือแจ้งเตือนความปลอดภัย
  • ยืนยันตัวตนบนฟอรัมสาธารณะ
  • ลงลายเซ็นอีเมลเพื่อพิสูจน์แหล่งที่มา
  • ลงลายเซ็น Git commits เพื่อความสมบูรณ์ของโค้ด

ขั้นตอนที่ 7: ตรวจสอบลายเซ็น

เมื่อคุณได้รับข้อความที่ลงลายเซ็น คุณสามารถตรวจสอบว่าเป็นของแท้และไม่ได้ถูกแก้ไข

การตรวจสอบใน KeychainPGP

  1. คัดลอกข้อความที่ลงลายเซ็นทั้งหมด (รวมบล็อกลายเซ็น)
  2. ไปที่แท็บตรวจสอบ
  3. วางข้อความที่ลงลายเซ็น
  4. คลิกตรวจสอบ KeychainPGP จะยืนยันว่าลายเซ็นถูกต้องหรือไม่

เวิร์กโฟลว์คลิปบอร์ด KeychainPGP

สิ่งที่ทำให้ KeychainPGP แตกต่างจากเครื่องมือ PGP แบบดั้งเดิมคือเวิร์กโฟลว์การเข้ารหัสผ่านคลิปบอร์ด แทนที่จะทำงานกับไฟล์หรือต้องการไคลเอนต์อีเมลเฉพาะ KeychainPGP ทำงานกับทุกแอปผ่านคลิปบอร์ดระบบ

การดำเนินการเว็บแอปแอปเดสก์ท็อป
เข้ารหัสวางข้อความ คลิกเข้ารหัสคัดลอกข้อความ กด Ctrl+Shift+E
ถอดรหัสวางข้อความเข้ารหัส คลิกถอดรหัสคัดลอกข้อความเข้ารหัส กด Ctrl+Shift+D
ลงลายเซ็นวางข้อความ คลิกลงลายเซ็นมีให้ใช้ในหน้าต่างแอป
ตรวจสอบวางข้อความที่ลงลายเซ็น คลิกตรวจสอบมีให้ใช้ในหน้าต่างแอป

ฟีเจอร์ความปลอดภัยเพิ่มเติมของแอปเดสก์ท็อป:

  • การล้างคลิปบอร์ดอัตโนมัติ — ข้อความที่ถอดรหัสจะถูกลบออกจากคลิปบอร์ดหลัง 30 วินาที
  • โหมด OPSEC — ชื่อหน้าต่างถูกปลอม คีย์เก็บใน RAM เท่านั้น และปุ่มลบฉุกเฉิน
  • ที่เก็บข้อมูลประจำตัว OS — กุญแจส่วนตัวถูกจัดเก็บอย่างปลอดภัยผ่าน Windows Credential Manager, macOS Keychain หรือ Linux Secret Service

เว็บแอป vs แอปเดสก์ท็อป

เว็บแอป (เครื่องมือ PGP ออนไลน์):

  • ทำงานทั้งหมดในเบราว์เซอร์ผ่าน WebAssembly
  • ไม่ต้องติดตั้ง ไม่ต้องสมัครสมาชิก
  • เหมาะสำหรับการเข้ารหัสอย่างรวดเร็ว
  • คีย์ถูกจัดเก็บใน Local Storage ของเบราว์เซอร์

แอปเดสก์ท็อป (Windows, macOS, Linux, Android):

  • ปุ่มลัดทั่วระบบสำหรับเข้ารหัสและถอดรหัส
  • System Tray
  • การล้างคลิปบอร์ดอัตโนมัติ
  • โหมด OPSEC พร้อมคีย์ใน RAM เท่านั้นและการลบฉุกเฉิน
  • จัดเก็บคีย์อย่างปลอดภัยผ่านตัวจัดการข้อมูลประจำตัวของ OS
  • เหมาะสำหรับการใช้งานประจำวันและการจัดการคีย์ระยะยาว

ทั้งสองแอปฟรี โอเพนซอร์ส (MIT / Apache-2.0) และไม่มีการเก็บข้อมูลการใช้งาน


คำถามที่พบบ่อย

ควรแชร์กุญแจส่วนตัวหรือไม่?

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

จะเกิดอะไรขึ้นถ้าทำกุญแจส่วนตัวหาย?

หากคุณทำกุญแจส่วนตัวหาย คุณจะสูญเสียความสามารถในการถอดรหัสข้อความทั้งหมดที่เข้ารหัสด้วยกุญแจสาธารณะที่สอดคล้องกันอย่างถาวร ไม่มีกลไกการกู้คืน สำรองกุญแจส่วนตัวไว้ในที่ปลอดภัยเสมอ

สามารถเข้ารหัสไฟล์ด้วย PGP ได้หรือไม่?

ได้ PGP สามารถเข้ารหัสทั้งข้อความและไฟล์ไบนารี KeychainPGP เน้นการเข้ารหัสข้อความผ่านคลิปบอร์ด ในขณะที่เครื่องมือเช่น GnuPG รองรับการเข้ารหัสไฟล์โดยตรง สำหรับการเปรียบเทียบโดยละเอียด ดูคู่มือPGP เทียบกับ GPG

การเข้ารหัส PGP ปลอดภัยหรือไม่?

การเข้ารหัส PGP ด้วยอัลกอริทึมสมัยใหม่นั้นปลอดภัยมาก KeychainPGP ใช้ Ed25519 สำหรับลายเซ็นและ X25519 สำหรับการแลกเปลี่ยนคีย์ — อัลกอริทึม Elliptic Curve ที่ให้ความปลอดภัยเทียบเท่า RSA-3072 ด้วยขนาดคีย์ที่เล็กกว่ามาก ความเสี่ยงหลักไม่ใช่ด้านการเข้ารหัส แต่เป็นด้านปฏิบัติการ: รหัสผ่านที่อ่อนแอ อุปกรณ์ที่ถูกบุกรุก หรือการจัดการคีย์ที่ไม่ดี

ลายนิ้วมือ PGP คืออะไร?

ลายนิ้วมือ PGP คือสตริงเลขฐาน 16 ที่มี 40 ตัวอักษร ที่ระบุคีย์ PGP เฉพาะตัว ลายนิ้วมือใช้เพื่อตรวจสอบว่ากุญแจสาธารณะเป็นของบุคคลที่คุณคิดจริง ๆ เปรียบเทียบลายนิ้วมือผ่านช่องทางที่ไว้วางใจแยกต่างหาก (โทรศัพท์ พบกันตัวต่อตัว) เพื่อป้องกันการโจมตีแบบ Man-in-the-Middle