Algorithm em SignatureMethod da NF-e: URI fixa de RSA-SHA1
@AlgorithmnfeProc › NFe › ds:Signature › ds:SignedInfo › ds:SignatureMethod › @AlgorithmRevisão editorial em 15 de out. de 2026. As versões e condições das regras estão indicadas ao longo do artigo.
O atributo Algorithm de SignatureMethod identifica o método assimétrico usado na assinatura de SignedInfo. O schema da NF-e exige a URI RSA-SHA1, mesmo que o tipo básico seja anyURI.
Caminho desta página: /nfeProc/NFe/ds:Signature/ds:SignedInfo/ds:SignatureMethod/@Algorithm. O alias ds neste XPath representa o namespace http://www.w3.org/2000/09/xmldsig#; ele permite localizar o elemento, mas não exige esse prefixo na serialização fiscal.
Qual é o valor literal e como se lê?
O valor fixado é http://www.w3.org/2000/09/xmldsig#rsa-sha1. A presença do atributo é obrigatória. A URI indica o método, não um serviço remoto e não a chave de acesso.
Fragmento parcial sintético:
<SignatureMethod xmlns="http://www.w3.org/2000/09/xmldsig#" Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/>
Não substitua o literal pelo nome curto RSA, por sha1 ou pela URI de RSA-SHA256. São identificações diferentes. O fragmento não é documento completo e não contém uma assinatura calculada.
Como diferenciar os outros atributos Algorithm?
Em DigestMethod, o algoritmo é SHA-1 e produz o resumo do alvo da referência. Em Transform, o algoritmo prepara os dados desse alvo. Em CanonicalizationMethod, ele normaliza SignedInfo. Neste atributo, RSA-SHA1 descreve a operação que gera/verifica SignatureValue sobre o SignedInfo canonicalizado.
Essa distinção evita um erro de integração: usar uma configuração de hash como se fosse a configuração de assinatura assimétrica. O certificado fornece a chave pública; o identificador do algoritmo não contém nem escolhe um certificado.
XMLDSig: processamento e elementos.
Por que alterar apenas o atributo não resolve?
Cenário: o conteúdo foi gerado por um método e o integrador muda a URI para o valor esperado pelo XSD. A declaração pode passar a parecer correta, mas os bytes foram calculados por outro procedimento. Além disso, o atributo está dentro de SignedInfo, cujo conteúdo participa da assinatura.
Preserve o XML, identifique o método efetivamente executado e corrija a configuração do gerador com teste controlado. Verifique referência, digest, assinatura e confiança separadamente. Não troque o método no original autorizado e não trate a validação de schema como prova de autorização.
MOC: perfil de assinatura, pp. 53–56.
Fontes e contexto
Schema específico XMLDSig da NF-e — PL_010f_v1.04 / xmldsig-core-schema_v1.01.xsd; MOC — Visão Geral — 7.0; XML Signature Syntax and Processing — 1.1, Recommendation 11/04/2013.
Referência técnica para integração
- XPath completo
/nfeProc/NFe/ds:Signature/ds:SignedInfo/ds:SignatureMethod/@Algorithm- Namespace
Não informado- Leiaute
- 4.00 · PL_010e_v1.02
- Ocorrências no XSD
- 1–1 no contexto do elemento pai
- Tipo
- anyURI
- Preenchimento no catálogo
- Obrigatório
- Valor fixo no XSD
- http://www.w3.org/2000/09/xmldsig#rsa-sha1
A ocorrência vale dentro da estrutura XML: um campo obrigatório em um grupo opcional não torna esse grupo obrigatório. A aplicação fiscal depende da operação e da versão da regra.