# 如何驗證 Tor Browser 簽章

Windows
macOS
Linux

在我們的下載頁面裡，每個檔案都會伴隨著一個同名的「數位簽章」檔案，是以「.asc」結尾的，這些檔案即是 OpenPGP 的數位簽章檔。 這些數位簽章讓您可以去驗證下載好的檔案是否就是我們希望您取得的檔案。 隨著您使用的網頁瀏覽器不同會有所差異，但是在大多數的情況中，您可以直接右鍵點擊「數位簽章」的連結並點選「另存成檔案」來下載。

例如說，`tor-browser-windows-x86_64-portable-13.0.1.exe`檔案會辦隨著`tor-browser-windows-x86_64-portable-13.0.1.exe.asc`。 有些範例檔案的名稱不會跟您所下載的檔名完全相同。

請注意數位簽章上壓印的日期就是該套裝軟體被簽署的時間。 因此每當檔案被更新的時候，就會產生一個壓有不同日期的新的數位簽章。 只要您有驗證過數位簽章，就不用擔心上述有可能改變的數位簽章日期。

### 安裝 GnuPG

首先，開始驗證數位簽章前，您需要先安裝好 GnuPG。 如果您是使用 Windows 系統的話，請下載 Gpg4win並且執行安裝程序。 您會需要在 Windows 的命令提示字元模式`cmd.exe`中，輸入幾道指令才能驗證數位簽章。

### 取得洋蔥路由開發人員的金鑰

洋蔥路由瀏覽器團隊會針對所發佈的洋蔥路由瀏覽器簽署。 匯入洋蔥路由瀏覽器開發者的簽署金鑰(0xEF6E286DDA85EA2A4BA7DE684E2C6E8793298290)：

    gpg --auto-key-locate nodefault,wkd --locate-keys torbrowser@torproject.org

您應該會看到類似下面這樣的訊息：

    gpg: key 4E2C6E8793298290: public key "Tor Browser Developers (signing key) <torbrowser@torproject.org>" imported
    gpg: Total number processed: 1
    gpg:               imported: 1
    EF6E286DDA85EA2A4BA7DE684E2C6E8793298290
    uid           [ unknown] Tor Browser Developers (signing key) <torbrowser@torproject.org>

注意：您的輸出可能與上文略有差異（例如到期日），但應可看到金鑰已正確匯入。

若您看見錯誤訊息，那就表示有地方出錯了，您必須要先釐清並解決問題才能繼續，您或許也可以利用其他方式（使用公開金鑰）來完成。

在匯入金鑰之後，您可以將它儲存成檔案（以金鑰指紋作為識別）：

    gpg --output ./tor.keyring --export 0xEF6E286DDA85EA2A4BA7DE684E2C6E8793298290

這道指令會把金鑰儲存成檔案並放置於`./tor.keyring`路徑中，即目前所在工作目錄。 如果執行此道指令後`./tor.keyring`仍然不存在，那就表示有地方出錯了，您必須要先釐清並解決該問題才能繼續。

### 驗證數位簽章

若要驗證您所下載的軟體套件的數位簽章，您還必須要下載相對應的「.asc」數位簽章檔案，並藉由指令操作 GnuPG 軟體來幫您執行驗證。

底下範例假設您將該二檔案存放於「下載」資料夾中。 請注意：下列指令使用範例檔名，您必須改為實際下載檔案的確切檔名。

#### 對於 Windows 用戶 （變更 x86_64 到 i686 如果您有 32 位元軟體包）:

    gpgv --keyring .\tor.keyring Downloads\tor-browser-windows-x86_64-portable-13.0.1.exe.asc Downloads\tor-browser-windows-x86_64-portable-13.0.1.exe

命令的結果應該包含：

    gpgv: Good signature from "Tor Browser Developers (signing key) <torbrowser@torproject.org>"

如果此時出現「No such file or directory」的錯誤訊息的話，那就表示您在先前的步驟執行有誤，或者是您忘記將指令中的檔名修改成您實際下載取得的檔案名稱。

#### 重新整理 PGP 金鑰

執行以下的命令，可從金鑰伺服器上重新整理本地金鑰環中 Tor 瀏覽器開發者的簽名金鑰。同時將獲取新的子金鑰。

    gpg --refresh-keys EF6E286DDA85EA2A4BA7DE684E2C6E8793298290

#### 其他方式（使用公開金鑰）

如果您遭遇到無法解決的問題的話，也可以直接下載使用這把公開金鑰，或者也可以執行下列指令：

    curl -s https://openpgpkey.torproject.org/.well-known/openpgpkey/torproject.org/hu/kounek7zrdx745qydx6p59t9mqjpuhdf |gpg --import -

洋蔥路由瀏覽器開發者的金鑰已發佈至keys.openpgp.org站台，因此可以由https://keys.openpgp.org/vks/v1/by-fingerprint/EF6E286DDA85EA2A4BA7DE684E2C6E8793298290下載取得。 您可能會需要多了解 GnuPG的使用方式。

