Documentos

Segurança

Scroll down
As chaves são geradas no seu navegador, nunca em nossos servidores. Esta página é o modelo de confiança: arquitetura, ameaças, criptografia, cabeçalhos e como verificar cada reivindicação você mesmo.

01 — Princípios

Não negociáveis

  • Geração do lado do cliente — Web Workers em sua CPU criam cada par de chaves.
  • Trânsito de chave zero — não há API que aceite ou retorne chaves privadas.
  • Zero armazenamento de chaves — sem banco de dados, sem registros de segredos, sem análises de padrões ou endereços.
  • Verificável — código aberto, auditoria ao vivo, teste offline, painel de rede.
  • Prova sem exposição — provas compartilháveis ​​carregam apenas endereço + padrão.

In the proof

  • Public address
  • Prefix / suffix pattern
  • Chain · mode · timestamp

Never in the link

  • Private key / seed
  • Worker memory dumps
  • Clipboard or exports
Fig. — Proof of find · shareable vs private

As reivindicações de marketing são inúteis sem verificações. Use live audit e a seção Verificar abaixo.

02 — Arquitetura

Onde moram as chaves

Vanitas é um site Next.js estático. O host (por exemplo, Vercel) serve HTML, CSS, JS e pacotes de trabalho pré-construídos. A criptografia nunca é executada nesse host para suas chaves.

Where keys liveYOUR BROWSERKEYS LIVE HERENETWORKNO KEYS ON WIREORIGIN HOSTFILES ONLY
  • Main thread UI
  • Web Workers (keys in RAM)
  • sessionStorage: address only
Fig. — Trust boundary · tap a zone

Seu navegador

Tópico principal

UI · Reagir · controles

Trabalhadores da Web

W1…Wn — grind · match · postMessage

As chaves privadas existem apenas aqui – RAM no seu dispositivo

Rede durante a mineração

Nenhum é necessário. Após o carregamento dos ativos, o modo avião ainda funciona. A única rota de API primária (/api/domains) sugere links de domínio Solana – ela não gera nem recebe chaves.

Nossos servidores

Entregar arquivos. Não é possível ler sua memória de trabalho. Não é possível interceptar um par de chaves concluído. Uma origem comprometida pode servir JS malicioso – é por isso que as verificações de integridade e o código aberto são importantes (consulte Integridade e Navegador).

03 — Ameaças

Modelo de ameaça (honesto)

No escopo - projetamos contra

  • Roubo de chaves no servidor (sem chaves no servidor).
  • Sniffing casual de rede durante a mineração (sem tráfego principal).
  • Clickjacking do aplicativo principal (negação de frames nas rotas primárias).
  • Caminhos óbvios de exfiltração de XSS (CSP; ainda não é uma solução mágica).

Fora do escopo/responsabilidade compartilhada

  • Extensões de navegador maliciosas que leem a memória da página ou a área de transferência. Desative-as em um perfil limpo ao falsificar chaves de alto valor.
  • Dispositivo comprometido/malware — Keyloggers no nível do sistema operacional superam qualquer site.
  • Você cola chaves no Discord/phishing — a segurança operacional é sua.
  • Cadeia de suprimentos de dependências — fixamos e auditamos; você pode verificar hashes de trabalho e reconstruir a partir da fonte.

A mineração intuitiva não cria uma chave “mais fraca”. Padrões longos custam apenas mais CPU — eles não reduzem a entropia da chave privada.

04 — Armazenamento

O que armazenamos

Nada sobre suas chaves em nossos servidores. Nenhum banco de dados de endereços, padrões, IPs para mineração ou SDKs analíticos no caminho da forja.

Nenhuma chave privada no disco ou servidor

Nenhuma chave/endereço público coletado remotamente

Sem telemetria padrão

Nenhum sistema de conta

Nenhuma análise de terceiros na promessa do produto

sessionStorage descobertas recentes = endereço + padrão apenas, esta sessão do navegador

Links de prova = parâmetros de consulta que você escolhe compartilhar (sem chaves)

05 – Criptografia

Algoritmos por forja

A aleatoriedade sempre vem do navegador CSPRNG (crypto.getRandomValues). As curvas e a derivação de endereços diferem por cadeia:

Solana

Ed25519 → Base58

Web Crypto nativo ou substituto WASM · carteira / mint

EVM

secp256k1 + keccak-256

0x EOA · CRIAR · CRIAR2

Bitcoin

secp256k1

Legado · SegWit · Taproot · Exportação WIF

Tron

secp256k1 + keccak → Base58Check

T… carteira / CRIAR

Aptos

Ed25519 + SHA3-256

0x endereço da conta

Sui

Ed25519 + Blake2b-256

0x com sinalizador de esquema

TON

Ed25519 · Carteira v4R2

UQ/EQ Base64url

