PGP là viết tắt của Quyền riêng tư khá tốt. là phần mềm mã hóa được thiết kế để cung cấp sự bảo vệ quyền riêng tư, bảo mật và xác thực cho các hệ thống liên lạc trực tuyến. Phil Zimmerman, nhà phát triển chương trình PGP đầu tiên, cho biết phần mềm này được cung cấp miễn phí khi nhu cầu về quyền riêng tư ngày càng tăng.
Kể từ khi được thành lập vào năm 1991, nhiều phiên bản phần mềm PGP đã xuất hiện trên thị trường. Năm 1997, Phil Zimmerman trình bày đề xuất với Lực lượng đặc nhiệm kỹ thuật Internet (IETF) về việc tạo ra tiêu chuẩn PGP nguồn mở. Đề xuất ngay lập tức được chấp nhận và giao thức OpenPGP đã được tạo ra, xác định định dạng tiêu chuẩn cho các khóa và tin nhắn mã hóa.
Mặc dù PGP ban đầu chỉ được sử dụng để bảo vệ email và các tệp đính kèm có liên quan nhưng hiện nay nó đã được sử dụng trong nhiều lĩnh vực chính khác nhau, bao gồm chữ ký số, xác minh tính toàn vẹn mã hóa ổ đĩa và bảo vệ mạng.
Bản quyền phần mềm PGP ban đầu thuộc sở hữu của Công ty PGP, sau đó được Network Associates mua lại. Năm 2010, Symantec mua lại PGP với giá 300 triệu USD và nhãn hiệu này đã được sử dụng cho các sản phẩm tương thích với OpenPGP của hãng.
PGP là phần mềm ứng dụng quy mô lớn đầu tiên triển khai khóa chung mật mã một. Nó sử dụng kiến trúc hệ thống mật mã lai sử dụng mã hóa đối xứng và bất đối xứng để đạt được mức độ bảo mật cao.
Trong quy trình mã hóa nội dung cơ bản, văn bản gốc (dữ liệu có thể hiểu rõ ràng) được chuyển đổi thành văn bản mật mã (dữ liệu không thể đọc được). Nhưng trước khi mã hóa, hầu hết các hệ thống PGP đều thực hiện nén dữ liệu. Phần mềm PGP nén các tệp văn bản thuần túy trước khi truyền chúng, tiết kiệm dung lượng ổ đĩa và thời gian truyền đồng thời cải thiện tính bảo mật.
Sau khi tệp được nén, quá trình mã hóa thực sự bắt đầu. Ở giai đoạn này, tệp văn bản gốc nén được mã hóa bằng khóa một lần, được gọi là khóa phiên. Khóa được tạo ngẫu nhiên bằng mã hóa đối xứng và mỗi phiên giao tiếp PGP có một khóa phiên duy nhất.
Tiếp theo, khóa phiên (1) được mã hóa bằng cách sử dụng mã hóa bất đối xứng: người nhận (Bob) đưa khóa công khai (2) của mình cho người gửi tin nhắn (Alice) ) vì vậy rằng cô ấy có thể mã hóa khóa phiên. Bước này cho phép Alice chia sẻ khóa phiên với Bob một cách an toàn qua Internet, bất kể họ đang ở trong điều kiện bảo mật nào.
Mã hóa bất đối xứng các khóa phiên thường được thực hiện bằng thuật toán RSA. Nhiều hệ thống mã hóa khác sử dụng RSA để mã hóa, bao gồm giao thức Transport Layer Security (TLS) được sử dụng để bảo vệ hầu hết các ứng dụng Internet.
Sau khi Bob nhận được bản mã của tin nhắn và khóa phiên được mã hóa, anh ấy có thể sử dụng khóa riêng (3) để giải mã khóa phiên, sau đó sử dụng khóa phiên đã được giải mã. Giải mã văn bản mã hóa để lấy văn bản thô.
Ngoài các chức năng cơ bản là mã hóa và giải mã, PGP còn hỗ trợ chữ ký số, có ít nhất ba chức năng sau :
Xác thực: Bob có thể xác minh xem người gửi email có thực sự là Alice hay không.
Tính toàn vẹn: Bob có thể chắc chắn rằng tin nhắn không bị thay đổi.
Không thoái thác: Sau khi ký điện tử vào email, Alice không thể phủ nhận rằng cô ấy không gửi email.
Một trong những trường hợp sử dụng nhiều nhất Công dụng phổ biến của PGP One là bảo vệ email. Email được bảo vệ bằng PGP sẽ trở thành một chuỗi ký tự (bản mã) không thể đọc được và chỉ có thể được giải mã bằng khóa giải mã tương ứng. Cơ chế hoạt động cũng giống như mã hóa tin nhắn văn bản và cũng có những ứng dụng phần mềm hỗ trợ thực hiện các chức năng PGP trên các ứng dụng khác, bổ sung hiệu quả khả năng mã hóa cho các liên lạc an toàn không đáng tin cậy.
Mặc dù PGP chủ yếu được sử dụng để bảo vệ thông tin liên lạc trên Internet nhưng nó cũng có thể được sử dụng để mã hóa nhiều loại thiết bị khác nhau. Trong bài viết này, PGP có thể được sử dụng để mã hóa phân vùng đĩa của máy tính hoặc thiết bị di động. Bằng cách mã hóa ổ cứng, người dùng được yêu cầu cung cấp mật khẩu mỗi khi hệ thống khởi động.
Do sự kết hợp giữa mã hóa đối xứng và bất đối xứng, PGP cho phép người dùng để liên lạc qua Internet Chia sẻ thông tin và khóa mã hóa một cách an toàn. Là một hệ thống lai, PGP được hưởng lợi từ tính bảo mật của mã hóa bất đối xứng và tính kịp thời của mã hóa đối xứng. Ngoài tính bảo mật và kịp thời, PGP còn có thể cung cấp khả năng chữ ký số để đảm bảo tính toàn vẹn dữ liệu và tính xác thực của người gửi.
Giao thức OpenPGP có thể được sử dụng trong môi trường được tiêu chuẩn hóa và các giải pháp PGP hiện có sẵn với sự hỗ trợ kỹ thuật từ nhiều công ty và tổ chức. Tuy nhiên, tất cả các chương trình PGP tuân theo tiêu chuẩn OpenPGP đều tương thích với nhau. Điều này có nghĩa là các tệp và khóa được tạo trong một chương trình có thể được sử dụng trong một chương trình khác.
Về nhược điểm, việc sử dụng và hiểu hệ thống PGP không dễ dàng, đặc biệt đối với người dùng có ít kiến thức kỹ thuật. Hơn nữa, độ dài của khóa chung được coi là rất bất tiện cho người dùng.
Năm 2018, Electronic Frontier Foundation (EFF) đã phát hành một lỗ hổng nghiêm trọng có tên EFAIL. EFAIL cho phép kẻ tấn công khai thác kết nối HTML trong email được mã hóa để truy cập tin nhắn văn bản thuần túy.
Tuy nhiên, kể từ cuối những năm 1990, cộng đồng PFA đã nhận thức được một loạt vấn đề được EFAIL mô tả. Trên thực tế, những lỗ hổng này có liên quan đến cách triển khai ứng dụng email. , và không liên quan gì đến bản thân PGP. Vì vậy, bất chấp những tin tức nóng hổi gây sốc và gây hiểu lầm, mã hóa PGP vẫn chưa bị phá vỡ và nó vẫn có độ an toàn cao.
Kể từ khi phát triển vào năm 1991, PGP đã được sử dụng để bảo vệ dữ liệu. công cụ quan trọng, hiện được sử dụng rộng rãi trong nhiều lĩnh vực khác nhau để cung cấp sự bảo vệ quyền riêng tư, bảo mật và xác thực cho hầu hết các hệ thống truyền thông và nhà cung cấp dịch vụ kỹ thuật số.
Mặc dù việc phát hiện ra lỗ hổng EFAIL vào năm 2018 đã làm dấy lên mối lo ngại đáng kể về tính bảo mật của giao thức, nhưng công nghệ cốt lõi của nó vẫn mạnh mẽ và được mã hóa. Điều đáng chú ý là việc triển khai PGP khác nhau cũng có thể cung cấp các mức độ bảo mật khác nhau.