Bir gpg alt anahtarı için farklı bir geçiş deyimine nasıl sahip olabilirsiniz?


16

Bir dağıtım işlemini otomatikleştirmem gerekiyor ve araç otomatik olarak bırakma eserlerini imzalayacaktır. Anahtarlıkta yalnızca alt anahtarlar ve iki alt anahtar oluşturmak için kullandığım birincil anahtar var. Bir alt anahtar imzalama ve bir alt şifreleme için.

Şu anda tüm anahtarlar için tek geçişli ifade var. Birincil dosyada da risk oluşturacağı için bu geçiş ifadesini bir yapılandırma dosyasında belirtmek istemiyorum.

Bu yüzden alt anahtar için farklı bir geçiş cümlesi ayarlayacağımı düşündüm:

$ gpg --edit-key [subkey-id]
gpg> passwd
gpg> save

Ancak bu, diğer anahtarların geçiş deyimini de değiştirdi.

Ayrı ayrı anahtarlar için nasıl ayrı bir geçiş ifadesi ayarlayabilirim?

Yanıtlar:


14

GnuPG ile alt anahtarlar için ayrı parolalar ayarlamak mümkün değildir. Ancak, bu durumda iyi uygulama fikri gibi görünen bir çözüm var:

  1. Seçtiğiniz alt anahtarı verin (örnekte, alt anahtarın kimliği vardır 0xDEADBEEF). Ünlem işaretini unutmayın, GnuPG'nin ait olduğu birincil anahtarla değil, aslında alt anahtarla çalışmasını sağlar!

    gpg --export-secret-subkeys 0xDEADBEEF! >subkeys.pgp
    

    Alt anahtarda ortak birincil anahtar ve özel birincil "anahtar saplama" eklenir, ancak özel birincil anahtarın kendisi eklenmez.

  2. Alt anahtarı başka bir GnuPG giriş dizinine aktarın. Örnek, proje kök dizininizde bulunmanızı ve etcorada bu anahtarlık gibi şeyler için bir klasör olmasını bekler .

    gpg --homedir ./etc/gnupg --import subkeys.pgp
    
  3. Ayrılmış alt anahtarın parolasını değiştirin.

    gpg --homedir ./etc/gnupg --edit-key 0xDEADBEEF
    
  4. "Normal" anahtarlığınızı kullanmak yerine, her zaman yukarıda belirtildiği gibi ayrı GnuPG dizinine bakın.

Alternatif olarak, kendi anahtarınızla imzaladığınız bir proje anahtarı oluşturmayı düşünebilirsiniz. Bu, diğer katkıda bulunanların / kullanıcıların da anahtarı imzalayabilmeleri (ve dolayısıyla bunun gerçekten proje için kullanılan anahtar olduğunu onaylayabilmeleri) avantajına sahip olabilir ve başka birinin bakımı devralması durumunda projeyi teslim etmek daha kolay olabilir.


1
Bu GnuPG 2.2.4 ile çalışmaz. "Bunu yapmak için gizli anahtara ihtiyacım var" demiyor. Çok üzücü: '(
steinybot

Bu yüzden otomatik repo imzalama için şifresiz gpg tuşları kullanmam gerekiyor mu?
SuperSandro2000

Hayır, kullanarak parolayı önceden önbelleğe alabilirsiniz gpg-agent. Bir bak gpg-preset-passphrase.
Jens Erat

5

Çok eski (2013) gnupg.org posta arşivi, bir alt anahtar için ayrı bir şifre oluşturmak için garip bir geçici çözümü açıklar .
Kısıtlamanın, anahtar kümesinin (ana alt anahtar gruplaması) veri yapısı içinde değil, yalnızca anahtar kümesinin oluşturulması ve değiştirilmesi için yazılım arayüzünde olduğunu ima eder.

Referanstan bir alıntı:

Selam,

ana anahtardan ve alt anahtarlardan ana anahtardan farklı (örneğin daha kısa) parolaya sahip birkaç alt anahtar olması mümkün müdür?

Muhtemelen aradığınız şey çevrimdışı bir mainkeydir (bkz. --Export-secret- alt anahtarları). Ama cevap: evet. gpg-agent, anahtarların bağlantısını önemsemez. Aynı parolayı birkaç kez bile ister (aynı anahtarın farklı bileşenleri için).

Ancak GnuPG bunu doğrudan desteklemiyor.

1) Gizli anahtarı dışa aktarın (--export-secret-keys --armor olmadan)

2) Parolayı Değiştir

3) Tekrar dışa aktarın (elbette farklı bir dosyaya)

4) Her iki dosyada (farklı dizinlerde) gpgsplit kullanın. Sonuç şuna benzer:

000001-005.secret_key 000002-013.user_id 000003-002.sig 000004-007.secret_subkey 000005-002.sig

5) Şimdi iki grubun bileşenlerini karıştırıyorsunuz: mkdir kombine mv a / 000001 * a / 000002 * a / 000003 * kombine / mv b / 000004 * b / 000005 * kombine / cd kombine / cat *> different_passphrases.gpg

6) Anahtarı secring'den silin: --delete-secret-key

7) Yenisini içe aktarın: gpg --import different_passphrases.gpg

Hauke ​​Laging

Bu işlemi şahsen onaylamadım - sadece okuduğumu bildirdim.

Bu önemli konuyla ilgili GnuPG belgelerinde şartname ve tartışma eksikliği hayal kırıklığı yaratıyor.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.