PAPERKEY(1) General Commands Manual PAPERKEY(1)

paperkey - استخراج اطلاعات محرمانه از کلیدهای محرمانه OpenPGP

paperkey [--secret-key=FILE] [--output=FILE] [--output-type=base16|raw] [--output-width=WIDTH]

paperkey --pubring=FILE [--secrets=FILE] [--input-type=auto|base16|raw] [--output=FILE] [--ignore-crc-error] [--comment=STRING] [--file-format]

paperkey --version

همانند تمام داده‌ها، باید از کلیدهای محرمانه نیز نسخه پشتیبان تهیه کرد. در واقع، پشتیبان‌گیری از کلیدهای محرمانه حتی از سایر داده‌ها نیز بااهمیت‌تر است، چرا که در صورت مفقود شدن، بازتولید آن‌ها غیرممکن خواهد بود. تمام فایل‌هایی که با کلیدهای گم‌شده رمزگذاری شده‌اند برای همیشه (یا دست‌کم برای مدتی بسیار طولانی) غیرقابل رمزگشایی باقی می‌مانند. افزون بر نگهداری نسخه‌های پشتیبان از اطلاعات کلید محرمانه بر روی رسانه‌های دیجیتال مانند حافظه‌های فلش USB یا CDها، عاقلانه است که یک نسخه «آخرین چاره» نیز بر روی کاغذهای معمولی نگهداری شود تا در صورت غیرقابل خواندن شدن رسانه‌های دیجیتال به هر دلیلی، بتوان از آن بهره برد. کاغذ در صورت نگهداری مناسب می‌تواند اطلاعات را برای چندین دهه یا حتی بیشتر حفظ کند.

در GnuPG، PGP یا سایر پیاده‌سازی‌های OpenPGP، کلید محرمانه معمولاً شامل اطلاعاتی بسیار فراتر از تنها اعداد محرمانه مهم است. آن‌ها همچنین تمام مقادیر عمومی جفت‌کلیدها، شناسه‌های کاربری (user IDs)، تاریخ‌های انقضا و موارد دیگر را نگهداری می‌کنند. به منظور به حداقل رساندن اطلاعاتی که باید به صورت دستی یا با کمک OCR، کدهای QR یا نرم‌افزارهای مشابه وارد شوند، paperkey تنها اطلاعات محرمانه را از کلیدهای محرمانه OpenPGP استخراج می‌کند. برای بازیابی کلید محرمانه فرض بر این است که کلید عمومی همچنان در دسترس است؛ برای نمونه از طریق کارگزارهای کلید عمومی اینترنت (keyservers).

دستور paperkey دو حالت کاری دارد:

حالت نخست با استخراج تنها بخش محرمانه از یک کلید محرمانه، «کلیدهای کاغذی» ایجاد می‌کند و داده‌ها را به شکلی مناسب برای چاپ، یا در حالت خام (raw) برای پردازش‌های بعدی قالب‌بندی می‌نماید.

حالت دیگر، کلیدهای محرمانه را از روی چنین کلید کاغذی و یک نسخه از کلید عمومی بازسازی می‌کند و همچنین مجموع مقابله‌ای‌های (checksums) موجود در کلید کاغذی را اعتبارسنجی می‌نماید. این حالت با به‌کارگیری گزینه --pubring فعال می‌شود که در این وضعیت استفاده از آن الزامی است. اگر روی کلید محرمانه اصلی یک عبارت عبور (passphrase) تنظیم شده باشد، همان عبارت عبور بر روی کلید بازسازی‌شده نیز قرار خواهد گرفت.

ورودی از ورودی استاندارد (standard-in) خوانده می‌شود، مگر زمانی که از گزینه‌های --secret-key یا --secrets استفاده شود؛ خروجی نیز در خروجی استاندارد (standard-out) چاپ می‌شود، مگر آنکه با گزینه --output تغییر یابد.

لطفاً توجه داشته باشید که paperkey وضعیت حفاظت و رمزگذاری و همچنین الزامات امنیتی نگهداری کلید محرمانه شما را تغییر نمی‌دهد. اگر کلید محرمانه توسط عبارت عبور محافظت شده باشد، کلید کاغذی نیز محافظت‌شده خواهد بود. اگر کلید محرمانه بدون محافظت باشد، کلید کاغذی نیز محافظت نخواهد شد.

--help, -h نمایش یک پیام راهنمای کوتاه و خروج موفقیت‌آمیز.

چاپ اطلاعات نسخه و حق رونوشت و خروج موفقیت‌آمیز.
چاپ اطلاعات وضعیت و پیشرفت کار در خطای استاندارد هنگام پردازش ورودی. تکرار این گزینه خروجی‌های تفصیلی‌تری تولید می‌کند.
هدایت خروجی به فایل مشخص‌شده به جای چاپ در خروجی استاندارد.
گنجاندن توضیح مشخص‌شده در خروجی base16.
ابزار paperkey به طور خودکار قالب فایلی را که استفاده می‌کند، به عنوان توضیح در ابتدای خروجی base16 درج می‌نماید. این دستور صرفاً این قالب فایل را چاپ کرده و با موفقیت خارج می‌شود.

انتخاب نوع خروجی. سبک base16 اطلاعات را به شیوه یک hex-dump کلاسیک، شامل شماره خطوط و مجموع مقابله‌ای CRC در هر خط کدگذاری می‌کند تا خطایابی در فایل ورودی در طول مرحله بازیابی آسان‌تر شود. حالت خام یا باینری (raw) صرفاً یک نسخه تخلیه‌شده از اطلاعات محرمانه است که برای ارسال به تولیدکننده‌های بارکد یا ابزارهای مشابه در نظر گرفته شده است.
تعیین عرض خط در حالت خروجی base16. مقدار پیش‌فرض ۷۸ نویسه است.
فایلی که کلید محرمانه از آن خوانده می‌شود. اگر این گزینه ارائه نشود، paperkey از ورودی استاندارد داده‌ها را می‌خواند.

مشخص می‌کند که ورودی داده‌شده در قالب base16 (تولیدشده توسط paperkey) است یا در قالب raw. مقدار پیش‌فرض (auto) تلاش می‌کند تا قالب مورد استفاده را به طور خودکار تشخیص دهد.
فایلی که اطلاعات کلید عمومی از آن خوانده می‌شود. فرض بر این است که کاربر می‌تواند کلید عمومی را از منابعی مانند کارگزارهای کلید عمومی اینترنت دریافت کند.
فایلی که اطلاعات محرمانه استخراج‌شده (کلید کاغذی) از آن خوانده می‌شود. در صورت عدم تعیین، اطلاعات از ورودی استاندارد خوانده خواهد شد.
رد نکردن ورودی‌های خراب و ادامه عملیات علی‌رغم وجود هرگونه خطای CRC.

دریافت کلید محرمانه از key.gpg و تولید فایل متنی to-be-printed.txt که حاوی داده‌های محرمانه است:

$ paperkey --secret-key my-secret-key.gpg --output to-be-printed.txt

دریافت داده‌های کلید محرمانه از my-key-text-file.txt و ترکیب آن با my-public-key.gpg برای بازسازی my-secret-key.gpg:

$ paperkey --pubring my-public-key.gpg --secrets my-key-text-file.txt --output my-secret-key.gpg

اگر گزینه --output مشخص نشود، خروجی به خروجی استاندارد (stdout) ارسال می‌شود. اگر گزینه --secret-key مشخص نشود، داده‌ها از ورودی استاندارد (stdin) خوانده می‌شوند؛ بنابراین می‌توانید دستوراتی مانند زیر را اجرا کنید:

$ gpg --export-secret-key my-key | paperkey | lpr

gpg(1), http://www.jabberwocky.com/software/paperkey

ابزار paperkey توسط David Shaw <dshaw@jabberwocky.com> نوشته شده است.

June 2012 PAPERKEY