Skip to content

.netcore #37

@umbruxo

Description

@umbruxo

КриптопроCSP установдлен
Сертификат корректный (но privateKey свойство у него недоступно почему-то), но при попытке подписать сообщение ниже приведенным кодом возникает ошибка:
GostCryptoConfig.ProviderType = GostCryptography.Base.ProviderType.CryptoPro_2012_512;

        //Создание объекта для подписи сообщения
        var signedCms = new GostSignedCms(new ContentInfo(message),true);
        
       
        // Создание объект с информацией о подписчике           
        var signer = new CmsSigner(certificate);
        
        var tt = certificate.GetHashAlgorithm();
        //signer.DigestAlgorithm = Oid.FromOidValue("1.2.643.7.1.1.2.2", OidGroup.HashAlgorithm); //GostCryptography.Asn1.Gost.Gost_R3410_2012_256.Gost_R3410_2012_256_Constants.HashAlgorithm.ToOid();
         // Включение информации только о конечном сертификате (только для теста)
         signer.IncludeOption = X509IncludeOption.EndCertOnly;
         
         // Создание подписи для сообщения CMS/PKCS#7
         signedCms.ComputeSignature(signer);

Ошибка:
'1.2.643.7.1.1.2.2' is not a known hash algorithm.
trace:
at Internal.Cryptography.PkcsHelpers.GetDigestAlgorithm(String oidValue, Boolean forVerification)
at System.Security.Cryptography.Pkcs.CmsSigner.Sign(ReadOnlyMemory`1 data, String contentTypeOid, Boolean silent, X509Certificate2Collection& chainCerts)
at System.Security.Cryptography.Pkcs.SignedCms.ComputeSignature(CmsSigner signer, Boolean silent)
at GostCryptography.Pkcs.GostSignedCms.ComputeSignature(CmsSigner signer, Boolean silent)
at GostCryptography.Pkcs.GostSignedCms.ComputeSignature(CmsSigner signer)

Что я делаю неверно?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions