Esse erro começou a surgir após a aplicação do update 46. O core utiliza o algoritimo SHA1 (Secure Hash Algorithm 1), na assinatura do XML da NF-e, no entanto ele já não é seguro e está sendo removido dos produtos Microsoft. Por conta disso, como solução paliativa é necessário abrir uma excessão no escopo da aplicação, para que este algoritmo possa continuar sendo usado. A Microsoft já está a par deste problema. Como Hotfix, adicione a seguinte extension ao seu ambiente:
[ExtensionOf(classStr(EFDocSignXmlDocument_BR))]
internal final class EFDocSignXmlDocument_BR_Extension
{
public str signDocument(
KeyVaultCertificateRef _keyVaultCertificateRef,
DigitalCertificateSubject _certificateSubject,
XmlElement _xmlDoc,
str _elementToBeSignedName)
{
System.AppContext::SetSwitch("Switch.System.Security.Cryptography.Xml.UseInsecureHashAlgorithms", true);
System.AppContext::SetSwitch("Switch.System.Security.Cryptography.Pkcs.UseInsecureHashAlgorithms", true);
return next signDocument(_keyVaultCertificateRef, _certificateSubject, _xmlDoc, _elementToBeSignedName);
}
}
Nenhum comentário:
Postar um comentário