Splync v1.0 para Splync v1.1
Ao se inscrever no Splync, você deve inserir seu endereço de email e senha. Como mencionei em artigos anteriores, o Splync v1.0 já incluía medidas básicas de segurança. A transferência de dados era protegida por HTTPS. Nosso servidor era seguro com SSH para que ninguém, exceto o desenvolvedor, pudesse acessá-lo. Sua senha nunca foi armazenada em texto simples, mas sim criptografada no banco de dados, de modo que ninguém pudesse decodificá-la. Porém, o segredo do v1.0 era que ele não tinha verificação de email no processo de criação de conta. O Splync, como um MVP (Produto Mínimo Viável), foi lançado sem esse recurso porque o aplicativo estava em um estágio onde apenas meus amigos sabiam de sua existência. No v1.0, o aplicativo simplesmente verificava se o email inserido continha um “@” entre sequências de letras e se era único entre contas existentes.
O Que Acontece Se Não Houver Verificação de Email
Se um aplicativo permite que os usuários criem uma conta sem verificar sua identidade, é fácil imaginar alguém usando o endereço de email de outra pessoa para criar sua própria conta. É exatamente isso que poderia acontecer. Embora isso não signifique que seus dados seriam vazados, significa que você não poderia registrar seu próprio endereço de email se ele já tivesse sido usado. Além disso, alguém poderia criar uma conta usando um endereço de email completamente fictício. Isso pode não parecer sério a princípio, mas se tornaria um desastre quando o desenvolvedor tentasse cobrar ou contatar esse usuário mais tarde. Eu nem saberia quem essa pessoa realmente é! Assim, a verificação de email foi o próximo passo para o Splync.
Como Funciona a Verificação de Email
No Splync v1.1, quando um novo usuário se inscreve, o aplicativo envia automaticamente um email para o endereço que ele inseriu. Esse email contém um link de verificação único e gerado automaticamente. Ao clicar nesse link, o usuário confirma que realmente tem acesso àquela conta de email. Uma vez verificado, o servidor ativa a conta do usuário e a armazena no banco de dados como um usuário válido e autenticado. Parece familiar, não é? Esse processo garante que cada conta no Splync pertença a uma pessoa real e acessível — um pequeno, mas vital passo para construir uma comunidade confiável. Vamos dar uma olhada mais de perto em como esse fluxo é implementado do ponto de vista técnico.
Implementação Técnica da Verificação de Email
O backend do Splync usa Python/FastAPI, e o aplicativo móvel é construído com SwiftUI. O aplicativo cuida apenas da interface do usuário, enquanto a lógica de verificação e as credenciais sensíveis permanecem seguras no servidor. No v1.1, adicionamos uma etapa padrão de verificação de email entre “usuário não verificado” e “usuário verificado”. Quando um novo usuário se inscreve, o aplicativo envia os dados inseridos para o servidor. O servidor possui um banco de dados MariaDB. Ele armazena o usuário como não verificado no banco de dados. A senha é criptografada e salva, mas a conta ainda não está ativa. Nesse momento, o servidor também gera um token de verificação único com um tempo de expiração. Em seguida, usando um servidor SMTP (Simple Mail Transfer Protocol), o servidor envia um email de verificação contendo um link seguro e único. Quando o usuário abre o link, o servidor verifica se o token é válido e não expirou. Uma vez verificado, a conta se torna ativa, e o usuário pode entrar normalmente pelo aplicativo. Isso mantém a autenticação segura e leve.
Python? FastAPI? SwiftUI? SMTP? MariaDB
Se isso parece um código secreto, não se preocupe — são apenas as ferramentas que fazem o sistema funcionar em conjunto. Pense no fluxo de inscrição do Splync como um centro de atendimento ao cliente verificando a identidade de alguém. “Posso ter seu nome e endereço de email?”, pergunta o SwiftUI, o simpático operador na recepção. Você diz a ela seus dados, e ela diz: “Poderia aguardar um momento, por favor?” Ela imediatamente os encaminha para o FastAPI, o sistema telefônico interno do escritório. O FastAPI conecta-a ao Python, o especialista de back-office encarregado da verificação. O Python verifica com o MariaDB, a base de dados de clientes, para registrar suas informações com segurança — marcando seu status como “não verificado”. Em seguida, o Python pede para o SMTP, o mensageiro externo, enviar um email de confirmação com um link seguro. Quando você clica no link, o Python verifica se é válido e atualiza seu registro no MariaDB para “verificado”. Finalmente, o FastAPI informa ao operador que sua identidade foi confirmada, e sua conta está agora ativa. Juntas, essas partes tornam o processo de verificação do Splync tanto humano quanto seguro.
O Próximo Passo na Jornada de Segurança do Splync
A verificação de email pode parecer um recurso pequeno, mas muda tudo sobre confiança. Marca o momento em que o Splync evolui de um projeto pessoal entre amigos para um aplicativo público onde qualquer um pode entrar com confiança. Enviar um link de verificação via SMTP até parece o primeiro aperto de mão do Splync com um novo usuário. Nos bastidores, esse recurso prepara o terreno para futuras melhorias — redefinições de senha, autenticação multifatorial e recuperação de conta. Cada camada de segurança se baseia na anterior. Com a verificação de email, o Splync v1.1 dá um passo significativo à frente — tornando o gerenciamento de despesas compartilhadas não apenas conveniente, mas verdadeiramente confiável.