GPG में UIDs पुनर्व्यवस्थित करें


18

GPG में, UID की सूची में UID को एक PGP कुंजी में स्थानांतरित करना संभव है?

मुझे लगता है कि यह एक विशुद्ध रूप से कॉस्मेटिक चीज है, लेकिन मैं अपने पतों के बीच प्राथमिकता दिखाने के लिए इसका उपयोग करना चाह सकता हूं, जो संभव हो तो पहले इस्तेमाल किया जाना चाहिए।

pub   4096R/0xAABBD62D0BA66C66 2014-09-02
uid                 [ultimate] Mr. Foo Bar <fourth@example.com>
uid                 [ultimate] Mr. Foo Bar <first@example.com>
uid                 [ultimate] Mr. Foo Bar <third@example.com>
uid                 [ultimate] Mr. Foo Bar <second@example.com>

जवाबों:


22

आप इसे प्राथमिक बनाकर सूची के शीर्ष पर एक यूआईडी बना सकते हैं। शीर्ष UID तब दूसरे स्लॉट में नीचे चला जाता है, और इसी तरह, बाकी सब कुछ एक स्थान को नीचे की ओर शिफ्ट करता है। ऐसा लगता है जैसे यह "शिफ्ट" केवल एक बार होता है जब आप saveकुंजी में बदलाव करते हैं।

यदि आप सही क्रम प्राप्त करना चाहते हैं, तो आपको यूआईडी से शुरू होने वाले इन चरणों को दोहराना होगा जो आप दूसरे-से-अंतिम दिखाना चाहते हैं, सभी तरह जब तक कि आप जिस आइटम को शीर्ष (प्रथम) यूआईडी के रूप में प्रदर्शित करना चाहते हैं।

ऐसा करने के लिए आदेश हैं (पाठ निम्नलिखित है $और gpg>आप कंसोल में क्या लिखते हैं):

$ gpg --edit-key 0xAABBD62D0BA66C66
gpg (GnuPG) 1.4.16; Copyright (C) 2013 Free Software Foundation, Inc.
 # irrelevant output removed #
[ultimate] (1). Mr. Foo Bar <fourth@example.com>
[ultimate] (2)  Mr. Foo Bar <first@example.com>
[ultimate] (3)  Mr. Foo Bar <third@example.com>
[ultimate] (4)  Mr. Foo Bar <second@example.com>
gpg> uid 3
[ultimate] (1). Mr. Foo Bar <fourth@example.com>
[ultimate] (2)  Mr. Foo Bar <first@example.com>
[ultimate] (3)* Mr. Foo Bar <third@example.com>
[ultimate] (4)  Mr. Foo Bar <second@example.com>
gpg> primary
[ultimate] (1)  Mr. Foo Bar <fourth@example.com>
[ultimate] (2)  Mr. Foo Bar <first@example.com>
[ultimate] (3)* Mr. Foo Bar <third@example.com>
[ultimate] (4)  Mr. Foo Bar <second@example.com>
gpg> save

फिर कुल्ला और दोहराएं, अपने रास्ते को पीछे से दूसरे-से-अंतिम आइटम तक सभी तरह से काम करना जब तक कि आप जिस आइटम को पहले सूची में प्रदर्शित करना चाहते हैं वह प्राथमिक यूआईडी है।


यह एक बहुत ही कुशल समाधान नहीं है, इसलिए मैं उम्मीद कर रहा हूं कि कोई और बेहतर तरीका जानता है।
IQAndreas सेप

3
GPG एक बहुत ही कुशल समाधान नहीं है - लेकिन यह (तकनीकी रूप से) काम करता है!
सेप

3

केवल गारंटीकृत व्यवहार यह है कि प्राथमिक UID को पहले सूचीबद्ध किया गया है।

इसके अलावा उन्हें पुनर्व्यवस्थित करना संभव नहीं है, और कीरिंग में बहुत सी अव्यवस्था पैदा होती है, क्योंकि प्रत्येक परिवर्तन के लिए नए स्व-हस्ताक्षरों की आवश्यकता होती है।

यहां तक ​​कि अगर UIDs आपके सिस्टम पर "सही" क्रम में दिखाई देते हैं, तो वे ऐसा इसलिए करते हैं क्योंकि डेटाबेस का क्रम बदलता है और डेटाबेस के कार्यान्वयन के कारण होता है, इसलिए एक सिस्टम एक समय में कई परिवर्तन देखने या एक अलग डेटाबेस बैकेंड का उपयोग करता है अलग व्यवहार करने की संभावना है।


1

पहला दिखाया गया UID वह है जिसमें या तो प्राथमिक ध्वज है या नवीनतम स्व-हस्ताक्षर है।

दूसरों को उस क्रम में दिखाया जाता है जिसमें उन्हें कीरिंग में जोड़ा जाता है यानी या तो निर्माण का क्रम या आयात का क्रम।

इस प्रकार आप उन फ़ाइलों को बनाकर स्व-हस्ताक्षर की संख्या को कम कर सकते हैं जिनमें केवल एक यूआईडी है, कुंजी को हटा दें (पहले निजी कुंजी का बैकअप लेना न भूलें!), और वांछित क्रम में यूआईडी को आयात करें।

आप इन फ़ाइलों gpgsplitको सभी या एक यूआईडी को हटाकर या शेष एक को निर्यात करके, सभी यूआईडी के साथ फ़ाइल को आयात कर सकते हैं, सभी को हटा सकते हैं, लेकिन एक और एक और इसी तरह।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.