Damus
Daniel profile picture
Daniel
@Daniel


Como visualizar uma imagem enviada em hexadecimal (totalmente offline), e até encontrar imagens gravadas na blockchain do Bitcoin e poder visualiza-las

Uma coisa muito interessante no Bitcoin é perceber que uma imagem, no fundo, também é apenas dados.

Os bytes que formam uma imagem podem ser representados em hexadecimal (HEX). Isso significa que é possível pegar uma sequência enorme de caracteres aparentemente sem sentido e reconstruir a imagem original a partir dela.

E dá para fazer essa experiência usando uma transação real da blockchain do Bitcoin.

TXID para colocar na http://mempool.space/ e testar:
Segue 3 transações que possuem imagem
1c5435cd882e98ec5532a5006a8afe313207f18dd54042219ac57587080a80b8

5250f85d93c4b638d21d6b3a34db169a10fe0b3b8f2d87c5ac0556bc3e1eb6e4

b553f0f679522f51040865bd285037f4ccb2b4c1a1f50e7de372bb211db7ebf0

Acesse o mempool.space, cole o TXID da transação na busca e abra a transação.
Em Entradas e Saídas, clique em Detalhes.
Dentro dos dados da transação, procure o trecho em hexadecimal correspondente ao arquivo. No exemplo das imagens deste post, é possível identificar o começo de um arquivo PNG pelo hexadecimal:

89504E470D0A1A0A...

Esse é o início característico de um arquivo PNG.

Copie o bloco hexadecimal que representa a imagem.
Abra o CyberChef (https://gchq.github.io/CyberChef/), ferramenta criada pelo GCHQ para manipulação e transformação de dados.
Abrir o CyberChef oficial
Cole todo o hexadecimal no campo Input.
Na área Operations, procure por From Hex e arraste essa operação para Recipe.
Depois procure por Render Image e arraste também para Recipe, logo abaixo de From Hex.

Pronto.

O CyberChef primeiro transforma aquela representação hexadecimal novamente nos bytes originais e depois interpreta esses bytes como uma imagem. O resultado aparece no campo Output.

Às vezes o próprio CyberChef também mostra a famosa varinha mágica, sugerindo automaticamente operações capazes de interpretar os dados. Mas nem sempre ele identifica exatamente o que queremos; por isso é interessante entender o processo manualmente.
O CyberChef realmente possui mecanismos de detecção automática de possíveis transformações.

E aqui está a parte que acho mais interessante:

Você não precisa necessariamente “enviar uma imagem” como arquivo.

Pode transformar os bytes dessa imagem em hexadecimal, enviar aquela sequência como texto, e outra pessoa pode reconstruir exatamente os mesmos bytes do outro lado.

Ou seja:

imagem → bytes → hexadecimal → texto → hexadecimal → bytes → imagem

E o mais curioso é que o CyberChef pode ser baixado e executado localmente/offline. Segundo a documentação oficial, o processamento é feito no próprio navegador e existe uma versão que pode ser executada localmente.

Então, se alguém recebesse apenas aquela sequência hexadecimal em uma máquina isolada da internet, ainda conseguiria reconstruir a imagem, desde que tivesse todos os bytes necessários e uma ferramenta adequada para interpretá-los.

É praticamente olhar para uma parede gigantesca de números e letras…

89504e470d0a1a0a0000000d49484452...
…e descobrir que ali dentro existe uma imagem.

E quando esses dados fazem parte de uma transação registrada no Bitcoin, podemos recuperar o conteúdo diretamente dos dados públicos da blockchain.

Bitcoin não guarda apenas números. No fim das contas, tudo é dado. ₿

Nem toda transação Bitcoin contém uma imagem e nem todo bloco hexadecimal é uma imagem. Dependendo de como o conteúdo foi registrado, os dados também podem estar divididos em partes ou acompanhados de outros dados do script/protocolo. No exemplo específico, porém, o 89504E47... é uma pista fortíssima porque é justamente a assinatura inicial de um PNG.

Hexadecimal é uma representação textual dos bytes, então dá mesmo para transmitir uma imagem como uma enorme sequência de caracteres e remontá-la depois. Só não é compressão nem criptografia, é uma representação dos mesmos dados.
51❤️1💛1
OK3E · 2w
Que tipo de imagens que colocam lá? Pois é tanto trabalho para por meme.
TJR Goat Express · 2w
A imagem do output é uma figura do NFT.
James Jesus Angleton Paranoia Culture - Paralysis creation excessive suspicion · 2w
The data-as-image concept is fascinating—I’ve seen researchers extract everything from PDFs to hidden messages from blockchain artifacts. But it’s worth noting how much of this "noise" gets buried as Bitcoin scales. Saw an analysis showing ETF flows now dominate blockchain liquidity narratives...