GnuPG:修订间差异
补救8个来源,并将0个来源标记为失效。) #IABot (v2.0.9.5 |
|||
(未显示34个用户的84个中间版本) | |||
第1行: | 第1行: | ||
{{ |
{{Expand English|GNU Privacy Guard}} |
||
{{NoteTA |
|||
{{noteTA|G1=IT|G2=FL}} |
|||
|G1=IT |
|||
{{ infobox software |
|||
|G2=FL |
|||
| logo = [[File:Gnupg_logo.svg|The GNU Privacy Guard logo|200px]] |
|||
| developer = [[GNU計劃]] |
|||
| latest_release_version = 2.0.26 |
|||
| latest_release_date = {{release date and age|2014|08|12}} |
|||
| operating_system = [[跨平台]] |
|||
| genre = [[PGP]] |
|||
| license = [[GNU GPL]] |
|||
| website = [http://gnupg.org/ gnupg.org] |
|||
}} |
}} |
||
{{Infobox software |
|||
|name=GNU Privacy Guard |
|||
|logo=Gnupg logo.svg |
|||
|logo alt=The GNU Privacy Guard logo |
|||
|author=[[維爾納·科赫]] |
|||
|developer=[[GNU計劃]] |
|||
|released={{Start date and age|1999|09|07|df=yes}}<ref name="gnupg-1.0.0-announcement"/> |
|||
|programming language=[[C語言]] |
|||
|operating system={{Slight-pause mark list|[[Microsoft Windows]]|[[macOS]]|[[RISC OS]]|[[Android]]|[[Linux]]}} |
|||
|replaces=[[PGP]] |
|||
|standard=[[OpenPGP]] |
|||
|genre=[[密碼學軟體]] |
|||
|website={{Official URL}} |
|||
}} |
|||
'''GNU Privacy Guard'''('''GnuPG''' 或 '''GPG''')是一个[[密码学]]软件,用于[[加密]]、[[數位簽章|签名]]通信内容及管理[[公开密钥加密|非对称密码学]]的密钥。GnuPG 是[[自由软件]],遵循 [[互聯網工程工作小組|IETF]] 訂定的 [[OpenPGP]] 技術標準設計,并与 [[PGP]] 保持兼容。<ref>{{Cite web|title=GnuPG Frequently Asked Questions|url=https://www.gnupg.org/faq/gnupg-faq.html|work=www.gnupg.org|date=2018-02-14|accessdate=2019-05-04|language=en|first=The People of the GnuPG|last=Project|author=|publisher=|archive-date=2015-04-29|archive-url=https://web.archive.org/web/20150429192132/https://www.gnupg.org/faq/gnupg-faq.html|dead-url=no}}</ref> |
|||
GnuPG 是[[自由軟件基金會]]的 [[GNU計劃|GNU 計劃]]的一部份,曾受[[德國]]政府資助。<ref>{{Cite web|title=Bundesregierung fördert Open Source|url=https://www.heise.de/newsticker/meldung/Bundesregierung-foerdert-Open-Source-24110.html|work=heise online|accessdate=2019-05-04|language=de|first=heise|last=online|archive-date=2017-12-22|archive-url=https://web.archive.org/web/20171222050644/https://www.heise.de/newsticker/meldung/Bundesregierung-foerdert-Open-Source-24110.html|dead-url=no}}</ref> |
|||
'''GnuPG'''(英文:'''{{lang|en|GNU Privacy Guard}}''',簡稱:'''{{lang|en|GPG}}''')是一种[[加密]]软件,它是[[PGP]]加密軟件的满足GPL协议的替代物。GnuPG依照由[[互聯網工程工作小組|IETF]]訂定的[[OpenPGP]]技術標準設計。<ref name=RFC4880>RFC 4880</ref>。GnuPG用于加密、[[數位簽章]]及產生非對稱匙对的软件。 |
|||
== 歷史 == |
|||
[[Internet Engineering Task Force|IETF]]正在為[[PGP]]协议进行标准化,标准化的PGP稱為OpenPGP<ref name=RFC4880/>。目前版本的PGP及Veridis' Filecrypt與GnuPG或其他OpenPGP系統相容。 |
|||
GnuPG 的早期版本由[[維爾納·科赫]]开发,经过近两年迭代后于1999年9月7日正式发布1.0.0版<ref name="gnupg-1.0.0-announcement">{{cite web |url=https://gnupg.org/download/release_notes.html |title=Release Notes |publisher=GnuPG |date= |accessdate=2020-02-05 |archive-date=2014-02-09 |archive-url=https://web.archive.org/web/20140209040746/http://gnupg.org/download/release_notes.html |dead-url=yes }}</ref>。软件实现遵循 OpenPGP 标准,兼容[[菲爾·齊默爾曼]]开发的 [[PGP]]。2000年,[[德國聯邦經濟及科技部]]資助了31.8万马克,用于移植 GnuPG 到 [[Microsoft Windows]]。<ref>{{Cite web|title=Germany Awards Grant for Encryption|url=https://archive.nytimes.com/www.nytimes.com/library/tech/99/11/cyber/articles/19encrypt.html|work=archive.nytimes.com|accessdate=2019-05-04|archive-date=2018-04-05|archive-url=https://web.archive.org/web/20180405090632/https://archive.nytimes.com/www.nytimes.com/library/tech/99/11/cyber/articles/19encrypt.html|dead-url=no}}</ref> |
|||
德国政府于2005年资助开发 [[S/MIME]]。GnuPG 2.0 於2006年11月13日發佈加入了,S/MIME。因為 GnuPG 2.0 的新的軟件架構不支援某些用途,所以 1.x 與 2.0 是兩個分支版本。<ref>{{Cite web|url=http://lists.gnupg.org/pipermail/gnupg-announce/2006q4/000239.html|title=GnuPG-2.0 released|access-date=2009-05-02|archive-date=2014-02-14|archive-url=https://web.archive.org/web/20140214124626/http://lists.gnupg.org/pipermail/gnupg-announce/2006q4/000239.html|dead-url=no}}</ref>此外 GnuPG 1.x 使用了一个集成的加密库,而 GnuPG 2.x 则用 Libgcrypt 取代了加密库。 |
|||
GnuPG是[[自由軟件基金會]]的[[GNU計劃]]的一部份,目前受[[德國]]政府資助。以[[GNU通用公共许可证]]第三版授權。 |
|||
GnuPG 还支持对称加密算法。默认情况下,GnuPG 从 2.1 版开始使用 AES 对称算法<ref>{{Cite web|title=[Announce] The maybe final Beta for GnuPG 2.1|url=https://lists.gnupg.org/pipermail/gnupg-announce/2014q4/000357.html|website=lists.gnupg.org|access-date=2024-05-02|archive-date=2019-05-02|archive-url=https://web.archive.org/web/20190502211129/https://lists.gnupg.org/pipermail/gnupg-announce/2014q4/000357.html|dead-url=no}}</ref>,早期版本中使用了 CAST5。GnuPG 不使用专利或其他受限制的软件或算法。相反,GnuPG 使用了多种其他非专利算法。<ref>{{Cite web|title=GnuPG - Related Software|url=https://www.gnupg.org/features.en.html|website=www.gnupg.org|date=2017-03-23|language=en|last=Project|first=The People of the GnuPG|access-date=2024-05-02|archive-date=2009-10-04|archive-url=https://web.archive.org/web/20091004174134/http://www.gnupg.org/features.en.html|dead-url=no}}</ref> |
|||
== 歷史 == |
|||
很长一段时间,它都不支持 PGP 中使用的 IDEA 加密算法。事实上,可以通过下载其插件在 GnuPG 中使用 IDEA,但是,在 IDEA 获得专利的国家中,某些用途可能需要获得许可。从 1.4.13 版和 2.0.20 版开始,GnuPG 支持 IDEA,因为 IDEA 的最后一个专利于 2012 年到期。对 IDEA 的支持旨在“摆脱所有试图解密旧数据或将密钥从 PGP 迁移到 GnuPG 的人的问题”<ref>{{Cite web|title=GnuPG 1.4.13 released|url=https://lists.gnupg.org/pipermail/gnupg-users/2012-December/045844.html|date=Fri Dec 21 12:18:11 CET 2012|last=Koch|first=Werner|access-date=2024-05-02|archive-date=2018-01-11|archive-url=https://web.archive.org/web/20180111052635/https://lists.gnupg.org/pipermail/gnupg-users/2012-December/045844.html|dead-url=no}}</ref>,因此不建议常规使用。 |
|||
GnuPG最初由[[Werner Koch]]開發。1.0.0版於1999年9月7日發佈。[[德國經濟與技術部]]於2000年開始資助此計劃並把它移植至[[Microsoft Windows]]。 |
|||
GnuPG 2.x 的最近版本(“现代”和现已弃用的“稳定”版本)公开了 Libgcrypt(其使用的密码库)提供的大多数加密函数和算法,包括在“现代”版本(即自 GnuPG 2.1 以来)中对椭圆曲线加密 (ECDH、ECDSA 和 EdDSA) <ref>{{Cite web|title=[Announce] GnuPG 2.1.0 "modern" released|url=https://lists.gnupg.org/pipermail/gnupg-announce/2014q4/000358.html|website=lists.gnupg.org|access-date=2024-05-02|archive-date=2018-02-19|archive-url=https://web.archive.org/web/20180219040811/https://lists.gnupg.org/pipermail/gnupg-announce/2014q4/000358.html|dead-url=no}}</ref>的支持。 |
|||
GnuPG是按照OpenPGP標準的軟件,因此OpenPGP的歷史與GnuPG的關係密切。電子郵件加密協定則由[[Phil Zimmermann]]開發。 |
|||
GnuPG 2.0於2006年11月13日發佈,加入了[[S/MIME]]-多用途网际邮件扩充协议(Secure Multipurpose Internet Mail Extensions. RFC 2311)。因為GnuPG 2.0的新的軟件架構不支援某些用途,所以1.x與2.0是兩個分支版本。<ref>[http://lists.gnupg.org/pipermail/gnupg-announce/2006q4/000239.html GnuPG-2.0 released], Werner Koch, [[2006-11-13]]</ref> |
|||
== 使用 == |
== 使用 == |
||
虽然基本的 GnuPG 程序有一个[[命令行界面]],仍然存在许多提供[[图形用户界面]]的[[前端]]。例如 GnuPG 加密被集成进了 [[Linux]] 裡流行的桌面环境 [[KDE]] 和 [[GNOME]] 裡的图形化[[電子郵件用戶端]]:[[KMail]] 和 [[Novell Evolution]]。也有 GnuPG 的图形化前端(GNOME 裡的 {{Link-en|Seahorse|Seahorse (software)}},[[KDE]] 裡的 [[KGpg]] 和 [[Kleopatra]])。在 [[Mac OS X]] 上,Mac GPG 项目提供 [[Aqua (用户接口)|Aqua]] 作为[[操作系统]]集成的加密[[前端]]和[[密钥管理器]]和 GnuPG 安装一样通过 [[Installer (Mac OS X)|Installer]] [[Software package (installation)|packages]] 进行安装。<ref>{{citeweb|title=Mac GNU Privacy Guard|url=http://macgpg.sourceforge.net/|publisher=''[[SourceForge]]''|accessdate=2008-04-29|archive-date=2017-10-17|archive-url=https://web.archive.org/web/20171017005354/http://macgpg.sourceforge.net/|dead-url=no}}</ref>此外,[[GPGMail]] 项目<ref>{{citeweb|title=GPGMail project|url=http://www.gpgmail.org/|publisher=''[[GitHub]]''|accessdate=2010-07-28|archive-date=2020-10-30|archive-url=https://web.archive.org/web/20201030163345/http://gpgmail.org/|dead-url=no}}</ref>可以使 [[Apple Mail]] 使用 GnuPG 加密。[[Instant messaging|即时通信(IM)]]程序,例如,当 GnuPG 已经安装并配置好时,[[Psi (instant messaging client)|Psi]] 和 [[Fire (instant messaging client)|Fire]] 可以自动安全的传递消息。像 {{Link-en|Horde|Horde (Software)}} 这类基于互联网的软件也可以使用 GnuPG。跨平台[[插件]] [[Enigmail]] 为 [[Mozilla Thunderbird]] 和 [[SeaMonkey]] 提供了 GnuPG 支持。类似的,{{tsl|en|Enigform}}和 [[FireGPG]] 为 [[Mozilla Firefox]] 提供了 GnuPG 支持。[[Mailvelope]] 为在浏览器中使用 GnuPG 操作电子邮件提供了支持。 |
|||
在2005年,G10 Code和 [[Intevation]] 发行了 [[Gpg4win]],一个包含 GnuPG for Windows, [[WinPT]], [[Gnu Privacy Assistant]] 和为 [[Windows Explorer]] 和 [[Microsoft Outlook|Outlook]] 提供的 GnuPG 插件的 mail 软件套装。这些工具被包装进了一个标准的微软安装包裡,使 GnuPG 可以在 Windows 系统上安装和使用。 |
|||
虽然基本的GnuPG程序有一个[[命令行界面]],仍然存在许多提供[[图形用户界面]]的[[前端]]。例如GnuPG加密被集成进了[[Linux]]里流行的桌面环境[[KDE]]和[[GNOME]]裡的图形化[[電子郵件用戶端]]:[[KMail]]和[[Novell Evolution]]。也有GnuPG的图形化前端([[GNOME]]裡的[[Seahorse (software)|Seahorse]],[[KDE]]裡的[[KGpg]])。在[[Mac OS X]]上,Mac GPG项目提供[[Aqua (用户接口)|Aqua]]作为[[操作系统]]集成的加密[[前端]]和[[密钥管理器]]和GnuPG安装一样通过[[Installer (Mac OS X)|Installer]] [[Software package (installation)|packages]]进行安装。<ref> |
|||
{{citeweb|title=Mac GNU Privacy Guard|url=http://macgpg.sourceforge.net/|publisher=''[[SourceForge]]''|accessdate=2008-04-29}} |
|||
</ref>此外,GPGMail项目<ref> |
|||
{{citeweb|title=GPGMail project|url=http://www.gpgmail.org/|publisher=''[[GitHub]]''|accessdate=2010-07-28}} |
|||
</ref>可以使[[Apple Mail]]使用GnuPG加密。[[Instant messaging]]程序,例如,当GnuPG已经安装并配置好了时,[[Psi (instant messaging client)|Psi]]和[[Fire (instant messaging client)|Fire]]可以自动安全的传递消息。像[[Horde (Software)|Horde]]这类的基于互联网的软件也可以使用GnuPG。跨平台[[插件]][[Enigmail]]为[[Mozilla Thunderbird]]和[[SeaMonkey]]提供了GnuPG支持。类似的,{{tsl|en|Enigform}}和[[FireGPG]]为[[Mozilla Firefox]]提供了GnuPG支持。 |
|||
== 漏洞 == |
|||
在2005年,G10 Code和[[Intevation]]发行了{{tsl|en|Gpg4win}},一个包含GnuPG for Windows, [[WinPT]]、[[Gnu Privacy Assistant]],和为[[Windows Explorer]]和[[Microsoft Outlook|Outlook]]提供的GnuPG插件的mail软件套装。这些工具被包装进了一个标准的微软安装包裡,使得它可以很容易的使GnuPG在Windows系统上安装和使用。 |
|||
2003 年,由于对 GnuPG 的一次更新中出现了错误,导致了一个安全漏洞<ref>{{Cite web|title=Phong NGUYEN -- Publications|url=https://www.di.ens.fr/~pnguyen/pub_Ng04.htm|website=www.di.ens.fr|access-date=2024-05-02|archive-date=2017-12-04|archive-url=https://web.archive.org/web/20171204133110/http://www.di.ens.fr/~pnguyen/pub_Ng04.htm|dead-url=no}}</ref>。不过它只影响了一种对消息进行数字签名的办法且只影响 GnuPG(1.0.2 到 1.2.3)的一些发布版本。受影响的密钥少于1000个<ref>{{Cite web|title=[Announce] GnuPG's ElGamal signing keys compromised|url=https://lists.gnupg.org/pipermail/gnupg-announce/2003q4/000160.html|website=lists.gnupg.org|access-date=2024-05-02|archive-date=2018-02-19|archive-url=https://web.archive.org/web/20180219104206/https://lists.gnupg.org/pipermail/gnupg-announce/2003q4/000160.html|dead-url=no}}</ref>,绝大多数人也不使用这种方法。因此造成的损害(如果有的话,因为尚未公开报告过)似乎很小。在此发现之后发布的 GnuPG 版本(1.2.4 及更高版本)中已经删除了对这种方法的支持。 |
|||
2006 年初又发现了两个漏洞;第一个是对 GnuPG 进行脚本化以进行签名验证可能会导致误报<ref>{{Cite web|title=[Announce] False positive signature verification in GnuPG|url=https://lists.gnupg.org/pipermail/gnupg-announce/2006q1/000211.html|website=lists.gnupg.org|access-date=2024-05-02|archive-date=2018-02-19|archive-url=https://web.archive.org/web/20180219103739/https://lists.gnupg.org/pipermail/gnupg-announce/2006q1/000211.html|dead-url=no}}</ref>, 第二个是非 MIME 消息容易受到数据注入<ref>{{Cite web|title=[Announce] GnuPG does not detect injection of unsigned data|url=https://lists.gnupg.org/pipermail/gnupg-announce/2006q1/000218.html|website=lists.gnupg.org|access-date=2024-05-02|archive-date=2018-02-19|archive-url=https://web.archive.org/web/20180219103642/https://lists.gnupg.org/pipermail/gnupg-announce/2006q1/000218.html|dead-url=no}}</ref>,这些数据虽然没有被数字签名覆盖,但会被报告为签名消息的一部分。 |
|||
== 過程 == |
|||
GnuPG使用[[使用者]]自行生成的[[非對稱密鑰對]]來加密信息,由此產生的公鑰可以同其他使用者以各種方式交換,如[[密鑰伺服器]]。他們必須小心交換密鑰,以防止得到偽造的密鑰。GnuPG還可以向信息添加一個加密的[[數字簽名]],這樣,收件人可以驗證信息完整性和發件人。 |
|||
GnuPG不利用專利或其他方式限制軟件或算法,就像IDEA算法一開始出現在PGP中一樣。(可以通過下載相關插件在GnuPG中使用IDEA算法,不過如果在一些IDEA算法為專利的國家中使用,可能需要一份許可)。GnuPG同樣也使用各種其他非專利的算法:<br /> |
|||
2021 年 1 月,Libgcrypt 1.9.0 版发布,其中包含一个简单的严重漏洞。10 天后,在 Libgcrypt 1.9.1 中发布了修复程序。 |
|||
[[分組密碼]]:[[CAST5]],[[Camellia]],[[Triple DES]],[[AES]],[[Blowfish]],[[Twofish]]<br /> |
|||
== 過程 == |
|||
[[非對稱加密密碼]]:[[ElGamal]],[[RSA]]<br /> |
|||
GnuPG 使用[[使用者]]自行生成的非對稱密鑰對來加密信息,由此產生的公鑰可以同其他使用者以各種方式交換,如[[密鑰伺服器]]。他們必須小心交換密鑰,以防止得到偽造的密鑰。GnuPG 還可以向信息添加一個[[數位簽名]],這樣,收件人可以驗證信息完整性和發件人。 |
|||
GnuPG 支援的各種加密算法: |
|||
[[加密哈希]]:[[RIPEMD-160]],[[MD5]],[[SHA-1]],[[SHA-2]],[[Tiger]]<br /> |
|||
*[[對稱加密]]:{{Link-en|CAST5|CAST5}}、[[Camellia]]、[[Triple DES]]、[[高級加密標準|AES]]、[[Blowfish]]、[[Twofish]]、[[ChaCha20]]、[[IDEA]] (从 1.4.13 和 2.0.20 开始被添加) |
|||
*[[非對稱加密]]:[[ElGamal]]、[[RSA加密演算法|RSA]]、[[数字签名算法|DSA]]、[[ECDSA]]、[[EdDSA]] |
|||
*[[密码散列函数]]:[[RIPEMD-160]]、[[MD5]]、[[SHA-1]]、[[SHA-2]]、{{Link-en|Tiger|Tiger (cryptography)}} |
|||
*[[數字簽名]]:[[数字签名算法|DSA]]、[[RSA加密演算法|RSA]]、[[ECDSA]]、[[EdDSA]] |
|||
==應用程式支援== |
|||
[[數字簽名]]:[[DSA]],[[RSA]]<br /> |
|||
支援 GPG 的應用程式、前端及瀏覽器擴充套件: |
|||
{{Div col||30em}} |
|||
GnuPG是一個混合加密軟件程序,它使用常規對稱密鑰提高加密速度,使用公鑰便於交換。通常使用一次性的收件人公鑰用以加密會話。 |
|||
*[[Claws Mail]] |
|||
*[[Enigform]] |
|||
*[[Enigmail]] |
|||
*[[FireGPG]]<ref>{{Cite web |url=http://getfiregpg.org/ |title=getfiregpg.org |accessdate=2015-08-10 |archive-date=2020-05-10 |archive-url=https://web.archive.org/web/20200510220417/https://getfiregpg.org/ |dead-url=no }}</ref> |
|||
*[[Gpg4win]] |
|||
*[[Gpg4usb]] |
|||
*[[GpgFrontend]] |
|||
*[[GPGServices]] |
|||
*[[GPGshell]] |
|||
*[[GPGTools]] |
|||
*[[KGPG]] |
|||
*[[MCabber]] |
|||
*[[Mutt]] |
|||
*[[Psi (軟件)]] |
|||
*[[WinPT]] |
|||
*[[Mailvelope]] |
|||
{{Div col end}} |
|||
== 參見 == |
== 參見 == |
||
第55行: | 第80行: | ||
* [[密碼學]] |
* [[密碼學]] |
||
== |
==參考資料== |
||
{{ |
{{Reflist|3}} |
||
==外部連結== |
|||
{{Wikibooks|GPG}} |
|||
{{Official website}}{{En icon}} |
|||
{{GNU}} |
|||
{{加密软件}} |
|||
[[Category:1999年软件]] |
|||
[[Category:跨平台軟體]] |
|||
[[Category:加密软件]] |
|||
[[Category:GNU计划软件]] |
[[Category:GNU计划软件]] |
||
[[Category: |
[[Category:隱私軟件]] |
||
[[Category: |
[[Category:自由安全软件]] |
||
[[Category:Linux安全软件]] |
2024年5月28日 (二) 20:49的最新版本
此條目可参照英語維基百科相應條目来扩充。 |
原作者 | 維爾納·科赫 |
---|---|
開發者 | GNU計劃 |
首次发布 | 1999年9月7日[1] |
当前版本 | |
源代码库 | |
编程语言 | C語言 |
操作系统 | Microsoft Windows、 |
前任 | PGP |
标准 | OpenPGP |
类型 | 密碼學軟體 |
许可协议 | |
网站 | gnupg |
GNU Privacy Guard(GnuPG 或 GPG)是一个密码学软件,用于加密、签名通信内容及管理非对称密码学的密钥。GnuPG 是自由软件,遵循 IETF 訂定的 OpenPGP 技術標準設計,并与 PGP 保持兼容。[5]
GnuPG 是自由軟件基金會的 GNU 計劃的一部份,曾受德國政府資助。[6]
歷史
[编辑]GnuPG 的早期版本由維爾納·科赫开发,经过近两年迭代后于1999年9月7日正式发布1.0.0版[1]。软件实现遵循 OpenPGP 标准,兼容菲爾·齊默爾曼开发的 PGP。2000年,德國聯邦經濟及科技部資助了31.8万马克,用于移植 GnuPG 到 Microsoft Windows。[7]
德国政府于2005年资助开发 S/MIME。GnuPG 2.0 於2006年11月13日發佈加入了,S/MIME。因為 GnuPG 2.0 的新的軟件架構不支援某些用途,所以 1.x 與 2.0 是兩個分支版本。[8]此外 GnuPG 1.x 使用了一个集成的加密库,而 GnuPG 2.x 则用 Libgcrypt 取代了加密库。
GnuPG 还支持对称加密算法。默认情况下,GnuPG 从 2.1 版开始使用 AES 对称算法[9],早期版本中使用了 CAST5。GnuPG 不使用专利或其他受限制的软件或算法。相反,GnuPG 使用了多种其他非专利算法。[10]
很长一段时间,它都不支持 PGP 中使用的 IDEA 加密算法。事实上,可以通过下载其插件在 GnuPG 中使用 IDEA,但是,在 IDEA 获得专利的国家中,某些用途可能需要获得许可。从 1.4.13 版和 2.0.20 版开始,GnuPG 支持 IDEA,因为 IDEA 的最后一个专利于 2012 年到期。对 IDEA 的支持旨在“摆脱所有试图解密旧数据或将密钥从 PGP 迁移到 GnuPG 的人的问题”[11],因此不建议常规使用。
GnuPG 2.x 的最近版本(“现代”和现已弃用的“稳定”版本)公开了 Libgcrypt(其使用的密码库)提供的大多数加密函数和算法,包括在“现代”版本(即自 GnuPG 2.1 以来)中对椭圆曲线加密 (ECDH、ECDSA 和 EdDSA) [12]的支持。
使用
[编辑]虽然基本的 GnuPG 程序有一个命令行界面,仍然存在许多提供图形用户界面的前端。例如 GnuPG 加密被集成进了 Linux 裡流行的桌面环境 KDE 和 GNOME 裡的图形化電子郵件用戶端:KMail 和 Novell Evolution。也有 GnuPG 的图形化前端(GNOME 裡的 Seahorse,KDE 裡的 KGpg 和 Kleopatra)。在 Mac OS X 上,Mac GPG 项目提供 Aqua 作为操作系统集成的加密前端和密钥管理器和 GnuPG 安装一样通过 Installer packages 进行安装。[13]此外,GPGMail 项目[14]可以使 Apple Mail 使用 GnuPG 加密。即时通信(IM)程序,例如,当 GnuPG 已经安装并配置好时,Psi 和 Fire 可以自动安全的传递消息。像 Horde 这类基于互联网的软件也可以使用 GnuPG。跨平台插件 Enigmail 为 Mozilla Thunderbird 和 SeaMonkey 提供了 GnuPG 支持。类似的,Enigform和 FireGPG 为 Mozilla Firefox 提供了 GnuPG 支持。Mailvelope 为在浏览器中使用 GnuPG 操作电子邮件提供了支持。
在2005年,G10 Code和 Intevation 发行了 Gpg4win,一个包含 GnuPG for Windows, WinPT, Gnu Privacy Assistant 和为 Windows Explorer 和 Outlook 提供的 GnuPG 插件的 mail 软件套装。这些工具被包装进了一个标准的微软安装包裡,使 GnuPG 可以在 Windows 系统上安装和使用。
漏洞
[编辑]2003 年,由于对 GnuPG 的一次更新中出现了错误,导致了一个安全漏洞[15]。不过它只影响了一种对消息进行数字签名的办法且只影响 GnuPG(1.0.2 到 1.2.3)的一些发布版本。受影响的密钥少于1000个[16],绝大多数人也不使用这种方法。因此造成的损害(如果有的话,因为尚未公开报告过)似乎很小。在此发现之后发布的 GnuPG 版本(1.2.4 及更高版本)中已经删除了对这种方法的支持。
2006 年初又发现了两个漏洞;第一个是对 GnuPG 进行脚本化以进行签名验证可能会导致误报[17], 第二个是非 MIME 消息容易受到数据注入[18],这些数据虽然没有被数字签名覆盖,但会被报告为签名消息的一部分。
2021 年 1 月,Libgcrypt 1.9.0 版发布,其中包含一个简单的严重漏洞。10 天后,在 Libgcrypt 1.9.1 中发布了修复程序。
過程
[编辑]GnuPG 使用使用者自行生成的非對稱密鑰對來加密信息,由此產生的公鑰可以同其他使用者以各種方式交換,如密鑰伺服器。他們必須小心交換密鑰,以防止得到偽造的密鑰。GnuPG 還可以向信息添加一個數位簽名,這樣,收件人可以驗證信息完整性和發件人。
GnuPG 支援的各種加密算法:
- 對稱加密:CAST5、Camellia、Triple DES、AES、Blowfish、Twofish、ChaCha20、IDEA (从 1.4.13 和 2.0.20 开始被添加)
- 非對稱加密:ElGamal、RSA、DSA、ECDSA、EdDSA
- 密码散列函数:RIPEMD-160、MD5、SHA-1、SHA-2、Tiger
- 數字簽名:DSA、RSA、ECDSA、EdDSA
應用程式支援
[编辑]支援 GPG 的應用程式、前端及瀏覽器擴充套件:
參見
[编辑]參考資料
[编辑]- ^ 1.0 1.1 Release Notes. GnuPG. [2020-02-05]. (原始内容存档于2014-02-09).
- ^ Noteworthy changes in version 2.2.43. 2024年4月16日 [2024年5月27日].
- ^ 維爾納·科赫. GnuPG 2.4.7 and Gpg4win 4.4.0 released. 2024年11月28日 [2024年11月28日] (英語).
- ^ 維爾納·科赫. GnuPG 2.5.2 released. 2024年12月6日 [2024年12月10日].
- ^ Project, The People of the GnuPG. GnuPG Frequently Asked Questions. www.gnupg.org. 2018-02-14 [2019-05-04]. (原始内容存档于2015-04-29) (英语).
- ^ online, heise. Bundesregierung fördert Open Source. heise online. [2019-05-04]. (原始内容存档于2017-12-22) (德语).
- ^ Germany Awards Grant for Encryption. archive.nytimes.com. [2019-05-04]. (原始内容存档于2018-04-05).
- ^ GnuPG-2.0 released. [2009-05-02]. (原始内容存档于2014-02-14).
- ^ [Announce] The maybe final Beta for GnuPG 2.1. lists.gnupg.org. [2024-05-02]. (原始内容存档于2019-05-02).
- ^ Project, The People of the GnuPG. GnuPG - Related Software. www.gnupg.org. 2017-03-23 [2024-05-02]. (原始内容存档于2009-10-04) (英语).
- ^ Koch, Werner. GnuPG 1.4.13 released. Fri Dec 21 12:18:11 CET 2012 [2024-05-02]. (原始内容存档于2018-01-11).
- ^ [Announce] GnuPG 2.1.0 "modern" released. lists.gnupg.org. [2024-05-02]. (原始内容存档于2018-02-19).
- ^ Mac GNU Privacy Guard. SourceForge. [2008-04-29]. (原始内容存档于2017-10-17).
- ^ GPGMail project. GitHub. [2010-07-28]. (原始内容存档于2020-10-30).
- ^ Phong NGUYEN -- Publications. www.di.ens.fr. [2024-05-02]. (原始内容存档于2017-12-04).
- ^ [Announce] GnuPG's ElGamal signing keys compromised. lists.gnupg.org. [2024-05-02]. (原始内容存档于2018-02-19).
- ^ [Announce] False positive signature verification in GnuPG. lists.gnupg.org. [2024-05-02]. (原始内容存档于2018-02-19).
- ^ [Announce] GnuPG does not detect injection of unsigned data. lists.gnupg.org. [2024-05-02]. (原始内容存档于2018-02-19).
- ^ getfiregpg.org. [2015-08-10]. (原始内容存档于2020-05-10).
外部連結
[编辑]官方网站 (英文)