# PKCS#12

> PKCS#12 é um padrão de formato de arquivo que reúne, em um único pacote protegido por senha, um certificado digital, a chave privada correspondente e, opcionalmente, a cadeia de certificação. No Brasil, é o formato usado pelo certificado digital A1, normalmente salvo com extensão .pfx ou .p12, para assinar documentos fiscais eletrônicos como NF-e, NFC-e e CT-e.

**Também conhecido como:** PKCS 12, PKCS12, Arquivo PFX, Arquivo P12, Formato .pfx, Formato .p12, PKCS#12, Public-Key Cryptography Standards #12

**Glossário:** [Glossário de A a Z](https://conota.dev/glossario/) · **Letra:** P

## O que é PKCS#12, em palavras simples?

Pense no PKCS#12 como um cofre digital em forma de arquivo. Dentro dele ficam guardadas as peças necessárias para provar a identidade de uma empresa ou pessoa no meio eletrônico: o certificado digital, que é a parte pública, e a chave privada, que é a parte secreta. Para abrir esse cofre, é preciso saber a senha definida quando o arquivo foi criado.

O nome vem de uma família de padrões de criptografia chamada PKCS (Public-Key Cryptography Standards). O número 12 identifica especificamente o padrão que define como empacotar certificados e chaves em um só arquivo, de forma portátil e protegida.

## Qual a diferença entre PKCS#12, PFX e P12?

Na prática, os três nomes se referem à mesma coisa. PKCS#12 é o nome do padrão técnico. PFX e P12 são as extensões de arquivo mais comuns para arquivos nesse formato. Um arquivo empresa.pfx e um arquivo empresa.p12 seguem o mesmo padrão e geralmente podem ser usados da mesma maneira.

O termo PFX tem origem em um formato anterior que serviu de base para o PKCS#12, por isso ainda aparece com frequência em sistemas Windows e em instruções de emissores fiscais.

## Por que o PKCS#12 é importante na emissão de notas fiscais?

Todo documento fiscal eletrônico precisa ser assinado digitalmente antes de ser enviado à SEFAZ ou à prefeitura. Essa assinatura garante que o XML foi gerado pelo emitente e não foi alterado no caminho. Para assinar, o sistema precisa da chave privada da empresa, e é justamente o arquivo PKCS#12 que a transporta.

O certificado digital A1 da ICP-Brasil é entregue nesse formato. Como é um arquivo, ele pode ser instalado em servidores e usado de forma automática, sem depender de cartão, token ou leitor físico. Isso o torna o tipo mais usado por ERPs, plataformas de venda e APIs fiscais que emitem notas em grande volume.

## Como o arquivo PKCS#12 é usado em uma API fiscal?

Em uma integração por API, a empresa normalmente cadastra o certificado uma única vez, enviando o arquivo .pfx junto com a senha. Muitas APIs aceitam o arquivo convertido em texto Base64 dentro de uma requisição JSON, o que facilita o envio por HTTPS.

Depois do cadastro, a plataforma usa o certificado para assinar cada documento emitido em nome daquele CNPJ. Também é comum que ela leia do próprio arquivo a data de validade e avise quando o certificado estiver perto de vencer, evitando que as emissões parem de repente.

## Quais cuidados de segurança o PKCS#12 exige?

Quem tem o arquivo e a senha consegue assinar documentos em nome da empresa. Por isso, o arquivo nunca deve ser enviado por e-mail sem proteção, deixado em pastas compartilhadas ou gravado em código-fonte. A senha deve ser guardada separadamente do arquivo, de preferência em um cofre de segredos.

Também vale manter uma cópia de segurança em local protegido, já que perder o arquivo significa, em geral, precisar emitir um novo certificado. Em ambientes mais exigentes, a chave pode ser armazenada em um HSM, que impede que ela seja copiada.

## Exemplos de PKCS#12

- Um ERP que atende várias lojas pede a cada cliente o upload do arquivo .pfx do certificado A1 e da senha para começar a emitir NF-e automaticamente.
- Um desenvolvedor converte o arquivo PKCS#12 em Base64 e o envia no corpo de uma requisição JSON para cadastrar o certificado de um novo CNPJ em uma API fiscal.
- Uma transportadora renova seu certificado A1, recebe um novo arquivo .p12 e o substitui no Console do emissor para continuar emitindo CT-e e MDF-e sem interrupção.
- A equipe de TI guarda o arquivo .pfx em um cofre de segredos e configura o servidor para lê-lo apenas no momento de assinar os XML.

## Perguntas frequentes

### Posso usar um certificado A3 no formato PKCS#12?

Não. No certificado A3 a chave privada fica gravada em cartão ou token e não pode ser exportada. O formato PKCS#12 é característico do certificado A1, cuja chave fica em um arquivo.

### O que acontece se eu esquecer a senha do arquivo PFX?

Sem a senha não é possível abrir o arquivo nem usar a chave privada. Em geral, a solução é solicitar a emissão de um novo certificado à Autoridade Certificadora.

### Um arquivo PKCS#12 pode ser convertido para outros formatos?

Sim. Ferramentas de criptografia permitem extrair o certificado e a chave para formatos como PEM ou importar o conteúdo em um repositório JKS, usado em sistemas Java. A senha é necessária para isso.

### O arquivo PKCS#12 tem validade?

O arquivo em si não expira, mas o certificado dentro dele tem data de validade. O certificado A1 costuma valer cerca de um ano; depois disso, as assinaturas deixam de ser aceitas e é preciso renová-lo.

## Termos relacionados

- [Arquivo PFX](https://conota.dev/glossario/arquivo-pfx.md)
- [Certificado digital A1](https://conota.dev/glossario/certificado-digital-a1.md)
- [Assinatura digital do XML](https://conota.dev/glossario/assinatura-digital-do-xml.md)
- [Base64 no envio de certificados](https://conota.dev/glossario/base64-no-envio-de-certificados.md)
- [JKS para armazenamento de certificados](https://conota.dev/glossario/jks-para-armazenamento-de-certificados.md)
- [Backup de certificado A1](https://conota.dev/glossario/backup-de-certificado-a1.md)

---

Fonte: [PKCS#12](https://conota.dev/glossario/pkcs12/) · Atualizado em 2026-10-22
