प्रमुख विवरण सूची में GPG उपयोग झंडे को कैसे परिभाषित किया गया है?


58

जब मैं एक कुंजी का विवरण सूचीबद्ध करता हूं तो मुझे इस तरह से आउटपुट मिलता है:

$ gpg --edit-key SOMEID
pub [..] created: [..] expires: [..]   usage:SC
[..]
sub [..] created: [..] expires: [..]   usage: E

या यहां तक usage: SCAकि एक अन्य कुंजी (मास्टर-कुंजी भाग) पर भी।

उपयोग क्षेत्र में इन संक्षिप्त नाम का क्या अर्थ है?

मैं इसे प्राप्त कर सकता हूं:

S -> for signing
E -> for encrypting

लेकिन क्या Cऔर A?

और वहाँ अधिक हैं?

और इस तरह से सामान कहाँ देखना है?

जवाबों:


59

ठीक है, जीपीजी मैनुअल इन संक्षिप्ताक्षरों का उल्लेख नहीं करता है। इस प्रकार, किसी को स्रोत को देखना होगा।

उदाहरण के लिए डेबियन / उबंटू के तहत:

$ apt-get source gnupg2
$ cd gnupg2-2.0.17
$ cscope -bR
$ grep 'usage: %' . -r --exclude '*po*'
$ vim g10/keyedit.c
jump to usage: %
jump to definition of `usagestr_from_pk`

कोड से निम्नलिखित तालिका प्राप्त कर सकते हैं:

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
लगातार चरित्र
───────────────────────────────
PUBKEY_USAGE_SIG S
PUBKEY_USAGE_CERT C
PUBKEY_USAGE_ENC E
PUBKEY_USAGE_AUTH A
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

इस प्रकार, उदाहरण के लिए, usage: SCAप्रमाण पत्र और प्रमाणीकरण प्रयोजनों को बनाने के लिए उप-कुंजी का उपयोग हस्ताक्षर करने के लिए किया जा सकता है।


7
डॉक्स में वास्तव में कहीं भी?
Jaime Hablutzel

@JaimeHablutzel, क्या आपको इस पर कोई अच्छा दस्तावेज मिला?
एरिक फेल

नहीं, क्षमा करें, लेकिन स्रोत शुरू करने के लिए एक अच्छी जगह लगता है
Jaime Hablutzel

15

--edit-keyलिस्टिंग का लेआउट प्रलेखित नहीं है (ऐसा नहीं है कि मुझे वैसे भी मिल सकता है)। हालाँकि आपके द्वारा उल्लिखित संक्षिप्त विवरण सूचना पन्नों में कहीं हैं ( info gpg)।

मैंने खोज की S:और पाया कि मैं वास्तव में खोजना चाहता था usage:

"GPG कुंजी संबंधित विकल्प":

4.2.1 कॉन्फ़िगरेशन को कैसे बदलना है

ये विकल्प कॉन्फ़िगरेशन बदलने के लिए उपयोग किए जाते हैं और आमतौर पर विकल्प फ़ाइल में पाए जाते हैं।

'--list-options parameters'

 show-usage

      Show usage information for keys and subkeys in the standard
      key listing.  This is a list of letters indicating the allowed
      usage for a key ('E'=encryption, 'S'=signing,
      'C'=certification, 'A'=authentication).  Defaults to no.

तो, gpg -k --list-options show-usage 1A3ABKEYआपको कुछ इस तरह दिखाएगा:

pub   rsa4096/1A3ABKEY 2015-01-25 [SC]
uid         [ultimate] Some Key
sub   rsa4096/4B907KEY 2015-09-19 [S]
sub   rsa4096/F9A41KET 2015-09-19 [E]

कुछ और जानकारी "GPG के अनअटेंडेड यूज़" में मिली है

कुंजी-उपयोग: उपयोग-सूची

 Space or comma delimited list of key usages.  Allowed values are
 'encrypt', 'sign', and 'auth'.  This is used to generate the key
 flags.  Please make sure that the algorithm is capable of this
 usage.  Note that OpenPGP requires that all primary keys are
 capable of certification, so no matter what usage is given here,
 the 'cert' flag will be on.  If no 'Key-Usage' is specified and the
 'Key-Type' is not 'default', all allowed usages for that particular
 algorithm are used; if it is not given but 'default' is used the
 usage will be 'sign'.

