swtpm_cert(8) دستورات مدیریت سیستم swtpm_cert(8)

swtpm_cert - ابزاری برای ایجاد گواهی‌های EK و پلتفرم برای swtpm (نسخه‌های 1.2 و 2.0)

swtpm_cert [OPTIONS]

swtpm_cert یک ابزار مرجع صدور گواهی (CA) محلی برای ایجاد گواهی‌های X.509v3 برای کلید تایید (Endorsement Key یا EK) مربوط به TPM است. دلیل طراحی این ابزار خاص این است که بدون دسترسی به کلید خصوصیِ کلید تایید کار می‌کند. معمولاً ابزارها برای صدور گواهی، یا به یک درخواست گواهی خودامضا (self-signed) یا به دسترسی به کلید خصوصی نیاز دارند. این ابزار تنها با بخش کلید عمومی کار می‌کند.

گزینه‌های زیر پشتیبانی می‌شوند:

نوع گواهی مورد نظر برای ایجاد؛ به صورت پیش‌فرض یک گواهی EK ایجاد می‌شود.
کلید عمومی (EK) در قالب PEM.
مدولوس کلید عمومی به عنوان رشته‌ای از ارقام هگزادسیمال (hex). این گزینه می‌تواند به جای گزینه --pubkey استفاده شود.
پارامتر x منحنی بیضوی به عنوان رشته‌ای از ارقام هگزادسیمال.
پارامتر y منحنی بیضوی به عنوان رشته‌ای از ارقام هگزادسیمال.
شناسه منحنی بیضوی. شناسه‌های secp256r1، secp384r1 و secp521r1 پشتیبانی می‌شوند. اگر این گزینه مشخص نشود، secp256r1 به صورت پیش‌فرض در نظر گرفته می‌شود.
توان (exponent) کلید عمومی. به صورت پیش‌فرض مقدار 0x10001 در نظر گرفته می‌شود.
کلید مورد استفاده برای امضای گواهی. این فایل باید در قالب PEM باشد.
گذرواژه اختیاری برای کلید امضا.
این گزینه جایگزینی برای ارسال گذرواژه کلید امضا است. قالب‌های زیر برای pwd پشتیبانی می‌شوند:
- <password>                   : direct password
- pass:<password>              : direct password
- file:<filename>              : password in file
- fd:<file descriptor>         : read password from file descriptor
- env:<environment variable>   : read password from env. variable

تمام گذرواژه‌های خوانده‌شده از فایل‌ها و توصیف‌کننده‌های فایل باید حداکثر ۲۵۵ بایت باشند (به علاوه یک بایت برای کاراکتر بایتی NUL پایانی).

گذرواژه اختیاری برای یک کلید والد. در صورتی که از یک کلید TPM برای امضا استفاده شود، این مقدار گذرواژه کلید ریشه ذخیره‌سازی TPM (یا همان SRK) خواهد بود.
این گزینه جایگزینی برای ارسال گذرواژه کلید والد است. برای قالب‌های پشتیبانی‌شده pwd به توضیحات بالا مراجعه کنید.
گواهی X.509 این امضاکننده که نقش یک CA محلی را بر عهده دارد.
نام فایلی که گواهی X.509v3 در آن نوشته می‌شود. خروجی در قالب PEM خواهد بود.
شماره سریال ۳۲ بیتی اختیاری برای گواهی.
تعداد روزهایی که گواهی معتبر است؛ به صورت پیش‌فرض برای ۳۶۵ روز معتبر است.
نوشتن گواهی حاصل در قالب PEM؛ قالب DER حالت پیش‌فرض است.
نام تولیدکننده TPM.
مدل TPM (شماره قطعه).
نسخه میان‌افزار (firmware) مربوط به TPM.
نام تولیدکننده پلتفرم.
مدل پلتفرم.
نسخه پلتفرم.
موضوع (Subject) گواهی؛ به عنوان مثال برای ارائه موقعیت مکانی TPM در قالب C=<country>,ST=<state>,L=<location>. توجه داشته باشید که موقعیت مکانی نباید حاوی هیچ فاصله‌ای باشد.
صدور گواهی‌های سازگار با TPM 2.
ایجاد یک EK که بتواند برای امضا نیز استفاده شود. بدون این گزینه، کلید EK تنها برای رمزنگاری کلید (key encipherment) قابل استفاده است. این گزینه به --tpm2 نیاز دارد.
اگر گزینه --allow-signing ارسال شده باشد و بخواهید کلید EK برای رمزنگاری کلید نیز قابل استفاده باشد، باید این گزینه ارسال شود. در غیر این صورت، رمزنگاری کلید حالت پیش‌فرض است. این گزینه به --tpm2 نیاز دارد.
چاپ قابلیت‌هایی که پس از نسخه 0.2 به swtpm_cert اضافه شده‌اند. خروجی ممکن است شامل موارد زیر باشد:
{
  "type": "swtpm_cert",
  "features": [
    "cmdarg-signkey-pwd",
    "cmdarg-parentkey-pwd"
  ],
  "version": "0.7.0"
}

فیلد نسخه (version) از نسخه 0.7 در دسترس است.

معنای عبارات قابلیت‌ها به شرح زیر است:

گزینه --signkey-pwd پشتیبانی می‌شود.
گزینه --parentkey-pwd پشتیبانی می‌شود.
نمایش صفحه راهنما

swtpm(8), swtpm_localca(8)

گزارش اشکالات به Stefan Berger <stefanb@linux.vnet.ibm.com>

2026-03-26 swtpm