GnuPG的使用入門


tags: #GPG #GnuPG #數字安全

GnuPG官網:https://www.gnupg.org/

本文測試環境:macOS 系統,GnuPG Version 2.1.20(2017-04-03)

一、安裝

按照官方頁面的指導,下載 GnuPG,並安裝。

在 Terminal 里測試安裝是否成功:
gpg2 --versioin

注意,這里的命令是gpg2,不是gpg也不是pgp

檢查/Users/buchiany/.gnupg目錄權限所屬用戶/用戶組,提前解決可能會出現的錯誤 Permission denied
使用命令ls -al查看子目錄或文件權限
使用命令sudo chown -R buchiany:staff .gnupg/ 修改用戶組為當前用戶/用戶組。

二、創建密鑰對

1、創建

gpg2 --generate-key 按默認參數創建密鑰對
--full-generate-key 自定義參數創建密鑰對

可選擇密鑰種類(默認是 RSA and RSA),密鑰長度(默認2048),有效期限。

接下來會要求輸入姓名、郵件地址和注釋,來生成用戶標識。英文,可只寫姓名和郵件地址。

接下來會要求新建輸入一個口令,這個口令是用來保護私鑰。

成功生成密鑰對之后,輸出的結果格式類似如下:

/Users/username/.gnupg/pubring.kbx
---------------------------------
pub   rsa2048 2017-04-03 [SC]
      5880C75057FED0E3XXXXXXXXXXXXXXXXXXXXXXXX
uid           [ultimate] foobar <foo@bar.com>
sub   rsa2048 2017-04-03 [E]

2、輸出並備份密鑰

密鑰是自己用來簽名自己所發送的信息,或解密別人發來的加密信息(用此密鑰配對的公鑰加密)。
導出命令:gpg2 -a -o gpg-private-key.txt --export-secret-keys

-a 以Ascii文本輸出
-o filename 輸出到指定文件

換個地方保存好這個密鑰備份,避免泄露。

3、輸出公鑰,告知他人

公鑰是別人用來驗證簽名(不能簽名),或加密(不能解密)要發送給你的信息。
導出命令:gpg2 -a -o gpg-public-key.txt --export [用戶ID]

"用戶ID"是指定哪個用戶的公鑰
-o filename 輸出到指定的文件

然后就通過不同方式將公鑰發給別人,比如掛在自己的網站上。

也上傳公鑰到專門的公鑰服務器
命令:gpg2 --send-keys [用戶ID] --keyserver hkp://subkeys.pgp.net

可以網上搜索有哪些公鑰服務器

三、應用

加密信息

1)導入別人的公鑰
2)加密文件
gpg2 -r 用戶ID -o destfile -e sourcefile

-r 用戶ID,指定用戶ID即指定用來加密的公鑰
-o destfile,"destfile"加密輸出的文件
-e sourcefile,"sourcefile"是待加密的文件

解密信息

gpg2 -o destfile -d sourcefile

如何更方便的加解密,例如收發郵件時

需要更多工具支持。可網上搜索,或看看這個:https://gpgtools.org/

 

參考文檔:

PGP,OpenPGP,GPG三者的關系
阮一峰GPG入門教程
GnuPG 袖珍 HOWTO
GPG Permission denied
Ubuntu中文 GPG/PGP

(完)

//////////

log
20170404, 筆記。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM