.\" Created from Texinfo source by yat2m 1.61-unknown .TH GPGSM 1 2025-02-19 "GnuPG 2.4.9" "GNU Privacy Guard 2.4" .SH "نام (NAME)" gpgsm \- ابزار رمزنگاری و امضای دیجیتال برای کلیدهای X.509 و پروتکل S/MIME .SH "خلاصه دستور (SYNOPSIS)" .B gpgsm .RB [ \-\-homedir .IR dir ] .RB [ \-\-options .IR file ] .RI [ گزینه‌ها ] .I دستور .RI [ آرگومان‌ها ] .SH "توضیحات (DESCRIPTION)" ابزار \fBgpgsm\fP برنامه‌ای مشابه \fBgpg\fP برای ارائه خدمات رمزنگاری و امضای دیجیتال روی گواهی‌های X.509 و پروتکل CMS است. این ابزار عمدتاً به عنوان یک بخش پشتیبان (backend) برای پردازش ایمیل‌های S/MIME به کار می‌رود. \fBgpgsm\fP شامل مدیریت کامل گواهی‌ها بوده و با تمامی قواعد تعریف‌شده برای پروژه آلمانی Sphinx مطابقت دارد. .SH "دستورات (COMMANDS)" دستورات تفاوتی با گزینه‌ها ندارند، جز در این مورد که تنها استفاده از یک دستور مجاز است. .SS دستورات عمومی و غیروابسته به عملکرد \ .TP .B \-\-version نسخه برنامه و اطلاعات مجوز را چاپ می‌کند. توجه داشته باشید که نمی‌توانید این دستور را به صورت مخفف به کار ببرید. .TP .B \-\-help, \-h پیام نحوه استفاده را که خلاصه‌ای از کاربردی‌ترین گزینه‌های خط فرمان است، چاپ می‌کند. توجه داشته باشید که نمی‌توانید این دستور را به صورت مخفف به کار ببرید. .TP .B \-\-warranty اطلاعات ضمانت‌نامه را چاپ می‌کند. توجه داشته باشید که نمی‌توانید این دستور را به صورت مخفف به کار ببرید. .TP .B \-\-dump\-options فهرستی از تمامی گزینه‌ها و دستورات موجود را چاپ می‌کند. توجه داشته باشید که نمی‌توانید این دستور را به صورت مخفف به کار ببرید. .P .SS دستورات انتخاب نوع عملیات \ .TP .B \-\-encrypt یک عملیات رمزنگاری را انجام می‌دهد. کلیدهایی که داده‌ها برای آن‌ها رمزنگاری می‌شوند باید با استفاده از گزینه \fB\-\-recipient\fP تنظیم شوند. .TP .B \-\-decrypt یک عملیات رمزگشایی را انجام می‌دهد؛ نوع ورودی به طور خودکار تعیین می‌شود. ورودی می‌تواند به شکل باینری یا کدگذاری‌شده با PEM باشد؛ تشخیص خودکار کدگذاری base-64 انجام نمی‌شود. .TP .B \-\-sign یک امضای دیجیتال ایجاد می‌کند. کلید مورد استفاده یا نخستین کلید یافت‌شده در جعبه‌کلید (keybox) است یا کلیدهایی که با گزینه \fB\-\-local\-user\fP مشخص شده‌اند. .TP .B \-\-verify معتبر بودن یک فایل امضا را بررسی می‌کند. بسته به آرگومان‌ها، یک امضای جداگانه (detached) نیز ممکن است بررسی شود. .TP .B \-\-server در حالت سرور اجرا می‌شود و در \fBstdin\fP منتظر دستورات می‌ماند. .TP .B \-\-call\-dirmngr \fIcommand\fP [\fIargs\fP] مانند یک کلاینت Dirmngr عمل کرده و درخواست \fIcommand\fP را به همراه فهرست اختیاری \fIargs\fP ارسال می‌کند. خروجی Dirmngr در stdout چاپ می‌شود. لطفاً توجه داشته باشید نام فایل‌هایی که به عنوان آرگومان داده می‌شوند باید نام فایل مطلق باشند (یعنی با \fB/\fP شروع شوند) زیرا آن‌ها عیناً به Dirmngr منتقل می‌شوند و ممکن است دایرکتوری کاری Dirmngr با دایرکتوری کاری این کلاینت یکسان نباشد. در حال حاضر امکان ارسال داده از طریق stdin به Dirmngr وجود ندارد. \fIcommand\fP نباید شامل فاصله باشد. این دستور برای برخی از وظایف نگهداری dirmngr که در آن‌ها dirmngr باید بتواند فراخوانی متقابل (callback) به \fBgpgsm\fP داشته باشد، ضروری است. برای جزئیات بیشتر به کتابچه راهنمای Dirmngr مراجعه کنید. .TP .B \-\-call\-protect\-tool \fIarguments\fP برخی از عملیات نگهداری توسط یک برنامه خارجی به نام \fBgpg\-protect\-tool\fP انجام می‌شود؛ این برنامه معمولاً در دایرکتوری‌های فهرست‌شده در متغیر PATH نصب نمی‌شود. این دستور یک پوسته واسط (wrapper) ساده برای دسترسی به این ابزار فراهم می‌کند. \fIarguments\fP عیناً به این دستور منتقل می‌شوند؛ برای دریافت فهرستی از عملیات پشتیبانی‌شده از \(oq\-\-help\(cq استفاده کنید. .P .SS نحوه مدیریت گواهی‌ها و کلیدها \ .TP .B \-\-generate\-key .TQ .B \-\-gen\-key این دستور امکان ایجاد یک درخواست امضای گواهی (CSR) یا یک گواهی خودامضا (self-signed) را فراهم می‌کند. معمولاً همراه با گزینه \fB\-\-output\fP برای ذخیره CSR یا گواهی ایجادشده در یک فایل استفاده می‌شود. در صورت استفاده به همراه \fB\-\-batch\fP، از یک فایل پارامتر برای ایجاد CSR یا گواهی استفاده می‌شود و علاوه بر این، امکان ایجاد گواهی‌های غیرخودامضا نیز وجود خواهد داشت. .TP .B \-\-list\-keys .TQ .B \-k فهرست کردن تمام گواهی‌های موجود در پایگاه‌داده محلی کلیدها. توجه داشته باشید که ممکن است داده‌های نمایش‌داده‌شده برای خوانایی بهتر توسط انسان قالب‌بندی مجدد شوند و نویسه‌های غیرمجاز با جایگزین‌های امن تعویض گردند. .TP .B \-\-list\-secret\-keys .TQ .B \-K فهرست کردن تمام گواهی‌های موجود که کلید خصوصی متناظر برای آن‌ها در دسترس است. .TP .B \-\-list\-external\-keys \fIpattern\fP فهرست کردن گواهی‌های منطبق بر \fIpattern\fP با استفاده از یک سرور خارجی. این دستور از سرویس \fBdirmngr\fP بهره می‌برد. .TP .B \-\-list\-chain مشابه \fB\-\-list\-keys\fP است اما تمامی کلیدهای سازنده زنجیره را نیز چاپ می‌کند. .TP .B \-\-dump\-cert .TQ .B \-\-dump\-keys فهرست کردن تمام گواهی‌های موجود در پایگاه‌داده محلی کلیدها با قالبی که عمدتاً برای اشکال‌زدایی سودمند است. .TP .B \-\-dump\-chain مشابه \fB\-\-dump\-keys\fP است اما تمامی کلیدهای سازنده زنجیره را نیز چاپ می‌کند. .TP .B \-\-dump\-secret\-keys فهرست کردن تمام گواهی‌های موجود که کلید خصوصی متناظر برای آن‌ها در دسترس است، با قالبی که عمدتاً برای اشکال‌زدایی سودمند است. .TP .B \-\-dump\-external\-keys \fIpattern\fP فهرست کردن گواهی‌های منطبق بر \fIpattern\fP با استفاده از یک سرور خارجی. این دستور از سرویس \fBdirmngr\fP بهره می‌برد و از قالبی استفاده می‌کند که عمدتاً برای اشکال‌زدایی سودمند است. .TP .B \-\-show\-certs [\fIfiles\fP] این دستور فایل‌های گواهی را به عنوان ورودی دریافت کرده و اطلاعات مربوط به آن‌ها را با همان قالبی که دستور \fB\-\-dump\-cert\fP ارائه می‌دهد چاپ می‌کند. هر فایل می‌تواند شامل یک گواهی باینری منفرد یا چندین گواهی کدگذاری‌شده با PEM باشد. اگر هیچ فایلی مشخص نشود، ورودی از stdin دریافت می‌شود. لطفاً توجه داشته باشید که ممکن است قالب فهرست‌بندی در نسخه‌های آینده تغییر کند و گزینه \fB\-\-with\-colons\fP در حال حاضر هیچ تأثیری ندارد. .TP .B \-\-keydb\-clear\-some\-cert\-flags این یک ابزار کمکی برای اشکال‌زدایی جهت بازنشانی پرچم‌های خاصی در پایگاه‌داده کلید است که برای ذخیره موقت (کش) برخی وضعیت‌های گواهی به کار می‌روند. این دستور به‌ویژه زمانی سودمند است که یک CRL نادرست یا یک پاسخ‌دهنده OCSP با رفتار غیرعادی، به طور تصادفی گواهی را باطل کرده باشد. این دستور هیچ مشکل امنیتی به همراه ندارد زیرا \fBgpgsm\fP همیشه اطمینان می‌یابد که اعتبار یک گواهی دقیقاً پیش از استفاده از آن بررسی شود. .TP .B \-\-delete\-keys \fIpattern\fP حذف کلیدهای منطبق با \fIpattern\fP. توجه داشته باشید که هیچ دستوری برای حذف مستقیم بخش خصوصی کلید وجود ندارد. در صورتی که نیاز به انجام این کار دارید، باید پیش از حذف کلید، دستور \fBgpgsm \-\-dump\-secret\-keys KEYID\fP را اجرا کرده، رشته ارقام هگزادسیمال موجود در خط \(oqkeygrip\(cq را کپی نمایید و فایل متشکل از این ارقام هگزادسیمال و پسوند \fB.key\fP را از دایرکتوری \(oq\fIprivate\-keys\-v1.d\fP\(cq در زیر دایرکتوری خانگی GnuPG ما (معمولاً \(oq\fI~/.gnupg\fP\(cq) حذف کنید. .TP .B \-\-export [\fIpattern\fP] صادر کردن تمام گواهی‌های ذخیره‌شده در Keybox یا گواهی‌هایی که توسط \fIpattern\fP اختیاری مشخص شده‌اند. این الگوها شامل فهرستی از شناسه‌های کاربری هستند (ببینید: [how-to-specify-a-user-id]). در صورت استفاده به همراه گزینه \fB\-\-armor\fP، چند خط اطلاعاتی پیش از هر بلوک اضافه می‌شود. یک محدودیت وجود دارد: از آنجا که هیچ روش مورد توافق عمومی برای بسته‌بندی بیش از یک گواهی در یک ساختار ASN.1 وجود ندارد، صدور باینری (یعنی بدون استفاده از \fBarmor\fP) تنها برای صدور یک گواهی عمل می‌کند. بنابراین لازم است یک \fIpattern\fP مشخص شود که دقیقاً یک گواهی را بازگرداند. گواهی‌های موقت (Ephemeral) تنها در صورتی صادر می‌شوند که تمامی مقادیر \fIpattern\fP به صورت اثرانگشت (fingerprint) یا keygrip ارائه شده باشند. .TP .B \-\-export\-secret\-key\-p12 \fIkey-id\fP صادر کردن کلید خصوصی و گواهی شناسایی‌شده توسط \fIkey-id\fP با استفاده از قالب PKCS#12. در صورت استفاده با گزینه \fB\-\-armor\fP، چند خط اطلاعاتی به ابتدای خروجی اضافه می‌شود. توجه داشته باشید که قالب PKCS#12 چندان امن نیست و برای انتقال کلید صادرشده باید از امنیت انتقال مناسب استفاده شود. (ببینید: [option --p12-charset].) .TP .B \-\-export\-secret\-key\-p8 \fIkey-id\fP .TQ .B \-\-export\-secret\-key\-raw \fIkey-id\fP صادر کردن کلید خصوصی گواهی شناسایی‌شده توسط \fIkey-id\fP به گونه‌ای که هرگونه لایه رمزنگاری از آن حذف شده باشد. دستور \fB...\-raw\fP در قالب PKCS#1 و دستور \fB...\-p8\fP در قالب PKCS#8 صادر می‌کند. در صورت استفاده با گزینه \fB\-\-armor\fP، چند خط اطلاعاتی به خروجی اضافه می‌شود. این دستورات برای آماده‌سازی یک کلید جهت استفاده در یک سرور TLS سودمند هستند. .TP .B \-\-import [\fIfiles\fP] وارد کردن گواهی‌ها از فایل‌های کدگذاری‌شده دودویی یا PEM و همچنین از پیام‌های صرفاً امضاشده. این دستور ممکن است برای وارد کردن یک کلید خصوصی از یک فایل PKCS#12 نیز به کار رود. .TP .B \-\-learn\-card خواندن اطلاعات مربوط به کلیدهای خصوصی از کارت هوشمند و وارد کردن گواهی‌ها از آنجا. این دستور از \fBgpg\-agent\fP و به نوبه خود از \fBscdaemon\fP استفاده می‌کند. .TP .B \-\-change\-passphrase \fIuser_id\fP .TQ .B \-\-passwd \fIuser_id\fP تغییر عبارت عبور کلید خصوصی متعلق به گواهی مشخص‌شده توسط \fIuser_id\fP. توجه داشته باشید که تغییر عبارت عبور/PIN یک کارت هوشمند هنوز پشتیبانی نمی‌شود. .P .SH "گزینه‌ها (OPTIONS)" \fBGPGSM\fP مجموعه‌ای از گزینه‌ها را برای کنترل دقیق رفتار برنامه و تغییر پیکربندی پیش‌فرض ارائه می‌دهد. .SS "نحوه تغییر پیکربندی (How to change the configuration)" \ این گزینه‌ها برای تغییر پیکربندی استفاده می‌شوند و معمولاً در فایل گزینه‌ها یافت می‌شوند. .TP .B \-\-options \fIfile\fP پیکربندی را به‌جای فایل پیش‌فرض کاربر، از \fIfile\fP می‌خواند. فایل پیکربندی پیش‌فرض \(oq\fIgpgsm.conf\fP\(cq نام دارد و انتظار می‌رود مستقیماً در دایرکتوری \(oq\fI.gnupg\fP\(cq زیر دایرکتوری خانگی کاربر قرار داشته باشد. .TP .B \-\-homedir \fIdir\fP نام دایرکتوری خانگی را روی \fIdir\fP تنظیم می‌کند. اگر از این گزینه استفاده نشود، دایرکتوری خانگی به‌طور پیش‌فرض \(oq\fI~/.gnupg\fP\(cq خواهد بود. این گزینه تنها زمانی شناسایی می‌شود که در خط فرمان داده شده باشد. این گزینه همچنین بر هر دایرکتوری خانگی دیگری که از طریق متغیر محیطی \(oq\fIGNUPGHOME\fP\(cq یا (در سیستم‌های ویندوز) به‌واسطه مدخل رجیستری \fIHKCU\[rs]Software\[rs]GNU\[rs]GnuPG:HomeDir\fP تعیین شده باشد، اولویت دارد. در سیستم‌های ویندوز امکان نصب GnuPG به عنوان یک برنامه پرتابل وجود دارد. در این حالت تنها این گزینه خط فرمان در نظر گرفته می‌شود و تمام روش‌های دیگر تعیین دایرکتوری خانگی نادیده گرفته می‌شوند. .TP .B \-v .TP .B \-\-verbose اطلاعات بیشتری را حین اجرا در خروجی نمایش می‌دهد. می‌توانید با دادن چندباره گزینه‌های پرگویی به \fBgpgsm\fP، مانند \(oq\-vv\(cq، میزان جزئیات را افزایش دهید. .TP .B \-\-keyserver \fIstring\fP این یک گزینه منسوخ‌شده است. پیش‌تر برای افزودن یک سرور LDAP جهت استفاده در جستجوی گواهی‌نامه X.509 و CRL استفاده می‌شد. نام مستعار \fB\-\-ldapserver\fP از نسخه 2.2.28 تا 2.2.33 و 2.3.2 تا 2.3.4 وجود داشت اما اکنون کاملاً نادیده گرفته می‌شود. سرورهای LDAP باید در پیکربندی \fBdirmngr\fP مشخص شوند. .TP .B \-\-policy\-file \fIfilename\fP نام پیش‌فرض فایل خط‌مشی را به \fIfilename\fP تغییر می‌دهد. نام پیش‌فرض \(oq\fIpolicies.txt\fP\(cq است. .TP .B \-\-agent\-program \fIfile\fP یک برنامه عامل (agent) را برای استفاده در عملیات کلید مخفی مشخص می‌کند. مقدار پیش‌فرض با اجرای دستور \fBgpgconf\fP تعیین می‌شود. توجه داشته باشید که نماد پایپ (\fB|\fP) برای ترفندی در مجموعه آزمون‌های رگرسیون استفاده می‌شود و بنابراین نباید در نام فایل به کار رود. .TP .B \-\-dirmngr\-program \fIfile\fP یک برنامه dirmngr را برای استفاده در بررسی‌های CRL مشخص می‌کند. مقدار پیش‌فرض \(oq\fI/usr/bin/dirmngr\fP\(cq است. .TP .B \-\-prefer\-system\-dirmngr این گزینه منسوخ شده است و نادیده گرفته می‌شود. .TP .B \-\-disable\-dirmngr استفاده از Dirmngr را به‌طور کامل غیرفعال می‌کند. .TP .B \-\-no\-autostart در صورتی که gpg-agent یا dirmngr هنوز راه‌اندازی نشده باشند و سرویس آن‌ها مورد نیاز باشد، آن‌ها را راه‌اندازی نمی‌کند. این گزینه عمدتاً روی ماشین‌هایی مفید است که در آن‌ها اتصال به gpg-agent به ماشین دیگری هدایت شده است. اگر در ماشین راه دور به dirmngr نیاز باشد، می‌توان آن را به‌صورت دستی با استفاده از \fBgpgconf \-\-launch dirmngr\fP راه‌اندازی کرد. .TP .B \-\-no\-secmem\-warning زمانی که اصطلاحاً «حافظه امن» (secure memory) قابل استفاده نباشد، هشداری چاپ نمی‌کند. .TP .B \-\-log\-file \fIfile\fP هنگام اجرا در حالت سرور، تمام خروجی‌های گزارش را به انتهای \fIfile\fP الحاق می‌کند. برای ارسال گزارش به یک سوکت از \(oq\fIsocket://\fP\(cq استفاده کنید. .TP .B \-\-log\-time حتی اگر از هیچ فایل گزارشی استفاده نشود، یک برچسب زمانی به ابتدای تمام خروجی‌های گزارش اضافه می‌کند. .P .SS "گزینه‌های مربوط به گواهی‌نامه (Certificate related options)" \ .TP .B \-\-enable\-policy\-checks .TQ .B \-\-disable\-policy\-checks به‌طور پیش‌فرض بررسی‌های خط‌مشی فعال هستند. از این گزینه‌ها می‌توان برای تغییر آن استفاده کرد. .TP .B \-\-enable\-crl\-checks .TQ .B \-\-disable\-crl\-checks به‌طور پیش‌فرض بررسی‌های CRL فعال هستند و از DirMngr برای بررسی گواهی‌نامه‌های باطل‌شده استفاده می‌شود. گزینه غیرفعال‌سازی عمدتاً هنگام اتصال شبکه به‌صورت آفلاین برای لغو این بررسی و همچنین جلوگیری از اینکه گواهی‌نامه‌های جدید با گنجاندن یک CRL DP مختص گواهی‌نامه یک اشکال وب (web bug) ایجاد کنند، بسیار مفید است. گزینه غیرفعال‌سازی همچنین جستجوی گواهی‌نامه صادرکننده را از طریق ویژگی authorityInfoAccess گواهی‌نامه غیرفعال می‌کند؛ با این حال می‌توان از \fB\-\-enable\-issuer\-key\-retrieve\fP برای استفاده از این ویژگی در هر صورت استفاده کرد. .TP .B \-\-enable\-trusted\-cert\-crl\-check .TQ .B \-\-disable\-trusted\-cert\-crl\-check به‌طور پیش‌فرض، CRL برای گواهی‌نامه‌های ریشه مورد اعتماد مانند هر گواهی‌نامه دیگری بررسی می‌شود. این به یک CA اجازه می‌دهد تا گواهی‌نامه‌های خود را به‌صورت داوطلبانه و بدون نیاز به قرار دادن تمام گواهی‌نامه‌های صادرشده تاکنون در یک CRL، باطل کند. از گزینه غیرفعال‌سازی می‌توان برای خاموش کردن این بررسی اضافی استفاده کرد. به دلیل کش کردن (caching) انجام‌شده توسط Dirmngr، این کار باعث هیچ بهبود عملکرد محسوسی نخواهد شد. توجه داشته باشید که این کار همچنین بررسی‌های احتمالی OCSP را برای گواهی‌نامه‌های ریشه مورد اعتماد غیرفعال می‌کند. راهکار دقیق‌تر برای غیرفعال کردن این بررسی، افزودن کلیدواژه \(lqrelax\(rq به سطر CA ریشه در \(oq\fItrustlist.txt\fP\(cq است. .TP .B \-\-force\-crl\-refresh به dirmngr می‌گوید که CRL را برای هر درخواست مجدداً بارگذاری کند. برای عملکرد بهتر، dirmngr در واقع این مورد را با جلوگیری از بارگذاری در بازه‌های زمانی کوتاه (مثلاً ۳۰ دقیقه) بهینه‌سازی می‌کند. این گزینه برای اطمینان از اینکه یک CRL تازه برای گواهی‌نامه‌های نگهداری‌شده در جعبه‌کلید (keybox) در دسترس است مفید می‌باشد. راهکار پیشنهادی برای انجام این کار استفاده از آن به همراه گزینه \fB\-\-with\-validation\fP برای یک دستور فهرست کردن کلید است. این گزینه نباید در یک فایل پیکربندی استفاده شود. .TP .B \-\-enable\-issuer\-based\-crl\-check یک بررسی CRL را حتی برای گواهی‌نامه‌هایی که هیچ نقطه توزیع CRL ندارند اجرا می‌کند. این امر مستلزم آن است که یک سرور LDAP مناسب در Dirmngr پیکربندی شده باشد و CRL بتواند با استفاده از صادرکننده پیدا شود. این گزینه به رفتاری که GnuPG تا نسخه 2.2.20 انجام می‌داد بازمی‌گردد. این گزینه به‌طور کلی سودمند نیست. .TP .B \-\-enable\-ocsp .TQ .B \-\-disable\-ocsp به‌طور پیش‌فرض بررسی‌های OCSP غیرفعال هستند. از گزینه فعال‌سازی می‌توان برای فعال کردن بررسی‌های OCSP از طریق Dirmngr استفاده کرد. اگر بررسی‌های CRL نیز فعال باشند، در صورتی که یک درخواست OCSP به هر دلیلی موفق نشود، از CRLها به عنوان روش پشتیبان (fallback) استفاده خواهد شد. توجه داشته باشید که باید درخواست‌های OCSP را در پیکربندی Dirmngr نیز مجاز کنید (گزینه \fB\-\-allow\-ocsp\fP) و Dirmngr را به‌درستی پیکربندی نمایید. اگر این کار را نکنید، کد خطای \(oqNot supported\(cq را دریافت خواهید کرد. .TP .B \-\-auto\-issuer\-key\-retrieve اگر در هنگام اعتبارسنجی زنجیره گواهی‌نامه‌ها، یک گواهی‌نامه لازم مفقود باشد، تلاش می‌کند آن گواهی‌نامه را از یک مکان خارجی بارگذاری کند. این معمولاً به این معنی است که Dirmngr برای جستجوی گواهی‌نامه به کار گرفته می‌شود. توجه داشته باشید که این گزینه رفتاری مشابه «اشکال وب» (web bug) را امکان‌پذیر می‌سازد. گردانندگان سرور LDAP می‌توانند ببینند شما چه کلیدهایی را درخواست می‌کنید، بنابراین با ارسال پیامی امضاشده با یک کلید کاملاً جدید برای شما (که طبیعتاً آن را در جعبه‌کلید محلی خود ندارید)، گرداننده سرور می‌تواند هم نشانی IP شما و هم زمانی را که امضا را تأیید کرده‌اید تشخیص دهد. توجه داشته باشید که اگر بررسی CRL غیرفعال نشده باشد، گواهی‌نامه‌های صادرکننده در هر صورت با استفاده از روش caIssuers مربوط به authorityInfoAccess دریافت می‌شوند. .TP .B \-\-validation\-model \fIname\fP این گزینه مدل اعتبارسنجی پیش‌فرض را تغییر می‌دهد. تنها مقادیر ممکن عبارتند از \(lqshell\(rq (که پیش‌فرض است)، \(lqchain\(rq که استفاده از مدل زنجیره‌ای را اجباری می‌کند و \(lqsteed\(rq برای یک مدل ساده‌شده جدید. مدل زنجیره‌ای همچنین در صورتی استفاده می‌شود که گزینه‌ای در \(oq\fItrustlist.txt\fP\(cq یا یکی از ویژگی‌های گواهی‌نامه آن را درخواست کند. با این حال در آن حالت، همیشه ابتدا مدل استاندارد (shell) امتحان می‌شود. .TP .B \-\-ignore\-cert\-extension \fIoid\fP مقدار \fIoid\fP را به فهرست افزونه‌های نادیده‌گرفته‌شده گواهی‌نامه اضافه می‌کند. انتظار می‌رود \fIoid\fP به صورت قالب ده‌دهی نقطه‌دار باشد، مانند \fB2.5.29.3\fP. از این گزینه می‌توان بیش از یک بار استفاده کرد. با افزونه‌های گواهی‌نامه که دارای نشان حیاتی (critical) هستند و با یکی از OIDهای موجود در این فهرست مطابقت دارند، طوری رفتار می‌شود که گویی واقعاً پردازش شده‌اند و در نتیجه گواهی‌نامه به دلیل یک افزونه حیاتی ناشناخته رد نخواهد شد. از این گزینه با احتیاط استفاده کنید زیرا افزونه‌ها معمولاً به دلیلی موجه به عنوان حیاتی نشانه‌گذاری می‌شوند. .P .SS "ورودی و خروجی (Input and Output)" \ .TP .B \-\-armor .TQ .B \-a تولید خروجی با کدگذاری PEM. پیش‌فرض، خروجی دودویی (باینری) است. .TP .B \-\-base64 تولید خروجی با کدگذاری Base-64؛ یعنی PEM بدون خطوط سرآیند (header). .TP .B \-\-assume\-armor فرض می‌کند داده‌های ورودی دارای کدگذاری PEM هستند. پیش‌فرض این است که کدگذاری به طور خودکار تشخیص داده شود، اما ممکن است این تشخیص ناموفق باشد. .TP .B \-\-assume\-base64 فرض می‌کند داده‌های ورودی دارای کدگذاری ساده base-64 هستند. .TP .B \-\-assume\-binary فرض می‌کند داده‌های ورودی به صورت باینری (دودویی) کدگذاری شده‌اند. .TP .B \-\-input\-size\-hint \fIn\fP این گزینه می‌تواند برای اعلام اندازه داده‌های ورودی بر حسب بایت به GPGSM استفاده شود. \fIn\fP باید یک عدد مثبت در مبنای ۱۰ باشد. این مقدار توسط خط ``PROGRESS'' در \fB\-\-status\-fd\fP برای ارائه مقداری برای ``total'' در صورتی که از راه‌های دیگر در دسترس نباشد، استفاده می‌شود. .TP .B \-\-p12\-charset \fIname\fP برنامه \fBgpgsm\fP هنگام کدگذاری عبارت‌های عبور (passphrases) برای پرونده‌های PKCS#12 از کدگذاری UTF-8 استفاده می‌کند. این گزینه می‌تواند برای اجبار عبارت عبور به کدگذاری با کدگذاری مشخص‌شده \fIname\fP استفاده شود. این قابلیت زمانی مفید است که برنامه مورد استفاده برای وارد کردن کلید از کدگذاری متفاوتی استفاده می‌کند و بنابراین قادر به وارد کردن پرونده تولیدشده توسط \fBgpgsm\fP نخواهد بود. مقادیر پرکاربرد برای \fIname\fP عبارتند از \fBLatin1\fP و \fBCP850\fP. توجه داشته باشید که خود \fBgpgsm\fP به طور خودکار هر پرونده‌ای را که عبارت عبور آن با پرکاربردترین کدگذاری‌ها کدگذاری شده باشد وارد می‌کند. .TP .B \-\-default\-key \fIuser_id\fP استفاده از \fIuser_id\fP به عنوان کلید استاندارد برای امضا. این کلید در صورتی استفاده می‌شود که هیچ کلید دیگری به عنوان کلید امضا تعیین نشده باشد. توجه داشته باشید که اولین گزینه \fB\-\-local\-users\fP نیز در صورتی که این کلید هنوز تنظیم نشده باشد، آن را تعیین می‌کند؛ با این حال \fB\-\-default\-key\fP همواره بر آن اولویت دارد و آن را بازنویسی می‌کند. .TP .B \-\-local\-user \fIuser_id\fP .TP .B \-u \fIuser_id\fP تنظیم کاربر(ان) مورد استفاده برای امضا کردن. پیش‌فرض، نخستین کلید مخفی یافت‌شده در پایگاه داده است. .TP .B \-\-recipient \fIname\fP .TQ .B \-r رمزنگاری برای شناسه کاربر \fIname\fP. روش‌های گوناگونی وجود دارد که می‌توان شناسه کاربر را مشخص کرد (ببینید: [how-to-specify-a-user-id]). .TP .B \-\-output \fIfile\fP .TQ .B \-o \fIfile\fP نوشتن خروجی در پرونده \fIfile\fP. پیش‌فرض این است که خروجی در stdout نوشته شود. .TP .B \-\-with\-key\-data نمایش اطلاعات اضافی به همراه دستورهای \fB\-\-list\-keys\fP. به‌ویژه خطی با برچسب \fBgrp\fP چاپ می‌شود که keygrip مربوط به کلید را نشان می‌دهد. این رشته به عنوان مثال به عنوان نام پرونده کلید مخفی به کار می‌رود. به طور ضمنی \fB\-\-with\-colons\fP را فعال می‌کند. .TP .B \-\-with\-validation هنگام فهرست کردن کلیدها، یک بررسی اعتبارسنجی کامل برای هر کلید انجام می‌دهد و نتیجه را چاپ می‌کند. این معمولاً یک عملیات کند است زیرا نیازمند جستجوی CRL و سایر عملیات می‌باشد. هنگامی که به همراه \fB\-\-import\fP استفاده شود، اعتبارسنجی گواهی مورد نظر برای وارد کردن انجام می‌شود و تنها در صورتی وارد می‌گردد که این آزمون با موفقیت سپری شود. توجه داشته باشید که این امر تاثیری بر گواهی‌هایی که از قبل در پایگاه داده (DB) موجود هستند ندارد. بنابراین این گزینه برای تایید اعتبار ساده یک گواهی مفید است. .TP .B \-\-with\-md5\-fingerprint برای فهرست‌بندی استاندارد کلیدها، اثر انگشت (fingerprint) گواهی مبتنی بر MD5 را نیز چاپ می‌کند. .TP .B \-\-with\-keygrip گنجاندن keygrip در فهرست‌بندی‌های استاندارد کلید. توجه داشته باشید که keygrip همواره در حالت \fB\-\-with\-colons\fP فهرست می‌شود. .TP .B \-\-with\-secret گنجاندن اطلاعات مربوط به وجود یک کلید مخفی در فهرست‌بندی کلیدهای عمومی که با \fB\-\-with\-colons\fP انجام شده است. .TP .B \-\-no\-pretty\-dn به طور پیش‌فرض gpgsm نام‌های متمایز (DNها) مانند صادرکننده (Issuer) یا موضوع (Subject) را در قالبی خواناتر چاپ می‌کند (مثلاً با استفاده از ترتیبی معین از بخش‌ها). با این حال، این قالب نمی‌تواند به عنوان رشته‌های ورودی استفاده شود. این گزینه نحوه چاپ را به قالب استاندارد RFC-2253 بازمی‌گرداند و بنابراین از نیاز به استفاده از \-\-dump\-cert یا \-\-with\-colons برای دریافت نام ``واقعی'' (real) جلوگیری می‌کند. .P .SS "نحوه تغییر شیوه ایجاد CMS (How to change how the CMS is created)" \ .TP .B \-\-include\-certs \fIn\fP استفاده از \fIn\fP با مقدار \-2 تمام گواهی‌ها را به جز گواهی ریشه (root cert) شامل می‌شود، مقدار \-1 شامل تمام گواهی‌ها است، مقدار 0 هیچ گواهی‌ای را شامل نمی‌شود، مقدار 1 تنها گواهی امضاکننده را شامل می‌شود و سایر مقادیر مثبت تا حداکثر \fIn\fP گواهی را با شروع از گواهی امضاکننده در بر می‌گیرند. پیش‌فرض \-2 است. .TP .B \-\-cipher\-algo \fIoid\fP استفاده از الگوریتم رمزنگاری با شناسه شیء ASN.1 (\fIoid\fP) برای رمزنگاری. برای سهولت، می‌توان از رشته‌های \fB3DES\fP، \fBAES\fP و \fBAES256\fP به جای OIDهای آن‌ها استفاده کرد. پیش‌فرض \fBAES\fP (2.16.840.1.101.3.4.1.2) است. .TP .B \-\-digest\-algo \fBname\fP استفاده از \fBname\fP به عنوان الگوریتم خلاصه پیام (digest). معمولاً این الگوریتم از گواهی امضای مربوطه استنتاج می‌شود. این گزینه استفاده از الگوریتم داده‌شده را اجباری می‌کند و ممکن است به مشکلات شدید در تعامل‌پذیری (interoperability) منجر شود. .P .SS انجام کارهایی که معمولاً مایل به انجام آن‌ها نیستید (Doing things one usually do not want to do) \ .TP .B \-\-chuid \fIuid\fP تغییر کاربر جاری به \fIuid\fP که می‌تواند یک عدد یا یک نام باشد\&. این گزینه می‌تواند از حساب کاربری ریشه (root) برای اجرای gpgsm برای کاربری دیگر استفاده شود\&. اگر \fIuid\fP همان UID جاری نباشد، یک PATH استاندارد تنظیم شده و متغیر محیطی GNUPGHOME لغو تنظیم (unset) می‌شود\&. برای لغو و بازنویسی مورد دوم می‌توان از گزینه \fB\-\-homedir\fP استفاده کرد\&. این گزینه تنها در صورتی تأثیر دارد که در خط فرمان استفاده شود\&. این گزینه در حال حاضر در ویندوز هیچ تأثیری ندارد\&. .TP .B \-\-extra\-digest\-algo \fIname\fP گاهی اوقات امضاها از این حیث معیوب هستند که الگوریتم خلاصه‌سازی متفاوتی را نسبت به آنچه واقعاً استفاده شده است اعلان می‌کنند\&. \fBgpgsm\fP از یک مدل پردازش داده یک‌گذره (one-pass) استفاده می‌کند و از این رو برای درهم‌سازی مناسب داده‌ها باید به الگوریتم‌های خلاصه اعلان‌شده تکیه کند\&. به عنوان یک راه‌حل موقت، این گزینه می‌تواند برای آگاه ساختن \fBgpgsm\fP از درهم‌سازی داده‌ها با استفاده از الگوریتم \fIname\fP نیز به کار رود؛ این کار پردازش را اندکی کند می‌کند اما امکان اعتبارسنجی چنین امضاهای معیوبی را فراهم می‌سازد\&. اگر \fBgpgsm\fP خطایی مانند \(dqdigest algo 8 has not been enabled\(dq چاپ کرد، ممکن است بخواهید این گزینه را با \(oqSHA256\(cq برای \fIname\fP امتحان کنید\&. .TP .B \-\-compliance \fIstring\fP تنظیم حالت انطباق (compliance mode)\&. مقادیر معتبر هنگام استفاده از \(dqhelp\(dq برای \fIstring\fP نمایش داده می‌شوند\&. .TP .B \-\-min\-rsa\-length \fIn\fP این گزینه حالت انطباق \(dqde-vs\(dq را برای الزامات سخت‌گیرانه‌تر اندازه کلید تنظیم می‌کند\&. برای نمونه، مقدار 3000 کلیدهای rsa2048 و dsa2048 را به کلیدهای ناسازگار با VS-NfD تبدیل می‌کند\&. .TP .B \-\-require\-compliance برای بررسی اینکه آیا داده‌ها طبق قواعد حالت انطباق جاری رمزنگاری شده‌اند یا خیر، کاربر gpgsm باید خطوط وضعیت (status lines) را ارزیابی کند\&. این امر به پیش‌نماها امکان می‌دهد تا بررسی انطباق را به شیوه‌ای منعطف‌تر مدیریت کنند\&. با این حال، برای استفاده در اسکریپت‌ها، ارزیابی لازم روی خط وضعیت نیازمند تلاش و کار زیادی است؛ این گزینه می‌تواند در عوض برای اطمینان از این به کار رود که در صورت برآورده نشدن قواعد انطباق، فرایند gpgsm با وضعیت شکست خارج شود\&. توجه داشته باشید که این گزینه در حال حاضر تنها در حالت \(dqde-vs\(dq تأثیر دارد\&. .TP .B \-\-assert\-signer \fIfpr_or_file\fP این گزینه بررسی می‌کند که آیا حداقل یک امضای معتبر روی یک پرونده با کلید مشخص‌شده ایجاد شده است یا خیر\&. کلید یا به عنوان یک اثرانگشت یا یک پرونده شامل فهرستی از اثرانگشت‌ها مشخص می‌شود\&. اثرانگشت باید در قالب فشرده ارائه یا فهرست شود (بدون دونقطه یا فاصله در میان نویسه‌ها)\&. تا کنون تنها اثرانگشت‌های SHA-1 مجاز هستند\&. این گزینه را می‌توان چندین بار مشخص کرد و هر اثرانگشت هم با کلید امضاکننده و هم با کلید اصلی متناظر مطابقت داده می‌شود\&. اگر \fIfpr_or_file\fP یک پرونده را مشخص کند، خطوط خالی و همچنین تمام خطوطی که با علامت هش (#) آغاز می‌شوند نادیده گرفته خواهند شد\&. با این گزینه تضمین می‌شود که gpgsm با کد خروج 0 خارج خواهد شد اگر و تنها اگر امضایی مشاهده شود، معتبر باشد، و کلید با یکی از اثرانگشت‌های ارائه‌شده توسط این گزینه مطابقت داشته باشد\&. .TP .B \-\-always\-trust اجبار به رمزنگاری برای گواهی‌های مشخص‌شده بدون هیچ‌گونه اعتبارسنجی زنجیره گواهی\&. تنها شرط این است که گواهی قابلیت رمزنگاری داشته باشد\&. توجه داشته باشید که این گزینه در صورت استفاده از \fB\-\-require\-compliance\fP بی‌اثر خواهد بود\&. .TP .B \-\-ignore\-cert\-with\-oid \fIoid\fP افزودن \fIoid\fP به فهرست OIDها برای بررسی هنگام خواندن گواهی‌ها از کارت‌های هوشمند\&. انتظار می‌رود \fIoid\fP در قالب ده‌دهی نقطه‌دار (dotted decimal) باشد، مانند \fB2.5.29.3\fP\&. این گزینه می‌تواند بیش از یک بار استفاده شود\&. در حال حاضر گواهی‌هایی با کاربرد کلید گسترش‌یافته (extended key usage) که با یکی از این OIDها مطابقت داشته باشند، در طول عملیات \fB\-\-learn\-card\fP نادیده گرفته شده و وارد (import) نمی‌شوند\&. این گزینه می‌تواند به تمیز نگه داشتن پایگاه داده محلی کلید از گواهی‌های غیرضروری ذخیره‌شده روی کارت‌های هوشمند کمک کند\&. .TP .B \-\-faked\-system\-time \fIepoch\fP این گزینه تنها برای آزمایش مفید است؛ زمان سیستم را به عقب یا جلو بر روی \fIepoch\fP تنظیم می‌کند که تعداد ثانیه‌های سپری‌شده از سال ۱۹۷۰ است\&. همچنین \fIepoch\fP می‌تواند به عنوان یک رشته زمانی کامل ISO (مانند \(dq20070924T154812\(dq) داده شود\&. .TP .B \-\-with\-ephemeral\-keys گنجاندن کلیدهای نشانه‌گذاری‌شده با پرچم زودگذر (ephemeral) در خروجی فهرست کلیدها\&. توجه داشته باشید که اگر مشخصات کلید برای فهرست‌بندی به عنوان اثرانگشت یا keygrip داده شده باشد، آن‌ها به هر حال گنجانده می‌شوند\&. .TP .B \-\-compatibility\-flags \fIflags\fP تنظیم پرچم‌های سازگاری برای دور زدن مشکلات ناشی از گواهی‌ها یا داده‌های ناسازگار\&. مقادیر \fIflags\fP به صورت یک فهرست جداشده با کاما از نام‌های پرچم داده شده و با یکدیگر OR می‌شوند\&. پرچم ویژه \(dqnone\(dq فهرست را پاک می‌کند و به فرد اجازه می‌دهد کار را دوباره با یک فهرست خالی آغاز کند\&. برای دریافت فهرستی از پرچم‌های در دسترس، می‌توان تنها از واژه \(dqhelp\(dq استفاده کرد\&. .TP .B \-\-debug\-level \fIlevel\fP انتخاب سطح اشکال‌زدایی برای بررسی و ریشه‌یابی مشکلات\&. \fIlevel\fP می‌تواند یک مقدار عددی یا یک کلمه کلیدی باشد: .RS .TP .B none بدون هیچ‌گونه اشکال‌زدایی\&. به جای این کلمه کلیدی می‌توان از مقداری کمتر از ۱ استفاده کرد\&. .TP .B basic برخی پیام‌های اولیه اشکال‌زدایی\&. به جای این کلمه کلیدی می‌توان از مقداری بین ۱ و ۲ استفاده کرد\&. .TP .B advanced پیام‌های اشکال‌زدایی پرجزئیات‌تر (verbose)\&. به جای این کلمه کلیدی می‌توان از مقداری بین ۳ و ۵ استفاده کرد\&. .TP .B expert پیام‌هایی حتی با جزئیات بیشتر\&. به جای این کلمه کلیدی می‌توان از مقداری بین ۶ و ۸ استفاده کرد\&. .TP .B guru تمام پیام‌های اشکال‌زدایی که می‌توانید دریافت کنید\&. به جای این کلمه کلیدی می‌توان از مقداری بزرگ‌تر از ۸ استفاده کرد\&. ایجاد پرونده‌های ردگیری درهم‌سازی (hash tracing files) تنها در صورتی فعال می‌شود که از این کلمه کلیدی استفاده شود\&. .RE نحوه نگاشت این پیام‌ها به پرچم‌های واقعی اشکال‌زدایی مشخص نشده است و ممکن است با انتشار نسخه‌های جدیدتر این برنامه تغییر کند\&. با این حال، آن‌ها با دقت انتخاب شده‌اند تا بیشترین کمک را در اشکال‌زدایی ارائه دهند\&. .TP .B \-\-debug \fIflags\fP تنظیم پرچم‌های اشکال‌زدایی\&. تمام پرچم‌ها با هم OR می‌شوند و \fIflags\fP می‌تواند در ساختار نحوی زبان C (مانند 0x0042) یا به صورت فهرستی از نام‌های پرچم جداشده با کاما مشخص شود\&. برای دریافت فهرستی از تمامی پرچم‌های پشتیبانی‌شده می‌توان از تک‌واژه \(dqhelp\(dq استفاده کرد\&. این گزینه تنها برای اشکال‌زدایی سودمند است و رفتار آن ممکن است در هر زمان بدون اطلاع قبلی تغییر کند\&. توجه داشته باشید که تمام پرچم‌های تنظیم‌شده با این گزینه ممکن است توسط \fB\-\-debug\-level\fP رونویسی و لغو شوند\&. .TP .B \-\-debug\-all مشابه \fB\-\-debug=0xffffffff\fP .TP .B \-\-debug\-allow\-core\-dump معمولاً \fBgpgsm\fP با تکیه بر کدهای خوب‌نوشته‌شده و غیرفعال کردن رونوشت حافظه هسته (core dump) به دلایل امنیتی، سعی می‌کند از ایجاد core dump جلوگیری کند\&. با این حال، باگ‌ها جانورانی سرسخت هستند و برای شکار و نابودی آن‌ها گاهی در اختیار داشتن رونوشت حافظه هسته مفید است\&. این گزینه تخلیه و رونوشت هسته را فعال می‌کند مگر اینکه «اتفاق بد» پیش از تجزیه گزینه‌ها رخ داده باشد\&. .TP .B \-\-debug\-no\-chain\-validation این در واقع یک گزینه اشکال‌زدایی نیست اما تنها برای چنین مقصدی مفید است\&. این گزینه به \fBgpgsm\fP امکان می‌دهد تمام بررسی‌های اعتبارسنجی زنجیره گواهی را دور بزند\&. .TP .B \-\-debug\-ignore\-expiration این در واقع یک گزینه اشکال‌زدایی نیست اما تنها برای چنین مقصدی مفید است\&. این گزینه به \fBgpgsm\fP اجازه می‌دهد تمام تاریخ‌های notAfter (انقضا) را نادیده بگیرد؛ این مورد در آزمون‌های پس‌رفت (regression tests) استفاده می‌شود\&. .TP .B \-\-passphrase\-fd \fBn\fP خواندن عبارت عبور (passphrase) از توصیف‌کننده پرونده \fBn\fP\&. تنها خط نخست از توصیف‌کننده پرونده \fBn\fP خوانده خواهد شد\&. اگر برای \fBn\fP از مقدار 0 استفاده کنید، عبارت عبور از ورودی استاندارد (STDIN) خوانده خواهد شد\&. این گزینه تنها زمانی قابل استفاده است که فقط یک عبارت عبور ارائه شده باشد\&. توجه داشته باشید که این عبارت عبور تنها زمانی استفاده می‌شود که گزینه \fB\-\-batch\fP نیز داده شده باشد\&. .TP .B \-\-pinentry\-mode \fBmode\fP تنظیم حالت pinentry به \fBmode\fP\&. مقادیر مجاز برای \fBmode\fP عبارتند از: .RS .TP .B default استفاده از حالت پیش‌فرض عامل (agent)، که \fBask\fP است\&. .TP .B ask اجبار به استفاده از Pinentry\&. .TP .B cancel شبیه‌سازی استفاده از دکمه لغو (cancel) در Pinentry\&. .TP .B error بازگرداندن خطای Pinentry (خطای ``No Pinentry'')\&. .TP .B loopback تغییر مسیر پرسش‌های Pinentry به فراخواننده (caller)\&. توجه داشته باشید بر خلاف Pinentry، اگر کاربر گذرواژه نادرستی وارد کند، مجدداً از او سؤال پرسیده نخواهد شد\&. .RE .TP .B \-\-request\-origin \fIorigin\fP به gpgsm اعلام می‌کند تا فرض کند عملیات در نهایت از \fIorigin\fP منشأ گرفته است\&. بسته به مبدأ، محدودیت‌های خاصی اعمال می‌شوند و Pinentry ممکن است یادداشت اضافه‌ای درباره مبدأ درج کند\&. مقادیر پشتیبانی‌شده برای \fIorigin\fP عبارتند از: \fBlocal\fP که پیش‌فرض است، \fBremote\fP برای نشان دادن مبدأ دوردست یا \fBbrowser\fP برای عملیاتی که توسط یک مرورگر وب درخواست شده است\&. .TP .B \-\-no\-common\-certs\-import جلوگیری از وارد کردن گواهی‌های عمومی هنگام ایجاد keybox\&. .P تمام گزینه‌های بلند را می‌توان پس از حذف دو خط فاصله ابتدایی، در پرونده پیکربندی نیز قرار داد\&. .SH "نحوه تعیین شناسه کاربر (HOW TO SPECIFY A USER ID)" روش‌های متفاوتی برای مشخص کردن شناسه کاربر (user ID) برای GnuPG وجود دارد. برخی از آن‌ها فقط برای \fBgpg\fP معتبر هستند و برخی دیگر تنها برای \fBgpgsm\fP مناسبند. در اینجا فهرست کاملی از روش‌های تعیین یک کلید آمده است: .TP .B بر اساس شناسه کلید (By key Id). این قالب از روی طول رشته و محتوای آن یا پیشوند \fB0x\fP تشخیص داده می‌شود. شناسه کلید یک گواهی X.509، مقدار ۶۴ بیت کم‌ارزش‌تر اثرانگشت SHA-1 آن است. استفاده از شناسه کلید صرفاً یک میان‌بر است؛ برای تمامی پردازش‌های خودکار باید از اثرانگشت استفاده شود. هنگام استفاده از \fBgpg\fP، می‌توان یک علامت تعجب (!) را اضافه کرد تا استفاده از کلید اصلی یا فرعی مشخص‌شده اجبار شود و تلاشی برای محاسبه این که از کدام کلید اصلی یا فرعی استفاده گردد، انجام نشود. چهار خط پایانی مثال، شناسه کلید را در قالب بلند آن که به‌صورت داخلی توسط پروتکل OpenPGP استفاده می‌شود، نشان می‌دهند. می‌توانید شناسه کلید بلند را با استفاده از گزینه \fB\-\-with\-colons\fP مشاهده کنید. .RS 2 .nf 234567C4 0F34E556E 01347A56A 0xAB123456 234AABBCC34567C4 0F323456784E56EAB 01AB3FED1347A5612 0x234AABBCC34567C4 .fi .RE .TP .B بر اساس اثرانگشت (By fingerprint). این قالب از روی طول رشته و محتوای آن یا پیشوند \fB0x\fP تشخیص داده می‌شود. توجه داشته باشید که تنها نسخه اثرانگشت ۲۰ بایتی در \fBgpgsm\fP در دسترس است (یعنی هش SHA-1 گواهی). هنگام استفاده از \fBgpg\fP، می‌توان یک علامت تعجب (!) را اضافه کرد تا استفاده از کلید اصلی یا فرعی مشخص‌شده اجبار شود و تلاشی برای محاسبه این که از کدام کلید اصلی یا فرعی استفاده گردد، انجام نشود. بهترین روش برای مشخص کردن شناسه کلید، استفاده از اثرانگشت است. این کار از هرگونه ابهام در صورتی که شناسه‌های کلید تکراری وجود داشته باشند جلوگیری می‌کند. .RS 2 .nf 1234343434343434C434343434343434 123434343434343C3434343434343734349A3434 0E12343434343434343434EAB3484343434343434 0xE12343434343434343434EAB3484343434343434 .fi .RE همچنین \fBgpgsm\fP علامت دونقطه (:) را بین هر جفت رقم هگزادسیمال می‌پذیرد، زیرا این یک استاندارد دو فاکتو (عملی) برای نحوه نمایش اثرانگشت‌های X.509 است. \fBgpg\fP همچنین امکان استفاده از اثرانگشت SHA-1 جداشده با فاصله را، همان‌گونه که توسط دستورات فهرست کردن کلید چاپ می‌شود، فراهم می‌آورد. .TP .B بر اساس تطابق دقیق با شناسه کاربر OpenPGP (By exact match on OpenPGP user ID). این حالت با یک علامت مساوی در ابتدا مشخص می‌شود. استفاده از این روش برای گواهی‌های X.509 کاربردی ندارد. .RS 2 .nf =Heinrich Heine .fi .RE .TP .B بر اساس تطابق دقیق با نشانی رایانامه (By exact match on an email address). این حالت با قرار دادن نشانی رایانامه به شیوه معمول درون علامت‌های زاویه‌ای چپ و راست (< و >) مشخص می‌شود. .RS 2 .nf .fi .RE .TP .B بر اساس تطابق جزئی با نشانی رایانامه (By partial match on an email address). این حالت با قرار دادن پیشوند \fB@\fP در ابتدای رشته جستجو مشخص می‌شود. این شیوه از جستجوی زیررشته استفاده می‌کند، اما تنها نشانی رایانامه (یعنی داخل علامت‌های زاویه‌ای) را در نظر می‌گیرد. .RS 2 .nf @heinrichh .fi .RE .TP .B بر اساس تطابق دقیق با DN موضوع (By exact match on the subject's DN). این حالت با یک اسلش در ابتدا مشخص می‌شود که بلافاصله پس از آن، DN کدگذاری‌شده موضوع بر اساس RFC-2253 می‌آید. توجه داشته باشید که نمی‌توانید از رشته چاپ‌شده توسط \fBgpgsm \-\-list\-keys\fP استفاده کنید، زیرا آن رشته برای خوانایی بهتر بازآرایی و اصلاح شده است؛ برای چاپ رشته خام (اما با فرار استاندارد) بر اساس RFC-2253 از \fB\-\-with\-colons\fP استفاده کنید. .RS 2 .nf /CN=Heinrich Heine,O=Poets,L=Paris,C=FR .fi .RE .TP .B بر اساس تطابق دقیق با DN صادرکننده (By exact match on the issuer's DN). این حالت با یک علامت هش در ابتدا مشخص می‌شود که بلافاصله پس از آن یک اسلش و سپس بلافاصله DN کدگذاری‌شده صادرکننده بر اساس RFC-2253 قرار می‌گیرد. این کار باید گواهی ریشه (Root cert) صادرکننده را برگرداند. یادداشت بالا را ببینید. .RS 2 .nf #/CN=Root Cert,O=Poets,L=Paris,C=FR .fi .RE .TP .B بر اساس تطابق دقیق با شماره سریال و DN صادرکننده (By exact match on serial number and issuer's DN). این حالت با یک علامت هش مشخص می‌شود که پس از آن نمایش هگزادسیمال شماره سریال، و سپس یک اسلش و DN کدگذاری‌شده صادرکننده بر اساس RFC-2253 می‌آید. یادداشت بالا را ببینید. .RS 2 .nf #4F03/CN=Root Cert,O=Poets,L=Paris,C=FR .fi .RE .TP .B بر اساس کی‌گریپ (By keygrip). این حالت با یک علامت & (ampersand) مشخص می‌شود که در ادامه آن ۴۰ رقم هگزادسیمالِ یک کی‌گریپ (keygrip) قرار دارد. \fBgpgsm\fP هنگام استفاده از دستور \fB\-\-dump\-cert\fP کی‌گریپ را چاپ می‌کند. .RS 2 .nf &D75F22C3F86E355877348498CDC92BD21010A480 .fi .RE .TP .B بر اساس تطابق زیررشته (By substring match). این حالت پیش‌فرض است، اما برنامه‌ها ممکن است بخواهند با قرار دادن یک ستاره (*) در ابتدا، این موضوع را به‌صراحت مشخص کنند. تطابق نسبت به بزرگی و کوچکی حروف حساس نیست. .RS 2 .nf Heine *Heine .fi .RE .TP .B پیشوندهای . و + (. and + prefixes) این پیشوندها برای جستجوی رایانامه‌های مهارشده در انتها و برای حالت جستجوی کلمه‌ای رزرو شده‌اند. این قابلیت‌ها هنوز پیاده‌سازی نشده‌اند و استفاده از آن‌ها نامشخص (تعریف‌نشده) است. لطفاً توجه داشته باشید که ما از شناسه علامت هش که در نسخه‌های قدیمی GnuPG برای نشان دادن شناسه به اصطلاح محلی (local-id) به کار می‌رفت، دوباره استفاده کرده‌ایم. آن شناسه دیگر کاربردی ندارد و نباید هنگام استفاده به همراه امکانات X.509 تداخلی ایجاد شود. استفاده از قالب RFC-2253 برای DNها این ایراد را دارد که امکان بازگرداندن آن‌ها به کدگذاری اصلی وجود ندارد؛ با این حال نیازی به انجام این کار نیست، زیرا پایگاه داده کلید ما این کدگذاری را به عنوان فراداده ذخیره می‌کند. .SH "مثال‌ها (EXAMPLES)" .RS 2 .nf $ gpgsm \-er goo@bar.net ciphertext .fi .RE .SH "فایل‌ها (FILES)" چندین فایل پیکربندی برای کنترل جنبه‌های مشخصی از عملکرد \fBgpgsm\fP وجود دارند. مگر در مواردی که ذکر شده باشد، انتظار می‌رود این فایل‌ها در دایرکتوری خانگی فعلی قرار داشته باشند (ببینید: [option \-\-homedir]). .TP .B gpgsm.conf این فایل پیکربندی استاندارد است که در هنگام راه‌اندازی توسط \fBgpgsm\fP خوانده می‌شود. این فایل می‌تواند شامل هر گزینه طولانی معتبری باشد؛ دو خط تیره ابتدایی نباید وارد شوند و گزینه نباید مخفف شود. این نام پیش‌فرض می‌تواند در خط فرمان تغییر یابد (ببینید: [gpgsm\-option \-\-options]). شما باید از این فایل نسخه پشتیبان تهیه کنید. .TP .B common.conf این یک فایل پیکربندی اختیاری است که در هنگام راه‌اندازی توسط \fBgpgsm\fP خوانده می‌شود. این فایل می‌تواند شامل گزینه‌های مربوط به تمام مؤلفه‌های GnuPG باشد. کاربرد اصلی فعلی آن برای گزینه \(dquse\-keyboxd\(dq است. .TP .B policies.txt این فهرستی از خط‌مشی‌های (policies) مجاز CA است. این فایل باید شناسه‌های شیء (OIDها) مربوط به خط‌مشی‌ها را خط‌به‌خط فهرست کند. خطوط خالی و خطوطی که با علامت هش (#) شروع می‌شوند نادیده گرفته می‌شوند. خط‌مشی‌هایی که در این فایل وجود ندارند و در گواهی به‌عنوان بحرانی (critical) علامت‌گذاری نشده‌اند، تنها یک هشدار چاپ خواهند کرد؛ گواهی‌های دارای خط‌مشی‌هایی که به‌عنوان بحرانی علامت‌گذاری شده‌اند و در این فایل فهرست نشده‌اند، در اعتبارسنجی امضا رد خواهند شد. شما باید از این فایل نسخه پشتیبان تهیه کنید. برای مثال، جهت مجاز کردن تنها خط‌مشی 2.289.9.9، فایل باید به این شکل باشد: .RS .RS 2 .nf # Allowed policies 2.289.9.9 .fi .RE .RE .TP .B qualified.txt این روش قدیمی (legacy) برای علامت‌گذاری گواهی‌های ریشه به عنوان قابل استفاده برای گواهی‌های واجد شرایط (qualified certificates) است. گواهی‌های واجد شرایط قادرند امضاهایی با الزام قانونی و دارای اعتباری مشابه امضاهای دست‌نویس ایجاد کنند. روش امروزی برای علامت‌گذاری چنین گواهی‌های ریشه‌ای، استفاده از پرچم \(dqqual\(dq در فایل trustlist.txt سیستم است؛ برای جزئیات به صفحه راهنمای gpg\-agent مراجعه کنید. توضیحات در این فایل با علامت هش (#) آغاز می‌شوند و خطوط خالی نادیده گرفته می‌شوند. خطوط دارای محدودیت طول هستند، اما این یک محدودیت جدی نیست زیرا ساختار ورودی‌ها ثابت بوده و توسط \fBgpgsm\fP بررسی می‌شود: یک خط غیرتوضیحی با فاصله‌های سفید اختیاری آغاز می‌شود و به دنبال آن دقیقاً ۴۰ نویسه هگزادسیمال، فاصله سفید و یک کد کشور دو حرفی با حروف کوچک قرار می‌گیرد. داده‌های اضافی که با فاصله سفید جدا شده‌اند، در حال حاضر نادیده گرفته می‌شوند اما ممکن است بعداً برای اهداف دیگری استفاده شوند. توجه داشته باشید که حتی اگر یک گواهی در این فایل فهرست شده باشد، به این معنی نیست که آن گواهی قابل اعتماد (trusted) است؛ به طور کلی گواهی‌های فهرست‌شده در این فایل باید در \(oq\fItrustlist.txt\fP\(cq نیز فهرست شوند. این یک فایل سراسری است و در دایرکتوری sysconf نصب می‌شود (به عنوان مثال \(oq\fI/etc/gnupg/qualified.txt\fP\(cq). هر بار که \fBgpgsm\fP از یک گواهی برای امضا یا اعتبارسنجی استفاده می‌کند، این فایل بررسی می‌شود تا مشخص گردد آیا گواهی مورد نظر در نهایت توسط یکی از این CAها صادر شده است یا خیر. در این صورت، به کاربر اطلاع داده خواهد شد که امضای بررسی‌شده نشان‌دهنده یک امضای دارای الزام قانونی (``qualified'') است. هنگام ایجاد یک امضا با استفاده از چنین گواهی‌ای، یک اعلان اضافی نمایش داده می‌شود تا به کاربر امکان دهد تأیید کند که آیا واقعاً چنین امضایی با الزام قانونی ایجاد شود. از آنجا که این نرم‌افزار هنوز برای استفاده با چنین گواهی‌هایی تأیید نشده است، هشدارهای مناسبی برای نشان دادن این موضوع نمایش داده خواهد شد. .TP .B help.txt این یک فایل متنی ساده با چند مدخل راهنما است که همراه با \fBpinentry\fP و همچنین فهرست بزرگی از موارد راهنما برای \fBgpg\fP و \fBgpgsm\fP استفاده می‌شود. فایل استاندارد دارای متون راهنمای انگلیسی است؛ برای نصب نسخه‌های بومی‌سازی‌شده از نام‌فایل‌هایی مانند \(oq\fIhelp.LL.txt\fP\(cq استفاده کنید که در آن LL نشان‌دهنده لوکال (locale) است. GnuPG به همراه مجموعه‌ای از فایل‌های راهنمای از پیش تعریف‌شده در دایرکتوری داده (مثلاً \(oq\fI/usr/share/gnupg/gnupg/help.de.txt\fP\(cq) ارائه می‌شود و اجازه می‌دهد هر مورد راهنما توسط فایل‌های راهنمای ذخیره‌شده در دایرکتوری پیکربندی سیستم (مثلاً \(oq\fI/etc/gnupg/help.de.txt\fP\(cq) بازنویسی (override) شود. برای مرجع نحو (syntax) فایل راهنما، لطفاً فایل نصب‌شدهٔ \(oq\fIhelp.txt\fP\(cq را ببینید. .TP .B com\-certs.pem این فایل مجموعه‌ای از گواهی‌های رایج است که برای پر کردن یک \(oq\fIpubring.kbx\fP\(cq تازه ایجادشده استفاده می‌شود. مدیر سیستم می‌تواند این فایل را با یک فایل سفارشی جایگزین کند. قالب آن ترکیبی متوالی از گواهی‌های X.509 با کدگذاری PEM است. این فایل سراسری در دایرکتوری داده نصب می‌شود (مثلاً \(oq\fI/usr/share/gnupg/com\-certs.pem\fP\(cq). .P توجه داشته باشید که در نصب‌های بزرگ‌تر، قرار دادن فایل‌های از پیش تعریف‌شده در دایرکتوری \(oq\fI/etc/skel/.gnupg/\fP\(cq سودمند است تا کاربران تازه‌ایجادشده با یک پیکربندی فعال کار خود را شروع کنند. برای کاربران موجود، یک اسکریپت کمکی کوچک برای ایجاد این فایل‌ها ارائه شده است (ببینید: [addgnupghome]). برای مقاصد داخلی، \fBgpgsm\fP چند فایل دیگر ایجاد و نگهداری می‌کند؛ همه آن‌ها در دایرکتوری خانگی فعلی قرار دارند (ببینید: [option \-\-homedir]). تنها \fBgpgsm\fP مجاز به تغییر این فایل‌ها است. .TP .B pubring.kbx این یک فایل پایگاه داده است که گواهی‌ها و همچنین فرااطلاعات (متادیتا) را ذخیره می‌کند. برای اهداف اشکال‌زدایی، می‌توان از ابزار \fBkbxutil\fP برای نمایش ساختار داخلی این فایل استفاده کرد. شما باید از این فایل نسخه پشتیبان تهیه کنید. .TP .B random_seed محتوای این فایل برای حفظ وضعیت داخلی مولد اعداد تصادفی در طول فراخوانی‌ها استفاده می‌شود. همین فایل توسط سایر برنامه‌های این نرم‌افزار نیز استفاده می‌شود. .TP .B S.gpg\-agent اگر این فایل وجود داشته باشد، \fBgpgsm\fP پیش از راه‌اندازی یک نمونه جدید از \fBgpg\-agent\fP، ابتدا تلاش می‌کند تا برای دسترسی به \fBgpg\-agent\fP به این سوکت متصل شود. در ویندوز این سوکت (که در واقعیت یک فایل ساده است که یک پورت شنود معمولی TCP را توصیف می‌کند) روش استاندارد اتصال به \fBgpg\-agent\fP است. .P .SH "همچنین ببینید (SEE ALSO)" \fBgpg\fP(1), \fBgpg\-agent\fP(1) مستندات کامل این ابزار به عنوان یک کتابچه راهنمای Texinfo نگهداری می‌شود. اگر GnuPG و برنامه info به درستی در سیستم شما نصب شده باشند، دستور .RS 2 .nf info gnupg .fi .RE باید به شما دسترسی به کتابچه راهنمای کامل شامل ساختار منو و یک نمایه (index) را بدهد.