| tpm2_geteccparameters(1) | General Commands Manual | tpm2_geteccparameters(1) |
نام (NAME)
tpm2_geteccparameters - بازیابی پارامترهای منحنی ECC شناساییشده با curveID تخصیصیافته توسط TCG
خلاصه دستور (SYNOPSIS)
tpm2_geteccparameters [گزینهها]
توضیحات (DESCRIPTION)
tpm2_geteccparameters(1) - پارامترهای یک منحنی ECC را که با شناسه منحنی (curveID) تخصیصیافته توسط TCG مشخص میشود، بازیابی میکند.
گزینهها (OPTIONS)
- •
- ARGUMENT=ALGORITHM:
منحنی ECC را مشخص میکند. به عنوان مثال ecc521.
- •
- -o, --output=FILE
مسیر فایل را برای ذخیره پارامترهای ECC مشخص میکند.
- •
- --cphash=FILE
مسیر فایل برای ثبت هش پارامترهای دستور. این مقدار معمولاً cpHash نامیده میشود. نکته: هنگامی که این گزینه انتخاب شود، ابزار در واقع دستور را اجرا نخواهد کرد و صرفاً مقدار cpHash را بازمیگرداند.
مراجع (REFERENCES)
مشخصکنندههای الگوریتم (ALGORITHM SPECIFIERS)
گزینههایی که الگوریتمها را دریافت میکنند از «نامهای مناسب» (nice-names) پشتیبانی میکنند.
دو دسته اصلی برای رشتههای تعیین الگوریتم وجود دارد: ساده و پیچیده. تنها برخی از الگوریتمها بر اساس نوع استفاده و شرایط توسط TPM پذیرفته میشوند.
مشخصکنندههای ساده (SIMPLE SPECIFIERS)
اینها رشتههایی بدون دادههای مشخصکننده اضافی هستند. هنگام ایجاد اشیاء، بخشهای نامشخص یک شیء بر اساس مقادیر پیشفرض در نظر گرفته میشوند. فهرست «مشخصکنندههای ساده» شناختهشده را میتوانید در زیر بیابید.
نامتقارن (ASYMMETRIC)
- •
- rsa
- •
- ecc
متقارن (SYMMETRIC)
- •
- aes
- •
- camellia
- •
- sm4
الگوریتمهای درهمسازی (HASHING ALGORITHMS)
- •
- sha1
- •
- sha256
- •
- sha384
- •
- sha512
- •
- sm3_256
- •
- sha3_256
- •
- sha3_384
- •
- sha3_512
درهمسازی کلیددار (KEYED HASH)
- •
- hmac
- •
- xor
طرحهای امضا (SIGNING SCHEMES)
- •
- rsassa
- •
- rsapss
- •
- ecdsa
- •
- ecdaa
- •
- ecschnorr
- •
- sm2
طرحهای رمزنگاری نامتقارن (ASYMMETRIC ENCRYPTION SCHEMES)
- •
- oaep
- •
- rsaes
- •
- ecdh
حالتها (MODES)
- •
- ctr
- •
- ofb
- •
- cbc
- •
- cfb
- •
- ecb
متفرقه (MISC)
- •
- null
مشخصکنندههای پیچیده (COMPLEX SPECIFIERS)
اشیاء، هنگامی که برای ایجاد توسط TPM مشخص میشوند، الگوریتمهای متعددی برای مقداردهی در دادههای عمومی دارند؛ مواردی مانند نوع، طرح و جزئیات نامتقارن، اندازه کلید و غیره. در زیر قالب کلی برای مشخص کردن این دادهها آمده است: <type>:<scheme>:<symmetric-details>
مشخصکنندههای نوع (TYPE SPECIFIERS)
این بخش از مشخصکننده الگوریتم پیچیده الزامی است. طرح و جزئیات متقارن باقیمانده بر اساس نوع مشخصشده و نوع شیء در حال ایجاد، پیشفرض خواهند شد.
- •
- aes - مقدار پیشفرض AES: مقدار aes128
- •
- aes128<mode> - رمزنگاری AES با کلید ۱۲۸ بیتی و حالت اختیاری (ctr|ofb|cbc|cfb|ecb). اگر حالت مشخص نشود، پیشفرض به null تغییر مییابد.
- •
- aes192<mode> - مشابه aes128<mode>، به جز اندازه کلید ۱۹۲ بیتی.
- •
- aes256<mode> - مشابه aes128<mode>، به جز اندازه کلید ۲۵۶ بیتی.
- •
- sm4 - مقدار پیشفرض SM4: مقدار sm4128
- •
- sm4128 یا sm4_128 <mode> - الگوریتم SM4 با کلید ۱۲۸ بیتی و حالت اختیاری (ctr|ofb|cbc|cfb|ecb). اگر حالت مشخص نشود، پیشفرض به null تغییر مییابد.
- •
- ecc - منحنی بیضوی، پیشفرض به ecc256.
- •
- ecc192 یا ecc_nist_p192 - منحنی ۱۹۲ بیتی ECC NIST
- •
- ecc224 یا ecc_nist_p224 - منحنی ۲۲۴ بیتی ECC NIST
- •
- ecc256 یا ecc_nist_p256 - منحنی ۲۵۶ بیتی ECC NIST
- •
- ecc384 یا ecc_nist_p384 - منحنی ۳۸۴ بیتی ECC NIST
- •
- ecc521 یا ecc_nist_p521 - منحنی ۵۲۱ بیتی ECC NIST
- •
- ecc_sm2 یا ecc_sm2_p256 - منحنی ۲۵۶ بیتی SM2
- •
- rsa - مقدار پیشفرض RSA: مقدار rsa2048
- •
- rsa1024 - الگوریتم RSA با اندازه کلید ۱۰۲۴ بیت.
- •
- rsa2048 - الگوریتم RSA با اندازه کلید ۲۰۴۸ بیت.
- •
- rsa3072 - الگوریتم RSA با اندازه کلید ۳۰۷۲ بیت.
- •
- rsa4096 - الگوریتم RSA با اندازه کلید ۴۰۹۶ بیت.
مشخصکنندههای طرح (SCHEME SPECIFIERS)
مورد بعدی، یک فیلد اختیاری است و میتوان از آن صرفنظر کرد.
طرحها معمولاً طرحهای امضا یا طرحهای رمزنگاری نامتقارن هستند. اکثر طرحهای امضا مستقیماً پس از طرح امضا یک الگوریتم درهمسازی دریافت میکنند. اگر الگوریتم درهمسازی مشخص نشود، پیشفرض آن sha256 خواهد بود. برخی هیچ آرگومانی دریافت نمیکنند، و برخی چندین آرگومان میپذیرند.
مشخصکنندههای طرح با درهمسازی اختیاری (HASH OPTIONAL SCHEME SPECIFIERS)
این مشخصکنندههای طرح با یک خط تیره و یک الگوریتم درهمسازی معتبر دنبال میشوند؛ برای مثال: oaep-sha256.
- •
- oaep
- •
- ecdh
- •
- rsassa
- •
- rsapss
- •
- ecdsa
- •
- ecschnorr
- •
- sm2
مشخصکنندههای طرح با چند گزینه (MULTIPLE OPTION SCHEME SPECIFIERS)
این مشخصکننده طرح با یک شمارنده (حداکثر اندازه UINT16) و به دنبال آن یک خط تیره (-) و یک الگوریتم درهمسازی معتبر دنبال میشود. * ecdaa برای مثال، ecdaa4-sha256. اگر هیچ شمارندهای مشخص نشود، پیشفرض آن ۴ است.
مشخصکنندههای طرح بدون گزینه (NO OPTION SCHEME SPECIFIERS)
این مشخصکننده طرح هیچ آرگومانی دریافت نمیکند. * rsaes
مشخصکنندههای جزئیات متقارن (SYMMETRIC DETAILS SPECIFIERS)
این فیلد اختیاری است و بر اساس نوع شیء در حال ایجاد و ویژگیهای آن به طور پیشفرض تعیین میشود. به طور کلی، هر مشخصکننده متقارن معتبر از فهرست مشخصکنندههای نوع باید به درستی کار کند. در صورت عدم تعیین، جزئیات متقارن اشیاء نامتقارن به طور پیشفرض aes128cfb در نظر گرفته میشود.
مثالها (EXAMPLES)
ایجاد یک کلید rsa2048 با طرح رمزنگاری نامتقارن rsaes (Create an rsa2048 key with an rsaes asymmetric encryption scheme)
tpm2_create -C parent.ctx -G rsa2048:rsaes -u key.pub -r key.priv
ایجاد یک کلید ecc256 با طرح امضای ecdaa، شمارنده ۴ و درهمسازی sha384 (Create an ecc256 key with an ecdaa signing scheme with a count of 4 and sha384 hash)
/tpm2_create -C parent.ctx -G ecc256:ecdaa4-sha384 -u key.pub -r key.priv الگوریتمهای رمزنگاری ALGORITHM.
گزینههای عمومی (COMMON OPTIONS)
این مجموعه از گزینهها بین بسیاری از برنامهها مشترک بوده و اطلاعات مورد انتظار کاربران را ارائه میدهند.
- •
- -h, --help=[man|no-man]: نمایش صفحه راهنمای ابزار. به طور پیشفرض، تلاش میکند صفحهبند راهنما (manpager) را برای ابزار فراخوانی کند؛ با این حال در صورت شکست، خلاصهای کوتاه از ابزار را خروجی میدهد. این رفتار در صورتی که آرگومان گزینه «man» مشخص شده باشد نیز یکسان است؛ اما اگر «man» صریحاً درخواست شود، ابزار خطاهای man را در stderr ارائه میدهد. اگر گزینه «no-man» مشخص شود، یا فراخوانی صفحهبند راهنما با شکست مواجه گردد، گزینههای کوتاه در stdout چاپ خواهند شد.
استفاده موفقیتآمیز از ویژگی صفحات راهنما نیازمند نصب بودن صفحات راهنما یا قرار داشتن در MANPATH است؛ برای جزئیات بیشتر man(1) را ببینید.
- •
- -v, --version: نمایش اطلاعات نسخه این ابزار، TCTIهای پشتیبانیشده و خروج.
- •
- -V, --verbose: افزایش اطلاعاتی که ابزار در طول اجرای خود در کنسول چاپ میکند. هنگام استفاده از این گزینه، نام فایل و شماره خط چاپ میشوند.
- •
- -Q, --quiet: بیصدا کردن خروجی عادی ابزار در stdout.
- •
- -Z, --enable-errata: فعالسازی اعمال اصلاحات خطانامه (errata fixups). زمانی که نیاز به اعمال یک اصلاح خطانامه روی دستورات ارسالی به TPM باشد مفید است. تعریف متغیر محیطی TPM2TOOLS_ENABLE_ERRATA معادل این گزینه است.
- •
- -z, --pwd-session: استفاده از نشست رمز عبور به جای نشست HMAC برای احراز هویت. یک رمز عبور متنساده (clear text) برای صدور مجوز اقدام به TPM ارسال میشود. این گزینه میتواند برای جلوگیری از بروز مشکل در مواردی که نشستهای بدون سالت در حالت OpenSSL FIPS استفاده میشوند، به کار رود. اگر مقادیر احراز هویت استفاده شوند، باید از یک نشست با سالت برای احراز هویت استفاده شود.
- •
- -R, --autoflush: فعالسازی تخلیه خودکار (autoflush) برای اشیاء موقتی ایجادشده توسط دستور. اگر یک شیء والد از یک فایل زمینه بارگذاری شده باشد، شیء والد موقتی نیز تخلیه خواهد شد. تخلیه خودکار همچنین در صورتی که متغیر محیطی TPM2TOOLS_AUTOFLUSH روی yes یا true تنظیم شده باشد فعال میشود. اطلاعاتی که بسیاری از کاربران انتظار دارند.
پیکربندی TCTI (TCTI CONFIGURATION)
رابط TCTI یا «Transmission Interface» سازوکار ارتباطی با TPM است. TCTIها را میتوان برای ارتباط با TPM از طریق بسترهای مختلف تغییر داد.
برای کنترل TCTI، ابزارها به موارد زیر توجه دارند:
- 1.
- گزینه خط فرمان -T یا --tcti
- 2.
- متغیر محیطی: TPM2TOOLS_TCTI.
نکته: گزینه خط فرمان همواره بر متغیر محیطی اولویت دارد.
TCTIهای شناختهشده فعلی عبارتند از:
- •
- tabrmd - مدیر منابع، موسوم به tabrmd. توجه داشته باشید که tabrmd و abrmd به عنوان نام tcti مترادف یکدیگرند.
- •
- mssim - معمولاً برای برقراری ارتباط با شبیهساز نرمافزاری TPM استفاده میشود.
- •
- device - هنگام برقراری ارتباط مستقیم با فایل دستگاه TPM استفاده میشود.
- •
- none - عدم مقداردهی اولیه ارتباط با TPM. برخی ابزارها اجازه گزینههای خارج از TPM را میدهند و بنابراین از عدم استفاده از TCTI پشتیبانی میکنند. ابزارهایی که از آن پشتیبانی نمیکنند، در صورت تلاش برای استفاده بدون اتصال TCTI با خطا مواجه میشوند. از هیچ گزینهای پشتیبانی نمیکند و باید دقیقاً به صورت متن «none» ارائه شود.
آرگومانهای ارسالشده به گزینه خط فرمان یا متغیر محیطی به این قالب هستند:
<tcti-name>:<tcti-option-config>
مشخص کردن یک رشته خالی برای هر یک از <tcti-name> یا <tcti-option-config> باعث استفاده از مقدار پیشفرض مربوط به آن بخش میشود.
پیشفرضهای TCTI (TCTI DEFAULTS)
هنگامی که TCTI مشخص نشده باشد، TCTI پیشفرض با استفاده از معناشناسی dlopen(3) جستجو میشود. ابزارها TCTIهای tabrmd، device و mssim را به همین ترتیب جستجو کرده و از اولین مورد یافتشده استفاده میکنند. میتوانید با استفاده از گزینه -v برای چاپ اطلاعات نسخه، بررسی کنید که کدام TCTI به عنوان پیشفرض انتخاب خواهد شد. جفت کلید-مقدار «default-tcti» مشخص میکند که کدام یک از TCTIهای یادشده پیشفرض است.
TCTIهای سفارشی (CUSTOM TCTIS)
هر TCTI که رابط پویای TCTI را پیادهسازی کند میتواند بارگذاری شود. ابزارها در داخل از dlopen(3) استفاده میکنند و مقدار خام tcti-name برای جستجو به کار میرود. بنابراین، این مقدار میتواند یک مسیر به کتابخانه اشتراکی یا نام کتابخانه باشد، همانطور که توسط معناشناسی dlopen(3) درک میشود.
گزینههای TCTI (TCTI OPTIONS)
این مجموعه از گزینهها برای پیکربندی ماژولهای مختلف TCTI در دسترس استفاده میشوند:
- •
- device: برای TCTI دستگاه، فایل دستگاه کاراکتری TPM برای استفاده توسط TCTI دستگاه میتواند مشخص شود. پیشفرض /dev/tpm0 است.
مثال: -T device:/dev/tpm0 یا export TPM2TOOLS_TCTI=“device:/dev/tpm0”
- •
- mssim: برای TCTI شبیهساز mssim، نام دامنه یا آدرس IP و شماره پورت مورد استفاده توسط شبیهساز میتواند مشخص شود. مقادیر پیشفرض 127.0.0.1 و 2321 هستند.
مثال: -T mssim:host=localhost,port=2321 یا export TPM2TOOLS_TCTI=“mssim:host=localhost,port=2321”
- •
- abrmd: برای TCTI مربوط به abrmd، قالب رشته پیکربندی مجموعهای از جفتهای کلید-مقدار ساده است که با نویسه «,» از هم جدا میشوند. هر رشته کلید و مقدار با نویسه «=» از هم جدا میشوند.
- •
- رابط TCTI abrmd از دو کلید پشتیبانی میکند:
- 1.
- `bus_name' : نام سرویس tabrmd روی گذرگاه (یک رشته).
- 2.
- `bus_type' : نوع نمونه dbus (یک رشته) محدود به `session' و `system'.
مشخص کردن نام tabrmd tcti و رشته پیکربندی bus_name=com.example.FooBar:
-
\--tcti=tabrmd:bus_name=com.example.FooBar
مشخص کردن tcti پیشفرض (abrmd) و رشته پیکربندی bus_type=session:
-
\--tcti:bus_type=session
نکته: abrmd و tabrmd مترادف هستند. ماژولهای مختلف شناختهشده TCTI.
مثالها (EXAMPLES)
-
tpm2_geteccparameters ecc256 -o ecc.params
کدهای بازگشتی (RETURNS)
ابزارها میتوانند هر یک از کدهای زیر را برگردانند:
- •
- 0 - موفقیت.
- •
- 1 - خطای عمومی نامشخص.
- •
- 2 - خطای مدیریت گزینهها.
- •
- 3 - خطای احراز هویت.
- •
- 4 - خطای مربوط به TCTI.
- •
- 5 - طرح پشتیبانینشده. قابل اعمال برای tpm2_testparams.
اشکالات (BUGS)
راهنما (HELP)
مشاهده فهرست پستی (Mailing List)
مجوز (LICENSE)
این اثر تحت مجوز بینالمللی ارجاع ۴٫۰ کریپتیو کامانز (CC BY 4.0).
| tpm2-tools |