Bir OpenPGP anahtarıyla alt anahtarı arasındaki ilişki nedir?


6

Oldukça iyi öğrendim tüm asimetrik şifreleme ihtiyaçları için OpenSSL ile düz eski RSA kullanıyorum, ancak kafamı OpenPGP protokolünün etrafına sarmak için biraz zor zaman geçiriyorum. Bunun için, bu birkaç soru olacak.

Debian kutumda, GnuPG kullanarak, mevcut anahtarlıkta bir ana anahtar yarattıktan sonra, varsayılan bir alt anahtar yaratıldığını fark ettim. Biraz okuduktan sonra, GnuPG'nin anahtarları bu şekilde otomatik olarak yönettiğini öğrendim; Ana anahtar kesinlikle imzalamak için, alt anahtar ise kesinlikle şifreleme için kullanılır. Bu, özel ve genel bir anahtar için yalnızca farklı adlara sahip olduklarına inanmamı sağladı: Ana anahtar (özel anahtar gibi) yalnızca alt anahtarın (genel anahtarın) şifresini çözebilecek verileri, ancak alt anahtarın şifresini çözebilirdi. açık anahtar) yalnızca verileri şifreleyebildi; bu daha sonra yalnızca ana anahtar (özel anahtar) tarafından şifresini çözdü. Bu varsayımda doğru muyum, yoksa hepsi 2 anahtar çift mi?

İki ayrı anahtar çifti ise, alt anahtarı ana anahtarla matematiksel olarak ne bağlar?

Şifreleme için bir alt anahtarın otomatik olarak oluşturulduğu bu metodu kullanan sadece GnuPG mi, yoksa OpenPGP protokolü tarafından zorunlu mu?

Bir anahtar sunucusuna bir anahtar yüklediğimde, hangi anahtar yüklenir, ana anahtarım veya alt anahtarım? Ya da her ikisi de?

Kullandığımda --export kimliğimi belirlerken hangi OpenPGP anahtarının dışa aktarılacağı?

Yanıtlar:


7

Birincil Anahtarlar ve Alt Anahtarlar Hakkında

Ana anahtar (özel anahtar gibi) yalnızca alt anahtarın (genel anahtarın) şifresini çözebilecek verileri imzalamak için kullanıldı, ancak alt anahtar (genel anahtar) yalnızca ana anahtarın şifresini çözebilecek olan verileri şifreleyebildi; özel anahtar). Bu varsayımda doğru muyum, yoksa hepsi 2 anahtar çift mi?

Açık / özel anahtar (aynı zamanda asimetrik de denir) şifreleme kavramlarını tam anlamıyla elde edemezsiniz. Her bir ortak ve özel anahtar grubu bölünür, başkalarının kullanması ve özel anahtarı gizli tutması için ortak anahtarı yayınlarsınız. Özel anahtar tarafından verilen imzalar genel anahtar aracılığıyla doğrulanabilir, genel anahtar kullanılarak şifrelenen mesajlaşmaların özel anahtarla şifresi çözülebilir. OpenPGP'de birincil anahtar ile alt anahtar çiftleri arasında acil bir ilişki yoktur, bunlar tamamen farklı anahtar çiftleridir.

Şifreleme için bir alt anahtarın otomatik olarak oluşturulduğu bu metodu kullanan sadece GnuPG mi, yoksa OpenPGP protokolü tarafından zorunlu mu?

GnuPG'deki varsayılan ayar, sertifikalandırma ve imzalar için kullanılan birincil anahtar çiftine sahip olmanız, şifreleme alt anahtarı ise yalnızca şifreleme için kullanılır. RSA'yı kullanarak, tüm bu işlemleri destekleyen (ve GnuPG ve --expert bayrak, yapabilirsiniz!). Bunun nedeni, yalnızca işlemlerden birini destekleyen DSA ve Elgamal gibi diğer algoritmalardır (DSA yalnızca imzalama içindir, şifreleme için Elgamal). gerek farklı anahtarlara sahip olmak için.