Cardano

Ed25519 · Empresa CIP-19

addr1… somente chave de pagamento

XRP

secp256k1 · XRPL Base58

Endereços clássicos…

As verificações pós-descoberta podem validar o tamanho da entropia, a presença de CSPRNG e a uniformidade do qui-quadrado em uma amostra aleatória — uma verificação de integridade do caminho RNG, não um substituto para a higiene do dispositivo.

06 – Integridade

Trabalhadores e hashes publicados

O código de mineração é fornecido como arquivos estáticos public/*-worker.js criados a partir de fontes TypeScript. Cada compilação de produção registra resumos SHA-256 em worker-hash.json. A página de auditoria faz um novo hash dos trabalhadores que seu navegador carregou e os compara com esse arquivo.

Se os hashes divergirem, trate a página como não confiável – pare, não use chaves e investigue (implantação, cache ou adulteração incorreta). A reconstrução a partir do repositório aberto deve reproduzir os mesmos bytes de trabalho para um determinado commit.

07 – Cabeçalhos

Cabeçalhos de segurança HTTP

As respostas incluem cabeçalhos que reduzem o impacto do XSS, forçam HTTPS e bloqueiam o enquadramento do aplicativo principal. O CSP ainda permite o que o Next.js precisa (incluindo algumas compensações inline/eval) - ajuda de cabeçalhos; eles não substituem a revisão de código.

CSP

Política de segurança de conteúdo

Limita scripts, trabalhadores, connect-src

HSTS

Segurança de transporte estrita

idade máxima=31536000

Quadro

Opções de quadro X: NEGAR

Aplicativo principal não incorporável

MIME

Opções de tipo de conteúdo X: nosniff

Sem detecção de MIME

Referenciador

origem estrita quando origem cruzada

Limita o vazamento do referenciador

08 – Navegador

O que o navegador ainda pode fazer

Qualquer coisa executada com privilégios de página pode, em teoria, ler as mensagens do DOM e do Worker. Isso inclui:

  • Extensões de navegador com amplo acesso ao site
  • DevTools abertos em uma máquina compartilhada
  • Scripts injetados maliciosos se o XSS existir
  • A área de transferência fareja depois que você copia uma chave

Mitigações: perfil de navegador limpo, sem extensões desnecessárias, preferir baixar arquivos em vez da área de transferência para chaves de alto valor, limpar a área de transferência depois de colar em uma carteira, considerar o terminal CLI ou uma máquina isolada para grandes tesouros.

09 — Fluxo de trabalho

Procedimento operacional seguro

  1. Carregue vanitas.fun (ou execute a partir de uma versão local verificada).
  2. Opcional: abra a rede, fique offline, execute a auditoria.
  3. Escolha primeiro um padrão curto; aumente o comprimento depois de confiar na configuração.
  4. Ao localizar: exporte, armazene off-line e nunca capture chaves em aplicativos de bate-papo.
  5. Importe para a carteira correta para essa rede; envie uma transferência de teste de poeira.
  6. Para participações de longo prazo, transfira fundos para uma carteira de hardware – Vanitas é uma forja, não um cofre.

10 – Verifique

Três verificações que qualquer um pode executar

01 – Rede

Monitor de rede

  1. DevTools → Rede → limpar
  2. Comece a gerar
  3. Confirme zero solicitações durante a mineração

02 – Off-line

Modo avião

  1. Carregue o aplicativo
  2. Desconectar
  3. Gerar – o sucesso prova que não há dependência de servidor ativo

03 – Auditoria

Auditoria ao vivo + fonte

  1. Execute /audit
  2. Compare hashes de trabalho com JSON publicado
  3. Revise os trabalhadores GitHub e SECURITY.md

11 – Divulgar

Relatando problemas

Não abra problemas públicos do GitHub para vulnerabilidades de segurança. Prefira os avisos de segurança privados do GitHub em bytebrox/vanitas. Inclua etapas de reprodução, impacto e uma sugestão de correção, se houver.

Você pode roubar minhas chaves?

Não temos nenhum caminho do lado do servidor que os receba. Uma compilação ou extensão maliciosa poderia verificar hashes e usar um ambiente limpo para obter alto valor.

E se o host for hackeado?

Os invasores podem veicular JavaScript alterado. É por isso que o código aberto, as verificações de hash do trabalhador e a preferência por um commit em bom estado são importantes. O host ainda nunca recebe as chaves finalizadas de uma compilação limpa.

Os endereços personalizados são menos seguros?

Não. A entropia da chave privada permanece inalterada. Somente o endereço público é filtrado quanto à aparência.

Devo falsificar chaves de armazenamento frio em um navegador diário?

Para fundos significativos: perfil limpo ou offline/CLI, pequena transferência de teste e, em seguida, custódia da carteira de hardware.