Os códigos QR, conhecidos como “códigos de resposta rápida,” têm quase um quarto de século de existência. Apareceram pela primeira vez no cenário tecnológico em 2000 e foram concebidos pela empresa japonesa líder em componentes automóveis, Denso, como uma forma de identificar peças durante a produção.
Embora a maioria das pessoas associe os códigos QR à ideia de “aquela caixa que leio com a câmara do meu telemóvel para aceder a um site,” é possível codificar consideravelmente mais num código QR. Se estiver a utilizar maiúsculas latinas alfanuméricas e pontuação comum (0–9, A–Z, espaço, $, %, *, +, -, ., /, :), pode armazenar até 4.296 caracteres. E, se o fizer, os códigos QR tornam-se bastante densos. Aqui estão 3.000 caracteres de um texto semelhante ao Lorem Ipsum:
Para números exclusivamente, é possível armazenar até 7.089 caracteres!
Toda a informação num código QR é armazenada na própria imagem. Não existe uma entidade “registada” para códigos QR ou uma autoridade central de códigos QR. Se codificar um texto num código QR e alguém do outro lado do mundo também o codificar, obterá a mesma imagem.
Scripts de Terminal
O script google-authenticator exibe um código QR no seu terminal que pode ser lido com o seu telemóvel. Bastante prático. No entanto, esse código é criado através de código C desenvolvido pela Google.
Existe uma forma de pessoas comuns fazerem o mesmo?
Sim! Através do qrencode, que está disponível na maioria dos gestores de pacotes das distribuições.
Após uma simples instalação com o comando:
apt install qrencode
Terá a capacidade de gerar QR codes à vontade.
O qrencode não só pode gerar QRs em formatos de imagem como PNG, mas também pode produzir QR codes com saída de texto que são exibidos no seu terminal.
Por exemplo:
qrencode -m 2 -t utf8 <<< "https://www.homeserver.pt"
A opção -t define a saída como texto. Pode usar algo como “-t png -f output.png” para guardá-lo como uma imagem.
A opção -m define a largura da margem. O valor predefinido é 4 e aqui optei por reduzi-lo um pouco para obter uma imagem mais compacta.
E é isso, é tudo o que precisa para gerar códigos QR facilmente a partir de scripts de terminal.