Recuperação de Chaves por Herdeiros
-Suas tesseras podem sobreviver a falhas de infraestrutura, computadores quânticos e séculos de tempo. Mas o que acontece quando você não consegue mais acessar suas próprias chaves? Tesseras usa Shamir’s Secret Sharing para permitir que você distribua sua identidade criptográfica para herdeiros de confiança.
-Como funciona
-Shamir’s Secret Sharing divide um segredo em N fragmentos com um limiar T. Qualquer T fragmentos podem reconstruir o segredo original. Menos que T fragmentos não revelam nada — isso é informação-teoricamente seguro, não apenas computacionalmente difícil de quebrar.
-Por exemplo, com limiar 2 e 3 fragmentos totais:
--
-
- Dê o fragmento 1 ao seu cônjuge -
- Dê o fragmento 2 ao seu irmão -
- Dê o fragmento 3 ao seu advogado -
Quaisquer dois deles podem recuperar sua identidade. Um único fragmento sozinho é inútil.
-Criando fragmentos de herdeiros
-tes heir create --threshold 2 --shares 3
-
-Isso divide sua chave de identidade Ed25519 em 3 fragmentos (necessitando 2 para reconstruir) e os salva em ./heir-shares/:
heir-shares/
-├── heir_share_1.bin # Binário MessagePack
-├── heir_share_1.txt # Texto base64 legível por humanos
-├── heir_share_2.bin
-├── heir_share_2.txt
-├── heir_share_3.bin
-└── heir_share_3.txt
-
-Cada fragmento é gerado em dois formatos:
--
-
- Binário (
.bin) — MessagePack compacto, adequado para pendrives ou armazenamento digital
- - Texto (
.txt) — base64 com cabeçalho legível, adequado para impressão em papel
-
O formato texto se parece com isso:
---- TESSERAS HEIR SHARE ---
-Format: v1
-Owner: a1b2c3d4e5f6a7b8 (fingerprint)
-Share: 1 of 3 (threshold: 2)
-Session: 9f8e7d6c5b4a3210
-Created: 2026-02-15
-
-<dados codificados em base64>
---- END HEIR SHARE ---
-
-Reconstruindo a partir de fragmentos
-Quando os herdeiros precisam recuperar a identidade:
-tes heir reconstruct heir_share_1.txt heir_share_2.bin --output-dir ./recovered-keys
-
-O comando detecta automaticamente se cada arquivo é formato binário ou texto. Ele valida que todos os fragmentos pertencem à mesma sessão e dono, verifica checksums e reconstrói o par de chaves Ed25519.
-Para instalar as chaves recuperadas como identidade ativa:
-tes heir reconstruct share1.txt share2.txt --output-dir ./recovered --install
-
-Isso faz backup da identidade atual antes de substituí-la.
-Inspecionando um fragmento
-Para ver metadados sobre um fragmento sem expor dados secretos:
-tes heir info heir_share_1.txt
-
-Saída:
-Heir Share Information:
- Format version: 1
- Share: 1 of 3 (threshold: 2)
- Session: 9f8e7d6c5b4a3210
- Owner fingerprint: a1b2c3d4e5f6a7b8
- Share data size: 34 bytes
- Checksum: valid
-
-Considerações de segurança
--
-
- Escolha do limiar: um limiar de 2-de-3 ou 3-de-5 é recomendado para a maioria das pessoas. Limiares mais altos são mais seguros mas requerem mais herdeiros para cooperar. -
- Armazenamento físico: imprima os arquivos
.txtem papel livre de ácido e armazene em locais físicos separados (cofres bancários, casas diferentes). Papel sobrevive décadas sem degradação.
- - Nunca armazene fragmentos juntos: todo o propósito da divisão é a distribuição. Manter todos os fragmentos em um lugar anula o objetivo. -
- Isolamento de sessão: cada chamada
heir creategera um novo ID de sessão. Fragmentos de sessões diferentes não podem ser misturados — isso previne confusão após rotações de chave.
- - Verificação de checksum: cada fragmento inclui um checksum BLAKE3. Fragmentos corrompidos (erros de OCR, degradação de bits) são detectados antes de qualquer tentativa de reconstrução. -
- Re-dividir após mudanças de chave: se você regenerar sua identidade, crie novos fragmentos de herdeiros e destrua com segurança os antigos. -
Princípios de design
--
-
- Segurança informação-teórica — T-1 fragmentos revelam exatamente zero informação sobre o segredo. Isso não é uma suposição computacional; é matematicamente provado. -
- Detecção de corrupção — checksums BLAKE3 detectam degradação de bits, erros de OCR e truncamento antes de qualquer tentativa de reconstrução. -
- Resiliência de formato — saída dupla (binário + texto) garante que fragmentos sobrevivam a diferentes modos de falha de mídia de armazenamento. -
- Compatibilidade retroativa — o blob do segredo é versionado, para que versões futuras possam incluir material de chave adicional sem quebrar fragmentos existentes. -