OPENSSL-DHPARAM(1ssl) OpenSSL OPENSSL-DHPARAM(1ssl)

openssl-dhparam - مدیریت، دستکاری و تولید پارامترهای الگوریتم DH

openssl dhparam [-help] [-inform DER|PEM] [-outform DER|PEM] [-in filename] [-out filename] [-dsaparam] [-check] [-noout] [-text] [-verbose] [-quiet] [-2] [-3] [-5] [-engine id] [-rand files] [-writerand file] [-provider name] [-provider-path path] [-provparam [name:]key=value] [-propquery propq] [numbits]

این دستور برای مدیریت و دستکاری فایل‌های پارامتر DH به کار می‌رود.

برای مشاهدهٔ مثال‌هایی از نحوهٔ تولید یک کلید با استفاده از یک گروه اعداد اول امنِ نام‌گذاری‌شده بدون تولید پارامترهای میانی، به بخش «EXAMPLES» در openssl-genpkey(1) مراجعه کنید.

نمایش پیام راهنمای نحوهٔ استفاده از دستور.
قالب ورودی و قالب خروجی؛ حالت پیش‌فرض PEM است. این شیء با ساختار DHparameter در استاندارد PKCS#3 سازگار است. برای جزئیات بیشتر به openssl-format-options(1) مراجعه کنید.
این گزینه فایل ورودی را برای خواندن پارامترها مشخص می‌کند؛ در صورت عدم تعیین این گزینه، از ورودی استاندارد استفاده می‌شود.
این گزینه فایل خروجی را برای نوشتن پارامترها مشخص می‌کند. در صورت عدم تعیین این گزینه، از خروجی استاندارد استفاده می‌شود. نام فایل خروجی می‌تواند با نام فایل ورودی یکسان باشد که در این صورت محتوای فایل جایگزین خواهد شد. توجه داشته باشید که ورودی/خروجی فایل به‌صورت اتمیک (Atomic) نیست؛ فایل خروجی ابتدا خالی (Truncate) شده و سپس در آن نوشته می‌شود.
در صورت استفاده از این گزینه، پارامترهای DSA به‌جای پارامترهای DH خوانده یا ایجاد می‌شوند؛ سپس آن‌ها به قالب DH تبدیل می‌گردند. در غیر این صورت، اعداد اول امن (به‌گونه‌ای که (p-1)/2 نیز اول باشد) برای تولید پارامترهای DH استفاده خواهند شد.

تولید پارامترهای DH با گزینهٔ -dsaparam بسیار سریع‌تر است. توجه داشته باشید که با چنین پارامترهای DH به سبک DSA، باید برای هر بار استفاده یک کلید DH جدید ایجاد شود تا از حملات زیرگروه کوچک (small-subgroup attacks) که در غیر این صورت ممکن است رخ دهد، جلوگیری گردد.

بررسی‌های متعددی را انجام می‌دهد تا مشخص شود آیا پارامترهای ارائه‌شده معتبر هستند یا خیر، و در صورت نامعتبر بودن یک هشدار نمایش می‌دهد.
-2, -3, -5
مولد (Generator) مورد استفاده، که می‌تواند ۲، ۳ یا ۵ باشد. در صورت وجود این گزینه، فایل ورودی نادیده گرفته شده و به‌جای آن پارامترها تولید می‌شوند. اگر تعیین نشود اما numbits مشخص شده باشد، پارامترها با مولد پیش‌فرض ۲ تولید خواهند شد.
این گزینه مشخص می‌کند که یک مجموعه پارامتر با اندازهٔ numbits تولید شود. این گزینه باید آخرین گزینه باشد. در صورت مشخص بودن این گزینه، فایل ورودی نادیده گرفته شده و به‌جای آن پارامترها تولید می‌شوند. اگر این گزینه مشخص نشده باشد اما یک مولد (-2، -3 یا -5) تعیین شده باشد، پارامترها با طول پیش‌فرض ۲۰۴۸ بیت تولید می‌شوند. حداقل طول ۵۱۲ بیت و حداکثر طول ۱۰۰۰۰ بیت است.
این گزینه از چاپ و نمایش نسخهٔ کدگذاری‌شدهٔ پارامترها در خروجی جلوگیری می‌کند.
این گزینه پارامترهای DH را در قالبی خوانا برای انسان چاپ می‌کند.
به بخش «Engine Options» در openssl(1) مراجعه کنید. این گزینه منسوخ شده است.
برای جزئیات بیشتر به بخش «Random State Options» در openssl(1) مراجعه کنید.
به بخش «Provider Options» در openssl(1)، provider(7) و property(7) مراجعه کنید.
این گزینه نمایش پیام‌های پیشرفت کار را فعال می‌کند، که هنگام اجرای تعاملی دستوراتی که ممکن است اجرای آن‌ها زمان زیادی طول بکشد، بسیار کاربردی است.
این گزینه از نمایش پیام‌های پیشرفت کار جلوگیری می‌کند، که ممکن است در اسکریپت‌های دسته‌ای یا خطوط لوله (پایپ‌لاین‌ها) نامطلوب باشد.

این دستور جایگزین دستورهای dh و gendh در نسخه‌های پیشین شده است.

openssl(1), openssl-pkeyparam(1), openssl-dsaparam(1), openssl-genpkey(1).

گزینهٔ -engine در OpenSSL 3.0 منسوخ شد.

گزینهٔ -C در OpenSSL 3.0 حذف شد.

حق نشر ۲۰۰۰-۲۰۲۳ نویسندگان پروژه OpenSSL. تمامی حقوق محفوظ است.

تحت مجوز آپاچی، نسخه ۲.۰ («مجوز») منتشر شده است. استفاده از این فایل تنها بر اساس شرایط و مقررات مندرج در مجوز مجاز است. شما می‌توانید نسخه‌ای از مجوز را در فایل LICENSE در توزیع منبع یا در نشانی زیر دریافت کنید: https://www.openssl.org/source/license.html

2026-08-25 3.6.4