Установите полноценный PKI. Удобно использовать смарт-карты(в России более распростанены usb-токены) для генерации ключевой пары и хранения ее вместе с сертификатом. Для управления этими смарт-картами нужен CMS - Card Mangement System.
Выдача может быть самостоятельная. Например, пользователь после логина на портале самообслуживания по доменным логину-паролю автоматически получает все необходимые сертификаты на смарт-карту.
После этого CMS самостоятельно следит за необходимостью обновления сертификатов и напоминает пользователю об этом.
Я реализовывал такую выдачу сертификатов на OpenTrust PKI + OpenTrust CMS.