При обсуждении требований к инфраструктуре открытых ключей PKI предприятия часто игнорируют требования к клиентскому программному обеспечению. (Например, многие люди фокусируются только на компоненте CA при обсуждении PKI). Ценность инфраструктуры открытых ключей PKI связана со способностью пользователей использовать шифрование и цифровые подписи. По этой причине инфраструктура открытых ключей PKI должна включать клиентское программное обеспечение, которое работает последовательно и прозрачно между приложениями на рабочем столе (электронная почта, веб-просмотр, электронные формы, шифрование файлов/папок и т. д.). Последовательная, простая в использовании реализация инфраструктуры открытых ключей PKI в клиентском программном обеспечении снижает эксплуатационные расходы на инфраструктуру открытых ключей PKI. Кроме того, клиентское программное обеспечение должно быть технологически доступно для поддержки всех элементов инфраструктуры открытых ключей PKI. В следующем списке обобщены требования, которым должно соответствовать клиентское программное обеспечение, чтобы пользователи в бизнесе получали пригодную для использования, прозрачную (и, следовательно, надлежащую) PKI. Сертификаты открытых ключей Чтобы обеспечить доверие третьих сторон, все приложения с поддержкой PKI должны использовать сертификаты последовательным и надежным образом. Программное обеспечение клиентов должно подтвердить подпись CA на сертификатах и убедиться, что не истек срок действия сертификатов. Для обеспечения защиты пользователей от потери данных PKI должна поддерживать систему резервного копирования и восстановления ключей расшифровки. Что касается административных расходов, то неприемлемо, чтобы каждое приложение предоставляло свою собственную резервную копию и восстановление ключа. Вместо этого все клиентские приложения с поддержкой PKI должны взаимодействовать с единой системой резервного копирования и восстановления ключей. Взаимодействие между клиентским программным обеспечением и системой резервного копирования и восстановления ключей должно быть безопасным, а метод взаимодействия должен быть согласованным во всех приложениях с поддержкой PKI. Поддержка неотказуемости Для обеспечения базовой поддержки неотказуемости клиентское программное обеспечение должно генерировать пары ключей, используемые для цифровой подписи. Кроме того, клиентское программное обеспечение должно гарантировать, что ключи подписи никогда не будут дублироваться и будут под контролем пользователей в любое время. Этот тип поддержки должен быть последовательным во всех приложениях с поддержкой PKI. Автоматическое обновление пар ключей Для обеспечения прозрачности клиентские приложения должны автоматически инициировать обновление пар ключей пользователей. Это необходимо выполнить в соответствии с политикой безопасности организации. Недопустимо, чтобы пользователи знали, что их пары ключей требуют обновления. Для выполнения этого требования во всех приложениях с поддержкой PKI клиентское программное обеспечение должно обновлять пары ключей прозрачно и последовательно. Управление историями ключей Чтобы пользователи могли легко получить доступ ко всем зашифрованным для них данным (независимо от того, когда они были зашифрованы), приложения с поддержкой PKI должны иметь доступ к истории ключей пользователей. Клиентское программное обеспечение обязано иметь возможность надежно восстановить историю ключей пользователей. Масштабируемое хранилище сертификатов Чтобы свести к минимуму расходы на распространение сертификатов, все приложения с поддержкой PKI должны использовать общее масштабируемое хранилище сертификатов.