在我們的下載頁面裡，每個檔案都會伴隨著一個同名的「數位簽章」檔案，是以「.asc」結尾的，這些檔案即是 OpenPGP 的數位簽章檔。 這些數位簽章讓您可以去驗證下載好的檔案是否就是我們希望您取得的檔案。 隨著您使用的網頁瀏覽器不同會有所差異，但是在大多數的情況中，您可以直接右鍵點擊「數位簽章」的連結並點選「另存成檔案」來下載。

例如，`tor-browser-macos-14.5.6.dmg` 會搭配 `tor-browser-macos-14.5.6.dmg.asc`。 有些範例檔案的名稱不會跟您所下載的檔名完全相同。

請注意數位簽章上壓印的日期就是該套裝軟體被簽署的時間。 因此每當檔案被更新的時候，就會產生一個壓有不同日期的新的數位簽章。 只要您有驗證過數位簽章，就不用擔心上述有可能改變的數位簽章日期。

### 安裝 GnuPG

首先，開始驗證數位簽章前，您需要先安裝好 GnuPG。 若您是使用 MacOS 系統的話，您可以安裝GPGTools。

您會需要在終端機模式（在「應用程式」裡）輸入幾道指令，才能夠進行數位簽章驗證。

### 取得洋蔥路由開發人員的金鑰

洋蔥路由瀏覽器團隊會針對所發佈的洋蔥路由瀏覽器簽署。 匯入洋蔥路由瀏覽器開發者的簽署金鑰(0xEF6E286DDA85EA2A4BA7DE684E2C6E8793298290)：

    gpg --auto-key-locate nodefault,wkd --locate-keys torbrowser@torproject.org

您應該會看到類似下面這樣的訊息：

    gpg: key 4E2C6E8793298290: public key "Tor Browser Developers (signing key) <torbrowser@torproject.org>" imported
    gpg: Total number processed: 1
    gpg:               imported: 1
    EF6E286DDA85EA2A4BA7DE684E2C6E8793298290
    uid           [ unknown] Tor Browser Developers (signing key) <torbrowser@torproject.org>

注意：您的輸出可能與上文略有差異（例如到期日），但應可看到金鑰已正確匯入。

若您看見錯誤訊息，那就表示有地方出錯了，您必須要先釐清並解決問題才能繼續，您或許也可以利用其他方式（使用公開金鑰）來完成。

在匯入金鑰之後，您可以將它儲存成檔案（以金鑰指紋作為識別）：

    gpg --output ./tor.keyring --export 0xEF6E286DDA85EA2A4BA7DE684E2C6E8793298290

這道指令會把金鑰儲存成檔案並放置於`./tor.keyring`路徑中，即目前所在工作目錄。 如果執行此道指令後`./tor.keyring`仍然不存在，那就表示有地方出錯了，您必須要先釐清並解決該問題才能繼續。

### 驗證數位簽章

若要驗證您所下載的軟體套件的數位簽章，您還必須要下載相對應的「.asc」數位簽章檔案，並藉由指令操作 GnuPG 軟體來幫您執行驗證。

底下範例假設您將該二檔案存放於「下載」資料夾中。 請注意：下列指令使用範例檔名，您必須改為實際下載檔案的確切檔名。

#### macOS 使用者：

    gpgv --keyring ./tor.keyring ~/Downloads/tor-browser-macos-13.0.1.dmg.asc ~/Downloads/tor-browser-macos-13.0.1.dmg

命令的結果應該包含：

    gpgv: Good signature from "Tor Browser Developers (signing key) <torbrowser@torproject.org>"

如果此時出現「No such file or directory」的錯誤訊息的話，那就表示您在先前的步驟執行有誤，或者是您忘記將指令中的檔名修改成您實際下載取得的檔案名稱。

#### 其他方式（使用公開金鑰）

如果您遭遇到無法解決的問題的話，也可以直接下載使用這把公開金鑰，或者也可以執行下列指令：

    curl -s https://openpgpkey.torproject.org/.well-known/openpgpkey/torproject.org/hu/kounek7zrdx745qydx6p59t9mqjpuhdf |gpg --import -

洋蔥路由瀏覽器開發者的金鑰已發佈至keys.openpgp.org站台，因此可以由https://keys.openpgp.org/vks/v1/by-fingerprint/EF6E286DDA85EA2A4BA7DE684E2C6E8793298290下載取得。 亦可執行下列指令取得金鑰：

    gpg --keyserver keys.openpgp.org --search-keys EF6E286DDA85EA2A4BA7DE684E2C6E8793298290

您可能會需要多了解 GnuPG的使用方式。

