วิธีใช้งาน 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
- เปิด KeychainPGP (เว็บแอปหรือแอปเดสก์ท็อป)
- ไปที่แท็บคีย์
- คลิกสร้างคีย์ใหม่
- ป้อนชื่อและอีเมลของคุณ
- คลิกสร้าง 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
- คัดลอกบล็อกกุญแจสาธารณะของผู้ติดต่อไปยังคลิปบอร์ด
- เปิด KeychainPGP แล้วไปที่แท็บคีย์
- คลิกนำเข้าคีย์แล้ววางคีย์
- ผู้ติดต่อจะปรากฏในรายการคีย์พร้อมชื่อและอีเมล
ขั้นตอนที่ 4: เข้ารหัสข้อความ
เข้ารหัสใน KeychainPGP (เว็บหรือเดสก์ท็อป)
- ไปที่แท็บเข้ารหัส
- พิมพ์หรือวางข้อความที่คุณต้องการเข้ารหัส
- เลือกผู้รับจากรายการคีย์ของคุณ
- คลิกเข้ารหัสไปยังคลิปบอร์ด ข้อความที่เข้ารหัสจะถูกคัดลอกไปยังคลิปบอร์ด
- วางข้อความที่เข้ารหัสในอีเมล แชท หรือช่องทางการสื่อสารอื่น
เข้ารหัสด้วยปุ่มลัดเดสก์ท็อป
ด้วยแอปเดสก์ท็อป KeychainPGP กระบวนการจะเร็วยิ่งขึ้นด้วยเวิร์กโฟลว์คลิปบอร์ด:
- พิมพ์ข้อความในแอปพลิเคชันใดก็ได้
- เลือกและคัดลอกข้อความ (
Ctrl+C) - กด
Ctrl+Shift+E— KeychainPGP เข้ารหัสเนื้อหาในคลิปบอร์ด - วางข้อความที่เข้ารหัส (
Ctrl+V)
ขั้นตอนที่ 5: ถอดรหัสข้อความ
ถอดรหัสใน KeychainPGP (เว็บหรือเดสก์ท็อป)
- คัดลอกบล็อกข้อความที่เข้ารหัสทั้งหมด
- ไปที่แท็บถอดรหัสของ KeychainPGP
- วางข้อความที่เข้ารหัส
- คลิกถอดรหัส ข้อความต้นฉบับจะปรากฏทันที
ถอดรหัสด้วยปุ่มลัดเดสก์ท็อป
- เลือกและคัดลอกบล็อกข้อความที่เข้ารหัส (
Ctrl+C) - กด
Ctrl+Shift+D— KeychainPGP ถอดรหัสเนื้อหาในคลิปบอร์ด - ข้อความต้นฉบับจะแทนที่ข้อความที่เข้ารหัสในคลิปบอร์ด วางได้ที่ไหนก็ตามที่คุณต้องการ
แอปเดสก์ท็อปยังมีการล้างคลิปบอร์ดอัตโนมัติ: หลัง 30 วินาที ข้อความที่ถอดรหัสจะถูกลบออกจากคลิปบอร์ดโดยอัตโนมัติ
ขั้นตอนที่ 6: ลงลายเซ็นข้อความ
ลายเซ็นดิจิทัล PGP พิสูจน์สองสิ่ง:
- ความถูกต้อง — ข้อความถูกเขียนโดยเจ้าของคีย์ลงลายเซ็น
- ความสมบูรณ์ — ข้อความไม่ได้ถูกแก้ไขตั้งแต่ลงลายเซ็น
การลงลายเซ็นไม่ได้เข้ารหัสข้อความ ใครก็สามารถอ่านข้อความที่ลงลายเซ็นได้ แต่สามารถตรวจสอบได้ว่ามาจากคุณจริงและไม่ได้ถูกปลอมแปลง
เมื่อไหร่ควรลงลายเซ็นข้อความ
- ประกาศเวอร์ชันซอฟต์แวร์หรือแจ้งเตือนความปลอดภัย
- ยืนยันตัวตนบนฟอรัมสาธารณะ
- ลงลายเซ็นอีเมลเพื่อพิสูจน์แหล่งที่มา
- ลงลายเซ็น Git commits เพื่อความสมบูรณ์ของโค้ด
ขั้นตอนที่ 7: ตรวจสอบลายเซ็น
เมื่อคุณได้รับข้อความที่ลงลายเซ็น คุณสามารถตรวจสอบว่าเป็นของแท้และไม่ได้ถูกแก้ไข
การตรวจสอบใน KeychainPGP
- คัดลอกข้อความที่ลงลายเซ็นทั้งหมด (รวมบล็อกลายเซ็น)
- ไปที่แท็บตรวจสอบ
- วางข้อความที่ลงลายเซ็น
- คลิกตรวจสอบ 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