1. Я не геворил ни слова про "неизвлекаемость" - только про "неэкспортируемые" ключи
2. Специально для педантов брал этот термин в кавычки исходя из следующих соображений:
2.1 Когда ключевой контейнер генерируется через программный криптопровайдер (тот же криптопро), имеется возможность одним из флагов указать CRYPT_EXPORTABLE, дающий возможность дальнейшего экспорта закрытых ключей из контейнера.
2.2. В дальнейшем, сертификат, привязанный к такому контейнеру, можно экспортировать вместе с закрытыми ключами в тот же pfx файл (в общем виде, кажется, контейнер p12). Ну, или перегнать с токена в реестр, кому как больше нравися. Если этот флаг не ставить, у сертификата "пропадает" возможность экспорта закрытого ключа
2.3 Из п.2.2 становится поятно, что флаг имеет влияние исключительно на криптопровайдер. В ключевых контейнерах криптопро это вообще всего 1 бит - прописал его в нужном месте, контейнер (а вместе с ним и закрытый ключ и сертификат) стал экспортируемым
3. Так получилось, что по файловой системе токенов от аладдина (етокен, жакарта) можно гулять с использованием входяшей в состав дров дээлэлины jcfs.dll (ну или etsdk.dll) - про это можно найти 2 статьи на хабре, в них описаны скрипты для прогулок. Файлы ключевого контейнера достаточно легко сливаются на диск - получается копия "неэкспортируемого" контейнера. В случае криптопро - вообще 1-в-1, хоть в реестр запихивай, хоть на фрэшку, которую потом можно вставлять в нубук:). Единственное, скрипты не совсем удобны и требуют ряда условий для "жизни", поэтому и пришлось тулзу писать
3.1 Жакарта из ФНС (быда жакарта ЛТ, не PKI/ГОСТ как для егаиса), несмотря на то, что ключевой контейнер на ней сформирован и прекрасно видится в криптопро, отказалась раскрывать все свои тайны, в то время как если на обычную джакарту перенести средствами того же криптопро ключевой контейнер, он и видится, и копируется.
4. А вот с рутокеном такой финт ушами не катит. В состав дрой входит "аналог" jcfs.dll для этого токена - rtAPIlt.dll, но он либо абсолютно слеп к токену, если функции применять ровно по той же аналогии, что и к аладдиновским токенам, либо (что не исключено) порядок и(или) списоб (аргументы) их применения несколько другой, а про это хрен где узнаешь
5. Так же на хабре можно найти статьи про работу с токенами через APDU, но разбираться в этих дебрях слишком уж муторно. Но этот путь кажется универсальным ибо
5.1 как-то же криптопро читает и пишет контейнеры на токены
5.2 В состав дров рутокена входит rtAPI.dll а вней содержится широкий спектр функций, в названии которых как раз APDU упоминается
В общем, кому не лень, можете задаться целью и прокапать указанное направление