26.08.2005 20:04:42многопоточность Ответов: 1
Quark
Коллеги, такой вопрос. Есть система клиент-сервер. Хотим шифровать канал данных. Сервер позволяет несколько одновременных подключений. Можно ли паралельно шифровать данные для разных каналов? Если я правильно понял, то для этого придется открыть несколько экземпляров ключевого контейнера сервера. А как быть с ERROR_BUSY? Или пока будет идти обмен по одному каналу, другие будут "отдыхать" дожидаясь своей очереди?
 
Ответы:
29.08.2005 10:04:53Василий
Можно одновременно на одном ключевом контейнере сервера.
Ошибка ERROR_BUSY возникает при одновременном доступе к ключевому контейнеру на носителе при операциях чтения/записи долговременных ключей из контейнера. Для уменьшения числа этих ошибок можно использовать один из путей:
а) служба на стороне сервера открывает контекст контейнера при своём старте и не закрывает его до останова. Ключевой контейнер при этом загружается в память службы и не требуется доступа к носителю. Примеры подобного поведения: MS IIS, MS SQL.
б) использовать кеширование контейнеров (Панель управления - КриптоПро CSP - Безопасность)
в) использовать быстрый носитель (самый быстрый - реестр Windows)