оставлю это здесь в качестве подсказок для озарения (КриптоПро 4 на древней Убунте 18.04)
#!/bin/sh
certmgr=/opt/cprocsp/bin/amd64/certmgr
csptest=/opt/cprocsp/bin/amd64/csptest
export LANG=C
# хранилища
#$certmgr -enumstores all_locations
#= machine: ca, root
#= user: my, cache
# сертификаты в хранилищах
#$certmgr -list -store mca
#$certmgr -list -store mroot
#$certmgr -list -store umy
$certmgr -list -store umy | grep -E -i -- "---|subject|sha1|valid|privatekey|container"
#$certmgr -list -store ucache
# контейнеры
#$csptest -keyset -enum_containers -verifycontext -fqcn # пользователя
#$csptest -keyset -enum_containers -verifycontext -fqcn -machinekeys # компьютера
getUserContainers() {
$csptest -keyset -enum_containers -verifycontext -fqcn | grep -F \\\\.\\
}
# сертификаты в контейнерах
#getUserContainers | while read -r container; do
# printf "%s\n" "$container"
# $certmgr -list -container "$container" | grep -E -i "subject|sha1|valid"
#done
# удались все сертификаты
$certmgr -delete -store umy -all
# установить сертификаты из контейнеров
getUserContainers | while read -r container; do
printf "%s\n" "$container"
$certmgr -install -store umy -container "$container" | grep -E -i "subject|sha1|valid"
done
скрипт выше используется эпизодически оставляя без комментариев нужные части