在我們的下載頁面裡，每個檔案都會伴隨著一個同名的「數位簽章」檔案，是以「.asc」結尾的，這些檔案即是 OpenPGP 的數位簽章檔。 這些數位簽章讓您可以去驗證下載好的檔案是否就是我們希望您取得的檔案。 隨著您使用的網頁瀏覽器不同會有所差異，但是在大多數的情況中，您可以直接右鍵點擊「數位簽章」的連結並點選「另存成檔案」來下載。

例如，`tor-browser-linux-x86_64-14.5.6.tar.xz` 會搭配 `tor-browser-linux-x86_64-14.5.6.tar.xz.asc`。 有些範例檔案的名稱不會跟您所下載的檔名完全相同。

請注意數位簽章上壓印的日期就是該套裝軟體被簽署的時間。 因此每當檔案被更新的時候，就會產生一個壓有不同日期的新的數位簽章。 只要您有驗證過數位簽章，就不用擔心上述有可能改變的數位簽章日期。

### 安裝 GnuPG

若您是 GNU/Linux 系統的使用者的話，那您的系統中應該已經有安裝 GnuPG 程式了，這是在大多數 GNU/Linux 系統的封裝發行版中會預載的軟體。

驗證簽章時需在終端機視窗輸入若干指令；作法會因發行版而異。

### 取得洋蔥路由開發人員的金鑰

洋蔥路由瀏覽器團隊會針對所發佈的洋蔥路由瀏覽器簽署。 匯入洋蔥路由瀏覽器開發者的簽署金鑰(0xEF6E286DDA85EA2A4BA7DE684E2C6E8793298290)：

    gpg --auto-key-locate nodefault,wkd --locate-keys torbrowser@torproject.org

您應該會看到類似下面這樣的訊息：

    gpg: key 4E2C6E8793298290: public key "Tor Browser Developers (signing key) <torbrowser@torproject.org>" imported
    gpg: Total number processed: 1
    gpg:               imported: 1
    EF6E286DDA85EA2A4BA7DE684E2C6E8793298290
    uid           [ unknown] Tor Browser Developers (signing key) <torbrowser@torproject.org>

注意：您的輸出可能與上文略有差異（例如到期日），但應可看到金鑰已正確匯入。

若您看見錯誤訊息，那就表示有地方出錯了，您必須要先釐清並解決問題才能繼續，您或許也可以利用其他方式（使用公開金鑰）來完成。

在匯入金鑰之後，您可以將它儲存成檔案（以金鑰指紋作為識別）：

    gpg --output ./tor.keyring --export 0xEF6E286DDA85EA2A4BA7DE684E2C6E8793298290

這道指令會把金鑰儲存成檔案並放置於`./tor.keyring`路徑中，即目前所在工作目錄。 如果執行此道指令後`./tor.keyring`仍然不存在，那就表示有地方出錯了，您必須要先釐清並解決該問題才能繼續。

### 驗證數位簽章

若要驗證您所下載的軟體套件的數位簽章，您還必須要下載相對應的「.asc」數位簽章檔案，並藉由指令操作 GnuPG 軟體來幫您執行驗證。

底下範例假設您將該二檔案存放於「下載」資料夾中。 請注意：下列指令使用範例檔名，您必須改為實際下載檔案的確切檔名。

#### 對於 GNU/Linux 用戶 （變更 x86_64 到 i686 如果您有 32 位元軟體包）:

    gpgv --keyring ./tor.keyring ~/Downloads/tor-browser-linux-x86_64-13.0.1.tar.xz.asc ~/Downloads/tor-browser-linux-x86_64-13.0.1.tar.xz

命令的結果應該包含：

    gpgv: Good signature from "Tor Browser Developers (signing key) <torbrowser@torproject.org>"

如果此時出現「No such file or directory」的錯誤訊息的話，那就表示您在先前的步驟執行有誤，或者是您忘記將指令中的檔名修改成您實際下載取得的檔案名稱。

#### 重新整理 PGP 金鑰

執行以下的命令，可從金鑰伺服器上重新整理本地金鑰環中 Tor 瀏覽器開發者的簽名金鑰。同時將獲取新的子金鑰。

    gpg --refresh-keys EF6E286DDA85EA2A4BA7DE684E2C6E8793298290

#### 其他方式（使用公開金鑰）

如果您遭遇到無法解決的問題的話，也可以直接下載使用這把公開金鑰，或者也可以執行下列指令：

    curl -s https://openpgpkey.torproject.org/.well-known/openpgpkey/torproject.org/hu/kounek7zrdx745qydx6p59t9mqjpuhdf |gpg --import -

洋蔥路由瀏覽器開發者的金鑰已發佈至keys.openpgp.org站台，因此可以由https://keys.openpgp.org/vks/v1/by-fingerprint/EF6E286DDA85EA2A4BA7DE684E2C6E8793298290下載取得。 亦可執行下列指令取得金鑰：

    gpg --keyserver keys.openpgp.org --search-keys EF6E286DDA85EA2A4BA7DE684E2C6E8793298290

您可能會需要多了解 GnuPG的使用方式。