1. Certificado de Transporte (Brcac)
O que é?
- Certificado específico para comunicação segura no Open Finance.
- Emitido por uma Autoridade Certificadora (AC) aprovada pelo ecossistema.
Como obter?
- Baixar o modelo
.cnfdo diretório Sandbox do Open Finance. - Personalizar para produção (alterar domínios e dados da empresa).
- Gerar CSR usando o arquivo de configuração:
Passo a Passo (via OpenSSL):
- Editar o arquivo
brcac.cnf. Abaixo um exemplo de arquivo .cnf para que insira as informações da sua organização com base no diretório de produção:
[req]
default_bits = 2048
default_md = sha256
encrypt_key = yes
prompt = no
string_mask = nombstr
distinguished_name = client_distinguished_name
req_extensions = req_cert_extensions
[ client_distinguished_name ]
businessCategory = Private Organization
jurisdictionCountryName = BR
serialNumber = 11111111111111 // CNPJ da organização
countryName = BR
organizationName = INSTITUICAO DE PAGAMENTO // Nome da organização
stateOrProvinceName = SP // Sigla do estado
localityName = BARUERI // cidade
organizationIdentifier = OFBBR-c55ceb2e-c9fb-4989-8ed1-39208d6d7951 // OFBR-{organizationId}
UID = 48e4a746-e52a-44e3-80cc-91783ad9ae7c // id de declaração de software
commonName = api-mtls.suaempresa.com.br // inserir o dominio mtls
[ req_cert_extensions ]
basicConstraints = CA:FALSE
subjectAltName = @alt_name
keyUsage = critical,digitalSignature,keyEncipherment
extendedKeyUsage = clientAuth
[ alt_name ]
DNS = https://api-mtls.suaempresa.com.br // inserir o dominio mtlsGerar chave privada e CSR:
bash
openssl req -new -utf8 -newkey rsa:2048 -nodes -out brcac.csr -keyout brcac.key -config ./brcac.cnf && cat brcac.csr
- Enviar o
.csrpara a AC credenciada (ex: Serasa AC, Soluti, CertiSign, Valid). Receber o certificado em.p12ou.pfx.
2. Certificado de Assinatura (BRAEAL)
O que é?
- Certificado ICP-Brasil para assinatura digital de requisições.
- Emitido por uma Autoridade Certificadora (AC) aprovada pelo ecossistema.
Como obter?
- Baixar o modelo
.cnfdo diretório Sandbox do Open Finance. - Personalizar para produção (alterar domínios e dados da empresa).
- Gerar CSR usando o arquivo de configuração:
Passo a Passo (via OpenSSL):
- Editar o arquivo
brseal.cnf. Abaixo um exemplo de arquivo .cnf para que insira as informações da sua organização com base no diretório de produção: [req] default_bits = 2048 default_md = sha256 encrypt_key = yes prompt = no string_mask = nombstr distinguished_name = client_distinguished_name req_extensions = req_cert_extensions [ client_distinguished_name ] UID = c55ceb2e-c9fb-4989-8ed1-39208d6d7951 // ID da Organização * countryName = BR organizationName = ICP-Brasil 0.organizationalUnitName = Open Insurance SANDBOX Issuing CA - G1 // Nome da Autoridade Certificadora * 1.organizationalUnitName = 11111111111111 // CNPJ da Autoridade de Registro * 2.organizationalUnitName = Open Banking Directory // Tipo de validação * commonName = INSTITUICAO DE PAGAMENTO // Nome da Empresa * [ req_cert_extensions ] basicConstraints = CA:FALSE subjectAltName = @alt_name keyUsage = critical,digitalSignature,nonRepudiation [ alt_name ] otherName.0 = 2.16.76.1.3.2;UTF8:FirstName SecondName // Nome da pessoa responsável pela organização * otherName.1 = 2.16.76.1.3.3;UTF8:13935893000109 //CNPJ da empresa/Número do registro * otherName.2 = 2.16.76.1.3.4;UTF8:11111111111 // CPF/PIS/RF do responsável * otherName.3 = 2.16.76.1.3.7;UTF8:1111111111 // Número do INSS *
- bash
openssl req -new -newkey rsa:2048 -utf8 -nodes -out brseal.csr -keyout brseal.key -config ./brseal.cnf && cat brseal.csr
- Enviar o
.csrpara a AC credenciada (ex: Serasa AC, Soluti, CertiSign, Valid). Receber o certificado em.p12ou.pfx.
3. Certificado do Servidor (mTLS)
O que é?
- Certificado SSL/TLS adicional para proteção das API's privadas.
- Deve conter o domínio correspondente à API do participante (ex:
api-mtls.suaempresa.com.br) e permitir uso com autenticação mútua. - Emitido por uma Autoridade Certificadora (AC) aprovada pelo ecossistema.
Como obter?
- Necessário validar com seu time interno, o procedimento que adotaram para gerar o certificado.
- Caso não tenha um procedimento interno, utilize o arquivo mtls.cnf como modelo
- Gerar CSR usando o arquivo de configuração:
Passo a Passo (via OpenSSL):
- Editar o arquivo
mtls.cnf. Abaixo um exemplo de arquivo .cnf para que insira as informações da sua organização com base no diretório de produção: [ req ] default_bits = 2048 distinguished_name = req_distinguished_name req_extensions = req_ext prompt = no [ req_distinguished_name ] C = BR ST = SP // Sigla do estado L = São Paulo // Cidade O = INSTITUICAO DE PAGAMENTO // Nome da Empresa * OU = TI CN = api-mtls.suaempresa.com.br // inserir o dominio mtls [ req_ext ] subjectAltName = @alt_names [ alt_names ] DNS.1 = api-mtls.suaempresa.com.br // inserir o dominio mtls
- bash
openssl genrsa -out mtls.key 2048
Gerar CSR:
bash
openssl req -new -key mtls.key -out mtls.csr -config mtls.cnf
- Envie o
mtls.csrpara a CA. - Escolha a opção de certificado para servidor (SSL/TLS) com suporte a autenticação mútua (clientAuth).
- A CA irá validar seu domínio e emitirá o certificado (geralmente em
.crt,.cer,.pem).
Montar o certificado final para uso (formato .pem ou .pfx)
openssl pkcs12 -export -inkey mtls.key -in mtls.cer -out mtls.pfx
3. Certificado do Servidor (TLS Padrão)
O que é?
- Certificado SSL/TLS adicional para proteção do ambiente interno.
- Pode ser emitido por Let's Encrypt, DigiCert, etc.
Como gerar CSR?
- Gerar chave privada:bash
openssl genrsa -out servidor_tls.key 2048
Gerar CSR:
bash
openssl req -new -key servidor_tls.key -out servidor_tls.csr -subj "/CN=api-interna.suaempresa.com.br/O=Sua Empresa Ltda/C=BR"
- Enviar para a AC e instalar no servidor.
Resumo das Etapas
| Certificado | Finalidade | Como Obter? |
|---|---|---|
| Brcac (Transporte) | Comunicação Open Finance | Comprar de AC credenciada |
| BRAEAL (Assinatura) | Assinatura digital | Comprar de AC credenciada |
| Servidor (mTLS) | Ambiente interno | Comprar de AC credenciada |
| Servidor (TLS) | Ambiente interno | Gerar CSR → Let's Encrypt/DigiCert |
Comentários
0 comentário
Artigo fechado para comentários.