Farklı kullanımlar için farklı anahtarlara sahip olmanın bazı avantajları da vardır: belirli koşullar altında imzalardan özel bir anahtar hesaplanmasına izin veren bir kusur bulunduğunu düşünün. İmza anahtarınız hedeflenirken, şifreleme alt anahtarı başka bir anahtardır ve bu saldırı tarafından hedeflenmez. Hatta bazı insanlar birincil anahtarı yalnızca sertifikalandırma ile sınırlandırmayı düşünür ve iki alt anahtar çifti eklemek en iyi yöntemdir, biri imzalamak, biri şifrelemek içindir.

Cilt İmzaları

2 ayrı anahtar çifti ise, alt anahtarı ana anahtarla matematiksel olarak ne bağlar?

OpenPGP'de, bir alt anahtar oluşturulduğunda özel bir tür bağlayıcı imza verilir. İmzalama yeteneğine sahip alt anahtarlar, birincil anahtarda böyle bir bağlayıcı imza da verebilir. Bu özel imzalar RFC 4880, OpenPGP, 5.2.1. İmza Türleri :

   0x18: Subkey Binding Signature
       This signature is a statement by the top-level signing key that
       indicates that it owns the subkey.  This signature is calculated
       directly on the primary key and subkey, and not on any User ID or
       other packets.  A signature that binds a signing subkey MUST have
       an Embedded Signature subpacket in this binding signature that
       contains a 0x19 signature made by the signing subkey on the
       primary key and subkey.

   0x19: Primary Key Binding Signature
       This signature is a statement by a signing subkey, indicating
       that it is owned by the primary key and subkey.  This signature
       is calculated the same way as a 0x18 signature: directly on the
       primary key and subkey, and not on any User ID or other packets.

GnuPG'de Alt Anahtarları Adresleme

Bir anahtar sunucusuna bir anahtar yüklediğimde, hangi anahtar yüklenir, ana anahtarım veya alt anahtarım? Ya da her ikisi de?

Kullandığımda --export kimliğimi belirlerken hangi OpenPGP anahtarının dışa aktarılacağı?

Genellikle, GnuPG anahtarında ID'ler ve UID'ler daima birincil anahtara çözümlenir. Tüm dışa aktarma işlemleri (ve bir anahtar sunucusuna yükleme de dışa aktarma olarak kabul edilir), anahtarınızdaki alt anahtarları, kullanıcı kimliklerini ve sertifikaları da verir. İmzalama ve şifreleme gibi diğer işlemler için de benzer şeyler vardır. Eğer sen Gerçekten mi İşlemler için bir alt anahtarı belirtmek istiyorsanız, eklemek zorundasınız. ! alt anahtarın arkasında (ör. gpg --recipient 0xDEADBEEF! --encrypt ).


1

Ana anahtar ile bir sertifika otoritesi (CA) ile imzaladığı ve verdiği sertifikalar arasındaki ilişki gibi alt anahtarlar arasındaki ilişkiyi düşünmeyi seviyorum. Sertifikaları onaylamaya çalışan üçüncü taraflar CA'ya bir güven oluşturur ve vermiş olduğu sertifikaların imzasını doğrulamak için ortak anahtarını kullanır. Aynı şekilde, başkalarının da PGP ana anahtarını doğrulaması ve imzalaması (diğer bir deyişle merkezi olmayan, tröstler ağı). Sonra, alt anahtarlarınızı, verilerin imzalanması ve şifrelenmesiyle ilgili tüm pratik çalışmalar için kullanırsınız. Diğerleri alt anahtarların geçerliliğini onaylamak istediklerinde, ana anahtarınızın (umarım) güvenilir olduğu (çünkü güvenilir olan diğer anahtarlar tarafından imzalandığından) ve alt anahtarlardaki imzayı doğrulamak için kullanılabileceği gerçeğini kullanırlar, Böylece alt anahtarları güvenilir olarak belirleme.

Yeni alt anahtarların imzalanması gibi şeyler dışında ana anahtarlar nadiren kullanılmalıdır.

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.