Leitor de MRZ e Passaportes Offline
Extraia os dados da zona de leitura óptica de passaportes e identidades.
Aponte a câmera para as duas ou três linhas na parte inferior do documento (ou envie uma foto). O reconhecimento óptico roda em um Web Worker no seu navegador e decodifica nome completo, número do documento, datas, gênero, nacionalidade e emissor — conferindo os dígitos de controle do padrão ICAO 9303. Nenhuma imagem sai da sua máquina.
Como ler o MRZ do passaporte sem enviar a imagem para servidores?
A imagem é pré-processada em um canvas (tons de cinza, contraste e ampliação) e enviada ao motor de OCR Tesseract.js, que executa em um Web Worker isolado dentro do seu navegador. As linhas reconhecidas passam por um parser do padrão ICAO 9303 que extrai cada campo pela posição exata de coluna dos formatos TD1, TD2 e TD3 — sem nenhuma chamada de rede com os seus dados.
Por que o leitor confere os dígitos de controle (checksum) do MRZ?
Cada campo crítico do MRZ (número do documento, data de nascimento, data de validade e o dígito final composto) carrega um dígito verificador calculado com pesos 7-3-1. Conferir esses dígitos permite detectar erros de leitura óptica na hora: quando o checksum não bate, o CofreUtil avisa que os dados precisam de confirmação visual antes de serem usados em cadastros, hotéis ou sistemas de embarque.
É seguro escanear um documento tão sensível quanto o passaporte?
Sim. A arquitetura é zero-server: a foto é lida na memória do navegador, processada localmente e descartada ao final da sessão. Não há upload, não há armazenamento em nuvem e não há registro de logs — conformidade nativa com a LGPD. Até o modelo de OCR é um software aberto que fica em cache no seu próprio dispositivo após a primeira leitura.
Perguntas Frequentes sobre o Leitor de MRZ e Passaportes
O que é MRZ e quais formatos o leitor entende?
MRZ (Machine Readable Zone) é a faixa de caracteres na parte inferior do documento. O leitor decodifica os três padrões da ICAO: TD1 (identidades com 3 linhas de 30 caracteres), TD2 (2 linhas de 36) e TD3 (passaportes com 2 linhas de 44).
Posso ler com a câmera ao vivo ou só com foto?
Os dois. Ative a aba "Câmera / Webcam" para enquadrar o documento e capturar o quadro, ou arraste uma foto/scan no modo "Foto / Documento". Em ambos os casos o processamento é 100% local.
Como o dígito de controle valida os dados lidos?
Cada campo tem um dígito verificador calculado com os pesos 7-3-1 sobre os caracteres do campo. Se o valor lido não produz o mesmo dígito, o CofreUtil marca [CHECKSUM FALHOU] — sinal de erro de OCR ou documento adulterado.
A imagem do meu passaporte é enviada a algum servidor?
Não. O OCR roda em Web Worker no navegador. A imagem e os dados decodificados nunca deixam a sua máquina. Na primeira leitura o motor baixa um modelo de OCR de código aberto, que fica em cache no seu dispositivo.
A câmera não abriu. O que eu faço?
Verifique se o navegador tem permissão de câmera e se a página é servida em HTTPS. Se ainda assim falhar, use o modo "Foto / Documento" ou cole as linhas MRZ manualmente na área de fallback.