<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                [TOC] > [參考](https://www.ruanyifeng.com/blog/2013/07/gpg.html) ## 概述 GPG有許多用途,加密文件,加密郵箱 ## 語法 ``` -s, --sign [文件名] 生成一份簽名 --clearsign [文件名] 生成一份明文簽名 -b, --detach-sign 生成一份分離的簽名 -e, --encrypt 加密數據 -c, --symmetric 僅使用對稱加密 -d, --decrypt 解密數據(默認) --verify 驗證簽名 --list-keys 列出密鑰 --list-sigs 列出密鑰和簽名 --check-sigs 列出并檢查密鑰簽名 --fingerprint 列出密鑰和指紋 -K, --list-secret-keys 列出私鑰 --gen-key 生成一副新的密鑰對 --delete-keys 從公鑰鑰匙環里刪除密鑰 --delete-secret-keys 從私鑰鑰匙環里刪除密鑰 --sign-key 為某把密鑰添加簽名 --lsign-key 為某把密鑰添加本地簽名 --edit-key 編輯某把密鑰或為其添加簽名 --gen-revoke 生成一份吊銷證書 --export 導出密鑰 --send-keys 把密鑰導出到某個公鑰服務器上 --recv-keys 從公鑰服務器上導入密鑰 --search-keys 在公鑰服務器上搜尋密鑰 --refresh-keys 從公鑰服務器更新所有的本地密鑰 --import 導入/合并密鑰 --card-status 打印卡狀態 --card-edit 更改卡上的數據 --change-pin 更改卡的 PIN --update-trustdb 更新信任度數據庫 --armor 文本形式導出 --print-md 算法 [文件] ``` ## 安裝 ``` sudo apt-get install gnupg yum install gnupg // widnows choco install Gpg4win brew install GnuPG ``` ## 使用 ### 密鑰管理 #### 生成密鑰 ``` > gpg --gen-key // 第一步:詢問加密算法 請選擇您要使用的密鑰種類:    (1) RSA and RSA (default)    (2) DSA and Elgamal    (3) DSA (僅用于簽名)     (4) RSA (僅用于簽名) // 第二步:詢問加密長度   RSA 密鑰長度應在 1024 位與 4096 位之間。   您想要用多大的密鑰尺寸?(2048) // 第三步:設定密鑰的有效期   請設定這把密鑰的有效期限。    0 = 密鑰永不過期    <n> = 密鑰在 n 天后過期    <n>w = 密鑰在 n 周后過期    <n>m = 密鑰在 n 月后過期    <n>y = 密鑰在 n 年后過期   密鑰的有效期限是?(0) // 第四步:系統就要求你提供個人信息.進行反復確定   真實姓名:   電子郵件地址:   注釋: //會生成用戶id 如下形式 "Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de>" // 第五步:系統會讓你設定一個私鑰的密碼 //幾分鐘以后,系統提示密鑰已經生成了 gpg: 密鑰 EDDD6D76 被標記為絕對信任   公鑰和私鑰已經生成并經簽名 ``` - "用戶ID" 格式為"Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de>" - "EDDD6D76",這是"用戶ID"的Hash字符串,可以用來替代"用戶ID" #### 創建"撤銷證書" 好再生成一張"撤銷證書",以備以后密鑰作廢時,可以請求外部的公鑰服務器撤銷你的公鑰 ``` gpg --gen-revoke [Hash字符串] ``` #### 密鑰管理 ``` > gpg --list-keys C:/Users/idcpj/AppData/Roaming/gnupg/pubring.kbx ------------------------------------------------ pub rsa3072 2020-11-13 [SC] [expires: 2022-11-13] 35DE33F5790DDC120..F54007C uid [ultimate] idcpj <260xx3304@qq.com> sub rsa3072 2020-11-13 [E] [expires: 2022-11-13] ``` - 第一行顯示公鑰文件名(pubring.gpg) - 第二行顯示公鑰特征(4096位,Hash字符串和生成時間) - 第三行顯示"用戶ID" - 第四行顯示私鑰特征 #### 刪除秘鑰 ``` gpg --delete-key <用戶id> ``` #### 輸出公鑰/密鑰 輸出公鑰 ``` gpg --armor --output public-key.txt --export <用戶id> ``` 輸出秘鑰 ``` gpg --armor --output private-key.txt --export-secret-keys ``` #### 上傳公鑰 公鑰服務器是網絡上專門儲存用戶公鑰的服務器。send-keys參數可以將公鑰上傳到服務器。 ``` gpg --send-keys <用戶id> --keyserver hkp://subkeys.pgp.net ``` 由于公鑰服務器沒有檢查機制,任何人都可以用你的名義上傳公鑰,所以沒有辦法保證服務器上的公鑰的可靠性。通常,你可以在網站上公布一個公鑰指紋,讓其他人核對下載到的公鑰是否為真。fingerprint參數生成公鑰指紋 ``` > gpg --fingerprint <用戶id> gpg: checking the trustdb gpg: marginals needed: 3 completes needed: 1 trust model: pgp gpg: depth: 0 valid: 2 signed: 0 trust: 0-, 0q, 0n, 0m, 0f, 2u gpg: next trustdb check due at 2022-11-13 pub rsa3072 2020-11-13 [SC] [expires: 2022-11-13] 7EF2 02EE AD4D 85D9 E9F8 AF16 6708 7203 CDCE C74E uid [ultimate] idcpj <2600@qq.com> sub rsa3072 2020-11-13 [E] [expires: 2022-11-13] ``` #### 輸入密鑰 除了生成自己的密鑰,還需要將他人的公鑰或者你的其他密鑰輸入系統。這時可以使用import參數。 ``` gpg --import [密鑰文件] ``` 為了獲得他人的公鑰,可以讓對方直接發給你,或者到公鑰服務器上尋找。 ``` gpg --keyserver hkp://subkeys.pgp.net --search-keys <用戶id> ``` ### 加密和解密 加密 ``` gpg --recipient <用戶id> --output demo.en.txt --encrypt demo.txt ``` 解密 ``` gpg --decrypt demo.en.txt --output demo.de.txt // GPG允許省略decrypt參數 gpg demo.en.txt ``` ### 簽名 - 有時候我們不需要加密文件,只要說明這個文件是我本人發出的,可以使用 #### 簽名與文件一塊 生成 demo.txt.gpg ``` > gpg --sign demo.txt ``` windows 通過 Kleopatra 軟件可以打開 ![](https://img.kancloud.cn/f1/50/f15001cc001f26906753e62a6dbb10e4_420x337.png) #### 簽名與文件分開 demo.txt.sig ``` gpg --armor --detach-sign demo.txt ``` windows 通過 Kleopatra 軟件可以打開時候注意簽名與原始文件訪問要放一塊 ![](https://img.kancloud.cn/96/3a/963a4cb4d0433ccc486857d666777db8_449x358.png) ### 簽名+加密 ``` gpg --local-user [發信者ID] --recipient [接收者ID] --armor --sign --encrypt demo.txt ``` ### 驗證簽名 驗證前需先把公鑰導入進 系統 ``` // 導出公鑰 > gpg --armor --output public-key.txt --export <用戶id> // 在其他服務器導入公鑰 > gpg --import public-key.txt // 進行驗證 > gpg --verify demo.txt.asc demo.txt ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看