PGP ย่อมาจาก Pretty Good Privacy เป็นซอฟต์แวร์เข้ารหัสที่ออกแบบมาเพื่อให้ความเป็นส่วนตัวความปลอดภัยและการตรวจสอบสิทธิ์สำหรับระบบสื่อสารออนไลน์ ฟิลซิมเมอร์แมนเป็นชื่อที่อยู่เบื้องหลังโปรแกรม PGP แรกและตามที่เขาพูดมันเปิดให้ใช้งานได้อย่างอิสระเนื่องจากความต้องการความเป็นส่วนตัวทางสังคมที่เพิ่มขึ้น
นับตั้งแต่มีการสร้างในปี 1991 ซอฟต์แวร์ PGP หลายเวอร์ชันถูกสร้างขึ้น ในปี 1997 Phil Zimmerman ได้ยื่นข้อเสนอต่อ Internet Engineering Task Force (IETF) เพื่อสร้างมาตรฐาน PGP แบบโอเพนซอร์ส ข้อเสนอนี้ได้รับการยอมรับและนำไปสู่การสร้างโปรโตคอล OpenPGP ซึ่งกำหนดรูปแบบมาตรฐานสำหรับคีย์การเข้ารหัสและข้อความ
แม้ว่าในตอนแรกจะใช้เพื่อรักษาความปลอดภัยข้อความอีเมลและไฟล์แนบเท่านั้น แต่ตอนนี้ PGP ถูกนำไปใช้กับกรณีการใช้งานที่หลากหลายรวมถึงลายเซ็นดิจิทัลการเข้ารหัสดิสก์แบบเต็มและการป้องกันเครือข่าย
PGP เป็นของ บริษัท PGP Inc ซึ่งต่อมา Network Associates Inc. ได้เข้าซื้อกิจการในปี 2010 ไซแมนเทคคอร์ปได้เข้าซื้อกิจการ PGP ในราคา 300 ล้านดอลลาร์และปัจจุบันคำนี้เป็นเครื่องหมายการค้าที่ใช้สำหรับผลิตภัณฑ์ที่สอดคล้องกับ OpenPGP
มันทำงานอย่างไร?
PGP เป็นหนึ่งในซอฟแวร์ครั้งแรกที่สามารถใช้ได้อย่างกว้างขวางที่จะใช้การเข้ารหัสคีย์สาธารณะ มันเป็น cryptosystem ไฮบริดที่ใช้ทั้งสมมาตรการเข้ารหัสและการไม่สมมาตรเพื่อให้บรรลุระดับสูงของการรักษาความปลอดภัย
ในขั้นตอนพื้นฐานของการเข้ารหัสข้อความข้อความธรรมดา (ข้อมูลที่สามารถเข้าใจได้ชัดเจน) จะถูกแปลงเป็นไซเฟอร์เท็กซ์ (ข้อมูลที่อ่านไม่ได้) แต่ก่อนที่กระบวนการเข้ารหัสจะเกิดขึ้นระบบ PGP ส่วนใหญ่จะทำการบีบอัดข้อมูล ด้วยการบีบอัดไฟล์ข้อความธรรมดาก่อนที่จะส่งไฟล์ PGP จะช่วยประหยัดทั้งพื้นที่ดิสก์และเวลาในการส่ง – ในขณะเดียวกันก็ปรับปรุงความปลอดภัยด้วย
หลังจากการบีบอัดไฟล์กระบวนการเข้ารหัสจริงจะเริ่มขึ้น ในขั้นตอนนี้ไฟล์ข้อความธรรมดาที่บีบอัดจะถูกเข้ารหัสด้วยคีย์แบบใช้ครั้งเดียวซึ่งเรียกว่าคีย์เซสชัน คีย์นี้สร้างขึ้นแบบสุ่มโดยใช้การเข้ารหัสแบบสมมาตรและแต่ละเซสชันการสื่อสาร PGP จะมีคีย์เซสชันที่ไม่ซ้ำกัน
จากนั้นคีย์เซสชัน (1) จะถูกเข้ารหัสโดยใช้การเข้ารหัสแบบไม่สมมาตร: ผู้รับที่ตั้งใจไว้ (Bob) จะให้คีย์สาธารณะของเขา (2) แก่ผู้ส่งข้อความ (อลิซ) เพื่อให้เธอสามารถเข้ารหัสคีย์เซสชันได้ ขั้นตอนนี้ช่วยให้ Alice สามารถแชร์รหัสเซสชันกับ Bob ได้อย่างปลอดภัยผ่านอินเทอร์เน็ตโดยไม่คำนึงถึงเงื่อนไขด้านความปลอดภัย
การเข้ารหัสแบบไม่สมมาตรของคีย์เซสชันมักจะทำโดยใช้อัลกอริทึม RSA ระบบเข้ารหัสอื่น ๆ จำนวนมากใช้ RSA รวมถึงโปรโตคอล Transport Layer Security (TLS) ที่รักษาความปลอดภัยส่วนใหญ่ของอินเทอร์เน็ต
เมื่อส่งรหัสลับของข้อความและคีย์เซสชันที่เข้ารหัสแล้ว Bob สามารถใช้คีย์ส่วนตัวของเขา (3) เพื่อถอดรหัสคีย์เซสชันซึ่งจะใช้ในการถอดรหัสรหัสลับกลับไปเป็นข้อความธรรมดาดั้งเดิม
นอกเหนือจากกระบวนการพื้นฐานในการเข้ารหัสและถอดรหัสแล้ว PGP ยังรองรับลายเซ็นดิจิทัลซึ่งทำหน้าที่อย่างน้อยสามฟังก์ชัน:
การรับรองความถูกต้อง: Bob สามารถตรวจสอบได้ว่าผู้ส่งข้อความคืออลิซ
ความสมบูรณ์: บ๊อบมั่นใจได้ว่าข้อความไม่ได้ถูกแก้ไข
การไม่ปฏิเสธ: หลังจากที่ข้อความได้รับการเซ็นชื่อแบบดิจิทัลแล้ว Alice ไม่สามารถอ้างว่าเธอไม่ได้ส่งมันไป
ใช้กรณี
หนึ่งในการใช้ PGP ที่พบบ่อยที่สุดคือการรักษาความปลอดภัยอีเมล อีเมลที่ได้รับการป้องกันด้วย PGP จะกลายเป็นสตริงอักขระที่ไม่สามารถอ่านได้ (ciphertext) และสามารถถอดรหัสได้ด้วยคีย์การถอดรหัสที่เกี่ยวข้องเท่านั้น กลไกการทำงานนั้นเหมือนกันในการรักษาความปลอดภัยข้อความและยังมีแอพพลิเคชั่นซอฟต์แวร์บางตัวที่อนุญาตให้ใช้ PGP กับแอพอื่น ๆ ได้โดยเพิ่มระบบเข้ารหัสให้กับบริการส่งข้อความที่ไม่ปลอดภัย
แม้ว่า PGP ส่วนใหญ่จะใช้เพื่อรักษาความปลอดภัยการสื่อสารทางอินเทอร์เน็ต แต่ก็สามารถใช้กับการเข้ารหัสอุปกรณ์แต่ละเครื่องได้ ในบริบทนี้ PGP อาจถูกนำไปใช้กับพาร์ติชันดิสก์ของคอมพิวเตอร์หรืออุปกรณ์เคลื่อนที่ ในการเข้ารหัสฮาร์ดดิสก์ผู้ใช้จะต้องระบุรหัสผ่านทุกครั้งที่บูตระบบ
ข้อดีและข้อเสีย
ด้วยการใช้การเข้ารหัสแบบสมมาตรและไม่สมมาตรร่วมกัน PGP ช่วยให้ผู้ใช้สามารถแบ่งปันข้อมูลและคีย์การเข้ารหัสผ่านอินเทอร์เน็ตได้อย่างปลอดภัย ในฐานะที่เป็นระบบไฮบริประโยชน์ PGP จากทั้งการรักษาความปลอดภัยของการเข้ารหัสแบบอสมมาตรและความเร็วของการเข้ารหัสแบบสมมาตร นอกจากความปลอดภัยและความเร็วแล้วลายเซ็นดิจิทัลยังรับประกันความสมบูรณ์ของข้อมูลและความถูกต้องของผู้ส่ง
โปรโตคอล OpenPGP อนุญาตให้มีสภาพแวดล้อมการแข่งขันที่เป็นมาตรฐานและขณะนี้โซลูชัน PGP มีให้โดย บริษัท และองค์กรต่างๆ อย่างไรก็ตามโปรแกรม PGP ทั้งหมดที่เป็นไปตามมาตรฐาน OpenPGP นั้นสามารถทำงานร่วมกันได้ ซึ่งหมายความว่าไฟล์และคีย์ที่สร้างขึ้นในโปรแกรมหนึ่งสามารถใช้ในอีกโปรแกรมหนึ่งได้โดยไม่มีปัญหา
เกี่ยวกับข้อเสียระบบ PGP ไม่ใช่เรื่องง่ายที่จะใช้และเข้าใจโดยเฉพาะอย่างยิ่งสำหรับผู้ใช้ที่มีความรู้ด้านเทคนิคเพียงเล็กน้อย นอกจากนี้ความยาวของคีย์สาธารณะยังถือว่าไม่สะดวกมากนัก
ในปี 2018 ช่องโหว่สำคัญที่เรียกว่า EFAIL ได้รับการเผยแพร่โดย Electronic Frontier Foundation (EFF) EFAIL ทำให้ผู้โจมตีสามารถใช้ประโยชน์จากเนื้อหา HTML ที่ใช้งานอยู่ในอีเมลที่เข้ารหัสเพื่อเข้าถึงข้อความเวอร์ชันธรรมดาได้
อย่างไรก็ตามความกังวลบางประการที่อธิบายโดย EFAIL เป็นที่ทราบกันดีอยู่แล้วในชุมชน PGP ตั้งแต่ปลายทศวรรษ 1990 และในความเป็นจริงช่องโหว่นั้นเกี่ยวข้องกับการใช้งานที่แตกต่างกันในส่วนของอีเมลไคลเอ็นต์ไม่ใช่กับ PGP เอง ดังนั้นแม้จะมีหัวข้อข่าวที่น่าตกใจและทำให้เข้าใจผิด แต่ PGP ก็ไม่เสียและยังคงมีความปลอดภัยสูง