O Padrão 1248

Como gravar uma seed BIP39 em metal usando furos, sem estampar uma letra sequer

Esta página é um acréscimo de Eric de Castro à tradução — não faz parte do conteúdo original do Greg Walker.

Na página de carteiras vimos que um backup de metal é a forma mais durável de guardar a sua seed. A maneira mais óbvia é estampar as palavras letra por letra. O padrão 1248 resolve o mesmo problema de um jeito mais rápido e discreto: em vez de letras, você marca furos que representam números.

Ele é a base do produto Stackbit 1248, mas a ideia é aberta — dá para reproduzi-la em qualquer placa ou cartão de metal.

Antes de tudo: isto não é uma carteira

Apesar do apelido "carteira de metal", um backup 1248 não envia nem recebe bitcoin, não tem tela e não assina nada. Ele é só um backup físico da sua seed — as mesmas 12 ou 24 palavras que a sua carteira mostrou na configuração, gravadas num material que sobrevive a fogo, água e ao tempo. Para gastar, você digita essas palavras de volta numa carteira de verdade.

Cada palavra é um número

O segredo do método está num detalhe do BIP39: a lista oficial tem 2048 palavras, e cada palavra ocupa uma posição fixa nessa lista, de 1 a 2048.

Ou seja: anotar a posição (um número de até 4 dígitos) é a mesma coisa que anotar a palavra. Em vez de gravar oito ou mais letras, você grava 4 dígitos.

A consulta posição ↔ palavra é pública e oficial (a lista do BIP39). Qualquer carteira ou tabela impressa faz a tradução de volta — você não fica preso a nenhum fabricante.

Como os números viram furos

Aqui entra o "1248". Cada dígito (de 0 a 9) é montado somando apenas quatro valores: 1, 2, 4 e 8. Você marca os furos cujos valores, somados, dão o dígito que quer:

Dígito Furos marcados Dígito Furos marcados
0(nenhum)51 + 4
1162 + 4
2271 + 2 + 4
31 + 288
4491 + 8

Com 1, 2, 4 e 8 dá para formar qualquer dígito de 0 a 9 — é o mesmo truque que o computador usa para guardar números (cada furo é um bit).

Cada palavra ocupa uma linha com quatro colunas, uma por dígito do número (milhar, centena, dezena, unidade). A primeira coluna nunca passa de 2 (porque o maior número é 2048), então na prática ela só usa o 1 e o 2.

Diagrama de um cartão metálico 1248 com as palavras 13 a 24: cada linha numerada traz quatro colunas com os valores 1, 2, 4 e 8, e os pontos preenchidos marcam os valores que somam cada dígito do número da palavra.
Um cartão metálico com a grade 1‑2‑4‑8 marcado (aqui, as palavras 13 a 24). Em cada linha, os pontos preenchidos são os furos/marcações; some-os por coluna para reler o número da palavra.

No mercado existem cartões prontos com esse sistema. Em alguns o número fica gravado diretamente no metal (puncionado ou a laser); em outros, as marcações são feitas com adesivos sobre a placa. No Brasil, a Stackbit fabrica esse tipo de material.

Exemplos

Abaixo, três palavras marcadas. Os furos preenchidos (laranja) são os que você puncionaria; some-os em cada coluna para reler o número.

abandon = posição 1 → dígitos 0-0-0-1

milhar
1
2
4
8
0
centena
1
2
4
8
0
dezena
1
2
4
8
0
unidade
1
2
4
8
1

box = posição 213 → dígitos 0-2-1-3

milhar
1
2
4
8
0
centena
1
2
4
8
2
dezena
1
2
4
8
1
unidade
1
2
4
8
3

zoo = posição 2048 → dígitos 2-0-4-8

milhar
1
2
4
8
2
centena
1
2
4
8
0
dezena
1
2
4
8
4
unidade
1
2
4
8
8

Repare no zoo (2048): coluna do milhar marca o 2, a da dezena marca o 4 e a da unidade marca o 8 — literalmente "1248" em ação.

Ícone Ferramenta Codificador 1248

Digite uma palavra da lista BIP39 ou o número dela (1 a 2048) e veja os furos que você marcaria no cartão.

Digite uma palavra da lista BIP39 (ex.: box) ou a posição dela (1 a 2048).

Como ler de volta

Recuperar é o caminho inverso, palavra por palavra:

  1. Em cada uma das 4 colunas, some os furos marcados → você obtém um dígito.
  2. Junte os 4 dígitos → o número da palavra (1 a 2048).
  3. Consulte esse número na lista BIP39 → a palavra.
  4. Repita para as 12 ou 24 linhas, na ordem, e digite a seed na sua carteira.

A ordem das palavras importa. Marque uma linha por palavra, de cima para baixo, exatamente na ordem em que a carteira as mostrou.

E se eu errar uma marcação?

O próprio BIP39 tem uma verificação de erros embutida (a última palavra funciona como um checksum). Se você ler um furo errado e a seed sair inválida, a carteira recusa em vez de aceitar em silêncio — o que te avisa que algo na leitura saiu errado. Ainda assim, marque com calma e confira duas vezes: o checksum detecta a maioria dos erros, mas não conserta a sua única cópia.

Prós e contras

Um backup de metal guarda a seed em claro. Para protegê-la mesmo que alguém ache a placa, combine com uma passphrase (a "25ª palavra", que você não grava no metal) ou com um esquema multisig espalhado por vários locais.

Voltar para Carteiras → Carteira de Metal.