Изменения в API
LibCore v2024.1.10.1 - последняя версия LibCore с поддержкой старой версии API.
Начиная с версии LibCore v2024.02.29 LibCore не является обратно совместимым с прошлыми версиями.
Изменения пространства имён
| Старое имя | Новое имя |
|---|---|
LibCore.Security.Cryptography |
CryptoPro.Security.Cryptography |
LibCore.Security.Cryptography.X509Certificates |
CryptoPro.Security.Cryptography.X509Certificates |
LibCore.Security.Cryptography.Xml |
CryptoPro.Security.Cryptography.Xml |
LibCore.Security.Cryptography.Pkcs |
CryptoPro.Security.Cryptography.Pkcs |
LibCore.Net.Security |
CryptoPro.Net.Security |
Изменения в исправлении стандартных классов рантайма
В настоящий момент не реализованы исправления стандартных классов пространств имён System.Security.Cryptography.*, System.Net.Security, доступные в версиях LibCore до v2024.1.10.1 включительно.
Примечание
На данный момент нет необходимости инициализации библиотеки через
LibCore.Initializer.Initialize().
Предупреждение
Сторонние библиотеки и пакеты, в которых было возможно неявное использование функциональности LibCore в настоящий момент не имеют такой возможности. Подробнее.
Перечень изменений
Далее пречисленный основные изменения api для различных классов.
Основные изменения заключаются в необходимости использовать классы Cp{ClassName} вместо {ClassName}.
Изменения Gost3410_XXXX_CryptographicServiceProvider:
Методы SignData, SignHash, TrySignData, VerifyData, VerifyHash больше не принимают на вход HashAlgorithmName, т.к. алгоритм хэширования однозначно определяется используемым алгоритмом подписи.
Изменения X509Store
Для использования хранилища сертификатов необходимо воспользоваться классом CpX509Store.
Примечание
Данный класс необходимо использовать и на Windows для работы с ГОСТовыми сертификатами.
Изменения X509Certificate2
Для работы с сертификатами необходимо использовать класс CpX509Certificate2.
Примечание
Для открытия сертификата из pfx вместо использования статического метода X509CertificateExtensions.Create необходимо воспользоваться конструктором CpX509Certificate2() с флагом X509KeyStorageFlags.EphemeralKeySet.
Изменения X509Chain
Для работы с цепочками сертификатов необходимо использовать класс CpX509Chain.
Изменения SignedXml
Для работы подписями в формате XMl необходимо использовать класс CpSignedXml.
Изменения TLS/SslStream
В настоящий момент для использования клиентского TLS необходимо использование класса CpHttpHandler.
Изменения SignedCms/CmsSigner
В настоящий момент для использования CMS шифрования необходимо использование классы CpSignedCms/CpCmsSigner.
Изменения EnvelopedCms
В настоящий момент для использования CMS шифрования необходимо использование класса CpEnvelopedCms.