तो, जबकि तुरंत स्पष्ट नहीं है, जानकारी वहाँ है, कहीं, आपके सिस्टम पर। यदि manआपकी मदद नहीं करता है, तो कोशिश करें man -kऔर / या info


मैं इसे मैन पेज पर gpg 1.4.18 के लिए देख सकता हूँ, हालाँकि यह gpg 2.0.28 के लिए मैनुअल से अनुपस्थित है। इसके अतिरिक्त, दोनों संस्करणों पर, कमांड "gpg -k -list-options show-use 1A3ABKEY" आउटपुट "gpg: अज्ञात
विकल्प`

@YoungFrog। टिप्पणी के लिये आपका धन्यवाद। मैंने स्पष्ट किया कि मुझे जानकारी पृष्ठों में जानकारी मिली। कमांड काम नहीं कर रहा है, मेरे लिए यह gpg (2.1.8) पर काम करता है। जब मैं gpg1 (1.4.19) आज़माता हूँ तो मुझे भी मिलता है gpg: unknown option 'show-usage' gpg: invalid list optionsहालाँकि इसका उपयोग gpg1 जानकारी पृष्ठों में दर्ज़ किया गया है ...
jeroentbt

5

ये प्रमुख झंडे OpenPGP कल्पना में परिभाषित किए गए हैं

5.2.3.21। कुंजी झंडे

(झंडे के एन ऑक्टेट)

इस उप-पैकेट में बाइनरी फ़्लैग की एक सूची है जो एक कुंजी के बारे में जानकारी रखती है। यह ऑक्टेट्स की एक स्ट्रिंग है, और एक कार्यान्वयन एक निश्चित आकार नहीं होना चाहिए। ऐसा इसलिए है क्योंकि यह समय के साथ बढ़ सकता है। यदि कोई सूची कार्यान्वयन की अपेक्षा कम है, तो अस्थिर झंडे शून्य माने जाते हैं। परिभाषित झंडे निम्नानुसार हैं:

   First octet:

   0x01 - This key may be used to certify other keys.

   0x02 - This key may be used to sign data.

   0x04 - This key may be used to encrypt communications.

   0x08 - This key may be used to encrypt storage.

   0x10 - The private component of this key may have been split
          by a secret-sharing mechanism.

   0x20 - This key may be used for authentication.

   0x80 - The private component of this key may be in the
          possession of more than one person.

5
यह एक उपयोगी संदर्भ की तरह दिखता है, लेकिन यह वास्तव में सवाल का जवाब नहीं देता है।
जी-मैन

2

GnuPG मेलिंग-सूची में गहराया हुआ ...

शब्द "उपयोग" के दाईं ओर अक्षरों का क्या मतलब है?
(एस, सी, ए, ई) मैं केवल अनुमान लगा सकता हूं। एस | इग्नोर; ई | एनक्रिप्ट, ....

(एस) आईजीएन: कुछ डेटा (एक फ़ाइल की तरह) पर हस्ताक्षर
(सी) ertify: एक महत्वपूर्ण हस्ताक्षर (यह प्रमाणन कहा जाता है)
(ए) uthenticate: एक कंप्यूटर पर अपना प्रमाणन (उदाहरण के लिए, में प्रवेश करने)
(ई) ncrypt: एन्क्रिप्ट डेटा


1

एक अन्य जानकारी स्रोत GnuPG वितरण में विवरण फ़ाइल है ।

खंड "फ़ील्ड 12 - मुख्य क्षमताएं" बताती हैं

परिभाषित क्षमताएं हैं:

इ
एन्क्रिप्ट
रों
संकेत
सी
प्रमाणित
ए
प्रमाणीकरण
?
अज्ञात क्षमता

एक कुंजी किसी भी क्रम में उनमें से कोई भी संयोजन हो सकती है। 
इन पत्रों के अलावा, प्राथमिक कुंजी में अपरकेस है 
अक्षरों के संस्करण संपूर्ण की उपयोग करने योग्य क्षमताओं को दर्शाने के लिए 
कुंजी, और अक्षम कुंजी को इंगित करने के लिए एक संभावित अक्षर 'डी'।
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.