Pular para o conteúdo
Fiscal ProBiblioteca
NF-e e NFC-e · Suplemento, assinatura e protocolo

Algorithm em DigestMethod da NF-e: identificação de SHA-1

@AlgorithmnfeProc › NFe › ds:Signature › ds:SignedInfo › ds:Reference › ds:DigestMethod › @Algorithm

Revisão editorial em 15 de out. de 2026. As versões e condições das regras estão indicadas ao longo do artigo.

Algorithm em Reference/DigestMethod identifica o algoritmo de hash usado no resumo dos dados referenciados. No schema fiscal examinado, ele é obrigatório e seu valor é fixo na URI de SHA-1.

Caminho desta página: /nfeProc/NFe/ds:Signature/ds:SignedInfo/ds:Reference/ds:DigestMethod/@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 literal é aceito pelo tipo específico?

O valor é http://www.w3.org/2000/09/xmldsig#sha1. O tipo base é anyURI, mas a restrição fixed impede tratar o atributo como livre. sha1, SHA-1, uma URL com https ou a URI de SHA-256 não são o literal fixado.

Fragmento parcial sintético:

<DigestMethod xmlns="http://www.w3.org/2000/09/xmldsig#" Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>

O atributo precisa existir mesmo havendo um valor fixo no schema. O fragmento declara o método, sem calcular o resumo nem produzir uma NF-e completa.

Declaração XSD do contexto.

O que o atributo não contém?

Ele não contém DigestValue, que é a representação Base64 do hash dos dados após as transformações. Também não contém a chave pública, o certificado ou SignatureValue. A URI identifica um método, sem necessidade de baixá-lo da internet durante a verificação.

SignatureMethod/@Algorithm usa a URI RSA-SHA1, que descreve outra operação. Colocar esse literal em DigestMethod confunde assinatura assimétrica e resumo; os respectivos valores precisam corresponder aos objetos corretos.

XMLDSig: processamento e elementos.

Como conferir uma emissão incompatível?

Exemplo: uma biblioteca usa SHA-256 como padrão e grava sua URI. Confira a configuração de digest do gerador e o perfil efetivamente exigido; não troque a URI no XML assinado. O algoritmo deve corresponder ao cálculo que produziu DigestValue, e qualquer alteração de SignedInfo afeta a assinatura final.

Em uma divergência, registre separadamente falha de schema, falha de digest e falha de SignatureValue. Preserve o original e valide o ajuste de geração em cenário controlado. A presença do literal certo não atesta que a conta foi executada corretamente nem comprova 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:Reference/ds:DigestMethod/@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#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.