open source

Transferir arquivo sem internet: como o Decimen usa QR code

Conheça o Decimen: projeto open-source que envia arquivos entre aparelhos usando só a tela e a câmera, sem internet, sem Bluetooth e sem instalar nada.

Voltar ao blogTransferir arquivo sem internet: como o Decimen usa QR code

Transferir um arquivo de um aparelho para outro parece um problema resolvido faz uma década: Wi-Fi, Bluetooth, AirDrop, WhatsApp, pendrive, nuvem. Só que todas essas opções têm uma coisa em comum — em algum momento os dois aparelhos precisam se enxergar por uma rede, ou se emparelhar, ou depender de um servidor no meio do caminho. Um projeto open-source chamado Decimen Optical Transfer resolveu ignorar tudo isso e mandar o arquivo por um canal que quase ninguém mais usava: a luz da própria tela.

A ideia é simples de explicar e absurdamente divertida de ver funcionando. Você abre a página do projeto no navegador dos dois aparelhos. Um deles vira o emissor: pega o arquivo e o transforma numa sequência de QR codes em preto e branco piscando muito rápido na tela. O outro vira o receptor: aponta a câmera para essa tela e vai remontando o arquivo pedaço por pedaço, até ele aparecer inteiro do outro lado. Nenhum byte passa por rede nenhuma.

Uma cachoeira de QR codes rodando no navegador

O Decimen é web: não instala aplicativo, não pede login, não pede emparelhamento e não pede nenhuma permissão além do acesso à câmera no lado que recebe. É só abrir o endereço nos dois aparelhos e apontar um para o outro.

Tecnicamente, o que acontece ali é uma transmissão óptica. O emissor renderiza os quadros de QR code a 60 quadros por segundo — rápido o suficiente para carregar um volume decente de dados, e rápido o bastante para a coisa parecer um chuvisco na tela em vez de um QR code que você conseguiria ler. A câmera do receptor filma esse chuvisco e decodifica quadro a quadro.

A parte inteligente não é gerar QR code, isso qualquer um faz. A parte inteligente é lidar com o fato de que a câmera vai, inevitavelmente, errar.

Fountain codes: por que perder quadros não estraga a transferência

Se o Decimen mandasse "pedaço 1, pedaço 2, pedaço 3" em ordem, seria um desastre. Sua mão treme, a câmera desfoca por meio segundo, um reflexo bate na tela — pronto, faltou o pedaço 47 e a transferência inteira quebra. Numa rede normal isso se resolve pedindo o pedaço de volta, mas aqui não existe canal de retorno: o emissor não faz a menor ideia se o receptor está entendendo alguma coisa.

A solução vem de uma família de algoritmos chamada fountain codes — literalmente, códigos de chafariz. Em vez de enviar pedaços numerados em sequência, o emissor fica jorrando combinações embaralhadas dos pedaços do arquivo, indefinidamente. O receptor não precisa de pedaços específicos: precisa apenas de uma quantidade suficiente deles, quaisquer que sejam. Junte um punhado e o arquivo original se reconstrói matematicamente.

Isso muda tudo na prática. Quadro perdido, quadro borrado, quadro duplicado, quadro chegando fora de ordem — nada disso importa. Não existe retransmissão porque não existe pedido de retransmissão: é um fluxo só, e você fica com a câmera apontada até completar. É a mesma razão pela qual dá para encher um copo embaixo de um chafariz sem se importar com quais gotas específicas caíram nele.

A velocidade real, sem marketing

Nos testes de celular para celular, o Decimen entregou em torno de 128 KB/s segurando os aparelhos na mão, chegando a cerca de 186 KB/s com os dois completamente parados, apoiados em alguma coisa. É a velocidade que uma conexão discada dos anos 90 sonhava em ter — e é excelente para o que a técnica se propõe a fazer.

Outros limites e detalhes do projeto:

  • Arquivos de até 64 MB por transferência
  • O nome do arquivo e o tipo (media type) são preservados — chega do outro lado como o arquivo certo, não como um blob genérico
  • Verificação SHA-256 no final, para garantir que o que chegou é idêntico ao que saiu
  • Roda no navegador: sem instalação, sem conta, sem servidor no meio

Traduzindo os números: um documento, um PDF, uma planilha, uma foto, uma chave de acesso ou um arquivo de configuração passam em segundos ou em poucos minutos. Um filme levaria a eternidade. Não é substituto de pendrive — é outra ferramenta, para outro problema.

Onde isso faz sentido de verdade

Aqui na bancada a gente vê transferência travada com uma frequência que assusta. Notebook corporativo com porta USB bloqueada por política de segurança. Máquina isolada de propósito, sem rede. Celular de um lado e PC do outro, em redes diferentes, sem permissão de emparelhamento. Aparelho com Bluetooth defeituoso. Wi-Fi de hotel que isola os clientes entre si.

Em todos esses cenários sobra um caminho que continua aberto: uma tela e uma câmera. E como nenhum dado trafega por rede, também não fica rastro em rede — não tem log de servidor, não tem histórico de conversa, não tem cópia do arquivo na nuvem de terceiro. Para quem se preocupa com privacidade, esse é provavelmente o ponto mais interessante do projeto inteiro.

Vale deixar claro o que isso não é: não é criptografia. Qualquer pessoa que consiga filmar a mesma tela pode, em tese, decodificar o mesmo fluxo. A privacidade aqui é física — vale pelo alcance do olho, não por segredo matemático. Trate como você trataria uma folha de papel na sua mão.

Vale a pena testar?

Vale, nem que seja pela curiosidade de engenharia. O Decimen é o tipo de projeto que lembra que ainda dá para inventar com o básico: um monitor, uma câmera e matemática bem aplicada. Não precisa de hardware novo, não precisa de padrão da indústria, não precisa da aprovação de ninguém — e é open-source, então dá para olhar como foi feito.

Agora, se no seu caso o problema não é o arquivo e sim o aparelho — Bluetooth que não funciona, porta USB que não reconhece nada, Wi-Fi que cai sozinho —, isso se resolve na raiz. Dá uma olhada nos nossos serviços de conserto de computadores e de conserto de notebook, ou fale direto com a gente pelo contato. E se a ideia for partir para uma máquina nova já sem essas dores de cabeça, nossos builds estão à disposição.

Fontes

open sourceqr codetransferência de arquivosprivacidadetecnologia

Com esse problema no seu PC?

Tela azul, travando, lento ou não liga? A gente diagnostica de graça em Moema, conserta com garantia de 1 ano e você acompanha online — sem compromisso.

Blog

Leia também

Ver todos