5308 - Erro: O processo de assinatura falhou, certificado digital com problemas: [Invalid provider type specified. ]

O algoritmo padrão de hash da assinatura digital é sha1.

O erro acontece quando no processo de assinatura o .NET do certificado A1 ou a DLL do dispositivo A3 indicar o algoritmo hash diferente de sha1.

Nestes casos, verifique se está utilizando uma versão da DLL que força o uso do algoritmo sha1

NFe_Util - a partir da versão 4.03d

CTe_Util - a partir da versão 3.07

MDFe_Util - a partir da versão 3.08a

 

Para quem utiliza a DLL em ASP.NET, pode ser necessário fazer as seguintes configurações:

1 - <httpRuntime targetFramework="4.7.0"> deve ser no máximo 4.7.0, a partir da versão 4.7.1 o tratamento é diferente e não funciona.

2 - É necessário ativar como True a opção "Load User Profile" no Pool da aplicação no IIS.