Hex NFC 1.0.2 lançado: melhorias para passaportes e DESFire
Novidades sobre o andamento do Hex NFC e os planos para o futuro, incluindo o anúncio de uma versão do app para Android que está a caminho.

Baixe o Hex NFC de graça na App Store! Grátis para sempre, com transparência e sem publicidade de terceiros.
Já se passaram cerca de três semanas desde o lançamento do Hex NFC, e tem sido um sucesso animador. As pessoas estão gostando muito, e temos recebido um número bem razoável de downloads por dia para um app de NFC em um mercado tão concorrido.
Alguns usuários entusiasmados deram um feedback muito útil e testaram com o app vários chips NFC incomuns, o que revelou algumas falhas em certas áreas.
Antes de continuar com esse assunto, quero dar o devido reconhecimento ao usuário que doou AU$ 5 para os custos de desenvolvimento. Quando estava desenvolvendo o app, incluí os custos de desenvolvimento mais para mostrar que houve um esforço de verdade na construção dele, e que não era só um trabalhinho rápido e fácil de vibe coding. Minha noiva estava bem desconfiada na época. A vibe era: "por que alguém ia pagar por um app grátis?" Confesso que eu também tinha minhas dúvidas. Por isso é um elogio enorme que alguém do outro lado do mundo tenha valorizado tanto o nosso trabalho a ponto de contribuir com qualquer quantia. Saímos dançando pela casa de tanta empolgação. Então fica aqui um grande "obrigado" meu e da Hex Pro.
Alguns usuários estavam ansiosos para descobrir o que apareceria se escaneassem documentos de viagem bem incomuns. Tive a sorte de ser informado dos resultados e consegui identificar várias melhorias que poderiam ser acrescentadas ao app.
Para quem não conhece, os passaportes eletrônicos (ISO/IEC 14443) usam um sistema de criptografia que exige o número do passaporte, a data de nascimento e a data de validade do documento. É uma solução óbvia para o problema de golpistas quaisquer copiarem às escondidas a identidade do seu passaporte quando você está viajando por outro país.
O Hex NFC foi desenvolvido com campos simples de entrada de texto e de data. Um dos princípios fundamentais da Hex Pro é a privacidade do usuário e os direitos do consumidor. Faço questão de garantir que só peçamos as permissões absolutamente necessárias e procuro ser comedido com analytics e rastreamento (por exemplo, escolhendo o Umami hospedado em servidor próprio em vez do Google Analytics). Foi por esse motivo que, no início, deixei o acesso à câmera de fora do app. Os usuários pediram com insistência a leitura pela câmera, para captar os dados do passaporte e facilitar o processo de descriptografia. Então comecei a implementá-la o mais rápido possível, e estou muito feliz por ter feito isso. Ela é rápida e superconfiável, então escaneie seu passaporte e experimente!
Os usuários com quem conversei trouxeram documentos particularmente interessantes. O primeiro foi um passaporte da China, e o segundo, um "documento de viagem" de Taiwan, que pelo jeito tem exatamente a mesma tecnologia e a mesma estrutura de um passaporte comum (vai entender). Os seguintes foram permissões de viagem usadas para circular entre Macau e Hong Kong.
O passaporte da China foi lido sem problema nenhum. O documento de viagem de Taiwan tinha pequenos problemas de deslocamento de dados, que faziam informações de campos errados transbordarem para outros, e que foram corrigidos com facilidade.
Foi aquele terceiro grupo que trouxe resultados muito interessantes. Para falar a verdade, as permissões de viagem eram lidas como se fossem passaportes, mas cuspiam um monte de coisas sem pé nem cabeça. Mesmo assim, isso rendeu dados excelentes para eu e o meu fiel agente de programação descobrirmos como interpretá-las.
Isso me fez mergulhar de cabeça em uma pesquisa sobre os países que têm documentos de viagem fora do padrão. No fim das contas, é na União Europeia que aparece a maior parte dessas anomalias estranhas, no caso a Bélgica, Portugal e possivelmente a Espanha, onde alguns números chegam a ter 12 caracteres, em vez dos 9 do padrão.
Um recurso que ficou de fora da versão 1.0.0 foi a Configuração da aplicação NDEF e a Remoção da aplicação NDEF. Sem esse recurso, os chips DESFire que vêm direto do fabricante não têm um capability container de aplicação instalado. Basicamente, eles não vêm formatados para uso, ao contrário de chips NFC mais comuns, como o NTAG213.
Agora o Hex NFC permite a Configuração da aplicação NDEF e também a Remoção. É justamente esse último recurso que é especialmente útil e incomum. Com ele, você pode devolver o seu DESFire ao padrão de fábrica, o que deixa você livre para reaproveitá-lo depois como precisar. É só encostar o seu DESFire, abrir Operações, rolar até Ações perigosas e tocar em Formatar. Saiba mais na documentação.
As traduções do app foram aprimoradas de modo geral, com uma escolha de palavras melhor e algumas áreas que ainda estavam só em inglês. Atualmente, o app está traduzido para os idiomas atendidos pela Hex Pro:
Toda a documentação está totalmente traduzida e disponível no site em todos esses idiomas. E isso inclui todas as imagens e capturas de tela (uma tarefa que tomou um tempo enorme, de verdade).
Rufem os tambores! Sim, o Hex NFC está chegando ao Android. Quando? Em breve™. Comprei três aparelhos Android de marcas e capacidades diferentes, o que deve nos dar uma cobertura de dispositivos significativa. O desenvolvimento já está a todo vapor, com algumas mudanças realmente grandes que também vão afetar a versão 1.0.3 do app para iOS.
A grande novidade é que os simuladores estão sendo convertidos para Rust, para dar um suporte melhor ao desenvolvimento multiplataforma. Os simuladores NFC foram feitos para imitar o comportamento de dispositivos NFC de silício real. Eles permitem testar rapidamente o código do app Hex NFC contra a lógica de cada chip compatível. Primeiro, eles são desenvolvidos a partir das fichas técnicas disponíveis na internet e, depois, por meio de testes de bancada rigorosos no mundo real. Essa segunda etapa apura o comportamento real do silício e garante que o Hex NFC trate com precisão todos os cenários possíveis.
Com a conversão completa dos simuladores para Rust, eles poderão ser usados tanto com o código do app para iOS quanto com o do app para Android, que serão bem diferentes por baixo dos panos. Isso garante um comportamento consistente entre as plataformas e torna menos prováveis as regressões causadas por modificações futuras.
Junto com a migração para o Rust, também procurei ampliar a variedade de simuladores com chips que o iOS não suporta, mas o Android suporta, além de avançar no detalhamento e na melhoria dos simuladores que já existem. Para isso, comprei uma série de tags novas para testes, totalizando cerca de AU$ 160. Atualizei a página de custos de desenvolvimento no site dos apps. Peço encarecidamente a quem valoriza este trabalho que faça uma contribuição e ajude a apoiar o desenvolvimento, e também que deixe uma avaliação de 5 estrelas e um comentário na App Store.
Estamos trabalhando muito para entregar a você o software da melhor qualidade que conseguimos fazer. Estou animado com o futuro e espero que você dê uma chance aos nossos próximos apps, incluindo o Sol e o Nepali Companion, que estão para sair, com lançamento previsto ainda para este mês.
Abre em uma nova aba

