Пакет tcb применяется для хранения базы паролей в дистрибутивах Openwall GNU/*/Linux, ALT Linux и Mageia.
Переключение между схемой хранения паролей TCB, классической схемой (с единым файлом /etc/shadow) и строгой схемой (классическая, при которой команду passwd имеет право запускать только суперпользователь) управляется командой control passwd с параметрами tcb, traditional и restricted соответственно.
Импорт учётных записей из других систем, использующих shadow, не вызывает неприятностей, нужно только иметь в виду, что небезопасный ключ пребудет в shadow неизменным до тех пор, пока пользователь не сменит пароль (преобразование невосстановимого ключа из одного формата в другой, конечно, невозможно). При решении задач импорта-экспорта учётных записей стоит воспользоваться содержимым пакета tcb-utils.
Ключевым отличием от /etc/shadow является уход от использования общего файла со всеми хэшами паролей в пользу разнесения хэшей паролей по отдельным каталогам и файлам. При подобной организации хранения операции с паролями можно выполнять без повышения прав до root, а процесс, осуществляющий обработку учётных данных, ограничен учётной записью отдельного пользователя. Для сравнения, в традиционном механизме /etc/shadow его обработчик всегда получает доступ сразу ко всем хэшам паролей, т.е. уязвимость в утилите passwd позволит изменить любой пароль.
Пакет включает в себя PAM-модуль pam_tcb, NSS модуль libnss_tcb и общую для данных модулей библиотеку libtcb. Замены модулей PAM и NSS достаточно для работы со схемой tcb штатных утилит, таких как passwd, и системных сервисов.
Из улучшений в выпуске tcb 1.2 отмечается:
- Поддержка libxcrypt и новых версий Glibc.
- Поддержка интернационализации в pam_tcb (i18n) и прекращение поддержки устаревшего механизма NIS/NIS+.
- Большая часть изменений подготовлена Дмитрием Левиным из команды ALT Linux.