Bir sayısal imza, bir paketin gerçekten özgün geliştiricileri tarafından üretildiğini ve üzerinde sonradan bir değişiklik yapılmadığını anlamak için kullanılır. Aşağıda bunun neden önemli olduğunu ve indirdiğiniz bir Tor kopyasının bizim tarafımızdan oluşturulmuş ve bazı saldırganlar tarafından değiştirilmemiş olduğunu nasıl anlayabileceğinizi anlatacağız.

Each file on our download page is accompanied by a file labelled "signature" with the same name as the package and the extension ".asc". These .asc files are OpenPGP signatures. Bu imzalar, indirdiğiniz dosyanın tam olarak almanızı istediğimiz dosya olduğunu doğrulamanızı sağlar. This will vary by web browser, but generally you can download this file by right-clicking the "signature" link and selecting the "save file as" option.

Örneğin, torbrowser-install-win64-9.0_en-US.exe dosyasının imza dosyası torbrowser-install-win64-9.0_en-US.exe.asc şeklindedir. Bunlar örnek dosya adlarıdır ve indirdiğiniz dosya adlarıyla birebir aynı olmaz.

Şimdi size, indirdiğiniz bir dosyanın sayısal imzasını farklı işletim sistemleri üzerinde nasıl doğrulayabileceğinizi anlatacağız. İmza dosyası tarihinin, paketin imzalandığı tarih ile aynı olduğunu görebilirsiniz. Yani her yeni paket dosyası yüklendiğinde, farklı bir tarihi olan yeni bir imza oluşturulur. İmzayı doğruladığınız sürece, belirtilen tarihin değişmesi önemli değildir.

GnuPG kurmak

İmzaları doğrulayabilmeniz için öncelikle GnuPG uygulaması kurulmuş olmalıdır.

Windows kullanıcıları için:

Windows kullanıyorsanız, Gpg4win uygulamasını indirip kurucuyu çalıştırın.

İmzayı doğrulamak için cmd.exe windows komut satırında bir kaç komut yazmanız gerekir.

macOS kullanıcıları için:

If you are using macOS, you can install GPGTools.

İmzayı doğrulamak için Terminal ("Uygulamalar altında") üzerinden bir kaç komut yazmanız gerekir.

GNU/Linux kullanıcıları için:

GNU/Linux kullanıyorsanız, çoğu GNU/Linux dağıtımında önceden kurulmuş olduğundan büyük olasılıkla sisteminizde GnuPG vardır.

İmzayı doğrulamak için uçbirim üzerinden bir kaç komut yazmanız gerekir. Bunu nasıl yapacağınız dağıtımınızın özelliklerine bağlıdır.

Tor geliştiricilerinin anahtarlarını almak

Tor Browser sürümlerini Tor Browser Ekibi imzalar. Tor Browser Geliştiricilerinin imzalama anahtarını içe aktarın (0xEF6E286DDA85EA2A4BA7DE684E2C6E8793298290):

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

Bunun sonucunda şöyle bir şey görmelisiniz:

gpg: key 4E2C6E8793298290: public key "Tor Browser Developers (signing key) <torbrowser@torproject.org>" imported
gpg: Total number processed: 1
gpg:               imported: 1
pub   rsa4096 2014-12-15 [C] [expires: 2025-07-21]
      EF6E286DDA85EA2A4BA7DE684E2C6E8793298290
uid           [ unknown] Tor Browser Developers (signing key) <torbrowser@torproject.org>
sub   rsa4096 2018-05-26 [S] [expires: 2020-12-19]

Bir hata iletisi görürseniz bir şeyler ters gitmiş demektir ve sorunun ne olduğunu anlayana kadar devam edemezsiniz. Bunun yerine Çözüm (bir genel anahtar kullanmak) bölümünü kullanarak anahtarı içe aktarabilirsiniz.

After importing the key, you can save it to a file (identifying it by its fingerprint here):

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

This command results in the key being saved to a file found at the path ./tor.keyring, i.e. in the current directory. Bu komutu yürüttükten sonra ./tor.keyring klasörü yoksa, bir şeyler ters gitmiş demektir ve sorunu anlayana kadar devam edemezsiniz.

İmzayı doğrulamak

İndirdiğiniz paketin imzasını doğrulamak için kurucu dosyasının yanında ilgili ".asc" imza dosyasını da indirmeniz gerekir. Ardından bir GnuPG komutu yazarak indirdiğiniz dosyanın imzasını doğrulayabilirsiniz.

Aşağıdaki örnek komutlar bu iki dosyayı Downloads klasörüne indirdiğinizi varsayarak yazılmıştır. Bu komutların örnek dosya adları kullandığını ve sizin dosyanızın farklı olabileceğini unutmayın.9.0 sürümü yerine başka bir sürümü ya da İngilizce (en-US) yerine başka bir dili seçmiş olabilirsiniz.

Windows kullanıcıları için:

gpgv --keyring .\tor.keyring Downloads\torbrowser-install-win64-9.0_en-US.exe.asc Downloads\torbrowser-install-win64-9.0_en-US.exe

macOS kullanıcıları için:

gpgv --keyring ./tor.keyring ~/Downloads/TorBrowser-9.0-osx64_en-US.dmg.asc ~/Downloads/TorBrowser-9.0-osx64_en-US.dmg

GNU/Linux kullanıcıları için (32 bit paketi kullanıyorsanız 64 yerine 32 yazın):

gpgv --keyring ./tor.keyring ~/Downloads/tor-browser-linux64-9.0_en-US.tar.xz.asc ~/Downloads/tor-browser-linux64-9.0_en-US.tar.xz

Komutun sonucunda şöyle bir şey görmelisiniz:

gpgv: Signature made 07/08/19 04:03:49 Pacific Daylight Time
gpgv:                using RSA key EB774491D9FF06E2
gpgv: Good signature from "Tor Browser Developers (signing key) <torbrowser@torproject.org>"

'Dosya ya da klasör bulunamadı' şeklinde hata iletileri alırsanız ya önceki adımlarda bir şeyler yanlıştır ya da örnek dosya adlarını sizin durumunuza uyan dosya adları ile değiştirmemişsinizdir.

Çözüm (herkese açık bir anahtar kullanarak)

Çözemediğiniz sorunlar ile karşılaşıyorsanız bunun yerine herkese açık anahtarı indirip kullanmaktan çekinmeyin. Alternatif olarak şu komutu kullanabilirsiniz:

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

GnuPG hakkında ayrıntılı bilgi almak için buraya tıklayabilirsiniz.