summaryrefslogtreecommitdiffstats
path: root/pt-br/news/phase4-shamir-heir-recovery
diff options
context:
space:
mode:
authormurilo ijanc2026-03-24 21:45:05 -0300
committermurilo ijanc2026-03-24 21:45:05 -0300
commit01c17c68277ff88fab812920732d9bbe9e6bb571 (patch)
tree035398ae34263b981b621c6275835d2cc6847d57 /pt-br/news/phase4-shamir-heir-recovery
parentf186b71ca51e83837db60de13322394bb5e6d348 (diff)
downloadwebsite-main.tar.gz
Simplify website to single-pageHEADmain
Remove old Zola-generated content, keep only the essential landing page with about, contact, and license sections.
Diffstat (limited to 'pt-br/news/phase4-shamir-heir-recovery')
-rw-r--r--pt-br/news/phase4-shamir-heir-recovery/index.html209
-rw-r--r--pt-br/news/phase4-shamir-heir-recovery/index.html.gzbin4927 -> 0 bytes
2 files changed, 0 insertions, 209 deletions
diff --git a/pt-br/news/phase4-shamir-heir-recovery/index.html b/pt-br/news/phase4-shamir-heir-recovery/index.html
deleted file mode 100644
index d2df99f..0000000
--- a/pt-br/news/phase4-shamir-heir-recovery/index.html
+++ /dev/null
@@ -1,209 +0,0 @@
-<!DOCTYPE html>
-<html lang="pt-br">
-<head>
- <meta charset="utf-8">
- <meta name="viewport" content="width=device-width, initial-scale=1">
- <title>Fase 4: Recuperação de Chaves por Herdeiros com Shamir&#x27;s Secret Sharing — Tesseras</title>
- <meta name="description" content="Tesseras agora permite dividir sua identidade criptográfica em fragmentos distribuídos a herdeiros de confiança — qualquer limiar deles pode reconstruir suas chaves, mas menos que isso não revela nada.">
- <!-- Open Graph -->
- <meta property="og:type" content="article">
- <meta property="og:title" content="Fase 4: Recuperação de Chaves por Herdeiros com Shamir&#x27;s Secret Sharing">
- <meta property="og:description" content="Tesseras agora permite dividir sua identidade criptográfica em fragmentos distribuídos a herdeiros de confiança — qualquer limiar deles pode reconstruir suas chaves, mas menos que isso não revela nada.">
- <meta property="og:image" content="https://tesseras.net/images/social.jpg">
- <meta property="og:image:width" content="1200">
- <meta property="og:image:height" content="630">
- <meta property="og:site_name" content="Tesseras">
- <!-- Twitter Card -->
- <meta name="twitter:card" content="summary_large_image">
- <meta name="twitter:title" content="Fase 4: Recuperação de Chaves por Herdeiros com Shamir&#x27;s Secret Sharing">
- <meta name="twitter:description" content="Tesseras agora permite dividir sua identidade criptográfica em fragmentos distribuídos a herdeiros de confiança — qualquer limiar deles pode reconstruir suas chaves, mas menos que isso não revela nada.">
- <meta name="twitter:image" content="https://tesseras.net/images/social.jpg">
- <link rel="stylesheet" href="https://tesseras.net/style.css?h=21f0f32121928ee5c690">
-
-
- <link rel="alternate" type="application/atom+xml" title="Tesseras" href="https://tesseras.net/atom.xml">
-
-
- <link rel="icon" type="image/png" sizes="32x32" href="https://tesseras.net/images/favicon.png?h=be4e123a23393b1a027d">
-
-</head>
-<body>
- <header>
- <h1>
- <a href="https:&#x2F;&#x2F;tesseras.net/pt-br/">
- <img src="https://tesseras.net/images/logo-64.png?h=c1b8d0c4c5f93b49d40b" alt="Tesseras" width="40" height="40" class="logo">
- Tesseras
- </a>
- </h1>
- <nav>
-
- <a href="https://tesseras.net/pt-br/about/">Sobre</a>
- <a href="https://tesseras.net/pt-br/news/">Notícias</a>
- <a href="https://tesseras.net/pt-br/releases/">Lançamentos</a>
- <a href="https://tesseras.net/pt-br/faq/">FAQ</a>
- <a href="https://tesseras.net/pt-br/subscriptions/">Inscrições</a>
- <a href="https://tesseras.net/pt-br/contact/">Contato</a>
-
- </nav>
- <nav class="lang-switch">
-
- <a href="https:&#x2F;&#x2F;tesseras.net&#x2F;news&#x2F;phase4-shamir-heir-recovery&#x2F;">English</a> | <strong>Português</strong>
-
- </nav>
- </header>
-
- <main>
-
-<article>
- <h2>Fase 4: Recuperação de Chaves por Herdeiros com Shamir&#x27;s Secret Sharing</h2>
- <p class="news-date">2026-02-15</p>
- <p>O que acontece com suas memórias quando você morre? Até agora, Tesseras
-conseguia preservar conteúdo ao longo de milênios — mas as chaves privadas e
-seladas morriam com o dono. A Fase 4 continua com uma solução: Shamir's Secret
-Sharing, um esquema criptográfico que permite dividir sua identidade em
-fragmentos e distribuí-los para as pessoas em quem você mais confia.</p>
-<p>A matemática é elegante: você escolhe um limiar T e um total N. Qualquer T
-fragmentos reconstroem o segredo completo; T-1 fragmentos não revelam
-absolutamente nada. Isso não é "quase nada" — é informação-teoricamente seguro.
-Um atacante com um fragmento a menos que o limiar tem exatamente zero bits de
-informação sobre o segredo, independentemente do poder computacional que tenha.</p>
-<h2 id="o-que-foi-construido">O que foi construído</h2>
-<p><strong>Aritmética de corpo finito GF(256)</strong> (<code>tesseras-crypto/src/shamir/gf256.rs</code>) —
-Shamir's Secret Sharing requer aritmética em um corpo finito. Implementamos
-GF(256) usando o mesmo polinômio irredutível do AES (x^8 + x^4 + x^3 + x + 1),
-com tabelas de lookup para logaritmo e exponenciação computadas em tempo de
-compilação. Todas as operações são em tempo constante via consulta a tabelas —
-sem ramificações baseadas em dados secretos. O módulo inclui o método de Horner
-para avaliação de polinômios e interpolação de Lagrange em x=0 para recuperação
-do segredo. 233 linhas, exaustivamente testado: todos os 256 elementos para
-propriedades de identidade/inverso, comutatividade e associatividade.</p>
-<p><strong>ShamirSplitter</strong> (<code>tesseras-crypto/src/shamir/mod.rs</code>) — A API principal de
-split/reconstruct. <code>split()</code> recebe uma fatia de bytes do segredo, uma
-configuração (limiar T, total N) e a chave pública Ed25519 do dono. Para cada
-byte do segredo, constrói um polinômio aleatório de grau T-1 sobre GF(256) com o
-byte do segredo como termo constante, e então o avalia em N pontos distintos.
-<code>reconstruct()</code> recebe T ou mais fragmentos e recupera o segredo via
-interpolação de Lagrange. Ambas as operações incluem validação extensiva:
-limites do limiar, consistência de sessão, correspondência de impressão digital
-do dono e verificação de checksum BLAKE3.</p>
-<p><strong>Formato HeirShare</strong> — Cada fragmento é um artefato autocontido e serializável
-com:</p>
-<ul>
-<li>Versão do formato (v1) para compatibilidade futura</li>
-<li>Índice do fragmento (1..N) e metadados de limiar/total</li>
-<li>ID de sessão (8 bytes aleatórios) — impede mistura de fragmentos de sessões
-diferentes</li>
-<li>Impressão digital do dono (primeiros 8 bytes do hash BLAKE3 da chave pública
-Ed25519)</li>
-<li>Dados do fragmento (os y-values de Shamir, mesmo comprimento do segredo)</li>
-<li>Checksum BLAKE3 sobre todos os campos anteriores</li>
-</ul>
-<p>Os fragmentos são serializados em dois formatos: <strong>MessagePack</strong> (binário
-compacto, para uso programático) e <strong>texto base64</strong> (legível por humanos, para
-impressão e armazenamento físico). O formato texto inclui um cabeçalho com
-metadados e delimitadores:</p>
-<pre><code>--- TESSERAS HEIR SHARE ---
-Format: v1
-Owner: a1b2c3d4e5f6a7b8 (fingerprint)
-Share: 1 of 3 (threshold: 2)
-Session: 9f8e7d6c5b4a3210
-Created: 2026-02-15
-
-&lt;dados MessagePack codificados em base64&gt;
---- END HEIR SHARE ---
-</code></pre>
-<p>Este formato é projetado para ser impresso em papel, armazenado em um cofre
-bancário ou gravado em metal. O cabeçalho é informacional — apenas o payload
-base64 é analisado durante a reconstrução.</p>
-<p><strong>Integração com CLI</strong> (<code>tesseras-cli/src/commands/heir.rs</code>) — Três novos
-subcomandos:</p>
-<ul>
-<li><code>tes heir create</code> — divide sua identidade Ed25519 em fragmentos de herdeiros.
-Solicita confirmação (sua identidade completa está em jogo), gera arquivos
-<code>.bin</code> e <code>.txt</code> para cada fragmento e escreve <code>heir_meta.json</code> no diretório de
-identidade.</li>
-<li><code>tes heir reconstruct</code> — carrega arquivos de fragmentos (detecta
-automaticamente formato binário vs texto), valida consistência, reconstrói o
-segredo, deriva o par de chaves Ed25519 e opcionalmente o instala em
-<code>~/.tesseras/identity/</code> (com backup automático da identidade existente).</li>
-<li><code>tes heir info</code> — exibe metadados do fragmento e verifica o checksum sem expor
-nenhum material secreto.</li>
-</ul>
-<p><strong>Formato do blob secreto</strong> — As chaves de identidade são serializadas em um
-blob versionado antes da divisão: um byte de versão (0x01), um byte de flags
-(0x00 para somente Ed25519), seguido da chave secreta Ed25519 de 32 bytes. Isso
-deixa espaço para expansão futura quando as chaves privadas X25519 e ML-KEM-768
-forem integradas ao sistema de fragmentos de herdeiros.</p>
-<p><strong>Testes</strong> — 20 testes unitários para ShamirSplitter (roundtrip, todas as
-combinações de fragmentos, fragmentos insuficientes, dono errado, sessão errada,
-limite threshold-1, segredos grandes até o tamanho de chave ML-KEM-768). 7
-testes unitários para aritmética GF(256) (propriedades de campo exaustivas). 3
-testes baseados em propriedades com proptest (segredos arbitrários até 5000
-bytes, configurações T-de-N arbitrárias, verificação de segurança
-informação-teórica). Testes de roundtrip de serialização para ambos os formatos
-MessagePack e texto base64. 2 testes de integração cobrindo o ciclo de vida
-completo de herdeiros: gerar identidade, dividir em fragmentos, serializar,
-desserializar, reconstruir, verificar par de chaves e assinar/verificar com
-chaves reconstruídas.</p>
-<h2 id="decisoes-de-arquitetura">Decisões de arquitetura</h2>
-<ul>
-<li><strong>GF(256) ao invés de GF(primo)</strong>: usamos GF(256) ao invés de um corpo primo
-porque ele mapeia naturalmente para bytes — cada elemento é um único byte,
-cada fragmento tem o mesmo comprimento do segredo. Sem aritmética de inteiros
-grandes, sem redução modular, sem padding. Esta é a mesma abordagem usada pela
-maioria das implementações reais de Shamir, incluindo SSSS e Hashicorp Vault.</li>
-<li><strong>Tabelas de lookup em tempo de compilação</strong>: as tabelas LOG e EXP para
-GF(256) são computadas em tempo de compilação usando <code>const fn</code>. Isso
-significa zero custo de inicialização em tempo de execução e operações em
-tempo constante via consulta a tabelas ao invés de loops.</li>
-<li><strong>ID de sessão previne mistura entre sessões</strong>: cada chamada a <code>split()</code> gera
-um novo ID de sessão aleatório. Se um herdeiro acidentalmente usar fragmentos
-de duas sessões diferentes de divisão (por exemplo, antes e depois de uma
-rotação de chaves), a reconstrução falha de forma limpa com um erro de
-validação ao invés de produzir dados corrompidos.</li>
-<li><strong>Checksums BLAKE3 detectam corrupção</strong>: cada fragmento inclui um checksum
-BLAKE3 sobre seu conteúdo. Isso captura degradação de bits, erros de
-transmissão e truncamento acidental antes de qualquer tentativa de
-reconstrução. Um fragmento impresso em papel e escaneado via OCR vai falhar no
-checksum se um único caractere estiver errado.</li>
-<li><strong>Impressão digital do dono para identificação</strong>: os fragmentos incluem os
-primeiros 8 bytes de BLAKE3(chave pública Ed25519) como impressão digital.
-Isso permite aos herdeiros verificar a qual identidade um fragmento pertence
-sem revelar a chave pública completa. Durante a reconstrução, a impressão
-digital é verificada contra a chave recuperada.</li>
-<li><strong>Formato duplo para resiliência</strong>: ambos os formatos binário (MessagePack) e
-texto (base64) são gerados porque mídias físicas têm modos de falha diferentes
-de armazenamento digital. Um pendrive pode falhar; papel sobrevive. Um QR code
-pode ficar ilegível; texto base64 pode ser digitado manualmente.</li>
-<li><strong>Versionamento do blob</strong>: o segredo é envolvido em um blob versionado
-(versão + flags + material de chave) para que versões futuras possam incluir
-chaves adicionais (X25519, ML-KEM-768) sem quebrar compatibilidade com
-fragmentos existentes.</li>
-</ul>
-<h2 id="o-que-vem-a-seguir">O que vem a seguir</h2>
-<ul>
-<li><strong>Fase 4 continuada: Resiliência e Escala</strong> — NAT traversal avançado
-(STUN/TURN), ajuste de performance (pool de conexões, cache de fragmentos,
-SQLite WAL), auditorias de segurança, integração de nós institucionais,
-empacotamento para sistemas operacionais</li>
-<li><strong>Fase 5: Exploração e Cultura</strong> — navegador público de tesseras por
-era/localização/tema/idioma, curadoria institucional, integração com
-genealogia, exportação para mídia física (M-DISC, microfilme, papel livre de
-ácido com QR)</li>
-</ul>
-<p>Com Shamir's Secret Sharing, Tesseras fecha a última lacuna crítica na
-preservação a longo prazo. Suas memórias sobrevivem a falhas de infraestrutura
-através de erasure coding. Sua privacidade sobrevive a computadores quânticos
-através de criptografia híbrida. E agora, sua identidade sobrevive a você —
-passada adiante para as pessoas que você escolheu, exigindo a cooperação delas
-para desbloquear o que você deixou para trás.</p>
-
-</article>
-
- </main>
-
- <footer>
- <p>&copy; 2026 Tesseras Project. <a href="/atom.xml">News Feed</a> · <a href="https://git.sr.ht/~ijanc/tesseras">Source</a></p>
- </footer>
-</body>
-</html>
diff --git a/pt-br/news/phase4-shamir-heir-recovery/index.html.gz b/pt-br/news/phase4-shamir-heir-recovery/index.html.gz
deleted file mode 100644
index cebcabc..0000000
--- a/pt-br/news/phase4-shamir-heir-recovery/index.html.gz
+++ /dev/null
Binary files differ