Linux’ta İndirilen Yazılımın PGP İmzası Nasıl Doğrulanır

PGP (Pretty Good Privacy), veri iletişimini şifrelemek ve imzalamak için kullanılabilen genel anahtarlı bir şifreleme yazılımıdır. Bu eğitimde, Linux’ta İnternet’ten indirilen yazılımın PGP imzasının nasıl doğrulanacağına bakacağız.

 

Linux kullanıcıları, yazılımları dağıtımlarının havuzlarından güvenli bir şekilde yükleyebilir. Ancak, bir web sitesinden yazılım indirmeniz ve yüklemeniz gereken zamanlar vardır. İndirdiğiniz yazılımın tahrif edilmediğinden nasıl emin olabilirsiniz?

 

Bazı yazılım yazarları, yazılımlarını, OpenPGP standardının ücretsiz bir yazılım uygulaması olan GPG (GNU Privacy Guard) gibi bir PGP programı kullanarak imzalar. Bu durumda, yazılımın bütünlüğünü GPG kullanarak doğrulayabilirsiniz.

 

İşlem nispeten basittir:

Yazılım yazarının genel anahtarını indirirsiniz.

Doğru anahtar olduğundan emin olmak için Public Key in fingerprint ini  kontrol edin.

Doğru Public Key i GPG genel key lerinizin içine aktarın.

Yazılımın PGP imza dosyasını indirin. PGP imzasını doğrulamak için Public Key i kullanın.

İmza doğruysa, yazılıma müdahale edilmemiştir

VeraCrypt’i, indirilen yazılımın PGP imzasını nasıl doğrulayacağınızı göstermek için örnek olarak kullanacağız.

 

Örnek: VeraCrypt’in PGP İmzasını Doğrulayın:

VeraCrypt açık kaynaklı bir yazılım olmasına rağmen, Ubuntu deposuna dahil değildir. VeraCrypt Linux yükleyicisini resmi web sitesinden indirebiliriz. Ubuntu 20.04 masaüstü kullanıyorum, bu yüzden Ubuntu 20.04 için .deb dosyasını indiriyorum.

İndirme linki bu adreste  https://veracrypt.fr/en/Downloads.html

 

VeraCrypt indirme sayfasında, PGP Public Key ve PGP Signature indirme bağlantısını da bulabilirsiniz. Bu iki dosyayı indirmek için bağlantıları tıklayın. VeraCrypt’in PGP Public Key anahtarını indirmek için aşağıdaki komutu çalıştırabiliriz.

wget https://www.idrix.fr/VeraCrypt/VeraCrypt_PGP_public_key.asc

 

 

 

Public Key ile  herhangi bir şey yapmadan önce, doğru anahtar olup olmadığını görmek için her zaman key in fingerprint  ını  kontrol etmeliyiz. Aşağıdaki komutu kullanarak Key in  fingerprint ını görüntüleyelim.

gpg --show-keys VeraCrypt_PGP_public_key.asc

 

Çıktının ikinci satırı, Key in fingerprint ıdır.

 

 

1.4.20 gibi çok eski bir GPG sürümü (gpg – sürüm) kullanıyorsanız, Fingerprint iı görüntülemek için aşağıdaki komutu kullananabiliriz.

gpg --with-fingerprint VeraCrypt_PGP_public_key.asc

VeraCrypt web sitesinde yayınlanan Fingerprint ile karşılaştırıyorum.

 

 

Gördüğünüz gibi, iki Fingerprint aynı, yani Public Key doğru. Böylece Public Key i GPG Public Key lerimize aktarabiliriz.

gpg --import VeraCrypt_PGP_public_key.asc

 

Şimdi aşağıdaki komutu kullanarak yazılım yükleyici dosyasının imzasını doğrulayın. İmza dosyasını (.sig) ve yazılım yükleyici dosyasını belirtmeniz gerekir. Bu  ayrı bir imzadır, yani imza ve yazılımın ayrı dosyalarda olduğu anlamına gelir.

 

gpg --verify veracrypt-1.24-Update7-Ubuntu-20.04-amd64.deb.sig veracrypt-1.24-Update7-Ubuntu-20.04-amd64.deb

Çıktının anlamı :İmza İyi (Good Signature)

Yazılının Hash değeri, yazılım yazarının Private Key ile şifrelenmiştir. GPG, Hash değerinin  şifresini çözmek için Public Key  kullanır, ardından VeraCrypt yükleyicisinin hash değerini hesaplar ve ikisini karşılaştırır. Bu iki Hash değeri eşleşirse, imza iyidir ve yazılıma müdahale edilmemiştir.

GPG size bunun kötü bir imza olduğunu söylüyorsa, yazılım yükleyicisi tahrif edilmiştir veya bozulmuştur.

 

Güvenilir Bir Kaynaktan Public Key i  İçe Aktarma:

Yazılım üretisicinin size web sitesinde yazılımının Public Key kimliğini söylerse, aşağıdaki komutla Public Key i içe aktarabileceğinizi, böylece PGP Public Key i manuel olarak indirip anahtarlığınıza aktarmanız gerekmediğini unutmayın.

 

gpg --recv-keys <key-ID>

 

Ardından fingerprint ı şununla görüntüleyin:

gpg --fingerprint <key-ID>

Ve çıktıdaki fingerprint i  web sitesinde yayınlananla fingerprint ı karşılaştırın. Bu daha güvenlidir çünkü Public Key, varsayılan olarak ~ / .gnupg / gpg.conf dosyasında hkp: //keys.gnupg.net olarak ayarlanan bir Public Key sunucusundan içe aktarılır. Dünya çapında yüzlerce Public Key sunucusu var. Ubuntuda kendi anahtar sunucusu sahiptir. MIT’de de bir tane var.

 

Aşağıdaki hatayı görürseniz,

gpg: keyserver receive failed: No data

daha sonra bunun gibi farklı bir anahtar sunucusu deneyebilirsiniz:

 

gpg --keyserver hkp://keyserver.ubuntu.com --recv-keys 0x680D16DE

 

Makalemiz bu kadar,  umarım sizler için faydalı olur.Okuduğunuz için teşekkür ederim.

 

Bu eğiticiye oy ver
[Total: 12 Average: 5]
Firat CANOĞLU TAĞ