在Windows系統使用Gpg4win進行加密解密


GPG,又稱為GnuPG,全稱是Gnu Private Guard,即GNU隱私衛士。GPG是以PGP算法為核心的強大的加密軟件。但GPG項目是一套命令行程序,而且是為 Linux 等開源操作系統設計的。那么在Windows平台下如何使用GPG呢?不用擔心,Gpg4win就是Windows平台GPG及圖形前端的集合安裝包。

簡單介紹一下,Gpg4win是一款非對稱加密方式軟件。簡單來講,就是用公鑰加密文件,用私鑰解密文件。如果你需要發送加密信息,首先獲取接收者的公鑰,然后利用該公鑰加密后傳遞,對方利用對應的私鑰就可解密。也就是說,公鑰是鎖,私鑰是鑰匙。非對稱加密方式很好地解決了傳遞機密信息的問題。

 

下載安裝Gpg4win

請到官方網站下載:http://www.gpg4win.org/
之后運行安裝程序,保持默認設置即可。安裝完成后會要求設置信任的根證書,勾選下方的Root certificate defined or skip configuration(根證書已定義或跳過設置)即可。

 

創建密鑰對

  1. 運行Kleopatra,點擊File – New Certificate,會彈出Certificate Creation Wizard(證書創建向導)
  2. 選擇第一項 Create a personal OpenPGP key pair。
  3. 填入Name(姓名)、Email(電子郵箱地址)和Comment(附加信息)。
  4. 點擊Advanced Settings,可以進行高級設置,為了增強安全性,建議選擇最長的4096 bits,其余維持默認設置即可。
  5. 點擊Create Key,之后輸入Passphrase,點擊OK。請牢記Passphrase,因為在使用自己的私鑰時需要輸入Passphrase。
  6. 在創建的過程中,可以在下圖所示的文本框中隨意打字或者移動這一窗口,計算機將利用IO生成隨機數。
    gpg4win_00
  7. 創建完成后,下方有三個選項是:備份密鑰對、通過Email發送公鑰、將公鑰上傳到服務器。如果不需要執行上述操作,點擊Finish即可。

 

 

導入導出秘鑰

公鑰加密,私鑰解密。如果想要別人給你發送加密信息,別人就要知道你的公鑰才行。公鑰之所以稱為公鑰,就是因為它是公開的。接下來,我們需要把自己的公鑰公之於眾,上傳到專門的服務器上。這里以上傳到MIT的PGP公鑰服務器為例。

  1. 在Kleopatra主界面右鍵點擊要導出的秘鑰,點擊Export Certificates,輸入保存路徑和文件名,點擊保存后會得到一個asc文件。
    gpg4win_01
  2. 使用文本編輯器打開剛才生成的asc文件,復制全部內容。
  3. 使用瀏覽器訪問MIT的PGP公鑰服務器http://pgp.mit.edu/,將剛才復制的內容黏貼到“Submit a key”下方的文本框里,點擊Submit this key to the key server!。上傳成功后,別人搜索你的郵箱即可獲取你的公鑰。

反過來,如果你想給別人發送加密信息,就需要獲取他的公鑰。假如我想發送給neo.q.zhang@gmail.com,則需要通過以下步驟獲取相應的公鑰。

  1. 使用瀏覽器訪問MIT的PGP公鑰服務器http://pgp.mit.edu/,在“Extract a key”下方的文本框輸入neo.q.zhang@gmail.com,如下圖所示。之后點擊Do the search!。
    gpg4win_02
  2. 在搜索結果頁中點擊相應的keyID,會進入一個有一長串亂碼的頁面。復制該頁面的全部內容。
  3. 打開文本編輯器,黏貼剛才復制的內容,保存。文件名隨意,例如“neo.asc”。
  4. 在Kleopatra主界面點擊Import Certificates,選擇剛才保存的文件,點擊打開。這樣就成功導入了一個公鑰。

 

加密文本

下面的例子將演示如何加密一段文本並通過郵件發送給別人。

  1. 打開文本編輯器,輸入你想要加密的文本(即原文),保存。文件名隨意,例如“send.txt”。
  2. 在Kleopatra主界面點擊 File – Sign/Encrypt Files,選擇剛才保存的文件。
  3. 之后彈出的窗口中間有3的選項,分別是簽名並加密(Sign and Encrypt (OpenPGP only))、加密(Encrypt)、簽名(Sign)。這里我們選擇默認選項——加密(Encrypt)。
  4. 因為我們要通過郵件發送純文本,勾選Text output(ASCII armor)。點擊Next。
    gpg4win_03
  5. 之后從上方的列表中選擇接受方的公鑰(前提是你已經導入了接收方的公鑰),點擊Add添加到下方列表。點擊Ecrypt開始生成密文。
  6. 密文生成后,點擊Finish。
  7. 在和原文同一路徑下找到剛生成的密文“send.txt.asc”。用文本編輯器打開,復制全部內容。
  8. 將剛才復制的密文發送給接收方,就像平時發郵件一樣。
    gpg4win_04

 

解密文本

下面的例子將演示如何解密一封收到的密文。

  1. 復制收到的密文。打開文本編輯器,粘貼,保存。文件名隨意,例如“receive.txt”。
  2. 在Kleopatra主界面點擊 File – Decrypt/Verify Files,選擇剛才保存的文件。
  3. 選擇輸出的路徑,默認是和密文同一路徑,點擊Decrypt/Verify。
  4. 之后會要求你輸入passphrase,就是我們在創建密鑰時輸入的那個。點擊確定。
  5. 解密完成后,點擊OK。
  6. 在輸出路徑找到解密后的文件“receive.txt.out”,用文本編輯器打開即可看到原文。
 
 
注:原文見我的博客《 在Windows系統使用Gpg4win進行加密解密


免責聲明!

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



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