TCPLAY(8) System Manager's Manual TCPLAY(8) نام (NAME) tcplay – ابزاری برای مدیریت حجم‌های TrueCrypt خلاصه دستور (SYNOPSIS) tcplay -c -d device [-g] [-z] [-w] [-a pbkdf_hash] [-b cipher] [-f keyfile_hidden] [-k keyfile] [-x pbkdf_hash] [-y cipher] tcplay -i -d device [-e] [-p] [-f keyfile_hidden] [-k keyfile] [-s system_device] [--fde] [--use-backup] [--use-hdr-file hdr_file] [--use-hidden-hdr-file hdr_file] tcplay -j mapping tcplay -m mapping -d device [-e] [-p] [-f keyfile_hidden] [-k keyfile] [-s system_device] [-t] [--fde] [--use-backup] [--use-hdr-file hdr_file] [--use-hidden-hdr-file hdr_file] tcplay --modify -d device [-k keyfile] [--new-keyfile new_keyfile] [--new-pbkdf-prf pbkdf_hash] [-s system_device] [--fde] [--use-backup] [--use-hdr-file hdr_file] [--use-hidden-hdr-file hdr_file] [--save-hdr-backup hdr_file] [-w] tcplay --modify -d device [-k keyfile] --restore-from-backup-hdr [-w] tcplay -u mapping tcplay -h | -v توضیحات (DESCRIPTION) ابزار tcplay پشتیبانی کامل برای ایجاد و باز کردن/نگاشت حجم‌های سازگار با TrueCrypt را فراهم می‌کند. این ابزار از دستورات زیر پشتیبانی می‌کند، که هر کدام با مجموعه‌ای از گزینه‌ها در زیر شرح داده شده‌اند: -c, --create ایجاد یک حجم رمزنگاری‌شده جدید TrueCrypt روی دستگاه مشخص‌شده با --device -. -h, --help چاپ پیام راهنما و خروج. -i, --info چاپ اطلاعات درباره دستگاه رمزنگاری‌شده مشخص‌شده با --device -. -j mapping, --info-mapped=mapping چاپ اطلاعات درباره حجم نگاشت‌شده tcplay مشخص‌شده با mapping . اطلاعاتی مانند CRC کلید و PBKDF2 PRF از طریق این دستور در دسترس نیست. --modify اصلاح سرآیند حجم. این حالت امکان تغییر عبارت عبور، فایل‌های کلید، PBKDF2 PRF و همچنین بازیابی از یک سرآیند پشتیبان را فراهم می‌سازد. -m mapping, --map=mapping نگاشت حجم رمزنگاری‌شده TrueCrypt روی دستگاه مشخص‌شده با --device به عنوان یک نگاشت dm(4) به نام mapping . آرگومان mapping نباید شامل هیچ فاصله خالی یا نویسه‌های ویژه باشد. -u mapping, --unmap=mapping حذف (unmap) نگاشت dm(4) مشخص‌شده توسط mapping و همچنین هرگونه نگاشت آبشاری مرتبط. اگر یک حجم را با استفاده از رمزنگاری کامل دیسک نگاشت کرده‌اید و برای پارتیشن‌های جداگانه با استفاده از kpartx(8) نگاشت ایجاد کرده‌اید، باید قبل از حذف نگاشت حجم، آن‌ها را حذف کنید. -v, --version چاپ پیام نسخه و خروج. گزینه‌های مشترک برای تمام دستورات عبارتند از: -d device, --device=device دستگاه دیسک device را که حجم TrueCrypt در آن قرار دارد/قرار خواهد گرفت، مشخص می‌کند. این گزینه برای تمام دستورات اجباری است. -f keyfile_hidden, --keyfile-hidden=keyfile_hidden یک فایل کلید keyfile را مشخص می‌کند که علاوه بر عبارت عبور، هنگام ایجاد یک حجم مخفی یا هنگام محافظت از یک حجم مخفی در حین نگاشت یا پرس‌وجو از حجم بیرونی استفاده شود. اگر فقط قصد نگاشت یک حجم مخفی را دارید، باید از گزینه --keyfile استفاده شود. این گزینه می‌تواند چندین بار تکرار شود؛ در این صورت، چندین فایل کلید استفاده خواهد شد. این گزینه در حالت --modify معتبر نیست. -k keyfile, --keyfile=keyfile یک فایل کلید keyfile را برای استفاده علاوه بر عبارت عبور مشخص می‌کند. این گزینه می‌تواند چندین بار ظاهر شود؛ در این صورت، چندین فایل کلید استفاده خواهد شد. گزینه‌های اضافی برای دستور --create عبارتند از: -a pbkdf_hash, --pbkdf-prf=pbkdf_hash الگوریتم هش مورد استفاده برای اشتقاق رمز عبور PBKDF2 را مشخص می‌کند. برای مشاهده الگوریتم‌های پشتیبانی‌شده، --pbkdf-prf=help را مشخص کنید. -b cipher, --cipher=cipher الگوریتم رمز یا آبشار رمزهای مورد استفاده برای رمزنگاری حجم جدید را مشخص می‌کند. برای مشاهده الگوریتم‌های پشتیبانی‌شده، --cipher=help را مشخص کنید. -g, --hidden مشخص می‌کند که حجم جدید ایجادشده حاوی یک حجم مخفی خواهد بود. فایل‌های کلید اعمال‌شده روی عبارت عبور برای حجم مخفی همان موارد مشخص‌شده با --keyfile-hidden هستند. اندازه حجم مخفی به صورت تعاملی از کاربر پرسیده خواهد شد. -w, --weak-keys استفاده از urandom(4) برای مواد کلید به جای یک منبع آنتروپی قوی. این کار در کل ایده بسیار بدی است و تنها باید برای آزمایش استفاده شود. -x pbkdf_hash, --pbkdf-prf-hidden=pbkdf_hash الگوریتم هش مورد استفاده برای اشتقاق رمز عبور PBKDF2 برای حجم مخفی را مشخص می‌کند. تنها در ترکیب با --hidden معتبر است. اگر الگوریتمی مشخص نشود، همان الگوریتم حجم بیرونی استفاده خواهد شد. برای دیدن الگوریتم‌های پشتیبانی‌شده، --pbkdf-prf-hidden=help را مشخص کنید. -y cipher, --cipher-hidden=cipher الگوریتم رمز یا آبشار رمزهای مورد استفاده برای رمزنگاری حجم مخفی در حجم جدید TrueCrypt را مشخص می‌کند. تنها در ترکیب با --hidden معتبر است. اگر رمزی مشخص نشود، همان رمز حجم بیرونی استفاده خواهد شد. برای مشاهده الگوریتم‌های رمزنگاری پشتیبانی‌شده، --cipher-hidden=help را مشخص کنید. -z, --insecure-erase صرف‌نظر کردن از پاک‌سازی امن دیسک. از این گزینه با احتیاط استفاده کنید زیرا یک ریسک امنیتی است! گزینه‌های اضافی برای دستورات --info -، --map و --modify عبارتند از: -e, --protect-hidden مشخص می‌کند که یک حجم بیرونی پرس‌وجو یا نگاشت خواهد شد، اما اندازه گزارش‌شده آن متناسب با اندازه حجم مخفی موجود در آن تنظیم می‌شود. عبارت عبور و فایل‌های کلید هر دو حجم مخفی و بیرونی مورد نیاز خواهد بود. این گزینه فقط برای دستورات --info و --map اعمال می‌شود. -p, --prompt-passphrase این گزینه باعث می‌شود tcplay بلافاصله برای عبارت عبور درخواست کند، حتی اگر یک فایل کلید ارائه شده باشد. به طور معمول، اگر یک فایل کلید ارائه شود، tcplay ابتدا تلاش می‌کند قفل حجم را فقط با استفاده از فایل کلید باز کند، و تنها در صورتی که این تلاش اول ناموفق باشد برای عبارت عبور درخواست می‌دهد. با این حال، از آنجا که یک تلاش ناموفق برای باز کردن قفل می‌تواند زمان قابل توجهی ببرد، تعیین این گزینه در صورتی که به هر دو فایل کلید و عبارت عبور نیاز باشد، می‌تواند زمان کل باز کردن قفل را کاهش دهد. این گزینه تنها در صورتی معنا دارد که -k یا -f استفاده شده باشند. -s system_device, --system-encryption=system_device این گزینه زمانی لازم است که در حال تلاش برای دسترسی به دستگاهی باشید که از رمزنگاری سیستم استفاده می‌کند، برای مثال یک پارتیشن سیستم رمزنگاری‌شده Windows . این گزینه برای دیسک‌هایی که از رمزنگاری کامل دیسک استفاده می‌کنند اعمال نمی‌شود. گزینه --device به پارتیشن رمزنگاری‌شده واقعی اشاره می‌کند، در حالی که آرگومان system_device به دستگاه والد (یعنی دیسک فیزیکی زیرین) پارتیشن رمزنگاری‌شده اشاره خواهد کرد. --fde این گزینه برای استفاده با دیسک‌هایی در نظر گرفته شده است که از رمزنگاری کامل دیسک (FDE) استفاده می‌کنند. هنگامی که یک دیسک با استفاده از FDE متعلق به TrueCrypt رمزنگاری شده باشد، کل دیسک به جز 63 سکتور اول رمزنگاری می‌شود. گزینه --device باید به کل دستگاه دیسک اشاره کند، نه به یک پارتیشن خاص. نگاشت حاصل کل دیسک را پوشش می‌دهد و به صورت پارتیشن‌های جداگانه ظاهر نمی‌شود. برای دسترسی به پارتیشن‌های منفرد پس از نگاشت، می‌توان از kpartx(8) استفاده کرد. --use-backup این گزینه برای زمانی در نظر گرفته شده است که سرآیندهای اولیه یک حجم خراب شده باشند. این گزینه tcplay را وادار می‌کند تا برای دسترسی به حجم، از سرآیندهای پشتیبان که در انتهای دستگاه قرار دارند استفاده کند. گزینه‌های اضافی فقط برای دستور --map عبارتند از: -t, --allow-trim این گزینه پشتیبانی از دستور TRIM (دور انداختن یا discard) را روی حجم نگاشت‌شده فعال می‌کند. گزینه‌های اضافی فقط برای دستور --modify عبارتند از: --new-pbkdf-prf=pbkdf_hash الگوریتم هش مورد استفاده برای اشتقاق گذرواژه PBKDF2 در رمزنگاری مجدد سرآیند حجم را مشخص می‌کند. اگر این گزینه مشخص نشود، سرآیند مجدداً رمزنگاری‌شده از PRF فعلی استفاده خواهد کرد. برای مشاهده الگوریتم‌های پشتیبانی‌شده، --pbkdf-prf=help را مشخص کنید. --new-keyfile=keyfile یک فایل کلید keyfile را برای استفاده علاوه بر عبارت عبور جدید در هنگام رمزنگاری مجدد سرآیند حجم مشخص می‌کند. این گزینه می‌تواند چندین بار ظاهر شود؛ در این صورت، چندین فایل کلید استفاده خواهد شد. --restore-from-backup-hdr اگر این گزینه مشخص شود، هیچ‌یک از گزینه‌های --new-pbkdf-prf یا --new-keyfile نباید مشخص شوند. این گزینه مستلزم --use-backup است. از این گزینه برای بازیابی سرآیندهای حجم از سرآیند پشتیبان استفاده کنید. ارسال سیگنال SIGINFO یا SIGUSR1 به یک فرآیند در حال اجرای tcplay باعث می‌شود که پیشرفت کارهای کندتر مانند جمع‌آوری آنتروپی یا پاک‌سازی حجم را چاپ کند. نکات (NOTES) نرم‌افزار TrueCrypt عبارت‌های عبور را به 64 نویسه (شامل نویسه تهی پایانی) محدود می‌کند. برای سازگاری با آن، tcplay همین کار را انجام می‌دهد. تمام عبارت‌های عبور (به جز فایل‌های کلید) به 64 نویسه بریده می‌شوند. به طور مشابه، فایل‌های کلید به اندازه 1 مگابایت محدود می‌شوند، اما تا 256 فایل کلید می‌تواند استفاده شود. انکارپذیری موجه (PLAUSIBLE DENIABILITY) ابزار tcplay انکارپذیری موجه را ارائه می‌دهد. حجم‌های مخفی در داخل یک حجم بیرونی ایجاد می‌شوند. اینکه به کدام حجم دسترسی پیدا شود صرفاً به عبارت عبور و فایل(های) کلید استفاده‌شده بستگی دارد. اگر عبارت عبور و فایل‌های کلید برای حجم بیرونی مشخص شوند، هیچ اطلاعاتی درباره وجود حجم مخفی آشکار نمی‌شود. بدون اطلاع از عبارت عبور و فایل(های) کلید حجم مخفی، وجود آن پنهان باقی می‌ماند. حجم مخفی را می‌توان در هنگام نگاشت حجم بیرونی با استفاده از گزینه --protect-hidden و تعیین عبارت عبور و فایل‌های کلید برای هر دو حجم بیرونی و مخفی محافظت کرد. پشتیبانی از VERACRYPT (VERACRYPT SUPPORT) ابزار tcplay هم از نسخه قدیمی TrueCrypt و هم از VeraCrypt پشتیبانی می‌کند. هنگام ایجاد یک حجم جدید، تابع PBKDF2 PRF انتخاب‌شده تعیین می‌کند که آیا حجم از قالب TrueCrypt استفاده خواهد کرد یا VeraCrypt. قالب‌ها به جز تعداد دورهای توابع اشتقاق کلید و همچنین امضای حجم و فیلدهای minver در سرآیند، یکسان هستند. تبدیل حجم‌ها از یک قالب به قالب دیگر با استفاده از tcplay صرفاً با استفاده از گزینه --modify و تعیین هش PBKDF2 PRF منطبق با قالب هدف مورد نظر با آرگومان --new-pbkdf-prf انجام می‌شود. توابع PBKDF2 PRF با پسوند -VC از نوع VeraCrypt هستند، در حالی که بقیه توابع قدیمی TrueCrypt هستند. به طور پیش‌فرض، حجم‌های جدید با یک PRF از نوع VeraCrypt ایجاد می‌شوند تا امنیت بهتری ارائه دهند. نکته: تلاش‌های ناموفق برای باز کردن قفل حتی برای حجم‌های قدیمی TrueCrypt اکنون به طور قابل توجهی طولانی‌تر از قبل زمان می‌برند، زیرا tcplay تمام PRFها را، از جمله PRFهای VeraCrypt با تعداد تکرارهای بسیار بالاتر را دور می‌زند. تلاش‌های موفقیت‌آمیز همچنان باید همان مدت زمان قبل را صرف کنند، زیرا تنظیمات قدیمی PRF ابتدا امتحان می‌شوند. یک استثنای قابل توجه زمانی است که به هر دو فایل کلید و عبارت عبور نیاز باشد. به طور معمول، tcplay ابتدا یک تلاش برای باز کردن قفل را فقط با فایل کلید انجام می‌دهد و تنها پس از شکست آن تلاش، عبارت عبور را درخواست می‌کند. اگر از قبل مشخص باشد که برای باز کردن قفل یک حجم به هر دو فایل کلید و عبارت عبور نیاز است، گزینه -p برای --info و --map می‌تواند زمان مورد نیاز برای باز کردن قفل حجم را به بیش از نصف کاهش دهد. مثال‌ها (EXAMPLES) ایجاد یک حجم جدید TrueCrypt روی /dev/vn0 با استفاده از آبشار رمزنگاری AES و Twofish و الگوریتم هش Whirlpool برای اشتقاق رمز عبور PBKDF2 و دو فایل کلید، one.key و two.key: tcplay --create --device=/dev/vn0 --cipher=TWOFISH-256-XTS,AES-256-XTS --pbkdf-prf=whirlpool --keyfile=one.key --keyfile=two.key نگاشت حجم بیرونی روی حجم TrueCrypt در /dev/vn0 به عنوان truecrypt1 ، اما با محافظت از حجم مخفی در برابر بازنویسی با استفاده از فایل کلید hidden.key: tcplay --map=truecrypt1 --device=/dev/vn0 --protect-hidden --keyfile-hidden=hidden.key نگاشت حجم مخفی روی حجم TrueCrypt در /dev/vn0 به عنوان truecrypt2 ، با استفاده از فایل کلید hidden.key: tcplay --map=truecrypt2 --device=/dev/vn0 --keyfile=hidden.key نگاشت و سوار کردن حجم درون پرونده secvol در لینوکس: losetup /dev/loop1 secvol tcplay --map=secv --device=/dev/loop1 mount /dev/mapper/secv /mnt به طور مشابه در DragonFly: vnconfig vn1 secvol tcplay --map=secv --device=/dev/vn1 mount /dev/mapper/secv /mnt حذف نگاشت حجم truecrypt2 در هر دو سیستم لینوکس و DragonFly پس از پیاده کردن: dmsetup remove truecrypt2 یا به عنوان روش جایگزین: tcplay --unmap=truecrypt2 یک حجم مخفی که وجود آن می‌تواند به طور موجهی انکار شود و حجم بیرونی آن می‌تواند برای مثال با دستور زیر ایجاد شود: tcplay --create --hidden --device=/dev/loop0 --cipher=TWOFISH-256-XTS,AES-256-XTS --pbkdf-prf=whirlpool --keyfile=one.key --cipher-hidden=AES-256-XTS --pbkdf-prf-hidden=whirlpool --keyfile-hidden=hidden.key برنامه tcplay عبارت عبور برای هر دو حجم بیرونی و مخفی و همچنین اندازه حجم مخفی در داخل حجم بیرونی را از کاربر درخواست خواهد کرد. حجم مخفی در داخل ناحیه پوشش‌داده‌شده توسط حجم بیرونی ایجاد خواهد شد. حجم مخفی می‌تواند به صورت اختیاری از یک تابع رمز و prf متفاوت مطابق آنچه با گزینه‌های --cipher-hidden و --pbkdf-prf-hidden مشخص شده است استفاده کند. اینکه بعداً به کدام حجم دسترسی پیدا شود تنها بستگی به این دارد که از کدام عبارت عبور و فایل(های) کلید استفاده می‌شود، به طوری که وجود حجم مخفی بدون اطلاع از عبارت عبور و فایل کلیدی که توسط آن محافظت می‌شود ناشناخته می‌ماند زیرا در داخل حجم بیرونی قرار دارد. برای نگاشت حجم بیرونی بدون آسیب رساندن به حجم مخفی، عبارت عبور و فایل(های) کلید حجم مخفی باید مشخص باشند و همراه با گزینه --protect-hidden ارائه شوند. یک دیسک رمزنگاری‌شده با استفاده از رمزنگاری کامل دیسک (FDE) را می‌توان با دستور زیر نگاشت کرد: tcplay --map=tcplay_sdb --device=/dev/sdb --fde برای دسترسی به پارتیشن‌های منفرد روی دیسک نگاشت‌شده، دستور زیر نگاشت‌هایی را برای هر پارتیشن منفرد روی دیسک رمزنگاری‌شده ایجاد می‌کند: kpartx --av /dev/mapper/tcplay_sdb برای بازیابی سرآیند حجم اصلی از سرآیند پشتیبان، می‌توان از دستور زیر استفاده کرد: tcplay --modify --device=/dev/sdb --restore-from-backup-hdr همانند اکثر دستورات دیگر، اینکه کدام سرآیند ذخیره می‌شود (به عنوان منبع استفاده می‌شود) بستگی به عبارت عبور و فایل‌های کلید استفاده‌شده دارد. برای ذخیره یک نسخه پشتیبان از یک سرآیند، دستور زیر می‌تواند استفاده شود: tcplay --modify --device=/dev/sdb --save-hdr-backup=/tmp/sdb_backup_header.hdr همانند سایر دستورات، اینکه کدام سرآیند ذخیره می‌شود به عبارت عبور و فایل‌های کلید استفاده‌شده بستگی دارد. برای بازیابی یک سرآیند از یک پرونده سرآیند پشتیبان، می‌توان از دستور زیر استفاده کرد: tcplay --modify -use-hdr-file=/tmp/sdb_backup_header.hdr به طور مشابه، برای بازیابی یک سرآیند مخفی از پرونده سرآیند پشتیبان: tcplay --modify -use-hidden-hdr-file=/tmp/sdb_backup_hidden_header.hdr اینکه کدام سرآیند به عنوان منبع عملیات استفاده شود همچنان به عبارت عبور و فایل‌های کلید استفاده‌شده بستگی دارد. حتی اگر از گزینه --use-hidden-hdr-file استفاده کنید، اگر عبارت عبور و فایل‌های کلید را برای سرآیند اصلی مشخص کنید، به جای آن از سرآیند اصلی استفاده خواهد شد. همچنین ببینید (SEE ALSO) crypttab(5), cryptsetup(8), dmsetup(8), kpartx(8) تاریخچه (HISTORY) ابزار tcplay در DragonFly 2.11 ظاهر شد. نویسندگان (AUTHORS) Alex Hornung Linux 6.12.107+deb13-amd64 December 8, 2013 Linux 6.12.107+deb13-amd64