How can I verify tor source code?
Attention: These instructions are to verify the tor source code. Please follow the right instructions to verify Tor Browser's signature.
Цифровая подпись подтверждает, что конкретный файл был создан его разработчиками и с тех пор не изменялся. Below we explain why it is important and how to verify that the tor source code you download is the one we have created and has not been modified by some attacker.
Each file on our download page is accompanied by a file labelled "sig" with the same name as the package and the extension ".asc". These .asc files are OpenPGP signatures. Подпись удостоверяет, что вы скачали подлинный файл. This will vary by web browser, but generally you can download this file by right-clicking the "sig" link and selecting the "save file as" option.
For example, tor-0.4.6.7.tar.gz
is accompanied by tor-0.4.6.7.tar.gz.asc
.
Эти имена файлов выбраны для примера. Они не будут в точности совпадать с именами файлов, которые скачиваете вы.
Давайте посмотрим, как проверить цифровую подпись скачанного файла в разных операционных системах. Пожалуйста, учтите, что подпись датируется тем числом, когда файл был подписан. Для каждого нового файла, размещенного на сайте, существует отдельная подпись со своей датой. Если вы уже проверили подпись, на даты можно не обращать внимание.
Установка GnuPG
Для проверки подписей сначала нужно установить программу GnuPG.
Пользователи Windows
Если вы пользователь Windows, скачайте Gpg4win и запустите программу установки.
Чтобы проверить подпись, понадобится набрать несколько команд в командной строке (cmd.exe
).
Пользователи macOS
Если вы пользуетесь macOS, можете установить GPGTools.
Чтобы проверить подпись, понадобится набрать несколько команд в Терминале (найдите его среди приложений).
Пользователи GNU/Linux
Если вы пользуетесь GNU/Linux, вероятно, программа GnuPG у вас уже установлена. Большинство сборок GNU/Linux включают GnuPG по умолчанию.
In order to verify the signature you will need to type a few commands in a terminal window. How to do this will vary depending on your distribution.
Получение ключа разработчиков Tor
Roger Dingledine (0xEB5A896A28988BF5 and 0xC218525819F78451), Nick Mathewson (0xFE43009C4607B1FB) sign Tor source tarballs.
Fetching Nick Mathewson most recent key:
$ gpg --auto-key-locate nodefault,wkd --locate-keys nickm@torproject.org
Вы увидите что-то в этом роде:
gpg: key FE43009C4607B1FB: public key "Nick Mathewson <nickm@torproject.org>" imported
gpg: Total number processed: 1
gpg: imported: 1
pub rsa4096 2016-09-21 [C] [expires: 2025-10-04]
2133BC600AB133E1D826D173FE43009C4607B1FB
uid [ unknown] Nick Mathewson <nickm@torproject.org>
sub rsa4096 2016-09-23 [S] [expires: 2025-10-04]
sub rsa4096 2016-09-23 [E] [expires: 2025-10-04]
Если вы получили сообщение об ошибке - что-то пошло не так, и вы не можете продолжать, пока не выясните, почему это не сработало. You might be able to import the key using the Workaround (using a public key) section instead.
После того, как ключ импортирован, вы можете сохранить его в файл (для идентификации служит отпечаток):
$ gpg --output ./tor.keyring --export 0x2133BC600AB133E1D826D173FE43009C4607B1FB
В результате ключ будет сохранён в файле в папке ./tor.keyring
, то есть, в текущей папке.
Если после выполнения этой команды не появится ./tor.keyring
, значит, что-то пошло не так. Вы не сможете продолжить, пока не выясните причину.
Проверка подписи
Чтобы проверить подпись для пакета с помощью GnuPG, нужно скачать также прилагаемый .asc-файл с подписью.
В следующих примерах мы предполагаем, что вы уже скачали эти два файла (сам пакет и подпись) в папку "Загрузки" ("Downloads"). Внимание: эти команды используют в качестве имен файлов примеры. Ваши файлы будут иметь другие имена (ваша версия Tor Browser будет новее, и, вероятно, вы выберете русский язык).
Пользователи Windows
gpgv --keyring .\tor.keyring Downloads\tor-0.4.6.7.tar.gz.asc Downloads\tor-0.4.6.7.tar.gz
Пользователи macOS
gpgv --keyring ./tor.keyring ~/Downloads/tor-0.4.6.7.tar.gz.asc ~/Downloads/tor-0.4.6.7.tar.gz
Пользователи GNU/Linux
gpgv --keyring ./tor.keyring ~/Downloads/tor-0.4.6.7.tar.gz.asc ~/Downloads/tor-0.4.6.7.tar.gz
В результате этой команды вы увидите нечто подобное:
gpgv: Signature made Mon 16 Aug 2021 04:44:27 PM -03
gpgv: using RSA key 7A02B3521DC75C542BA015456AFEE6D49E92B601
gpgv: Good signature from "Nick Mathewson <nickm@torproject.org>"
Если увидите сообщение об ошибке вроде "Нет такого файла или папки", значит, что-то пошло не так на одном из предыдущих шагов. Другая причина: вы использовали названия файлов из примеров (ваши реальные названия другие).
Альтернативный вариант (с использованием открытого ключа)
Если вы столкнулись с непреодолимыми ошибками, можете скачать и использовать этот открытый ключ. Как вариант, можно выполнить следующую команду:
$ 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/2133BC600AB133E1D826D173FE43009C4607B1FB.
Если вы используете macOS или GNU/Linux, ключ также можно получить, выполнив следующую команду:
$ gpg --keyserver keys.openpgp.org --search-keys nickm@torproject.org
Подробнее о GnuPG можно почитать здесь.